in reply to ldap search question
Here is an example with 3 extra lines compare to yours that only prints givenname and department, assuming that those are of the latter form, limiting to values of $value
# configuration: Put the fields you want here. my @fields_i_want_to_see= qw(givenname department); my %show_field = map { $_ => 1 } @fields_i_want_to_see; use Net::LDAP; $ldap = Net::LDAP->new('ldap.acme.com') or die "$@"; $mesg = $ldap->search( base => "o=acme.com", scope => 'sub', filter => "sn=smith", ); # # At this point the user can get the returned data # as an array or as a stack. # In this example we will use an array # How many entries were returned from the search my $max = $mesg->count; for( my $index = 0 ; $index < $max ; $index++) { my $entry = $mesg->entry($index); my $dn = $entry->dn; # Obtain DN of this entry @attrs = $entry->attributes; # Obtain attributes for this entry. foreach my $var (@attrs) { #get a list of values for a given attribute $attr = $entry->get_value( $var, asref => 1 ); if ( defined($attr) ) { foreach my $value ( @$attr ) { print "$var: $value\n" if $show_field{$var};# Print each val +ue for the attribute. } } + } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: ldap search question
by csarid (Sexton) on Jul 21, 2009 at 21:53 UTC | |
|
Re^2: ldap search Follow-up question
by csarid (Sexton) on Jul 24, 2009 at 19:41 UTC |