svn commit: samba r7786 - in trunk/source: . nsswitch
vlendec at samba.org
vlendec at samba.org
Mon Jun 20 16:11:07 GMT 2005
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
More information about the samba-cvs
mailing list