diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/module.pmod b/lib/modules/Protocols.pmod/HTTP.pmod/module.pmod index cf50fd65552bde414fae451161f1312b3621893e..8348563f620395c762f5cf30903b58ef405fc076 100644 --- a/lib/modules/Protocols.pmod/HTTP.pmod/module.pmod +++ b/lib/modules/Protocols.pmod/HTTP.pmod/module.pmod @@ -467,8 +467,14 @@ protected void https_proxy_connect_ok(Protocols.HTTP.Query con, { con->set_callbacks(@orig_cb_info); + // Install the timeout handler for the interval until + // the TLS connection is up. + con->init_async_timeout(); con->con->set_nonblocking(0, lambda() { + // Remove the timeout handler; it will be + // reinstated by do_async_method() below. + con->remove_async_timeout(); do_async_method(method, url, query_variables, request_headers, con, data); }, con->async_failed);