gnutls-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: select + record_recv


From: Nikos Mavrogiannopoulos
Subject: Re: select + record_recv
Date: Sun, 11 Jul 2010 12:34:21 +0200
User-agent: Thunderbird 2.0.0.24 (X11/20100411)

Sam Varshavchik wrote:
> Nikos Mavrogiannopoulos writes:
> 
>> In the early versions of GnuTLS I implemented a hack in order to use
>> select() to check whether there are data to read from the gnutls
>> session. Is this feature actually used? If you want to check for data in
>> a gnutls_session how do you do it?
> 
> I always thought that the correct logic is:
> 
> 1) Non-blocking sockets are a must.
> 
> 2) Check what gnutls_record_check_pending() tells you, first.

So do you traverse over all gnutls sessions and use the pending function?

> 23 If there's nothing pending, poll() or select(), and if it indicates
> that data is available, try gnutls_record_recv().
> 
> Now, if gnutls_record_recv() hands you back some data, you do have to
> consume it. However, this logic seems to work reliably for me, in
> event-driven situations.

Indeed this looks to be the correct approach.


regards,
Nikos



reply via email to

[Prev in Thread] Current Thread [Next in Thread]