summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2018-07-11 13:06:16 +0000
committerclaudio <claudio@openbsd.org>2018-07-11 13:06:16 +0000
commit89d26a9ff81a3f63f01b1a47e7a57a0a09fc754f (patch)
tree0361e7bab90ce322522ad698b841fab766192cd4
parentvmm(4): respect argument size when reading from undefined ports. (diff)
downloadwireguard-openbsd-89d26a9ff81a3f63f01b1a47e7a57a0a09fc754f.tar.xz
wireguard-openbsd-89d26a9ff81a3f63f01b1a47e7a57a0a09fc754f.zip
rtm_send() the cloned routes because of ICMP mtu changes. Until now
these changes to the routing table have not been visible whereas the RTM_DELETE of those routes have been. Remove this inconsistency. Input and OK mpi@ OK henning@
-rw-r--r--sys/netinet/ip_icmp.c3
-rw-r--r--sys/netinet6/icmp6.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/netinet/ip_icmp.c b/sys/netinet/ip_icmp.c
index 0527c54b3a7..891158083d2 100644
--- a/sys/netinet/ip_icmp.c
+++ b/sys/netinet/ip_icmp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ip_icmp.c,v 1.175 2018/05/21 15:52:22 bluhm Exp $ */
+/* $OpenBSD: ip_icmp.c,v 1.176 2018/07/11 13:06:16 claudio Exp $ */
/* $NetBSD: ip_icmp.c,v 1.19 1996/02/13 23:42:22 christos Exp $ */
/*
@@ -990,6 +990,7 @@ icmp_mtudisc_clone(struct in_addr dst, u_int rtableid)
nrt->rt_rmx = rt->rt_rmx;
rtfree(rt);
rt = nrt;
+ rtm_send(rt, RTM_ADD, 0, rtableid);
}
error = rt_timer_add(rt, icmp_mtudisc_timeout, ip_mtudisc_timeout_q,
rtableid);
diff --git a/sys/netinet6/icmp6.c b/sys/netinet6/icmp6.c
index bdbe89c87f6..64a1d649a22 100644
--- a/sys/netinet6/icmp6.c
+++ b/sys/netinet6/icmp6.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: icmp6.c,v 1.224 2018/06/02 16:38:21 bluhm Exp $ */
+/* $OpenBSD: icmp6.c,v 1.225 2018/07/11 13:06:16 claudio Exp $ */
/* $KAME: icmp6.c,v 1.217 2001/06/20 15:03:29 jinmei Exp $ */
/*
@@ -1806,6 +1806,7 @@ icmp6_mtudisc_clone(struct sockaddr *dst, u_int rtableid)
nrt->rt_rmx = rt->rt_rmx;
rtfree(rt);
rt = nrt;
+ rtm_send(rt, RTM_ADD, 0, rtableid);
}
error = rt_timer_add(rt, icmp6_mtudisc_timeout, icmp6_mtudisc_timeout_q,
rtableid);