From: Ondrej Zajicek (work) Date: Sat, 30 Jun 2018 23:03:16 +0000 (+0200) Subject: BGP: Use implicit-NULL label when announcing MPLS routes with local next-hop X-Git-Tag: v2.0.3~71 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8e86ffce8251f4e48f61b6d8e89966d037ef8e59;p=thirdparty%2Fbird.git BGP: Use implicit-NULL label when announcing MPLS routes with local next-hop We currently cannot assing local labels, but we can still be LSP egress router. Therefore when we announce labeled route with local next-hop, we should announce implicit-NULL label instead of rejecting it completely. --- diff --git a/proto/bgp/packets.c b/proto/bgp/packets.c index d67ef0b23..c40b8ec25 100644 --- a/proto/bgp/packets.c +++ b/proto/bgp/packets.c @@ -875,7 +875,10 @@ bgp_update_next_hop_ip(struct bgp_export_state *s, eattr *a, ea_list **to) /* TODO: Use local MPLS assigned label */ if (s->mpls) - bgp_unset_attr(to, s->pool, BA_MPLS_LABEL_STACK); + { + u32 implicit_null = BGP_MPLS_NULL; + bgp_set_attr_data(to, s->pool, BA_MPLS_LABEL_STACK, 0, &implicit_null, 4); + } } }