Hi David thanks very much for the reply. Your response has actually provided
me the insight in to the solution that I was looking for.
I actually wnted to replace the socket calls with the bios abstracted on
memory buffers.

Regards,
Prashanth.

On Fri, Sep 26, 2008 at 8:34 PM, David Schwartz <[EMAIL PROTECTED]>wrote:

>
>
> > Hi SSL experts,
> > I am using the s_client.c and the s_server.c for my ssl client and
> > server. I need to find the socket calls such as send and recv. ie
> > SSL_write( ),  SSL_read( ), bio_read( ), bio( ) write etc will
> > finally have to make a call to the socket calls such as send and
> > recv as I guess. I  need to access these socket calls. But I dont
> > know how to find them. Can anyone please could help me?
>
> > Thanks,
> > Prashanth
>
> Is your question, "How can I use OpenSSL but not have it do the socket
> operations?" If so, look into "bio pairs". The 'ssltest.c' program in the
> 'ssl' directory is an example of how to do this.
>
> It looks like this:
>
> Other SSL connection <-> IO bio <-> SSL state <-> SSL bio <-> Application
>
> And the terms means:
>
> Other SSL connection: The other end of the SSL connection.
> IO bio: Whatever you have to do to act like a socket connected to the other
> SSL connection.
> SSL state: The SSL connection on your end.
> SSL bio: The buffer between the SSL engine and the application.
> Application: The part that sends and receives plaintext that needs to be
> exchanged with the other end.
>
> Just remember, if you use BIO pairs, there are four things you have to do:
>
> 1) If you receive anything from the other SSL endpoint, you need to give it
> to the IO BIO.
>
> 2) If any data appears on the IO BIO, you have to send it to the other SSL
> endpoint.
>
> 3) If your application wants to send anything to the other SSL endpoint,
> you
> need to give it to the SSL bio.
>
> 4) If any data appears on the SSL bio, you need to process it as received
> data.
>
> Do not assume that these operations will associate. That is, do not assume
> that just because you received data from the other SSL endpoint and gave it
> to the IO BIO, data will appear on the SSL bio.
>
> In this case, OpenSSL manages the SSL connection as a state machine hooked
> up to two BIOs. You are responsible for sending to and receiving from both
> BIOs as the SSL engine operates between them.
>
> DS
>
>
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    openssl-users@openssl.org
> Automated List Manager                           [EMAIL PROTECTED]
>

Reply via email to