From: Mitesh Kanjariya Date: Mon, 12 Mar 2018 21:47:28 +0000 (-0700) Subject: Merge branch 'master' into type5-default-originate X-Git-Tag: frr-5.0-dev~171^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=9bb3ca515b59b939c5d9941c4fdd4bd2f2dd38d1;p=matthieu%2Ffrr.git Merge branch 'master' into type5-default-originate --- 9bb3ca515b59b939c5d9941c4fdd4bd2f2dd38d1 diff --cc bgpd/bgp_evpn.h index 3a3ffeb293,bf6150e648..7c0d638327 --- a/bgpd/bgp_evpn.h +++ b/bgpd/bgp_evpn.h @@@ -55,31 -55,11 +55,30 @@@ static inline vni_t label2vni(mpls_labe 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, safi_t safi); - extern void bgp_evpn_withdraw_type5_route(struct bgp *bgp_vrf, - struct prefix *p, + struct attr *src_attr, afi_t afi, + safi_t safi); + extern void bgp_evpn_withdraw_type5_route(struct bgp *bgp_vrf, struct prefix *p, afi_t afi, safi_t safi); extern void bgp_evpn_withdraw_type5_routes(struct bgp *bgp_vrf, afi_t afi, safi_t safi);