From: Graham B. <gb...@po...> - 2000-05-09 16:12:23
|
On Tue, May 09, 2000 at 09:10:55AM +0100, Chris Ridd wrote: > On Tue, 09 May 2000 07:49:30 BST, Graham Barr wrote: > > On Mon, May 08, 2000 at 10:40:44PM -0700, Pythagoras Watson wrote: > > > I have attached a script that can be used to cause this problem. > > > Basically, the script sits between your client and the LDAP server. > > > Client requests are sent to the server. Server responses are sent to > > > the client, but are split into small packets that arrive slowly. This > > > causes asn_recv() to enter this "if" statement: > > > 74 if ($len > length $buf) { > > > 75 # Cannot get whole element > > > 76 $_[1]=''; > > > 77 return $peer; > > > 78 } > > > > While I would agree that this would cause the problem with asn_recv, it does > > not explain why scripts hang when we use asn_read instead of asn_recv. > > > > If I could fix that I would just change back to using read instead > > of recv which is what previous versions of Net::LDAP use. > > That would certainly make it easier to get LDAPS working again... Hint, hint. OK, I have changed it. The latest is available from the sourceforge CVS, see http://sourceforge.net/cvs/?group_id=5050 You will also need the latest Convert::ASN (also on sourceforge) as this highlighted a problem. Graham. |