For windows programmers, switching an existing socket from blocking to non-blocking is considered dangerous.  Have a look at the "Winsock Programmer's Lame List":

http://tangentsoft.net/wskfaq/articles/lame-list.html

-- kov



I am developing for Win2K,XP,2003 and was hoping to use an IO model
equivalent to windows overlapped IO to maximize performance. Is there anyway
to encrypt the socket payloads for the SSL handshake, SSL Reads and Writes,
separately and then call WSARecv, WSASend, etc in order to use native window
IO? I know how to do this using SSPI on windows but I would like to develop
an equivalent using openssl to compare the performance.

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Joseph Bruni
Sent: Saturday, February 21, 2004 2:27 AM
To: [EMAIL PROTECTED]
Subject: Re: Non-Blocking Socket Reads and Writes?

Which OS are you using? It's a bit hard to recommend APIs without
knowing which set you are using.

If you are using a POSIX-compliant OS, you can use the fcntl() function
to switch your socket between blocking and non-blocking:

non-blocking:

fcntl(my_socket,F_SETFL,O_NONBLOCK)

blocking:

fcntl(my_socket,F_SETFL,0)


--
http://www.badgerbadgerbadger.com/

On Feb 20, 2004, at 9:14 AM, Chris Rowe wrote:

> Do I need to call  ioctlsocket(m_socket, FIONBIO, (u_long FAR*)
> &iMode); to enable non-blocking or can I just #define FIONBIO and
> #define USE_NBIO from within my code?
>
>
>
>
>
>
> From: Chris Rowe [mailto:[EMAIL PROTECTED]
>  Sent: Friday, February 20, 2004 9:18 AM
> To: '[EMAIL PROTECTED]'
> Subject: Non-Blocking Socket Reads and Writes?
>
>
>
> I am having a hard time finding a good example on using non-blocking
> I/O with SSL_Read and SSL_Write?
>
> How do I set the underlying BIO to non-blocking? I am assuming it
> requires the use of SSL_ERROR_WANT_READ or SSL_peek()???
>
> I have been looking in the man pages on openssl but need a little push
> in the right direction please.
>
>
>
> Thanks in advance,
>
> Chris Rowe
>
>

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

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

Automated List Manager                           [EMAIL PROTECTED]

Reply via email to