]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: fix coverity issue in bgp_snmp_bgp4v2.c
authorFrancois Dumontet <francois.dumontet@6wind.com>
Mon, 13 Nov 2023 13:44:19 +0000 (14:44 +0100)
committerFrancois Dumontet <francois.dumontet@6wind.com>
Mon, 13 Nov 2023 18:35:53 +0000 (19:35 +0100)
CID 1570969 Overrun
/bgpd/bgp_snmp_bgp4v2.c: 534 in bgp4v2PathAttrLookup()
/bgpd/bgp_snmp_bgp4v2.c: 575 in bgp4v2PathAttrLookup()
/bgpd/bgp_snmp_bgp4v2.c: 514 in bgp4v2PathAttrLookup()

>>>     CID 1570969:    (OVERRUN)
>>>     Overrunning array "bgp->rib" of 4 64-byte elements at element index 4 (byte offset 319) using index "afi" (which evaluates to 4).

Signed-off-by: Francois Dumontet <francois.dumontet@6wind.com>
bgpd/bgp_snmp_bgp4v2.c

index 34d07a09a5a71d2de8d20d1173bef2afd703adee..3b499271c8ca9764998eca8ad53b6e666d7e345c 100644 (file)
@@ -452,6 +452,7 @@ bgp4v2PathAttrLookup(struct variable *v, oid name[], size_t *length,
                return NULL;
        afi = afi_iana2int(name[namelen - 1]);
        afi_len = afi == AFI_IP ? IN_ADDR_SIZE : IN6_ADDR_SIZE;
+       assert(IS_VALID_AFI(afi));
 
 #define BGP_NLRI_ENTRY_OFFSET namelen