[openssl-users] Graceful shutdown of TLS connection for blocking sockets

Jakob Bohm jb-openssl at wisemo.com
Mon Oct 9 14:49:30 UTC 2017

On 09/10/2017 16:43, Thomas J. Hruska wrote:
> On 10/9/2017 7:29 AM, Jakob Bohm wrote:
>> I suggest you find a good authoritative source for your claim
>> that select() should not be used with blocking sockets.
> http://man7.org/linux/man-pages/man2/select.2.html
> Section BUGS:
> "Under Linux, select() may report a socket file descriptor as "ready 
> for reading", while nevertheless a subsequent read blocks. This could 
> for example happen when data has arrived but upon examination has 
> wrong checksum and is discarded.  There may be other circumstances in 
> which a file descriptor is spuriously reported as ready.  Thus it may 
> be safer to use O_NONBLOCK on sockets that should not block."
> Authoritative enough for you?
That must be a recent change then.  But certainly that is a bug
in Linux select, not in programs relying on the (long time)
documented correct behavior.


Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

More information about the openssl-users mailing list