summaryrefslogtreecommitdiff
path: root/ospfd/ospf_ldp_sync.c
diff options
context:
space:
mode:
authorRajasekar Raja <rajasekarr@nvidia.com>2024-07-05 16:02:12 -0700
committerRajasekar Raja <rajasekarr@nvidia.com>2024-07-12 14:25:33 -0700
commitc77e15710d6a3a9be71f41a9ce608f06b2795dfb (patch)
tree66bcb7df141faa7741107788563b30d33eced65b /ospfd/ospf_ldp_sync.c
parentd7d491537a936333830c7c2fa3cb52df7e5476a9 (diff)
zebra: Fix to avoid two Vrfs with same table ids
During internal testing, when the following sequence is followed, two non default vrfs end up pointing to the same table-id - Initially vrf201 has table id 1002 - ip link add dev vrf202 type vrf table 1002 - ip link set dev vrf202 up - ip link set dev <intrerface> master vrf202 This will ideally lead to zebra exit since this is a misconfiguration as expected. However if we perform a restart frr.service at this point, we end up having two vrfs pointing to same table-id and bad things can happen. This is because in the interface_vrf_change, we incorrectly check for vrf_lookup_by_id() to evaluate if there is a misconfig. This works well for a non restart case but not for the startup case. root@mlx-3700-20:mgmt:/var/log/frr# sudo vtysh -c "sh vrf" vrf mgmt id 37 table 1001 vrf vrf201 id 46 table 1002 vrf vrf202 id 59 table 1002 >>>> Fix: in all cases of misconfiguration, exit zebra as expected. Ticket :#3970414 Signed-off-by: Donald Sharp <sharpd@nvidia.com> Signed-off-by: Rajasekar Raja <rajasekarr@nvidia.com>
Diffstat (limited to 'ospfd/ospf_ldp_sync.c')
0 files changed, 0 insertions, 0 deletions