From: Andrew Tridgell Date: Fri, 5 Mar 2010 11:48:09 +0000 (+1100) Subject: s4-pvfs: use pvfs_sys_fchmod() X-Git-Tag: samba-3.6.0pre1~4763 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c2156ea9539a818625b0914aa2e1596571f428f;p=thirdparty%2Fsamba.git s4-pvfs: use pvfs_sys_fchmod() --- diff --git a/source4/ntvfs/posix/pvfs_open.c b/source4/ntvfs/posix/pvfs_open.c index f88e21e7386..da32c7f9b63 100644 --- a/source4/ntvfs/posix/pvfs_open.c +++ b/source4/ntvfs/posix/pvfs_open.c @@ -1625,7 +1625,7 @@ NTSTATUS pvfs_open(struct ntvfs_module_context *ntvfs, mode_t mode = pvfs_fileperms(pvfs, attrib); if (f->handle->name->st.st_mode != mode && f->handle->name->dos.attrib != attrib && - fchmod(fd, mode) == -1) { + pvfs_sys_fchmod(pvfs, fd, mode) == -1) { talloc_free(lck); return pvfs_map_errno(pvfs, errno); } diff --git a/source4/ntvfs/posix/pvfs_setfileinfo.c b/source4/ntvfs/posix/pvfs_setfileinfo.c index b40ae9c9ded..ca8e9cbe3f1 100644 --- a/source4/ntvfs/posix/pvfs_setfileinfo.c +++ b/source4/ntvfs/posix/pvfs_setfileinfo.c @@ -534,7 +534,7 @@ NTSTATUS pvfs_setfileinfo(struct ntvfs_module_context *ntvfs, } mode = pvfs_fileperms(pvfs, newstats.dos.attrib); if (!(h->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY)) { - if (fchmod(h->fd, mode) == -1) { + if (pvfs_sys_fchmod(pvfs, h->fd, mode) == -1) { return pvfs_map_errno(pvfs, errno); } } @@ -859,7 +859,7 @@ NTSTATUS pvfs_setpathinfo(struct ntvfs_module_context *ntvfs, newstats.dos.attrib |= (name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY); if (newstats.dos.attrib != name->dos.attrib) { mode_t mode = pvfs_fileperms(pvfs, newstats.dos.attrib); - if (chmod(name->full_name, mode) == -1) { + if (pvfs_sys_chmod(pvfs, name->full_name, mode) == -1) { return pvfs_map_errno(pvfs, errno); } change_mask |= FILE_NOTIFY_CHANGE_ATTRIBUTES; diff --git a/source4/ntvfs/posix/pvfs_util.c b/source4/ntvfs/posix/pvfs_util.c index 63651c203a3..8dedf13a633 100644 --- a/source4/ntvfs/posix/pvfs_util.c +++ b/source4/ntvfs/posix/pvfs_util.c @@ -145,7 +145,7 @@ NTSTATUS pvfs_copy_file(struct pvfs_state *pvfs, close(fd1); mode = pvfs_fileperms(pvfs, name1->dos.attrib); - if (fchmod(fd2, mode) == -1) { + if (pvfs_sys_fchmod(pvfs, fd2, mode) == -1) { status = pvfs_map_errno(pvfs, errno); close(fd2); pvfs_sys_unlink(pvfs, name2->full_name);