Hello all, I am having trouble displaying my LDAP search results using sorting. I am opening a text file parsing out the UID and performing a LDAP search filtering using this UID, but I'm not getting the results, just blank lines. Below is the script. I'm not sure if I am using the Net::LDAP::Control::Sort correctly.
use Net::LDAP qw(:all); use Net::LDAP::Util qw(ldap_error_text); use Net::LDAP::Control::Sort; use Net::LDAP::Constant qw(LDAP_CONTROL_SORTRESULT); my $ldapObject = Net::LDAP->new('ldap.host.com') || die "$@"; my $sorted = Net::LDAP::Control::Sort->new( order => "departmentnumber" ); open(FH, "< myfile.txt") || die "$@"; while (<FH>) { my $line = $_; $counter++; if ("$counter" < '7') { next; } else { if ($line =~ /^Total/) { $total_line = "$line"; next; } else { chomp($line); $line =~ s/\t\t*/ /g; $line =~ s/\"\"*//g; $line =~ s/\,\,*//g; $line =~ s/^(\n)//; ($iid, $domain, $session, $minutes, $cost) = split(/ */, $line); $sr = $ldapObject->search( base=> 'O=company', scope=> 'sub', filter=> "(&(objectclass=jwsPerson)(uid=$iid))", control => [ $sorted ] ); ($resp) = $sr->control( LDAP_CONTROL_SORTRESULT ); @entries = $sr->entries; foreach $entry (@enttries) { $uid = $entry->get_value('uid'); $fname = $entry->get_value('givvenname'); $lname = $entry->get_value('sn'); $location = $entry->get_value('l'); $deptnum = $entry->get_value('departmentnumber'); print "$uid\t$fname\t$lname\t$location\t$deptnum\n"; } } } } close(FH);