summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mdk-stage1/NEWS2
-rw-r--r--mdk-stage1/network.c5
2 files changed, 6 insertions, 1 deletions
diff --git a/mdk-stage1/NEWS b/mdk-stage1/NEWS
index 6f7a51b39..f49a64263 100644
--- a/mdk-stage1/NEWS
+++ b/mdk-stage1/NEWS
@@ -1,5 +1,7 @@
- fix URL passed to stage2 when user didn't provide the arch in the
install path (mga#6823)
+- retry with FTP instead of HTTP when there's no proxy and user didn't
+ provided the architecture in the URL
1.71
- silent hid_generic loading
diff --git a/mdk-stage1/network.c b/mdk-stage1/network.c
index 55249fa34..9030fbbde 100644
--- a/mdk-stage1/network.c
+++ b/mdk-stage1/network.c
@@ -1077,7 +1077,10 @@ enum return_type ftp_prepare(void)
log_message("%s failed.", location_full);
char *with_arch = asprintf_("%s%s/%s/%s", answers[1][0] == '/' ? "" : "/", answers[1], ARCH, COMPRESSED_FILE_REL("/"));
log_message("trying %s...", with_arch);
- fd = http_download_file(answers[0], with_arch, &size, use_http_proxy ? "http" : NULL, http_proxy_host, http_proxy_port);
+ if (use_http_proxy)
+ fd = http_download_file(answers[0], with_arch, &size, use_http_proxy ? "http" : NULL, http_proxy_host, http_proxy_port);
+ else
+ fd = ftp_start_download(ftp_serv_response, with_arch, &size);
if (0 < fd) {
strcpy(location_full, with_arch);
need_arch = 1;