Nagendra,
 
I looked at DtlsTransport.cxx. I think that answers my questions.
 
Thanks you.
Prashant.

nagendra modadugu <[EMAIL PROTECTED]> wrote:
* Prashant Kumar <[EMAIL PROTECTED]>[2005-04-28 06:11:38 -0700]:

> I had one question on the timer management and retransmission. I see that there is a new BIO type in the file bss_dgram.c. My question is if the application does not use the dgram BIO type and use the memory BIO instead, does the application has to take the responsibility of timer management and retransmission ?

If you are using a memory BIO for doing I/O, then you are also using
DTLS in non-blocking mode -- in this case, the application is responsible
for managing timeouts. When a timer expires, the application calls
SSL_read() / SSL_write(), and the DTLS layer will take care of retransmitting.

You may want to look at resiprocate/sip/resiprocate/DtlsTransport.cxx
for an implementation of something very similar to the scenario you
describe.

On a high level, reSIPr ocate does the following:

1) many DTLS sessions use the same file descriptor for
network I/O.
2) after data is read from the network, data is
passed to the appropriate DTLS session (based on remote
IP address & port number) through a mem BIO.

nagendra
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List openssl-dev@openssl.org
Automated List Manager [EMAIL PROTECTED]

__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com

Reply via email to