diff options
| author | Donatas Abraitis <donatas@opensourcerouting.org> | 2023-09-01 17:00:55 +0300 | 
|---|---|---|
| committer | Donatas Abraitis <donatas@opensourcerouting.org> | 2023-09-01 17:00:55 +0300 | 
| commit | 8ef655c24967c75d8ad214216813f9d3c2ae9db8 (patch) | |
| tree | e20b3d6813f5765c0df32f1e98e2e02190a4189a /bgpd/bgp_attr.c | |
| parent | 640b59a8b0d87337fef336950e7ebf94a3344a7f (diff) | |
bgpd: Treat PMSI tunnel attribute as withdrawn if malformed
https://datatracker.ietf.org/doc/html/rfc6514#page-10 states:
A router that supports the PMSI Tunnel attribute considers this
   attribute to be malformed if either (a) it contains an undefined
   tunnel type in the Tunnel Type field of the attribute, or (b) the
   router cannot parse the Tunnel Identifier field of the attribute as a
   tunnel identifier of the tunnel types specified in the Tunnel Type
   field of the attribute.
When a router that receives a BGP Update that contains the PMSI
   Tunnel attribute with its Partial bit set determines that the
   attribute is malformed, the router SHOULD treat this Update as though
   all the routes contained in this Update had been withdrawn.
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Diffstat (limited to 'bgpd/bgp_attr.c')
| -rw-r--r-- | bgpd/bgp_attr.c | 1 | 
1 files changed, 1 insertions, 0 deletions
diff --git a/bgpd/bgp_attr.c b/bgpd/bgp_attr.c index 8c53191d68..b14411a10c 100644 --- a/bgpd/bgp_attr.c +++ b/bgpd/bgp_attr.c @@ -1405,6 +1405,7 @@ bgp_attr_malformed(struct bgp_attr_parser_args *args, uint8_t subcode,  	case BGP_ATTR_LARGE_COMMUNITIES:  	case BGP_ATTR_ORIGINATOR_ID:  	case BGP_ATTR_CLUSTER_LIST: +	case BGP_ATTR_PMSI_TUNNEL:  	case BGP_ATTR_ENCAP:  	case BGP_ATTR_OTC:  		return BGP_ATTR_PARSE_WITHDRAW;  | 
