[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3009-gc22bf57

Jeremy Allison jra at samba.org
Wed Sep 10 23:23:19 GMT 2008


The branch, v3-2-test has been updated
       via  c22bf57329f16a45eb0954b72f8083270f6535e7 (commit)
      from  4e06c71a12654d78c9a94fb023e372920bf7618b (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit c22bf57329f16a45eb0954b72f8083270f6535e7
Author: Jeremy Allison <jra at samba.org>
Date:   Wed Sep 10 16:21:25 2008 -0700

    Fix bug #5052 - not work cancel inheritance on share. We were
    using the parent security descriptor type and flags instead
    of using the passed in SD.
    Jeremy.

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

Summary of changes:
 source/smbd/posix_acls.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/smbd/posix_acls.c b/source/smbd/posix_acls.c
index 86934f9..d798fa8 100644
--- a/source/smbd/posix_acls.c
+++ b/source/smbd/posix_acls.c
@@ -3400,10 +3400,17 @@ static NTSTATUS append_parent_acl(files_struct *fsp,
 			parent_name));
 	}
 
-	parent_sd->dacl->aces = new_ace;
-	parent_sd->dacl->num_aces = i;
+	/* This sucks. psd should be const and we should
+	 * be doing a deep-copy here. We're getting away
+	 * with is as we know parent_sd is talloced off
+	 * talloc_tos() as well as psd. JRA. */
 
-	*pp_new_sd = parent_sd;
+	psd->dacl->aces = new_ace;
+	psd->dacl->num_aces = i;
+	psd->type &= ~(SE_DESC_DACL_AUTO_INHERITED|
+                         SE_DESC_DACL_AUTO_INHERIT_REQ);
+
+	*pp_new_sd = psd;
 	return status;
 }
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list