Author: vlendec Date: 2005-06-20 16:11:05 +0000 (Mon, 20 Jun 2005) New Revision: 7786
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7786 Log: Work in progress: When going to support groups and aliases (getgrgid/getgrnam), we need to efficiently expand group members. This involves a getgroupmembers or getaliasmembers. To find out whether we then need to expand those, we need to find their type. samr_lookuprids does not give that info, it's lsa_lookupsids. Thus for each group member we need to do a lookupsids and then on demand expand the group that is member. This means we need a lookupsid(s!!) call, not per sid. This involves a change in the winbind protocol: Now we can add a blob to the request, the same way the response can have a blob. The tricky part in winbindd_lookupsids is to filter out who to ask: On members, this is easy: Our own DC. If we are the DC, we need to ask lsa of the trusted domains. While I was at it, I removed the classic dual daemon. Sorry, Jim, this will kill the performance of your installation of winbind->samba-DC for 'getent group', but I'm working on fixing that. Eventually, WINBINDD_LOOKUPSID might die. Volker Added: trunk/source/nsswitch/winbindd_lookupsids.c Modified: trunk/source/Makefile.in trunk/source/nsswitch/wb_common.c trunk/source/nsswitch/wbinfo.c trunk/source/nsswitch/winbindd.c trunk/source/nsswitch/winbindd.h trunk/source/nsswitch/winbindd_ads.c trunk/source/nsswitch/winbindd_async.c trunk/source/nsswitch/winbindd_cache.c trunk/source/nsswitch/winbindd_dual.c trunk/source/nsswitch/winbindd_nss.h trunk/source/nsswitch/winbindd_passdb.c trunk/source/nsswitch/winbindd_reconnect.c trunk/source/nsswitch/winbindd_rpc.c Changeset: Sorry, the patch is too large (1403 lines) to include; please use WebSVN to see it! WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7786
