aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetr Štetiar <ynezz@true.cz>2022-09-13 07:40:37 +0200
committerPetr Štetiar <ynezz@true.cz>2022-09-16 18:50:46 +0200
commit81388f74b58e98d79274a788b442b7a1aa8a11c7 (patch)
tree5368803c014788cf67ef61158bf365d7c265a77e
parentb8cbca8ac8e89aa417a2ab739b81d288185a4b2d (diff)
downloadupstream-81388f74b58e98d79274a788b442b7a1aa8a11c7.tar.gz
upstream-81388f74b58e98d79274a788b442b7a1aa8a11c7.tar.bz2
upstream-81388f74b58e98d79274a788b442b7a1aa8a11c7.zip
scripts/download.pl: fix downloads with wget
Several users of wget for downloads (curl is not available in the system) have reported broken download functionality: wget --tries=5 --timeout=20 --output-document=- https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.142.tar.xz http://: Invalid host name. Thats all happening due to '' was passed as an argument, which got later expanded to http://. In the context of a list constructor '' is not nothing, it is an empty string element. So fix it by using () as it will yield "nothing" and thus not introduce an empty string element. Fixes: #10692 Fixes: 90c6e3aedf16 ("scripts: always check certificates") Signed-off-by: Jo-Philipp Wich <jo@mein.io> [shellwords() -> ()] Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 50a48faa1b8424e6b4b436b7118fffa2cba14b18)
-rwxr-xr-xscripts/download.pl10
1 files changed, 8 insertions, 2 deletions
diff --git a/scripts/download.pl b/scripts/download.pl
index 90a1be4e26..33e1e12c1e 100755
--- a/scripts/download.pl
+++ b/scripts/download.pl
@@ -82,8 +82,14 @@ sub download_cmd($) {
}
return $have_curl
- ? (qw(curl -f --connect-timeout 20 --retry 5 --location), $check_certificate ? '' : '--insecure', shellwords($ENV{CURL_OPTIONS} || ''), $url)
- : (qw(wget --tries=5 --timeout=20 --output-document=-), $check_certificate ? '' : '--no-check-certificate', shellwords($ENV{WGET_OPTIONS} || ''), $url)
+ ? (qw(curl -f --connect-timeout 20 --retry 5 --location),
+ $check_certificate ? () : '--insecure',
+ shellwords($ENV{CURL_OPTIONS} || ''),
+ $url)
+ : (qw(wget --tries=5 --timeout=20 --output-document=-),
+ $check_certificate ? () : '--no-check-certificate',
+ shellwords($ENV{WGET_OPTIONS} || ''),
+ $url)
;
}