Ludovic Courtès <l...@gnu.org> skribis: > The custom input/output port wrapping the TLS session record port would > introduce overhead, and it would also prevent its uses in a non-blocking > context--e.g., with Fibers. The port close mechanism added in GnuTLS > 3.7.7 allows us to get rid of that wrapper.
And here’s the GnuTLS 3.7.7 package to test it; you need to make sure to have 3.7.7 on your load path, for instance by running: ./pre-inst-env guix shell -D guix guile gnutls@3.7.7 Ludo’.
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 1ee5400a9c..33c93b7a5b 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -329,6 +329,21 @@ (define-public gnutls (properties '((ftp-server . "ftp.gnutls.org") (ftp-directory . "/gcrypt/gnutls"))))) +(define-public gnutls-latest + (package + (inherit gnutls) + (version "3.7.7") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnupg/gnutls/v" + (version-major+minor version) + "/gnutls-" version ".tar.xz")) + (patches (search-patches "gnutls-skip-trust-store-test.patch" + "gnutls-cross.patch")) + (sha256 + (base32 + "01i1gl15k6qwvxmxx0by1mn9nlmcmym18wdpm7dn9awfsp8474dy")))))) + (define-public gnutls/guile-2.0 ;; GnuTLS for Guile 2.0. (package/inherit gnutls