]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_http_media_cache.c: Set reasonable number of redirects
authorSean Bright <sean.bright@gmail.com>
Sat, 21 Nov 2020 17:51:48 +0000 (12:51 -0500)
committerGeorge Joseph <gjoseph@digium.com>
Wed, 9 Dec 2020 19:05:27 +0000 (13:05 -0600)
By default libcurl does not follow redirects, so we explicitly enable
it by setting CURLOPT_FOLLOWLOCATION. Once that is enabled, libcurl
will follow up to CURLOPT_MAXREDIRS redirects, which by default is
configured to be unlimited.

This patch sets CURLOPT_MAXREDIRS to a more reasonable default (8). If
we determine at some point that this needs to be increased on
configurable it is a trivial change.

ASTERISK-29173 #close

Change-Id: I4925ebbcf0c7d728bb9252b3795b3479ae225b30

res/res_http_media_cache.c

index bca576372c3f6b241f341a387075c0b9183127bd..d761442b41ab4280c1ecf3090cce110956441838 100644 (file)
@@ -215,6 +215,7 @@ static CURL *get_curl_instance(struct curl_bucket_file_data *cb_data)
        curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, curl_header_callback);
        curl_easy_setopt(curl, CURLOPT_USERAGENT, GLOBAL_USERAGENT);
        curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
+       curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 8);
        curl_easy_setopt(curl, CURLOPT_URL, ast_sorcery_object_get_id(cb_data->bucket_file));
        curl_easy_setopt(curl, CURLOPT_HEADERDATA, cb_data);