Re: ldapsearch equivalent with Net::LDAP
[email protected] (Dennis Putnam)
| Newsgroups | perl.macosx |
|---|---|
| Message-ID | <[email protected]> |
Thanks again. I see you are an early riser too. No, I am not familiar with that (I'm not a Perl expert either). I'll look it up and see what it can give me. On Nov 27, 2007, at 7:17 AM, Jeremiah Foster wrote: > Did you try using Data::Dumper? It is a built-in module and is > incredibly useful. You can use it to dump out the contents of $mesg > for > example. > >> -----Original Message----- >> From: Dennis Putnam [mailto:[email protected]] >> Sent: den 27 november 2007 13:16 >> To: [email protected] >> Cc: Jeremiah Foster >> Subject: Re: ldapsearch equivalent with Net::LDAP >> >> Thanks for the reply. I'm not an LDAP expert either but this >> issue is more of a Perl Net::LDAP user than an LDAP expert per se. >> Unfortunately there are no real world working script examples >> readily available. The samples that are, show the syntax but >> not the context, making them pretty much useless to the novice. >> >> The script is not 'die'ing so it never really gets to that point. >> Whether I use '$!' or '$@' won't matter until I actually get >> an error condition. It appears that everything is working >> except the search returns zero entries. Since 'ldapsearch' >> works it is clearly not a server problem. That leaves only >> the way I am trying to use Net::LDAP. There does not appear >> to be any way to cause Net::LDAP to generate informational >> messages about the dialog that occurs between it and the LDAP >> server. I don't see any way to debug this. >> >> On Nov 27, 2007, at 3:20 AM, Jeremiah Foster wrote: >> >>> >>> >>> -----Original Message----- >>> From: Jeremiah Foster >>> Sent: den 27 november 2007 09:20 >>> To: 'Dennis Putnam' >>> Subject: RE: ldapsearch equivalent with Net::LDAP >>> >>> >>> >>>> I am trying to do the equivalent of this search: >>>> >>>> ldapsearch -x -LLL -b "dc=ldaphost,dc=mydomain,dc=com" uid >>> >>> Caveat Emptor: I am no LDAP genius. >>> >>>> Here is one of the many variations I tried: >>>> >>>> use strict; >>>> use Net::LDAP; >>>> >>>> my $ldap=Net::LDAP->new("ldaphost.mydomain.com") or die "$@"; >>> >>> Try replacing $@ with $!. You are using $@ which is the eval error >>> message, but I don't see where you are using eval. $! will tell you >>> what went wrong since it is the sys/libcall error message. >>> >>>> my $mesg=$ldap->bind(); >>>> >>>> if ($#ARGV<0) { >>>> $mesg=$ldap->search( >>>> base=>"dc=ldaphost,dc=mydomain,dc=com", >>>> attrs=>["uid"] >>>> ); >>>> print $mesg->entries(),"\n"; >>>> } >>>> else { >>>> } >>>> $ldap->unbind(); >>>> >>>> >>>> I am just starting so my code is incomplete but it should >> be enough >>>> to >>> >>>> get something. However, I get nothing, not even an error. >> Can someone >>>> see what I am doing wrong? TIA. >>> >>> See what your code spits out now and diagnose from there. Hopefully >>> that is a start. >>> >>> Jeremiah >> >>