diff options
author | Derrell Lipman <derrell@samba.org> | 2007-08-15 13:44:33 +0000 |
---|---|---|
committer | Derrell Lipman <derrell@samba.org> | 2007-08-15 13:44:33 +0000 |
commit | 458af72e9855c5205bd37b4487f66e2c18fa6114 (patch) | |
tree | 23cb352112cbbcb0a030c1ac2f1e09de2d7d674c | |
parent | 6d17dc56beef590811e1c77dddc57fba7e4d4881 (diff) | |
download | samba-458af72e9855c5205bd37b4487f66e2c18fa6114.tar.gz samba-458af72e9855c5205bd37b4487f66e2c18fa6114.tar.xz samba-458af72e9855c5205bd37b4487f66e2c18fa6114.zip |
r24460: - Removing all ACEs was causing removal of the DACL entirely. Win2000 ignored
the request, presumably due to the PROTECTED flag not being set. Setting
that flag (in make_sec_desc()) has much wider implications than just to
libsmbclient, so instead of modifying that, we'll remove security
descriptors by setting the number of ACEs to zero. At some point, we might
want to look into whether we should actually be setting the PROTECTED flag
in the DACL.
Reference http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/distrib/dsce_ctl_qxju.mspx?mfr=true
Derrell
-rw-r--r-- | source/libsmb/libsmbclient.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/source/libsmb/libsmbclient.c b/source/libsmb/libsmbclient.c index 83a79f09c0b..8e85b7f111d 100644 --- a/source/libsmb/libsmbclient.c +++ b/source/libsmb/libsmbclient.c @@ -5152,7 +5152,6 @@ cacl_set(TALLOC_CTX *ctx, switch (mode) { case SMBC_XATTR_MODE_REMOVE_ALL: old->dacl->num_aces = 0; - old->dacl = NULL; dacl = old->dacl; break; @@ -5169,9 +5168,6 @@ cacl_set(TALLOC_CTX *ctx, old->dacl->aces[k+1]; } old->dacl->num_aces--; - if (old->dacl->num_aces == 0) { - old->dacl = NULL; - } found = True; dacl = old->dacl; break; |