Fix for bug 707, getent group for huge ads groups (>1500 members)
commit9d8235bf413f931e40bca0c27a25ed62b4f3d226
authorVolker Lendecke <vlendec@samba.org>
Thu, 1 Jan 2004 20:30:50 +0000 (1 20:30 +0000)
committerVolker Lendecke <vlendec@samba.org>
Thu, 1 Jan 2004 20:30:50 +0000 (1 20:30 +0000)
tree92de1af084ca85e735348e804d05dd3d8bd1323d
parent6a8cc7f0122ac4dd5b10ff1160735ef1a177d448
Fix for bug 707, getent group for huge ads groups (>1500 members)
This introduces range retrieval of ADS attributes.

I've rewritten most of Günther's patch, partly to remove code duplication and
partly to get the retrieval of members in one rush, not interrupted by the
lookups for the DN.

Andrew, you told me that you would like to see a check whether the AD sequence
number is the same before and after the retrieval to achieve atomicity. This
would be trivial to add, but I'm not sure that we want this, as this adds two
roundtrips to every membership query. We can not know before the first query
whether we get additional range values, and at that point it's too late to ask
for the USN.

Tested with a group of 4000 members along with lots of small groups.

Volker
source/libads/ldap.c
source/nsswitch/winbindd_ads.c