From 408b00c4d73b1975e378ca512cb32c13f9e544d8 Mon Sep 17 00:00:00 2001 From: Mitesh Kanjariya Date: Sun, 5 Nov 2017 17:11:43 -0800 Subject: [PATCH] bgpd: only advertise valid subnet routes as evpn type-5 routes Signed-off-by: Mitesh Kanjariya --- bgpd/bgp_evpn.c | 7 +++++++ lib/.prefix.h.swo | Bin 16384 -> 0 bytes lib/prefix.h | 9 +++++++++ 3 files changed, 16 insertions(+) delete mode 100644 lib/.prefix.h.swo diff --git a/bgpd/bgp_evpn.c b/bgpd/bgp_evpn.c index 1921a9553e..682bdb0075 100644 --- a/bgpd/bgp_evpn.c +++ b/bgpd/bgp_evpn.c @@ -3093,6 +3093,13 @@ void bgp_evpn_advertise_type5_routes(struct bgp *bgp_vrf, struct prefix_evpn evp; char buf[PREFIX_STRLEN]; + if (!rn->info) + continue; + + /* only advertise subnet routes as type-5 */ + if (is_host_route(&rn->p)) + continue; + build_type5_prefix_from_ip_prefix(&evp, &rn->p); ret = update_evpn_type5_route(bgp_vrf, &evp); if (ret) { diff --git a/lib/.prefix.h.swo b/lib/.prefix.h.swo deleted file mode 100644 index 51fe596fb36c03ebaf646e68eed95be6a727fda8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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 == AF_INET) + return (p->prefixlen == IPV4_MAX_BITLEN); + else if (p->family == AF_INET6) + return (p->prefixlen == IPV6_MAX_BITLEN); + return 0; +} + #endif /* _ZEBRA_PREFIX_H */ -- 2.39.5