On Tue, Jan 20, 2004 at 03:15:04PM +0100, Gabriel Kihlman wrote:
> 
> > Can you investigate this some more?  I originally tried to use
> > Net::SSLeay's accept() and connect() in non-blocking mode, but that
> > broke the SSL session negotiation.
> >
> > While accept() and connect() follow the BSD sockets interface,
> > Net::SSLeay expects them to send and receive data before they return.
> > In O_NONBLOCK mode, accept() and connect() return before the SSL session
> > is fully established, and I don't know how to resume that.
> 
> I just tried with nonblocking and it worked fine with your testsuite
> (app-{server|client}.perl)..
> 
> I just check the error returned from accept() and call it again. Seems
> like the internal buffers in OpenSSL does the right thing..

[...]

Thanks for the patches, and thanks, Sam, for the non-blocking pointers.

I had to check for both ERROR_WANT_READ and ERROR_WANT_WRITE in the
TIEHANDLE methods, but otherwise it works fine.

http://poe.perl.org/poedown/sslpoe.tar.gz contains the latest version
with your patches.

-- 
Rocco Caputo - [EMAIL PROTECTED]  -http://poe.perl.org/

Reply via email to