aboutsummaryrefslogtreecommitdiffstats
path: root/main/busybox/0001-properly-fix-wget-https-support.patch
diff options
context:
space:
mode:
authorSören Tempel <soeren+git@soeren-tempel.net>2018-08-04 00:11:42 +0200
committerNatanael Copa <ncopa@alpinelinux.org>2018-09-27 10:29:07 +0000
commitbb3bc00f304cb4f0611d45555d124221d365bdce (patch)
tree1f96878a551b23276542247f90cd195fc4754643 /main/busybox/0001-properly-fix-wget-https-support.patch
parent4ecb921f61d14dab2ac6ed518325df376138aa9b (diff)
downloadaports-bb3bc00f304cb4f0611d45555d124221d365bdce.tar.bz2
aports-bb3bc00f304cb4f0611d45555d124221d365bdce.tar.xz
main/busybox: upgrade to 1.29.3
* Remove all patches already applied upstream * 0001-ash-add-support-for-command_not_found_handle-hook-fu.patch * 0001-cat-fix-cat-e-and-cat-v-erroneously-numbering-1st-li.patch * 0001-wget-emit-a-message-that-certificate-verification-is.patch * 0015-ash-introduce-a-config-option-to-search-current-dire.patch * 0016-top-handle-much-larger-VSZ-values.patch * 0017-ifupdown-do-not-fail-if-interface-disappears-during-.patch * Rename config option for command_not_found hook * upstream patch adding this hook slightly differs from our downstream patch in this regard * Rebase some patches manually: * external_ssl_client.patch * 0006-ping-make-ping-work-without-root-privileges.patch * 0007-fbsplash-support-image-and-bar-alignment-and-positio.patch * Add support for `-e` to our ssl_client * See https://git.busybox.net/busybox/commit/?id=403f2999f94937ba3f37db6d093832f636815bb9 * Update the configuration file * Regenerate all patches using `git format-patch --no-numbered --no-signature` to reduce the diff for future upgrades.
Diffstat (limited to 'main/busybox/0001-properly-fix-wget-https-support.patch')
-rw-r--r--main/busybox/0001-properly-fix-wget-https-support.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/main/busybox/0001-properly-fix-wget-https-support.patch b/main/busybox/0001-properly-fix-wget-https-support.patch
new file mode 100644
index 0000000000..2e94a0291e
--- /dev/null
+++ b/main/busybox/0001-properly-fix-wget-https-support.patch
@@ -0,0 +1,67 @@
+From a89f8ef7ddb7506636b535daaf4fb4cfc2f7f6af Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 30 May 2018 09:52:20 +0000
+Subject: [PATCH] properly fix wget https support
+
+See: https://git.alpinelinux.org/cgit/aports/commit/?id=1d0560a9b6b5597b191e5aff69a31c2fe0aba273
+---
+ networking/wget.c | 19 ++++++++++++-------
+ 1 file changed, 12 insertions(+), 7 deletions(-)
+
+diff --git a/networking/wget.c b/networking/wget.c
+index 33c93bad3..e296d241a 100644
+--- a/networking/wget.c
++++ b/networking/wget.c
+@@ -51,7 +51,6 @@
+ //it also enables FTPS support, but it's not well tested yet
+ //config: default y
+ //config: depends on WGET
+-//config: select TLS
+ //config: help
+ //config: wget will use internal TLS code to connect to https:// URLs.
+ //config: Note:
+@@ -716,8 +715,8 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+ int pid;
+ char *servername, *p;
+
+- if (!(option_mask32 & WGET_OPT_NO_CHECK_CERT))
+- bb_error_msg("note: TLS certificate validation not implemented");
++ if (ENABLE_SSL_CLIENT && !(option_mask32 & WGET_OPT_NO_CHECK_CERT))
++ bb_error_msg_and_die("note: TLS certificate validation not implemented");
+
+ servername = xstrdup(host);
+ p = strrchr(servername, ':');
+@@ -734,14 +733,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+ close(sp[0]);
+ xmove_fd(sp[1], 0);
+ xdup2(0, 1);
+- if (BB_MMU) {
++ if (BB_MMU && ENABLE_TLS && (option_mask32 & WGET_OPT_NO_CHECK_CERT)) {
+ tls_state_t *tls = new_tls_state();
+ tls->ifd = tls->ofd = network_fd;
+ tls_handshake(tls, servername);
+ tls_run_copy_loop(tls, flags);
+ exit(0);
+ } else {
+- char *argv[6];
++ char *argv[7], **a;
+
+ xmove_fd(network_fd, 3);
+ argv[0] = (char*)"ssl_client";
+@@ -749,8 +748,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+ //TODO: if (!is_ip_address(servername))...
+ argv[2] = (char*)"-n";
+ argv[3] = servername;
+- argv[4] = (flags & TLSLOOP_EXIT_ON_LOCAL_EOF ? (char*)"-e" : NULL);
+- argv[5] = NULL;
++
++ a = &argv[4];
++ if (flags & TLSLOOP_EXIT_ON_LOCAL_EOF)
++ *a++ = (char*)"-e";
++ if (!ENABLE_SSL_CLIENT && (option_mask32 & WGET_OPT_NO_CHECK_CERT))
++ *a++= (char*)"-I";
++ *a = NULL;
++
+ BB_EXECVP(argv[0], argv);
+ bb_perror_msg_and_die("can't execute '%s'", argv[0]);
+ }