]> git.proxmox.com Git - mirror_frr.git/blobdiff - bgpd/bgp_evpn.h
Merge branch 'master' into type5-default-originate
[mirror_frr.git] / bgpd / bgp_evpn.h
index bf6150e6480154503bed691fa592368839830898..7c0d638327b546f0ee828059d640e029722239d4 100644 (file)
@@ -55,6 +55,25 @@ static inline vni_t label2vni(mpls_label_t *label)
        return vni;
 }
 
+static inline int advertise_type5_routes(struct bgp *bgp_vrf,
+                                        afi_t afi)
+{
+       if (!bgp_vrf->l3vni)
+               return 0;
+
+       if (afi == AFI_IP &&
+           CHECK_FLAG(bgp_vrf->af_flags[AFI_L2VPN][SAFI_EVPN],
+                      BGP_L2VPN_EVPN_ADVERTISE_IPV4_UNICAST))
+               return 1;
+
+       if (afi == AFI_IP6 &&
+           CHECK_FLAG(bgp_vrf->af_flags[AFI_L2VPN][SAFI_EVPN],
+                      BGP_L2VPN_EVPN_ADVERTISE_IPV6_UNICAST))
+               return 1;
+
+       return 0;
+}
+
 extern void bgp_evpn_advertise_type5_route(struct bgp *bgp_vrf,
                                           struct prefix *p,
                                           struct attr *src_attr, afi_t afi,