From 3cabe5ce0f79ff951b6abd778ca4e78ff0f98f9d Mon Sep 17 00:00:00 2001 From: claudio Date: Wed, 29 Nov 2017 19:15:48 +0000 Subject: [PATCH] Revert 1.353, this breaks mpe(4). Also it seems not complete since rt_ifa_del still had this hack in. This needs to be revisted and better understood. It may be needed to add a mplsrdomain to mpe(4) but MPLS only in the rtable 0 is hardcoded in more places and we should fix them all. OK mpi@ --- sys/net/route.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/net/route.c b/sys/net/route.c index d766f14a9ce..3d0d66297c3 100644 --- a/sys/net/route.c +++ b/sys/net/route.c @@ -1,4 +1,4 @@ -/* $OpenBSD: route.c,v 1.367 2017/09/05 10:56:04 mpi Exp $ */ +/* $OpenBSD: route.c,v 1.368 2017/11/29 19:15:48 claudio Exp $ */ /* $NetBSD: route.c,v 1.14 1996/02/13 22:00:46 christos Exp $ */ /* @@ -1028,8 +1028,11 @@ rt_ifa_add(struct ifaddr *ifa, int flags, struct sockaddr *dst) info.rti_info[RTAX_LABEL] = rtlabel_id2sa(ifp->if_rtlabelid, &sa_rl); #ifdef MPLS - if ((flags & RTF_MPLS) == RTF_MPLS) + if ((flags & RTF_MPLS) == RTF_MPLS) { info.rti_mpls = MPLS_OP_POP; + /* MPLS routes only exist in rdomain 0 */ + rtableid = 0; + } #endif /* MPLS */ if ((flags & RTF_HOST) == 0) -- 2.20.1