> > > > I have server SSL written in C and client SSL written by python.
Also, I
> > use
> > > > SSL non blocking in server SSL.
> > > > Beginning If I trying send any data to client, it's ok. In one
moment I
> > get
> > > > SSL_ERROR_WANT_WRITE. Because I have non blocking SSL in server, my
> > program
> > > > is suspend.
> > > > Maybe, someone have similar problem ?
> > > > I think that it is not correct that I have SSL_ERROR_WRITE.
> > >
> > > Getting non-blocking IO right is quite difficult.  There is a good
> > > starter explanation in the OpenSSL book pages 155 through 166,
> > > especially the section "Non-blocking IO" starting on page 159.
> > >
> > > Viega, Messier & Chandra; Network Security with OpenSSL,
> > > 2002, O'Reilly & Associates, Sebastapol CA USA
> > >
> > > http://www.everythinglinux.com.au/item/OR270X
> > >
> > > I would have given you the OReilly URL but their web site seems
> > > REALLY messed up today -- going to oreilly.com says "the proxy could
> > > not open the server"?
> > >
> >
> > I read about non blocking IO in documentation of OpenSSL. There is
written
> > that I have to call SSL_write when I get SSL_ERROR_WRITE. What I'm doing
bad
> > ?
> >
>
> Where does it say that? In general you should wait until the condition has
> been satisfied (in this case that its OK to write data) and retry the
failed
> call.
>

"If the underlying BIO is non-blocking, SSL_write() will also return, when
the underlying BIO could not satisfy the needs of SSL_write() to continue
the operation. In this case a call to SSL_get_error(3) with the return value
of SSL_write() will yield SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. As at
any time a re-negotiation is possible, a call to SSL_write() can also cause
read operations! The calling process then must repeat the call after taking
appropriate action to satisfy the needs of SSL_write()"

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to