[gnutls-devel] Guile-GnuTLS | Support for non-blocking use (#14)

Read-only notification of GnuTLS library development activities gnutls-devel at lists.gnutls.org
Wed Jul 19 15:31:47 CEST 2023

Christopher Baines created an issue: https://gitlab.com/gnutls/guile/-/issues/14

I've been testing doing HTTP requests in Guile with non blocking sockets, and it can be made to work.

One issue I came up against is that Guile/guile-gnutls don't use the handshake operation in a way that works with non-blocking sockets. handshake can return eagain in this situation, but this isn't handled appropriately. It's not obvious to me where this should be handled, but maybe if a binding is added for `gnutls_record_get_direction`, then `tls-wrap` in Guile can be changed to use this to call the appropriate waiter on the socket.

Note that you can workaround this above issue by marking the socket as non blocking once the handshake has been completed, but this is probably not ideal since things will block during the handshake.

Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/guile/-/issues/14
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/20230719/c176c527/attachment.html>

More information about the Gnutls-devel mailing list