[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Tue Jan 12 17:52:08 MST 2010


The branch, master has been updated
       via  ce8dcbe... Fix bug #7033 - SMBrmdir call always returns true, even on failure to delete a directory.
      from  47c1d9b... Fix bug #6876 - Delete of an object whose parent folder does not have delete rights fails even if the delete right is set on the object.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit ce8dcbe91ba0252140a0e4f84ea4bc746259ddde
Author: Jeremy Allison <jra at samba.org>
Date:   Tue Jan 12 16:50:40 2010 -0800

    Fix bug #7033 - SMBrmdir call always returns true, even on failure to delete a directory.
    
    There is a codepath missing to propagate back error returns from the rmdir
    POSIX call inside close_directory when delete on close is set. This means doing
    an rmdir on a Windows command line will always report success, even when the
    directory was not deleted. This fix adds that codepath back into Samba.
    
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/reply.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index b2d98bf..b6316aa 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -5368,8 +5368,12 @@ void reply_rmdir(struct smb_request *req)
 		goto out;
 	}
 
-	close_file(req, fsp, NORMAL_CLOSE);
-	reply_outbuf(req, 0, 0);
+	status = close_file(req, fsp, NORMAL_CLOSE);
+	if (!NT_STATUS_IS_OK(status)) {
+		reply_nterror(req, status);
+	} else {
+		reply_outbuf(req, 0, 0);
+	}
 
 	dptr_closepath(sconn, smb_dname->base_name, req->smbpid);
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list