[PATCH] smbcacls: Do not read old ACL for 'set' operation
Jeremy Allison
jra at samba.org
Fri Apr 29 23:00:28 UTC 2016
On Fri, Apr 29, 2016 at 03:43:06PM -0700, Christof Schmitt wrote:
> From 50a324498a0d9637087a7ab101bfd66b1e45a980 Mon Sep 17 00:00:00 2001
> From: Christof Schmitt <cs at samba.org>
> Date: Fri, 29 Apr 2016 15:12:38 -0700
> Subject: [PATCH] smbcacls: Do not read old ACL for 'set' operation
>
> Signed-off-by: Christof Schmitt <cs at samba.org>
Nice catch ! LGTM. Pushed.
> source3/utils/smbcacls.c | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c
> index d50219c..5cb707d 100644
> --- a/source3/utils/smbcacls.c
> +++ b/source3/utils/smbcacls.c
> @@ -505,10 +505,16 @@ static int cacl_set(struct cli_state *cli, const char *filename,
> if (!sd) return EXIT_PARSE_ERROR;
> if (test_args) return EXIT_OK;
>
> - old = get_secdesc(cli, filename);
> -
> - if (!old) {
> - return EXIT_FAILED;
> + if (mode != SMB_ACL_SET) {
> + /*
> + * Do not fetch old ACL when it will be overwritten
> + * completely with a new one.
> + */
> + old = get_secdesc(cli, filename);
> +
> + if (!old) {
> + return EXIT_FAILED;
> + }
> }
>
> /* the logic here is rather more complex than I would like */
> --
> 1.8.3.1
>
More information about the samba-technical
mailing list