summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2003-05-10 02:05:27 +0000
committerJeremy Allison <jra@samba.org>2003-05-10 02:05:27 +0000
commitc3b5da608bf5bd6f9e2fb68643614ed50bf2edac (patch)
tree2758b1e40ca555e942d83f04d3a67e58721bb968
parent364792cd48ed9c6f46c1f78fbf0d48ef7c6cba8f (diff)
downloadsamba-c3b5da608bf5bd6f9e2fb68643614ed50bf2edac.tar.gz
samba-c3b5da608bf5bd6f9e2fb68643614ed50bf2edac.tar.bz2
samba-c3b5da608bf5bd6f9e2fb68643614ed50bf2edac.zip
Fix from Tom.Lackemann@falconstor.com to correctly set the flags based
on the security entries sent. Jeremy. (This used to be commit 748ae44d55f54291da3fe6ba2d60285d6da3d415)
-rw-r--r--source3/libsmb/clisecdesc.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/source3/libsmb/clisecdesc.c b/source3/libsmb/clisecdesc.c
index 20154dbeb2..d86a9022a6 100644
--- a/source3/libsmb/clisecdesc.c
+++ b/source3/libsmb/clisecdesc.c
@@ -79,6 +79,7 @@ BOOL cli_set_secdesc(struct cli_state *cli, int fnum, SEC_DESC *sd)
char param[8];
char *rparam=NULL, *rdata=NULL;
int rparam_count=0, rdata_count=0;
+ uint32 sec_info = 0;
TALLOC_CTX *mem_ctx;
prs_struct pd;
BOOL ret = False;
@@ -97,7 +98,14 @@ BOOL cli_set_secdesc(struct cli_state *cli, int fnum, SEC_DESC *sd)
}
SIVAL(param, 0, fnum);
- SSVAL(param, 4, 0x7);
+
+ if (sd->off_dacl)
+ sec_info |= DACL_SECURITY_INFORMATION;
+ if (sd->off_owner_sid)
+ sec_info |= OWNER_SECURITY_INFORMATION;
+ if (sd->off_grp_sid)
+ sec_info |= GROUP_SECURITY_INFORMATION;
+ SSVAL(param, 4, sec_info);
if (!cli_send_nt_trans(cli,
NT_TRANSACT_SET_SECURITY_DESC,