summaryrefslogtreecommitdiff
path: root/package/ppp/patches
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2010-08-25 23:10:40 +0000
committerJo-Philipp Wich <jow@openwrt.org>2010-08-25 23:10:40 +0000
commit865e34b607a790798ab24adeb02bd064eb20f903 (patch)
tree33e2b43bdd2b1dfd41463bca36dbcc7a85197c22 /package/ppp/patches
parent93c38f2b860ae7e35fc62b01c5960d85d5d2ccc7 (diff)
downloadmtk-20170518-865e34b607a790798ab24adeb02bd064eb20f903.zip
mtk-20170518-865e34b607a790798ab24adeb02bd064eb20f903.tar.gz
mtk-20170518-865e34b607a790798ab24adeb02bd064eb20f903.tar.bz2
ppp: populate gateway of default route with peer address (#6259)
SVN-Revision: 22806
Diffstat (limited to 'package/ppp/patches')
-rw-r--r--package/ppp/patches/340-populate_default_gateway.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/package/ppp/patches/340-populate_default_gateway.patch b/package/ppp/patches/340-populate_default_gateway.patch
new file mode 100644
index 0000000..ca11206
--- /dev/null
+++ b/package/ppp/patches/340-populate_default_gateway.patch
@@ -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");