[gnutls-devel] GnuTLS | msmtp unable to send mail with gnutls 3.6.5. TLS1.3 issue? (#644)

Development of GNU's TLS library gnutls-devel at lists.gnutls.org
Sat Dec 8 00:18:04 CET 2018

I just had to rewrite my own code for this reason.

With TLS 1.3, gnutls will return GNUTLS_E_AGAIN even if the underlying transport socket is a blocking socket. I'm pretty sure that previously GNUTLS_E_AGAIN was getting returned only with non-blocking sockets as the underlying transport, when reading or writing to the socket came back with EAGAIN. GNUTLS_E_AGAIN was, basically, a passthrough for EAGAIN on the underlying socket.

All existing code that uses blocking sockets most likely handles any -1 return from gnutls_record_send(), gnutls_record_recv(), and gnutls_handshake() as a fatal transport error. It doesn't know about special meaning of GNUTLS_E_AGAIN, because it was only seen, up until now, with non-blocking sockets.

Existing code that uses non-blocking sockets is unlikely to be affected, as it already understands GNUTLS_E_AGAIN.

Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/issues/644#note_123363338
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20181207/7de482d6/attachment.html>

More information about the Gnutls-devel mailing list