add upstream fixes for 1.7.2
[openwrt/svn-archive/archive.git] / package / busybox / patches / 310-passwd_access.patch
index b6a06cfd7cb6ee4a57c842557f61deb47bc72165..b8c8db7387bcb1406586817a46f035e3976b1656 100644 (file)
@@ -1,18 +1,19 @@
 
        Copyright (C) 2006 OpenWrt.org
 
-diff -ruN busybox-1.3.1-old/networking/httpd.c busybox-1.3.1/networking/httpd.c
---- busybox-1.3.1-old/networking/httpd.c       2006-12-28 18:17:23.000000000 +0100
-+++ busybox-1.3.1/networking/httpd.c   2006-12-28 19:56:34.000000000 +0100
-@@ -1381,12 +1381,26 @@
+Index: busybox-1.7.2/networking/httpd.c
+===================================================================
+--- busybox-1.7.2.orig/networking/httpd.c      2007-09-30 01:54:12.000000000 +0200
++++ busybox-1.7.2/networking/httpd.c   2007-10-04 14:59:20.287304836 +0200
+@@ -1527,12 +1527,26 @@
                        if (ENABLE_FEATURE_HTTPD_AUTH_MD5) {
                                char *cipher;
                                char *pp;
 +                              char *ppnew = NULL;
 +                              struct passwd *pwd = NULL;
  
-                               if (strncmp(p, request, u-request) != 0) {
-                                       /* user uncompared */
+                               if (strncmp(p, request, u - request) != 0) {
+                                       /* user doesn't match */
                                        continue;
                                }
                                pp = strchr(p, ':');
@@ -28,10 +29,10 @@ diff -ruN busybox-1.3.1-old/networking/httpd.c busybox-1.3.1/networking/httpd.c
 +                                      strcpy(ppnew + 1, pwd->pw_passwd);
 +                                      pp = ppnew;
 +                              }
-                               if (pp && pp[1] == '$' && pp[2] == '1' &&
-                                               pp[3] == '$' && pp[4]) {
-                                       pp++;
-@@ -1396,6 +1410,10 @@
+                               if (pp && pp[1] == '$' && pp[2] == '1'
+                                && pp[3] == '$' && pp[4]
+                               ) {
+@@ -1543,6 +1557,10 @@
                                        /* unauthorized */
                                        continue;
                                }