[openwrt/openwrt] scripts/download.pl: fix downloads with wget
LEDE Commits
lede-commits at lists.infradead.org
Fri Sep 16 09:51:20 PDT 2022
ynezz pushed a commit to openwrt/openwrt.git, branch openwrt-22.03:
https://git.openwrt.org/81388f74b58e98d79274a788b442b7a1aa8a11c7
commit 81388f74b58e98d79274a788b442b7a1aa8a11c7
Author: Petr Štetiar <ynezz at true.cz>
AuthorDate: Tue Sep 13 07:40:37 2022 +0200
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 at mein.io> [shellwords() -> ()]
Signed-off-by: Petr Štetiar <ynezz at true.cz>
(cherry picked from commit 50a48faa1b8424e6b4b436b7118fffa2cba14b18)
---
scripts/download.pl | 10 ++++++++--
1 file 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)
;
}
More information about the lede-commits
mailing list