Skip to content

Commit 70bb0db

Browse files
committed
schannel: increase renegotiation timeout to 60 seconds
Prior to this change the timeout was 7 seconds but that is too short for enhanced-security users that have to fill out an interactive prompt on Schannel renegotiation (PIN, smart card, etc). Reported-by: Tim Omta Fixes #21270 Closes #21291
1 parent 3b68c67 commit 70bb0db

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

lib/vtls/schannel.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1757,7 +1757,13 @@ enum schannel_renegotiate_caller_t {
17571757
SCH_RENEG_CALLER_IS_SEND
17581758
};
17591759

1760-
#define MAX_RENEG_BLOCK_TIME (7 * 1000) /* 7 seconds in milliseconds */
1760+
/* The maximum time we allow for Schannel renegotiation which may in some
1761+
rare cases block either due to libcurl (waiting on the socket) or Windows
1762+
(waiting on an interactive security prompt). Note Schannel "renegotiation"
1763+
is not necessarily literal TLS renegotiation, but means DecryptMessage
1764+
returned SEC_I_RENEGOTIATE which means at least the security context needs
1765+
to be re-established. */
1766+
#define MAX_RENEG_BLOCK_TIME (60 * 1000) /* 60 seconds in milliseconds */
17611767

17621768
/* This function renegotiates the connection due to a server request received
17631769
by schannel_recv. This function returns CURLE_AGAIN if the renegotiation is

0 commit comments

Comments
 (0)