On Fri, Feb 07, 2003 at 03:57:17PM +0100, Alexander Biehl wrote:

> but, is there no way to use blocking sockets and to use poll() or
> select()?

When select() or poll() indicate that *some* data is available for
reading, there is no guarantee that it is enough data for OpenSSL to
continue without blocking.  If blocking is not acceptable, you always
should use non-blocking sockets.  You can also work with BIO pairs,
which are inherently non-blocking and allow you to handle the actual
network I/O in whatever way you like.  (A BIO pair is essentially an
OpenSSL-internal pipe; one end can be handled by the SSL library while
the other end is handled by the application -- you feed in to the SSL
library any data received from the network and transmit over the
network any data sent by the SSL library.)



-- 
Bodo Möller <[EMAIL PROTECTED]>
PGP http://www.informatik.tu-darmstadt.de/TI/Mitarbeiter/moeller/0x36d2c658.html
* TU Darmstadt, Theoretische Informatik, Alexanderstr. 10, D-64283 Darmstadt
* Tel. +49-6151-16-6628, Fax +49-6151-16-6036
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to