summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2015-02-10 03:04:11 +0000
committerclaudio <claudio@openbsd.org>2015-02-10 03:04:11 +0000
commit7a828918cf40f353b22ecdb52ee08a7a8843c602 (patch)
treefacfe36588e3f8bfa26895ebecc18614d9246e51
parentconvert VMXNET drivers to ml_enqueue + if_input (diff)
downloadwireguard-openbsd-7a828918cf40f353b22ecdb52ee08a7a8843c602.tar.xz
wireguard-openbsd-7a828918cf40f353b22ecdb52ee08a7a8843c602.zip
In rt_if_track skip rtables that are not in the rdomain of the ifp.
OK mpi@
-rw-r--r--sys/net/route.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/net/route.c b/sys/net/route.c
index 97b3957ac45..cd0d51a095f 100644
--- a/sys/net/route.c
+++ b/sys/net/route.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: route.c,v 1.204 2015/02/06 01:21:17 mpi Exp $ */
+/* $OpenBSD: route.c,v 1.205 2015/02/10 03:04:11 claudio Exp $ */
/* $NetBSD: route.c,v 1.14 1996/02/13 22:00:46 christos Exp $ */
/*
@@ -1655,6 +1655,9 @@ rt_if_track(struct ifnet *ifp)
return;
for (tid = 0; tid <= rtbl_id_max; tid++) {
+ /* skip rtables that are not in the rdomain of the ifp */
+ if (rtable_l2(tid) != ifp->if_rdomain)
+ continue;
for (i = 1; i <= AF_MAX; i++) {
if ((rnh = rtable_get(tid, i)) != NULL) {
if (!rn_mpath_capable(rnh))