Is there something wrong with the way I coded this ldap search? It only seems to return one entry ($count=1).
$res = $ldap->search(
base => "ou=mail aliases,dc=mydomain,dc=com",
filter =>
"(&(mailHost=lists.mydomain.com)(owner=username))",
attrs => [ 'uid', 'mail' ],
);
$res->code() && die $res->error();
$entry = $res->entry(0);
die("Could not look up LDAP entry") if ( !$entry );
@entries = $res->entries;
$count = $res->count;
foreach $entry (@entries) {
print "dn: " . $entry->dn() . "\n";
@attrs = $entry->attributes();
foreach $attr (@attrs) {
printf( "\t%s: %s\n", $attr, $entry->get_value($attr) );
}
}
Something seems to be wrong with this ldap search because I know that there are many entries in our directory that match that filter - i.e.,
ldapsearch -b "ou=mail aliases,dc=mydomain,dc=com" -D cn=manager,dc=my
+domain,dc=com -w 'password' "(&(mailHost=lists.mydomain.com)(owner=us
+ername))"
returns many entries.