Terry I ran into same problem a while ago. I had a blocking server, waiting for client to connect. I had non-blocking client connected to server, It never pass SSL_connect(). I changed non-blocking to blocking I/O BEFORE I called SSL_connect(). It worked fined. It seem to me you need to using blocking socket for SSL_connect to sit there to exchange all the certificate,ciphes.... You can use non-blocking socket for SSL_connect, but you have to put into a loop to call SSL_connect again after you received SSL_WANt_READ or SSL_Want _write.
I hopes it help. TD -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of terry johnston Sent: Monday, January 29, 2007 16:16 To: openssl-users@openssl.org Subject: openssl with non-blocking comms Hello All. I am trying to implement openssl with a server that uses an event notification library under Linux. I am using bio pairs to separate the non-blocking comms from the ssl layer. I am currently not able to get past the first SSL_accept() call. Each new client connection does the following... - gets accepted normally - creates a bio pair - sets up read & write event notification - receives a read notification - reads data & adds it to the network bio using BIO_write() - does a SSL_accept(), which returns -1 - calls SSL_get_error(), which returns 111 - "not yet implemented"? - calls BIO_ctrl_pending() on the network bio, which shows there is nothing to get (presume I would call a BIO_read() to get any data for on-sending) - adds another read event notification but nothing arrives what am I doing wrong?! thank you in advance Terry Johnston -- terry johnston [EMAIL PROTECTED] ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED] ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]