From 097635b79bc6ddd6066a8369db6e298a25daa96e Mon Sep 17 00:00:00 2001 From: mbm Date: Tue, 24 Aug 2004 23:50:14 +0000 Subject: massive changes - sstrip cleanup from mjn3 - various patches from nico and others: http://openwrt.org/forum/viewtopic.php?t=368 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@145 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../sources/openwrt/patches/ppp/fix_closed_fds | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 obsolete-buildroot/sources/openwrt/patches/ppp/fix_closed_fds (limited to 'obsolete-buildroot/sources/openwrt/patches/ppp/fix_closed_fds') diff --git a/obsolete-buildroot/sources/openwrt/patches/ppp/fix_closed_fds b/obsolete-buildroot/sources/openwrt/patches/ppp/fix_closed_fds new file mode 100644 index 0000000000..39208ab4db --- /dev/null +++ b/obsolete-buildroot/sources/openwrt/patches/ppp/fix_closed_fds @@ -0,0 +1,34 @@ +sys_init() will open a socket and keep it open for the whole like of the +process. If pppd is started without all standard fds open then the socket +will get one of their numbers, which will be clobbered later by the +/dev/null fd duplicated by main(). + +See Debian bug #235192. + +diff -ruN ppp.orig/pppd/main.c ppp/pppd/main.c +--- ppp.orig/pppd/main.c 2004-02-29 18:50:12.000000000 +0100 ++++ ppp/pppd/main.c 2004-02-29 18:48:56.000000000 +0100 +@@ -385,11 +385,6 @@ + if (dryrun) + die(0); + +- /* +- * Initialize system-dependent stuff. +- */ +- sys_init(); +- + /* Make sure fds 0, 1, 2 are open to somewhere. */ + fd_devnull = open(_PATH_DEVNULL, O_RDWR); + if (fd_devnull < 0) +@@ -401,6 +396,11 @@ + fd_devnull = i; + } + ++ /* ++ * Initialize system-dependent stuff. ++ */ ++ sys_init(); ++ + #ifdef USE_TDB + pppdb = tdb_open(_PATH_PPPDB, 0, 0, O_RDWR|O_CREAT, 0644); + if (pppdb != NULL) { -- cgit v1.2.3