From ff67794b0263250483554a7f938cef1fba934330 Mon Sep 17 00:00:00 2001 From: Fufu Fang Date: Wed, 4 Sep 2019 17:57:15 +0100 Subject: [PATCH] Now retry on HTTP 520 (Unknown error) --- src/link.c | 4 +++- src/network.h | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/link.c b/src/link.c index 8c85b3e..ed856ce 100644 --- a/src/link.c +++ b/src/link.c @@ -200,9 +200,11 @@ void Link_set_file_stat(Link* this_link, CURL *curl) } } else { fprintf(stderr, "Link_set_file_stat(): HTTP %ld", http_resp); - if (http_resp == HTTP_TOO_MANY_REQUESTS) { + if ((http_resp == HTTP_TOO_MANY_REQUESTS) || + (http_resp == HTTP_UNKNOWN_ERROR)) { fprintf(stderr, ", retrying later.\n"); } else { + fprintf(stderr, "\n"); this_link->type = LINK_INVALID; } fprintf(stderr, ".\n"); diff --git a/src/network.h b/src/network.h index 8f6876c..361e8f4 100644 --- a/src/network.h +++ b/src/network.h @@ -12,7 +12,8 @@ typedef enum { HTTP_OK = 200, HTTP_PARTIAL_CONTENT = 206, HTTP_RANGE_NOT_SATISFIABLE = 416, - HTTP_TOO_MANY_REQUESTS = 429 + HTTP_TOO_MANY_REQUESTS = 429, + HTTP_UNKNOWN_ERROR = 520 } HTTPResponseCode; typedef enum {