Use a group search filter which is similar to the filter which is used
by the basic MS Windows group membership management.
The filter excludes the group type GROUP_TYPE_BUILTIN_LOCAL_GROUP.
Signed-off-by: Björn Baumbach <bb@sernet.de>
Reviewed-by: Ralph Boehme <slow@samba.org>
filter += ('(&(sAMAccountName=%s)(samAccountType=%d))' %
(ldb.binary_encode(member), dsdb.ATYPE_NORMAL_ACCOUNT))
if 'group' in member_types:
- filter += ('(&(sAMAccountName=%s)(objectclass=group))' %
+ filter += ('(&(sAMAccountName=%s)'
+ '(objectClass=group)'
+ '(!(groupType:1.2.840.113556.1.4.803:=1)))' %
ldb.binary_encode(member))
if 'computer' in member_types:
samaccountname = member