diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2008-08-20 14:00:34 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2008-08-20 14:00:34 +0000 |
commit | 088d86511f9e407a27a62e16af60ced1fb05944f (patch) | |
tree | e2bbc127a4a059392f3c5bea27e2944e0c149ecb /package/busybox/patches/310-passwd_access.patch | |
parent | 57db10667068d52282c008a820e50d930c99d3fa (diff) | |
download | upstream-088d86511f9e407a27a62e16af60ced1fb05944f.tar.gz upstream-088d86511f9e407a27a62e16af60ced1fb05944f.tar.bz2 upstream-088d86511f9e407a27a62e16af60ced1fb05944f.zip |
upgrade busybox to v1.11.1 and add current upstream fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12348 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/busybox/patches/310-passwd_access.patch')
-rw-r--r-- | package/busybox/patches/310-passwd_access.patch | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/package/busybox/patches/310-passwd_access.patch b/package/busybox/patches/310-passwd_access.patch index bd0db8ff43..e69de29bb2 100644 --- a/package/busybox/patches/310-passwd_access.patch +++ b/package/busybox/patches/310-passwd_access.patch @@ -1,45 +0,0 @@ - - Copyright (C) 2006 OpenWrt.org - -Index: busybox-1.7.2/networking/httpd.c -=================================================================== ---- busybox-1.7.2.orig/networking/httpd.c 2007-10-30 15:34:59.000000000 -0500 -+++ busybox-1.7.2/networking/httpd.c 2007-10-30 15:35:03.000000000 -0500 -@@ -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 doesn't match */ - continue; - } - pp = strchr(p, ':'); -+ if(pp && pp[1] == '$' && pp[2] == 'p' && -+ pp[3] == '$' && pp[4] && -+ (pwd = getpwnam(&pp[4])) != NULL) { -+ if(pwd->pw_passwd && pwd->pw_passwd[0] == '!') { -+ prev = NULL; -+ continue; -+ } -+ ppnew = xrealloc(ppnew, 5 + strlen(pwd->pw_passwd)); -+ ppnew[0] = ':'; -+ strcpy(ppnew + 1, pwd->pw_passwd); -+ pp = ppnew; -+ } - if (pp && pp[1] == '$' && pp[2] == '1' - && pp[3] == '$' && pp[4] - ) { -@@ -1543,6 +1557,10 @@ - /* unauthorized */ - continue; - } -+ if (ppnew) { -+ free(ppnew); -+ ppnew = NULL; -+ } - } - - if (strcmp(p, request) == 0) { |