summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2007-04-28 13:52:49 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:19:44 -0500
commit2724ce625c5b081e923f838755aa26ad1cd4c487 (patch)
tree2a87c63ed63f7c151d4053912239455b2793c238
parent2a5eee9de5a1fab21bfead53d5ea8e1992545ba2 (diff)
downloadsamba-2724ce625c5b081e923f838755aa26ad1cd4c487.tar.gz
samba-2724ce625c5b081e923f838755aa26ad1cd4c487.tar.bz2
samba-2724ce625c5b081e923f838755aa26ad1cd4c487.zip
r22554: Fix an assumption that TALLOC_ARRAY(.., 0) != NULL.
Volker (This used to be commit 1f15a8f371f7c56d1a6e67e52f0f184bbd270c84)
-rw-r--r--source3/groupdb/mapping.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source3/groupdb/mapping.c b/source3/groupdb/mapping.c
index 54cffd1588..46e27d4de6 100644
--- a/source3/groupdb/mapping.c
+++ b/source3/groupdb/mapping.c
@@ -578,12 +578,17 @@ NTSTATUS pdb_default_alias_memberships(struct pdb_methods *methods,
if (!NT_STATUS_IS_OK(result))
return result;
+ *p_num_alias_rids = 0;
+
+ if (num_alias_sids == 0) {
+ TALLOC_FREE(alias_sids);
+ return NT_STATUS_OK;
+ }
+
*pp_alias_rids = TALLOC_ARRAY(mem_ctx, uint32, num_alias_sids);
if (*pp_alias_rids == NULL)
return NT_STATUS_NO_MEMORY;
- *p_num_alias_rids = 0;
-
for (i=0; i<num_alias_sids; i++) {
if (!sid_peek_check_rid(domain_sid, &alias_sids[i],
&(*pp_alias_rids)[*p_num_alias_rids]))