Since you can probably assume that the triples will have all three
fields, you can probably get away with the simpler filter:
(nisNetgroupTriple=$host,*)
especially if you can ensure $host does not contain any commas.
One possibility for your problem is your directory server doesn't index
single character substrings (so the comma alone will never match).
On 10/30/2013 12:41 AM, Patrick W. wrote:
Hi,
I am having a bit of problem with ldap search on nisNetgroupTriple attribute.
Getting the list of user netgroups a user ($uid in this example) belongs to
work:
my $res = $ldap->search( base => $netgrpbasedn, filter =>
"(nisNetgroupTriple=*,$uid,*)", attrs => ['dn', 'cn']);
But search returns nothing if I do the following, to get a list of host
netgroups that a host is belongs to:
my $res = $ldap->search( base => $netgrpbasedn, filter =>
"(nisNetgroupTriple=$host,*,*)", attrs => ['dn', 'cn']);
The $host will be in the form of fqdn hostname (ie. server.acme.com)
I have tried setting $filter like these also:
$filter = "(nisNetgroupTriple=\($host,*,*\))"
$filter = "(nisNetgroupTriple=$host,-,-)"
Any pointer will be appreciated.
Patrick
--
%% Christopher A. Bongaarts %% c...@umn.edu %%
%% OIT - Identity Management %% http://umn.edu/~cab %%
%% University of Minnesota %% +1 (612) 625-1809 %%