From: Volker Lendecke Date: Sat, 14 Jun 2008 22:14:27 +0000 (+0200) Subject: Fix group parsing in libwbclient's copy_group_entry() X-Git-Tag: samba-4.0.0alpha6~801^2~1049 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cd7d7e1e8265324540276010f88b862f0afa68c0;p=thirdparty%2Fsamba.git Fix group parsing in libwbclient's copy_group_entry() This (also) fixes a flaw pointed out by the IBM checker. When verifying that I found out that the parsing was not working as I would have expected it to. Jerry, please check! (cherry picked from commit c2c7790155ab02e1e351caf2bed192ce72913663) (This used to be commit 26c05a52b73763dad5ad0525dab6e20014c3f8d6) --- diff --git a/source3/nsswitch/libwbclient/wbc_pwd.c b/source3/nsswitch/libwbclient/wbc_pwd.c index baee3c37816..d23c378b5fd 100644 --- a/source3/nsswitch/libwbclient/wbc_pwd.c +++ b/source3/nsswitch/libwbclient/wbc_pwd.c @@ -97,11 +97,13 @@ static struct group *copy_group_entry(struct winbindd_gr *g, grp->gr_mem[i] = talloc_strdup(grp, mem_p); BAIL_ON_PTR_ERROR(grp->gr_mem[i], wbc_status); - *mem_q = ','; - mem_p++; - mem_p = mem_q; + if (mem_q == NULL) { + i += 1; + break; + } + mem_p = mem_q + 1; } - grp->gr_mem[g->num_gr_mem] = NULL; + grp->gr_mem[i] = NULL; wbc_status = WBC_ERR_SUCCESS;