[package] pppd: only remove own default route on shutdown (#7694)
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 4 Aug 2010 21:47:29 +0000 (21:47 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 4 Aug 2010 21:47:29 +0000 (21:47 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22495 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/ppp/Makefile
package/ppp/patches/320-custom_iface_names.patch
package/ppp/patches/330-retain_foreign_default_routes.patch [new file with mode: 0644]

index e0724ff..1688955 100644 (file)
@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ppp
 PKG_VERSION:=2.4.4
 
 PKG_NAME:=ppp
 PKG_VERSION:=2.4.4
-PKG_RELEASE:=8
+PKG_RELEASE:=9
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=ftp://ftp.samba.org/pub/ppp/
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=ftp://ftp.samba.org/pub/ppp/
index 16d90c4..ff9ef86 100644 (file)
@@ -78,7 +78,7 @@
  
        if (ppp_dev_fd >= 0) {
                dbglog("in make_ppp_unit, already had /dev/ppp open?");
  
        if (ppp_dev_fd >= 0) {
                dbglog("in make_ppp_unit, already had /dev/ppp open?");
-@@ -645,6 +650,32 @@ static int make_ppp_unit()
+@@ -645,6 +650,30 @@ static int make_ppp_unit()
        }
        if (x < 0)
                error("Couldn't create new ppp unit: %m");
        }
        if (x < 0)
                error("Couldn't create new ppp unit: %m");
 +                      error("Couldn't rename %s to %s", ifr.ifr_name, ifr.ifr_newname);
 +                      close(ppp_dev_fd);
 +                      ppp_dev_fd = -1;
 +                      error("Couldn't rename %s to %s", ifr.ifr_name, ifr.ifr_newname);
 +                      close(ppp_dev_fd);
 +                      ppp_dev_fd = -1;
-+              } else {
-+                      info("Renamed %s to %s", ifr.ifr_name, ifr.ifr_newname);
 +              }
 +      }
 +
 +              }
 +      }
 +
diff --git a/package/ppp/patches/330-retain_foreign_default_routes.patch b/package/ppp/patches/330-retain_foreign_default_routes.patch
new file mode 100644 (file)
index 0000000..d60ccae
--- /dev/null
@@ -0,0 +1,10 @@
+--- a/pppd/sys-linux.c
++++ b/pppd/sys-linux.c
+@@ -1717,6 +1717,7 @@ int cifdefaultroute (int unit, u_int32_t
+       SIN_ADDR(rt.rt_genmask) = 0L;
+     }
++      rt.rt_dev = ifname;
+     rt.rt_flags = RTF_UP;
+     if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) {
+       if (still_ppp()) {
This page took 0.027298 seconds and 4 git commands to generate.