[sr #107464] Secure Connections on AIX using non blocking socket

Nikos Mavrogiannopoulos nmav at gnu.org
Thu Aug 26 11:52:33 CEST 2010

2010/8/26 Bjørn Christensen <bhc at insight.dk>:
> Hello Nikos!
> The code in _gnutls_read fires a gnutls_assert if  recv return -1 and the errno is different from EAGAIN and EINTR. _gnutls_read function returns GNUTLS_E_PULL_ERROR.
> I think the assertion leads to the HandShake being terminated.
> In the _gnutls_read when recv returns -1 and no errno it is treated as a fatal error assert and GNUTLS_E_PULL_ERROR.
> Mayby is would be enough to not return the GNUTLS_E_PULL_ERROR if the errno is zero?

This doesn't sound correct. It will break systems where recv() returns
-1 for a fatal error without errno.


More information about the Gnutls-devel mailing list