From: Mitesh Kanjariya Date: Mon, 16 Oct 2017 04:19:04 +0000 (-0700) Subject: bgpd: do not send label to zebra route add for evpn routes X-Git-Tag: frr-4.0-dev~58^2~57 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=a89b49cc4e4e5360cb77fd5c897c42af89cbc555;p=matthieu%2Ffrr.git bgpd: do not send label to zebra route add for evpn routes Signed-off-by: Mitesh Kanjariya --- diff --git a/bgpd/bgp_zebra.c b/bgpd/bgp_zebra.c index 4b52b0ffcf..1f4fa48194 100644 --- a/bgpd/bgp_zebra.c +++ b/bgpd/bgp_zebra.c @@ -1139,8 +1139,8 @@ void bgp_zebra_announce(struct bgp_node *rn, struct prefix *p, api_nh->type = NEXTHOP_TYPE_IPV6_IFINDEX; } - if (mpinfo->extra - && bgp_is_valid_label(&mpinfo->extra->label)) { + if (mpinfo->extra && bgp_is_valid_label(&mpinfo->extra->label) + && !CHECK_FLAG(api.flags, ZEBRA_FLAG_EVPN_TYPE2_ROUTE)) { has_valid_label = 1; label = label_pton(&mpinfo->extra->label); @@ -1150,7 +1150,9 @@ void bgp_zebra_announce(struct bgp_node *rn, struct prefix *p, valid_nh_count++; } - if (has_valid_label) + /* if this is a evpn route we don't have to include the label */ + if (has_valid_label && + !(CHECK_FLAG(api.flags, ZEBRA_FLAG_EVPN_TYPE2_ROUTE))) SET_FLAG(api.message, ZAPI_MESSAGE_LABEL); if (info->sub_type != BGP_ROUTE_AGGREGATE) @@ -1192,7 +1194,8 @@ void bgp_zebra_announce(struct bgp_node *rn, struct prefix *p, sizeof(nh_buf)); label_buf[0] = '\0'; - if (has_valid_label) + if (has_valid_label && + !CHECK_FLAG(api.flags, ZEBRA_FLAG_EVPN_TYPE2_ROUTE)) sprintf(label_buf, "label %u", api_nh->labels[0]); zlog_debug(" nhop [%d]: %s %s", i + 1, nh_buf,