* Note: Route re-advertisement happens elsewhere after other processing
* other changes.
*/
-static int handle_tunnel_ip_change(struct bgp *bgp, struct bgpevpn *vpn,
- struct in_addr originator_ip)
+static void handle_tunnel_ip_change(struct bgp *bgp, struct bgpevpn *vpn,
+ struct in_addr originator_ip)
{
struct prefix_evpn p;
+ if (IPV4_ADDR_SAME(&vpn->originator_ip, &originator_ip))
+ return;
+
/* If VNI is not live, we only need to update the originator ip */
if (!is_vni_live(vpn)) {
vpn->originator_ip = originator_ip;
- return 0;
+ return;
}
/* Update the tunnel-ip hash */
/* Update the tunnel IP and re-advertise all routes for this VNI. */
vpn->originator_ip = originator_ip;
- return 0;
+ return;
}
static struct bgp_path_info *
/* If tunnel endpoint IP has changed, update (and delete prior
* type-3 route, if needed.)
*/
- if (!IPV4_ADDR_SAME(&vpn->originator_ip, &originator_ip))
- handle_tunnel_ip_change(bgp, vpn, originator_ip);
+ handle_tunnel_ip_change(bgp, vpn, originator_ip);
/* Update all routes with new endpoint IP and/or export RT
* for VRFs