summaryrefslogtreecommitdiff
path: root/libcli/security
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2014-05-26 20:48:05 +0000
committerVolker Lendecke <vl@samba.org>2014-05-27 12:54:55 +0200
commitf52690dc68e2b2778f7c85eae64b3dc45f06409a (patch)
tree1780177aabcefe8d007bbdf952357e91435bfd05 /libcli/security
parentb22b35e8c64dba8441ad1f915215b16d8811b6ab (diff)
downloadsamba-f52690dc68e2b2778f7c85eae64b3dc45f06409a.tar.gz
libcli: Fix a memleak
struct security_ace has a struct dom_sid, not a pointer to it. So we don't have to talloc it first and then not free it. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Volker Lendecke <vl@samba.org> Autobuild-Date(master): Tue May 27 12:54:55 CEST 2014 on sn-devel-104
Diffstat (limited to 'libcli/security')
-rw-r--r--libcli/security/security_descriptor.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/libcli/security/security_descriptor.c b/libcli/security/security_descriptor.c
index 574dd4e317b..25b316cdd2a 100644
--- a/libcli/security/security_descriptor.c
+++ b/libcli/security/security_descriptor.c
@@ -564,21 +564,19 @@ struct security_ace *security_ace_create(TALLOC_CTX *mem_ctx,
uint8_t flags)
{
- struct dom_sid *sid;
struct security_ace *ace;
+ bool ok;
ace = talloc_zero(mem_ctx, struct security_ace);
if (ace == NULL) {
return NULL;
}
- sid = dom_sid_parse_talloc(ace, sid_str);
- if (sid == NULL) {
+ ok = dom_sid_parse(sid_str, &ace->trustee);
+ if (!ok) {
talloc_free(ace);
return NULL;
}
-
- ace->trustee = *sid;
ace->type = type;
ace->access_mask = access_mask;
ace->flags = flags;