From a82683694da23799f247b3392a00efdd342afdfc Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Sun, 22 Jan 2023 18:12:04 +0100 Subject: VRF: Fix issues with reconfiguration Protocols receive if_notify() announcements that are filtered according to their VRF setting, but during reconfiguration, they access iface_list directly and forgot to check VRF setting here, which leads to all interfaces be addedd. Fix this issue for Babel, OSPF, RAdv and RIP protocols. Thanks to Marcel Menzel for the bugreport. --- proto/rip/rip.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'proto/rip/rip.c') diff --git a/proto/rip/rip.c b/proto/rip/rip.c index 5f3161ee..8c2d5aeb 100644 --- a/proto/rip/rip.c +++ b/proto/rip/rip.c @@ -797,6 +797,9 @@ rip_reconfigure_ifaces(struct rip_proto *p, struct rip_config *cf) WALK_LIST(iface, iface_list) { + if (p->p.vrf_set && p->p.vrf != iface->master) + continue; + if (!(iface->flags & IF_UP)) continue; -- cgit v1.2.3