The branch, v3-3-test has been updated via 7ef92e36e4293e6ee30beaba2d63ccf2cbd443d0 (commit) from 9a70a1305732fb22d85d57cb381fa35e3ba31c54 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log ----------------------------------------------------------------- commit 7ef92e36e4293e6ee30beaba2d63ccf2cbd443d0 Author: Jeremy Allison <[EMAIL PROTECTED]> Date: Wed Sep 10 16:23:31 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 427cfc9..7479aea 100644 --- a/source/smbd/posix_acls.c +++ b/source/smbd/posix_acls.c @@ -3398,10 +3398,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