ppp: populate gateway of default route with peer address (#6259)

SVN-Revision: 22806
This commit is contained in:
Jo-Philipp Wich 2010-08-25 23:10:40 +00:00
parent 93c38f2b86
commit 865e34b607
2 changed files with 22 additions and 1 deletions

View File

@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ppp
PKG_VERSION:=2.4.4
PKG_RELEASE:=9
PKG_RELEASE:=10
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://ftp.samba.org/pub/ppp/

View File

@ -0,0 +1,21 @@
--- a/pppd/sys-linux.c
+++ b/pppd/sys-linux.c
@@ -1673,6 +1673,9 @@ int sifdefaultroute (int unit, u_int32_t
memset (&rt, 0, sizeof (rt));
SET_SA_FAMILY (rt.rt_dst, AF_INET);
+ SET_SA_FAMILY(rt.rt_gateway, AF_INET);
+ SIN_ADDR(rt.rt_gateway) = gateway;
+
rt.rt_dev = ifname;
if (kernel_version > KVERSION(2,1,0)) {
@@ -1680,7 +1683,7 @@ int sifdefaultroute (int unit, u_int32_t
SIN_ADDR(rt.rt_genmask) = 0L;
}
- rt.rt_flags = RTF_UP;
+ rt.rt_flags = RTF_UP | RTF_GATEWAY;
if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
if (!ok_error(errno))
error("default route ioctl(SIOCADDRT): %m");