From: Joseph Sutton Date: Wed, 20 Sep 2023 03:03:28 +0000 (+1200) Subject: libcli/security: Fix leak on reallocation failure in pull_composite() X-Git-Tag: talloc-2.4.2~1098 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8f4c17e9b519b5f021d3e0d589c2ad2bdd2bb2ac;p=thirdparty%2Fsamba.git libcli/security: Fix leak on reallocation failure in pull_composite() Signed-off-by: Joseph Sutton Reviewed-by: Andrew Bartlett --- diff --git a/libcli/security/conditional_ace.c b/libcli/security/conditional_ace.c index 6fb0cd3a38b..7f4766ed135 100644 --- a/libcli/security/conditional_ace.c +++ b/libcli/security/conditional_ace.c @@ -381,15 +381,18 @@ static ssize_t pull_composite(TALLOC_CTX *mem_ctx, return -1; } if (j == alloc_length) { + struct ace_condition_token *new_tokens = NULL; + alloc_length += 5; - tokens = talloc_realloc(mem_ctx, - tokens, - struct ace_condition_token, - alloc_length); + new_tokens = talloc_realloc(mem_ctx, + tokens, + struct ace_condition_token, + alloc_length); - if (tokens == NULL) { - return -1; + if (new_tokens == NULL) { + goto error; } + tokens = new_tokens; } } tok->n_members = j;