From: Andreas Schneider Date: Wed, 12 Dec 2018 09:21:25 +0000 (+0100) Subject: libcli:security: Return early if there are no aces to duplicate X-Git-Tag: tdb-1.3.17~352 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c507e98f03eabe59df774a9a5f51411fc23d4e5;p=thirdparty%2Fsamba.git libcli:security: Return early if there are no aces to duplicate Signed-off-by: Andreas Schneider Reviewed-by: Volker Lendecke Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Wed Dec 12 22:18:52 CET 2018 on sn-devel-144 --- diff --git a/libcli/security/security_descriptor.c b/libcli/security/security_descriptor.c index 02c3212fa63..7b7a13d421d 100644 --- a/libcli/security/security_descriptor.c +++ b/libcli/security/security_descriptor.c @@ -67,15 +67,20 @@ struct security_acl *security_acl_dup(TALLOC_CTX *mem_ctx, return NULL; } + *nacl = (struct security_acl) { + .revision = oacl->revision, + .size = oacl->size, + .num_aces = oacl->num_aces, + }; + if (nacl->num_aces == 0) { + return nacl; + } + nacl->aces = (struct security_ace *)talloc_memdup (nacl, oacl->aces, sizeof(struct security_ace) * oacl->num_aces); - if ((nacl->aces == NULL) && (oacl->num_aces > 0)) { + if (nacl->aces == NULL) { goto failed; } - nacl->revision = oacl->revision; - nacl->size = oacl->size; - nacl->num_aces = oacl->num_aces; - return nacl; failed: