From e466cb5c383428b0460c92440b1cb534df42b366 Mon Sep 17 00:00:00 2001
From: Nicolas Thill <nico@openwrt.org>
Date: Wed, 23 Nov 2011 22:44:00 +0000
Subject: [PATCH] package/busybox: backport r29299 (wget: URL-decode
 user:password before base64-encoding it into auth hdr)

SVN-Revision: 29315
---
 package/busybox/Makefile                            | 2 +-
 package/busybox/patches/110-wget_getopt_fix.patch   | 2 +-
 package/busybox/patches/310-passwd_access.patch     | 2 +-
 package/busybox/patches/350-httpd_redir.patch       | 8 ++++----
 package/busybox/patches/410-httpd_cgi_headers.patch | 2 +-
 package/busybox/patches/440-httpd_chdir.patch       | 2 +-
 6 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/package/busybox/Makefile b/package/busybox/Makefile
index d2b16aa913..ac41b64123 100644
--- a/package/busybox/Makefile
+++ b/package/busybox/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=busybox
 PKG_VERSION:=1.15.3
-PKG_RELEASE:=3.3
+PKG_RELEASE:=3.4
 PKG_FLAGS:=essential
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
diff --git a/package/busybox/patches/110-wget_getopt_fix.patch b/package/busybox/patches/110-wget_getopt_fix.patch
index 617679eab3..01c5cd30f6 100644
--- a/package/busybox/patches/110-wget_getopt_fix.patch
+++ b/package/busybox/patches/110-wget_getopt_fix.patch
@@ -1,6 +1,6 @@
 --- a/networking/wget.c
 +++ b/networking/wget.c
-@@ -653,7 +653,7 @@ int wget_main(int argc UNUSED_PARAM, cha
+@@ -658,7 +658,7 @@ int wget_main(int argc UNUSED_PARAM, cha
  		// "tries\0"            Required_argument "t"
  		// "timeout\0"          Required_argument "T"
  		/* Ignored (we always use PASV): */
diff --git a/package/busybox/patches/310-passwd_access.patch b/package/busybox/patches/310-passwd_access.patch
index 6ab6d4b8c4..248fb24aad 100644
--- a/package/busybox/patches/310-passwd_access.patch
+++ b/package/busybox/patches/310-passwd_access.patch
@@ -3,7 +3,7 @@
 
 --- a/networking/httpd.c
 +++ b/networking/httpd.c
-@@ -1699,21 +1699,32 @@ static int check_user_passwd(const char 
+@@ -1627,21 +1627,32 @@ static int check_user_passwd(const char 
  
  		if (ENABLE_FEATURE_HTTPD_AUTH_MD5) {
  			char *md5_passwd;
diff --git a/package/busybox/patches/350-httpd_redir.patch b/package/busybox/patches/350-httpd_redir.patch
index 3d3e041ce8..99f60457ca 100644
--- a/package/busybox/patches/350-httpd_redir.patch
+++ b/package/busybox/patches/350-httpd_redir.patch
@@ -37,7 +37,7 @@
  #define last_mod          (G.last_mod         )
  #define ip_a_d            (G.ip_a_d           )
  #define g_realm           (G.g_realm          )
-@@ -993,8 +997,11 @@ static void send_headers(int responseNum
+@@ -921,8 +925,11 @@ static void send_headers(int responseNum
  	}
  #endif
  	if (responseNum == HTTP_MOVED_TEMPORARILY) {
@@ -50,7 +50,7 @@
  				(g_query ? "?" : ""),
  				(g_query ? g_query : ""));
  	}
-@@ -1924,8 +1931,12 @@ static void handle_incoming_and_exit(con
+@@ -1852,8 +1859,12 @@ static void handle_incoming_and_exit(con
  	} while (*++tptr);
  	*++urlp = '\0';       /* terminate after last character */
  
@@ -64,7 +64,7 @@
  		if (is_directory(urlcopy + 1, 1, &sb)) {
  			found_moved_temporarily = urlcopy;
  		}
-@@ -2266,7 +2277,9 @@ static void sighup_handler(int sig UNUSE
+@@ -2194,7 +2205,9 @@ static void sighup_handler(int sig UNUSE
  }
  
  enum {
@@ -75,7 +75,7 @@
  	d_opt_decode_url,
  	h_opt_home_httpd,
  	IF_FEATURE_HTTPD_ENCODE_URL_STR(e_opt_encode_url,)
-@@ -2315,12 +2328,13 @@ int httpd_main(int argc UNUSED_PARAM, ch
+@@ -2243,12 +2256,13 @@ int httpd_main(int argc UNUSED_PARAM, ch
  	/* We do not "absolutize" path given by -h (home) opt.
  	 * If user gives relative path in -h,
  	 * $SCRIPT_FILENAME will not be set. */
diff --git a/package/busybox/patches/410-httpd_cgi_headers.patch b/package/busybox/patches/410-httpd_cgi_headers.patch
index 2f464608f1..af2dc0c283 100644
--- a/package/busybox/patches/410-httpd_cgi_headers.patch
+++ b/package/busybox/patches/410-httpd_cgi_headers.patch
@@ -1,6 +1,6 @@
 --- a/networking/httpd.c
 +++ b/networking/httpd.c
-@@ -1250,10 +1250,10 @@ static NOINLINE void cgi_io_loop_and_exi
+@@ -1178,10 +1178,10 @@ static NOINLINE void cgi_io_loop_and_exi
  						if (full_write(STDOUT_FILENO, HTTP_200, sizeof(HTTP_200)-1) != sizeof(HTTP_200)-1)
  							break;
  					}
diff --git a/package/busybox/patches/440-httpd_chdir.patch b/package/busybox/patches/440-httpd_chdir.patch
index 0abea5dc3b..0a412f8b31 100644
--- a/package/busybox/patches/440-httpd_chdir.patch
+++ b/package/busybox/patches/440-httpd_chdir.patch
@@ -1,6 +1,6 @@
 --- a/networking/httpd.c
 +++ b/networking/httpd.c
-@@ -1810,6 +1810,7 @@ static void handle_incoming_and_exit(con
+@@ -1738,6 +1738,7 @@ static void handle_incoming_and_exit(con
  	char *header_ptr = header_ptr;
  	Htaccess_Proxy *proxy_entry;
  #endif
-- 
2.30.2