Bug in lookupname_recv() in nsswitch/winbindd_async.c in
v3-0-stable and v3-0-test, wrong pointer conversion?
boyang at novell.com
Mon Jan 28 13:26:40 GMT 2008
It is not necessarily lookupname_recv be wrong, it can be winbindd_getgroups().
winbindd_lookupname_async() is invoked in three place --- winbindd_group.c, winbindd_sid.c and winbindd_user.c,
In winbindd_user.c and winbindd_sid.c, the private_data is passed to lookupname_recv as struct winindd_cli_state *,
But int winbindd_group.c, it is passed as struct getgroups_state * ......
Thus when winbindd process GETGROUPS request, the pointer is converted from (struct getgroups_state *) to
(struct winbindd_cli_state *), It can not be right, I think.
I am not sure how to fix it yet.
Please give some advice
More information about the samba-technical