Purpose: Allows invalid NLRI attributes due to truncation issue. Upstream: Not at the moment diff -urN frr-frr-8.3.1/bgpd/bgp_attr.c.orig frr-frr-8.3.1/bgpd/bgp_attr.c --- frr-frr-8.3.1/bgpd/bgp_attr.c.orig 2022-10-13 23:36:32.402753630 +0200 +++ frr-frr-8.3.1/bgpd/bgp_attr.c 2022-10-13 23:39:46.155219446 +0200 @@ -2277,9 +2277,13 @@ */ if (length == 0) { bgp_attr_set_lcommunity(attr, NULL); +#if 0 /* Empty extcomm doesn't seem to be invalid per se */ return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_OPT_ATTR_ERR, args->total); +#else + return BGP_ATTR_PARSE_PROCEED; +#endif } bgp_attr_set_lcommunity( @@ -2287,9 +2291,11 @@ /* XXX: fix ecommunity_parse to use stream API */ stream_forward_getp(peer->curr, length); +#if 0 if (!bgp_attr_get_lcommunity(attr)) return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_OPT_ATTR_ERR, args->total); +#endif return BGP_ATTR_PARSE_PROCEED; }