]> git.puffer.fish Git - mirror/frr.git/commitdiff
bgpd: do not update leak label at loopback up down 16403/head
authorLoïc Sang <loic.sang@6wind.com>
Wed, 17 Jul 2024 12:40:09 +0000 (14:40 +0200)
committerLoïc Sang <loic.sang@6wind.com>
Wed, 17 Jul 2024 13:42:12 +0000 (15:42 +0200)
The up/down state of the lo loopback interface does not determine the
availability of the default vrf-lite.

Do not update leak label at lo loopback up/down change.

Fixes: b45c5cd959 ("bgpd: update route leak when vrf state changes")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
Signed-off-by: Loïc Sang <loic.sang@6wind.com>
bgpd/bgp_zebra.c

index 7f91e3149e0bfabcd6902a125f8fea7f9f0c96fb..180f4264ecfd28888fd66e04522d3bac4af47e95 100644 (file)
@@ -234,7 +234,7 @@ static int bgp_ifp_up(struct interface *ifp)
        hook_call(bgp_vrf_status_changed, bgp, ifp);
        bgp_nht_ifp_up(ifp);
 
-       if (bgp_get_default() && if_is_loopback(ifp)) {
+       if (bgp_get_default() && if_is_vrf(ifp)) {
                vpn_leak_zebra_vrf_label_update(bgp, AFI_IP);
                vpn_leak_zebra_vrf_label_update(bgp, AFI_IP6);
                vpn_leak_zebra_vrf_sid_update(bgp, AFI_IP);
@@ -289,7 +289,7 @@ static int bgp_ifp_down(struct interface *ifp)
        hook_call(bgp_vrf_status_changed, bgp, ifp);
        bgp_nht_ifp_down(ifp);
 
-       if (bgp_get_default() && if_is_loopback(ifp)) {
+       if (bgp_get_default() && if_is_vrf(ifp)) {
                vpn_leak_zebra_vrf_label_withdraw(bgp, AFI_IP);
                vpn_leak_zebra_vrf_label_withdraw(bgp, AFI_IP6);
                vpn_leak_zebra_vrf_sid_withdraw(bgp, AFI_IP);