From 7ea471ba8db84b4fb2f02672e59a9f2a9932b4fa Mon Sep 17 00:00:00 2001 From: Jim McDonough Date: Wed, 30 Dec 2009 15:04:55 -0500 Subject: [PATCH] Prevent NULL dereference if group has no members Fix bug #7014 (domain mode winbind crashes retriveing empty group members). --- source3/winbindd/winbindd_rpc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source3/winbindd/winbindd_rpc.c b/source3/winbindd/winbindd_rpc.c index f176fb31370..aa8a5c849fb 100644 --- a/source3/winbindd/winbindd_rpc.c +++ b/source3/winbindd/winbindd_rpc.c @@ -789,16 +789,16 @@ static NTSTATUS lookup_groupmem(struct winbindd_domain *domain, if (!NT_STATUS_IS_OK(result)) return result; - *num_names = rids->count; - rid_mem = rids->rids; - - if (!*num_names) { + if (!rids || !rids->count) { names = NULL; name_types = NULL; sid_mem = NULL; return NT_STATUS_OK; } + *num_names = rids->count; + rid_mem = rids->rids; + /* Step #2: Convert list of rids into list of usernames. Do this in bunches of ~1000 to avoid crashing NT4. It looks like there is a buffer overflow or something like that lurking around -- 2.11.4.GIT