On 06/18/2010 01:37 PM, Steffen Kaiser via RT wrote:
Show quoted text> <URL:
https://rt.cpan.org/Ticket/Display.html?id=58235>
>
> For now, I up the buffer size of sysread(). There seems to be a
> mismatch between my understanding that select() is to yield true, if
> there is data pending, whether or not it is already buffered in
> Net::SSLeay's buffer.
Dear Steffen,
Thank you for already spending time on this bug!
I have written a little test script that connects over tls and does a
getscript. The result is dumped with Data::Dumper. I have set the
debug flag to on.
Please find attached the output.
I have also added my script.
Show quoted text > But I have problems to make the value smaller than 307 bytes,
> with 306 byte STARTTLS let the communication stall.
I have downed the value of the sysread and then it just timeouts sooner.
Show quoted text> in my case, the problem is as such that the response to STARTTLS must
> be read awhole, including the last newline "\n". If the number of
> bytes to read is smaller than that, select() hangs, when trying to
> read the remaining characters from the socket. I do have no problems
> reading scripts in chunks however.
What do you mean with reading in chunks?
But increasing the size of sysread is a good work arround :)
Rudy