From bd649d05031848c9505940885b66a2ca2b15ad91 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Sun, 15 Jan 2017 03:58:59 +1300 Subject: [PATCH] Make GnuTLS handshake non-blocking --- src/security/Session.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/security/Session.cc b/src/security/Session.cc index d69910d384..0514cc3203 100644 --- a/src/security/Session.cc +++ b/src/security/Session.cc @@ -112,12 +112,12 @@ CreateSession(const Security::ContextPointer &ctx, const Comm::ConnectionPointer } #elif USE_GNUTLS gnutls_session_t tmp; - errCode = gnutls_init(&tmp, static_cast(type)); + errCode = gnutls_init(&tmp, static_cast(type) | GNUTLS_NONBLOCK); Security::SessionPointer session(tmp, [](gnutls_session_t p) { debugs(83, 5, "gnutls_deinit session=" << (void*)p); gnutls_deinit(p); }); - debugs(83, 5, "gnutls_init session=" << (void*)session.get()); + debugs(83, 5, "gnutls_init " << (type == Security::Io::BIO_TO_SERVER ? "client" : "server" )<< " session=" << (void*)session.get()); if (errCode != GNUTLS_E_SUCCESS) { session.reset(); errAction = "failed to initialize session"; -- 2.47.3