diff options
author | Jay Satiro <raysatiro@yahoo.com> | 2019-04-12 18:57:53 -0400 |
---|---|---|
committer | Jay Satiro <raysatiro@yahoo.com> | 2019-09-26 03:04:26 -0400 |
commit | cded9937007a1cad58dc66b62109b27d70b69b90 (patch) | |
tree | 9699f3d9b411b783e7f4e10079abc4ba5890f3bc /lib/url.c | |
parent | 217812fa9ec9417edbcafae90ec50402faacba96 (diff) | |
download | curl-cded9937007a1cad58dc66b62109b27d70b69b90.tar.gz |
url: don't set appconnect time for non-ssl/non-ssh connections
Prior to this change non-ssl/non-ssh connections that were reused set
TIMER_APPCONNECT [1]. Arguably that was incorrect since no SSL/SSH
handshake took place.
[1]: TIMER_APPCONNECT is publicly known as CURLINFO_APPCONNECT_TIME in
libcurl and %{time_appconnect} in the curl tool. It is documented as
"the time until the SSL/SSH handshake is completed".
Reported-by: Marcel Hernandez
Ref: https://github.com/curl/curl/issues/3760
Closes https://github.com/curl/curl/pull/3773
Diffstat (limited to 'lib/url.c')
-rw-r--r-- | lib/url.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -3815,7 +3815,9 @@ CURLcode Curl_setup_conn(struct connectdata *conn, } else { Curl_pgrsTime(data, TIMER_CONNECT); /* we're connected already */ - Curl_pgrsTime(data, TIMER_APPCONNECT); /* we're connected already */ + if(conn->ssl[FIRSTSOCKET].use || + (conn->handler->protocol & PROTO_FAMILY_SSH)) + Curl_pgrsTime(data, TIMER_APPCONNECT); /* we're connected already */ conn->bits.tcpconnect[FIRSTSOCKET] = TRUE; *protocol_done = TRUE; Curl_updateconninfo(conn, conn->sock[FIRSTSOCKET]); |