Problem with callbacks using SyncRequest

Howard Wilkinson <[email protected]> Wed, 20 Jun 2012 11:29:32 +0100
Newsgroups gmane.comp.lang.perl.modules.ldap
Message-ID <[email protected]>
Graham,

I am using the latest CPAN release of Net::LDAP and I am running into a
failure that I am having trouble tracking down.

I am reasonably sure I am using the interface and protocol correctly but
I keep getting this message from within the initial search.

(in cleanup) Can't call method "set_error" on an undefined value
at /usr/share/perl5/Net/LDAP.pm line 894, <DATA> line 522 during global
destruction.

Calling code is:

 $mesg = $ldap->search(base	=> $lsearchbase,
			scope	=> 'sub',
			control	=> [ $req ],
			callback=> sub { return syncCallback(\%DIT, @_); },
			filter	=> '(objectClass=*)',
			attrs	=> [ '*', '+' ]);

And the syncCallback currently does nothing other than save the entry in
an array and call $mesg->pop_entry.

I have Debug messages that show the failure happens outside the
syncCallback but before the search returns.

Do you have any inkling where I should look? I know this is being caused
by the DESTROY being activated but as the Net::LDAP object is still in
scope I cannot see how this is happening.

Howard.