mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-09 20:15:08 +00:00
zebra: Handle local-ip change in a correct way for l3-vni
Ticket: CM-19603 Review: CCR-7142 Testing: Manual Signed-off-by: Mitesh Kanjariya <mitesh@cumulusnetworks.com>
This commit is contained in:
parent
bca63dc8ba
commit
12eeac84ff
@ -6308,15 +6308,26 @@ int zebra_vxlan_if_update(struct interface *ifp, u_int16_t chgflags)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* local-ip change - process oper down, associate with new
|
||||||
|
* local-ip and then process oper up again
|
||||||
|
*/
|
||||||
|
if (chgflags & ZEBRA_VXLIF_LOCAL_IP_CHANGE) {
|
||||||
|
if (if_is_operative(ifp)) {
|
||||||
|
zebra_vxlan_process_l3vni_oper_down(zl3vni);
|
||||||
|
zl3vni->local_vtep_ip = vxl->vtep_ip;
|
||||||
|
if (is_l3vni_oper_up(zl3vni))
|
||||||
|
zebra_vxlan_process_l3vni_oper_up(
|
||||||
|
zl3vni);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Update local tunnel IP. */
|
/* Update local tunnel IP. */
|
||||||
zl3vni->local_vtep_ip = vxl->vtep_ip;
|
zl3vni->local_vtep_ip = vxl->vtep_ip;
|
||||||
|
|
||||||
/* if we have a valid new master or there is a change to the tunnel IP,
|
/* if we have a valid new master, process l3-vni oper up */
|
||||||
* process l3-vni oper up
|
if (chgflags & ZEBRA_VXLIF_MASTER_CHANGE) {
|
||||||
*/
|
if (if_is_operative(ifp) && is_l3vni_oper_up(zl3vni))
|
||||||
if (chgflags
|
|
||||||
& (ZEBRA_VXLIF_MASTER_CHANGE | ZEBRA_VXLIF_LOCAL_IP_CHANGE)) {
|
|
||||||
if (is_l3vni_oper_up(zl3vni))
|
|
||||||
zebra_vxlan_process_l3vni_oper_up(zl3vni);
|
zebra_vxlan_process_l3vni_oper_up(zl3vni);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user