mirror of
https://github.com/curl/curl.git
synced 2026-05-30 10:17:28 +03:00
transfer: move retrycount from connect struct to easy handle
This flag was applied to the connection struct that is released on retry. These changes move the retry counter into Curl_easy struct that lives across retries and retains the new connection. Reported-by: Cherish98 on github Fixes #5794 Closes #5800
This commit is contained in:
parent
43c68d842e
commit
50dd05a552
2 changed files with 6 additions and 3 deletions
|
|
@ -1804,12 +1804,14 @@ CURLcode Curl_retry_request(struct connectdata *conn,
|
|||
}
|
||||
if(retry) {
|
||||
#define CONN_MAX_RETRIES 5
|
||||
if(conn->retrycount++ >= CONN_MAX_RETRIES) {
|
||||
if(data->state.retrycount++ >= CONN_MAX_RETRIES) {
|
||||
failf(data, "Connection died, tried %d times before giving up",
|
||||
CONN_MAX_RETRIES);
|
||||
data->state.retrycount = 0;
|
||||
return CURLE_SEND_ERROR;
|
||||
}
|
||||
infof(conn->data, "Connection died, retrying a fresh connect\n");
|
||||
infof(conn->data, "Connection died, retrying a fresh connect\
|
||||
(retry count: %d)\n", data->state.retrycount);
|
||||
*url = strdup(conn->data->change.url);
|
||||
if(!*url)
|
||||
return CURLE_OUT_OF_MEMORY;
|
||||
|
|
|
|||
|
|
@ -1090,7 +1090,6 @@ struct connectdata {
|
|||
struct http_connect_state *connect_state; /* for HTTP CONNECT */
|
||||
struct connectbundle *bundle; /* The bundle we are member of */
|
||||
int negnpn; /* APLN or NPN TLS negotiated protocol, CURL_HTTP_VERSION* */
|
||||
int retrycount; /* number of retries on a new connection */
|
||||
#ifdef USE_UNIX_SOCKETS
|
||||
char *unix_domain_socket;
|
||||
#endif
|
||||
|
|
@ -1296,6 +1295,8 @@ struct UrlState {
|
|||
/* Points to the connection cache */
|
||||
struct conncache *conn_cache;
|
||||
|
||||
int retrycount; /* number of retries on a new connection */
|
||||
|
||||
/* buffers to store authentication data in, as parsed from input options */
|
||||
struct curltime keeps_speed; /* for the progress meter really */
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue