From c27c430b21cae3d5906dc211cb29fa7d47e15699 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Mon, 15 Mar 2010 12:16:52 +0100 Subject: [PATCH] s3:smbcacls: also honour the "--sddl" flag when setting ACLs. Michael --- source3/utils/smbcacls.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c index 122e641a016..e1e37ae46c3 100644 --- a/source3/utils/smbcacls.c +++ b/source3/utils/smbcacls.c @@ -827,7 +827,11 @@ static int cacl_set(struct cli_state *cli, char *filename, size_t sd_size; int result = EXIT_OK; - sd = sec_desc_parse(talloc_tos(), cli, the_acl); + if (sddl) { + sd = sddl_decode(talloc_tos(), the_acl, get_global_sam_sid()); + } else { + sd = sec_desc_parse(talloc_tos(), cli, the_acl); + } if (!sd) return EXIT_PARSE_ERROR; if (test_args) return EXIT_OK; @@ -1031,7 +1035,7 @@ static struct cli_state *connect_one(struct user_auth_info *auth_info, { "chown", 'C', POPT_ARG_STRING, NULL, 'C', "Change ownership of a file", "USERNAME" }, { "chgrp", 'G', POPT_ARG_STRING, NULL, 'G', "Change group ownership of a file", "GROUPNAME" }, { "numeric", 0, POPT_ARG_NONE, &numeric, 1, "Don't resolve sids or masks to names" }, - { "sddl", 0, POPT_ARG_NONE, &sddl, 1, "Output acls in sddl format" }, + { "sddl", 0, POPT_ARG_NONE, &sddl, 1, "Output and input acls in sddl format" }, { "test-args", 't', POPT_ARG_NONE, &test_args, 1, "Test arguments"}, POPT_COMMON_SAMBA POPT_COMMON_CONNECTION -- 2.34.1