From b920b908578d68c7c80f1c1e89c42784693e18d5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 18 Jun 2018 10:36:19 +0200 Subject: [PATCH] Detect redirect loops Fixes #2225. --- src/libstore/download.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libstore/download.cc b/src/libstore/download.cc index 7a5deed32..07acd5d0e 100644 --- a/src/libstore/download.cc +++ b/src/libstore/download.cc @@ -244,6 +244,7 @@ struct CurlDownloader : public Downloader curl_easy_setopt(req, CURLOPT_URL, request.uri.c_str()); curl_easy_setopt(req, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(req, CURLOPT_MAXREDIRS, 10); curl_easy_setopt(req, CURLOPT_NOSIGNAL, 1); curl_easy_setopt(req, CURLOPT_USERAGENT, ("curl/" LIBCURL_VERSION " Nix/" + nixVersion + @@ -364,6 +365,7 @@ struct CurlDownloader : public Downloader case CURLE_INTERFACE_FAILED: case CURLE_UNKNOWN_OPTION: case CURLE_SSL_CACERT_BADFILE: + case CURLE_TOO_MANY_REDIRECTS: err = Misc; break; default: // Shut up warnings