From 84277b8e6667547808069dc4e0171a135e105736 Mon Sep 17 00:00:00 2001 From: Jim McDonough Date: Wed, 30 Dec 2009 18:19:46 -0800 Subject: [PATCH] Prevent NULL dereference if group has no members --- source/winbindd/winbindd_rpc.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source/winbindd/winbindd_rpc.c b/source/winbindd/winbindd_rpc.c index db43559..459a844 100644 --- a/source/winbindd/winbindd_rpc.c +++ b/source/winbindd/winbindd_rpc.c @@ -787,16 +787,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 -- 1.6.3.3