1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-26 10:04:02 +03:00

Pushed from the wrong branch - this is the version

without Simo's review changes. Apologies to all
and I'll re-submit in less of a haste after the
weekend.

Revert "Fix the UNIX extensions CHOWN calls to use FCHOWN if available, else LCHOWN."

This reverts commit cf86adc4419f2636a0b24824ab04ebfcd5bb074d.
This commit is contained in:
Jeremy Allison 2013-08-24 18:43:29 -07:00
parent cf86adc441
commit 9cbd4fcd1e

View File

@ -7148,12 +7148,12 @@ static NTSTATUS smb_set_file_unix_basic(connection_struct *conn,
(unsigned int)set_owner,
smb_fname_str_dbg(smb_fname)));
if (fsp && fsp->fh->fd != -1) {
ret = SMB_VFS_FCHOWN(fsp, set_owner, (gid_t)-1);
} else {
/* UNIX calls always operate on symlinks. */
if (S_ISLNK(sbuf.st_ex_mode)) {
ret = SMB_VFS_LCHOWN(conn, smb_fname->base_name,
set_owner, (gid_t)-1);
} else {
ret = SMB_VFS_CHOWN(conn, smb_fname->base_name,
set_owner, (gid_t)-1);
}
if (ret != 0) {
@ -7171,20 +7171,12 @@ static NTSTATUS smb_set_file_unix_basic(connection_struct *conn,
if ((set_grp != (uid_t)SMB_GID_NO_CHANGE) &&
(sbuf.st_ex_gid != set_grp)) {
int ret;
DEBUG(10,("smb_set_file_unix_basic: SMB_SET_FILE_UNIX_BASIC "
"changing group %u for file %s\n",
(unsigned int)set_owner,
smb_fname_str_dbg(smb_fname)));
if (fsp && fsp->fh->fd != -1) {
ret = SMB_VFS_FCHOWN(fsp, set_owner, (gid_t)-1);
} else {
/* UNIX calls always operate on symlinks. */
ret = SMB_VFS_LCHOWN(conn, smb_fname->base_name, (uid_t)-1,
set_grp);
}
if (ret != 0) {
if (SMB_VFS_CHOWN(conn, smb_fname->base_name, (uid_t)-1,
set_grp) != 0) {
status = map_nt_error_from_unix(errno);
if (delete_on_fail) {
SMB_VFS_UNLINK(conn, smb_fname);