mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-25 18:32:37 +00:00
ospf6d: remove redundant null ptr check
Fix defect flagged by Coverity: *** CID 1599962: Null pointer dereferences (REVERSE_INULL) /ospf6d/ospf6_intra.c: 775 in ospf6_intra_prefix_lsa_get_prefix_str() 769 { 770 struct ospf6_prefix *prefix = nth_prefix(lsa->header, pos); 771 struct in6_addr in6 = { 0 }; 772 char tbuf[16]; 773 774 /* ensure buflen >= INET6_ADDRSTRLEN + '/128\0' */ >>> CID 1599962: Null pointer dereferences (REVERSE_INULL) >>> Null-checking "lsa" suggests that it may be null, but it has already been dereferenced on all paths leading to the check. 775 if (!lsa || !prefix || !buf || buflen < (5 + INET6_ADDRSTRLEN)) 776 return NULL; 777 778 memcpy(&in6, OSPF6_PREFIX_BODY(prefix), 779 OSPF6_PREFIX_SPACE(prefix->prefix_length)); 780 inet_ntop(AF_INET6, &in6, buf, buflen); The check for lsa being not-null happens in ospf6_lsdb_show() and first dereference happens in ospf6_lsa_show_summary() Signed-off-by: Andrew Cooks <acooks.at.bda@gmail.com>
This commit is contained in:
parent
905fc5c611
commit
24d8d95dd1
@ -772,7 +772,7 @@ static char *ospf6_intra_prefix_lsa_get_prefix_str(struct ospf6_lsa *lsa,
|
|||||||
char tbuf[16];
|
char tbuf[16];
|
||||||
|
|
||||||
/* ensure buflen >= INET6_ADDRSTRLEN + '/128\0' */
|
/* ensure buflen >= INET6_ADDRSTRLEN + '/128\0' */
|
||||||
if (!lsa || !prefix || !buf || buflen < (5 + INET6_ADDRSTRLEN))
|
if (!prefix || !buf || buflen < (5 + INET6_ADDRSTRLEN))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
memcpy(&in6, OSPF6_PREFIX_BODY(prefix),
|
memcpy(&in6, OSPF6_PREFIX_BODY(prefix),
|
||||||
|
Loading…
Reference in New Issue
Block a user