diff options
Diffstat (limited to 'obsolete-buildroot/sources/openwrt/patches/ppp/auth_hook_segfault')
-rw-r--r-- | obsolete-buildroot/sources/openwrt/patches/ppp/auth_hook_segfault | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/obsolete-buildroot/sources/openwrt/patches/ppp/auth_hook_segfault b/obsolete-buildroot/sources/openwrt/patches/ppp/auth_hook_segfault deleted file mode 100644 index 59007efaf..000000000 --- a/obsolete-buildroot/sources/openwrt/patches/ppp/auth_hook_segfault +++ /dev/null @@ -1,33 +0,0 @@ -To: md@linux.it, mjt@corpit.ru -Subject: pppd-auth-hook.patch -Message-Id: <20040604231517.3E9AD11DC4@paltus.tls.msk.ru> -Date: Sat, 5 Jun 2004 03:15:17 +0400 (MSD) -From: mjt@corpit.ru (Michael Tokarev) - -The patch below fixes pppd segfault when using auth_hook that sets -options for the user (use-after-free problem). - -/mjt - ---- ppp/pppd/auth.c.orig Mon Jun 23 18:12:04 2003 -+++ ppp/pppd/auth.c Sat Jun 5 03:11:36 2004 -@@ -1251,14 +1251,14 @@ - if (pap_auth_hook) { - ret = (*pap_auth_hook)(user, passwd, msg, &addrs, &opts); - if (ret >= 0) { -+ /* note: set_allowed_addrs() saves opts (but not addrs): don't free it! */ - if (ret) - set_allowed_addrs(unit, addrs, opts); -- BZERO(passwd, sizeof(passwd)); -+ else if (opts != 0) -+ free_wordlist(opts); - if (addrs != 0) - free_wordlist(addrs); -- if (opts != 0) { -- free_wordlist(opts); -- } -+ BZERO(passwd, sizeof(passwd)); - return ret? UPAP_AUTHACK: UPAP_AUTHNAK; - } - } - |