New Defects reported by Coverity Scan for freerangerouting/frr
Hi, Please find the latest report on new defect(s) introduced to freerangerouting/frr found with Coverity Scan. 16 new defect(s) introduced to freerangerouting/frr found with Coverity Scan. New defect(s) Reported-by: Coverity Scan Showing 16 of 16 defect(s) ** CID 1575926: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1772 in rpki_expire_interval_magic() /bgpd/bgp_rpki.c: 1772 in rpki_expire_interval_magic() ________________________________________________________________________________________________________ *** CID 1575926: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1772 in rpki_expire_interval_magic() 1766 1767 if (vty->node == RPKI_VRF_NODE) 1768 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1769 else 1770 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1771
CID 1575926: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1772 if ((unsigned int)tmp >= rpki_vrf->polling_period) { 1773 rpki_vrf->expire_interval = tmp; 1774 return CMD_SUCCESS; 1775 } 1776 1777 vty_out(vty, "%% Expiry interval must be polling period or larger\n"); /bgpd/bgp_rpki.c: 1772 in rpki_expire_interval_magic() 1766 1767 if (vty->node == RPKI_VRF_NODE) 1768 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1769 else 1770 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1771
CID 1575926: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1772 if ((unsigned int)tmp >= rpki_vrf->polling_period) { 1773 rpki_vrf->expire_interval = tmp; 1774 return CMD_SUCCESS; 1775 } 1776 1777 vty_out(vty, "%% Expiry interval must be polling period or larger\n");
** CID 1575925: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1833 in no_rpki_retry_interval() /bgpd/bgp_rpki.c: 1833 in no_rpki_retry_interval() ________________________________________________________________________________________________________ *** CID 1575925: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1833 in no_rpki_retry_interval() 1827 1828 if (vty->node == RPKI_VRF_NODE) 1829 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1830 else 1831 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1832
CID 1575925: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1833 rpki_vrf->retry_interval = RETRY_INTERVAL_DEFAULT; 1834 return CMD_SUCCESS; 1835 } 1836 1837 DEFPY(rpki_cache, rpki_cache_cmd, 1838 "rpki cache <A.B.C.D|WORD> <TCPPORT|(1-65535)$sshport SSH_UNAME SSH_PRIVKEY [SERVER_PUBKEY]> [source <A.B.C.D>$bindaddr] preference (1-255)", /bgpd/bgp_rpki.c: 1833 in no_rpki_retry_interval() 1827 1828 if (vty->node == RPKI_VRF_NODE) 1829 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1830 else 1831 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1832
CID 1575925: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1833 rpki_vrf->retry_interval = RETRY_INTERVAL_DEFAULT; 1834 return CMD_SUCCESS; 1835 } 1836 1837 DEFPY(rpki_cache, rpki_cache_cmd, 1838 "rpki cache <A.B.C.D|WORD> <TCPPORT|(1-65535)$sshport SSH_UNAME SSH_PRIVKEY [SERVER_PUBKEY]> [source <A.B.C.D>$bindaddr] preference (1-255)",
** CID 1575924: (CHECKED_RETURN) /bgpd/bgp_rpki.c: 1348 in rpki_create_socket() /bgpd/bgp_rpki.c: 1349 in rpki_create_socket() ________________________________________________________________________________________________________ *** CID 1575924: (CHECKED_RETURN) /bgpd/bgp_rpki.c: 1348 in rpki_create_socket() 1342 1343 pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, &cancel_state); 1344 timeout.tv_sec = 30; 1345 timeout.tv_usec = 0; 1346 1347 optlen = sizeof(prev_rcv_tmout);
CID 1575924: (CHECKED_RETURN) Calling "getsockopt(socket, 1, 20, &prev_rcv_tmout, &optlen)" without checking return value. This library function may fail and return an error code.
1348 getsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, &optlen); 1349 getsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, &optlen); 1350 1351 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)); 1352 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)); 1353 /bgpd/bgp_rpki.c: 1349 in rpki_create_socket() 1343 pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, &cancel_state); 1344 timeout.tv_sec = 30; 1345 timeout.tv_usec = 0; 1346 1347 optlen = sizeof(prev_rcv_tmout); 1348 getsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, &optlen);
CID 1575924: (CHECKED_RETURN) Calling "getsockopt(socket, 1, 21, &prev_snd_tmout, &optlen)" without checking return value. This library function may fail and return an error code.
1349 getsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, &optlen); 1350 1351 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)); 1352 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)); 1353 1354 if (connect(socket, res->ai_addr, res->ai_addrlen) == -1) {
** CID 1575923: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1735 in rpki_polling_period_magic() /bgpd/bgp_rpki.c: 1735 in rpki_polling_period_magic() ________________________________________________________________________________________________________ *** CID 1575923: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1735 in rpki_polling_period_magic() 1729 1730 if (vty->node == RPKI_VRF_NODE) 1731 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1732 else 1733 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1734
CID 1575923: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1735 rpki_vrf->polling_period = pp; 1736 return CMD_SUCCESS; 1737 } 1738 1739 DEFUN (no_rpki_polling_period, 1740 no_rpki_polling_period_cmd, /bgpd/bgp_rpki.c: 1735 in rpki_polling_period_magic() 1729 1730 if (vty->node == RPKI_VRF_NODE) 1731 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1732 else 1733 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1734
CID 1575923: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1735 rpki_vrf->polling_period = pp; 1736 return CMD_SUCCESS; 1737 } 1738 1739 DEFUN (no_rpki_polling_period, 1740 no_rpki_polling_period_cmd,
** CID 1575922: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1754 in no_rpki_polling_period() /bgpd/bgp_rpki.c: 1754 in no_rpki_polling_period() ________________________________________________________________________________________________________ *** CID 1575922: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1754 in no_rpki_polling_period() 1748 1749 if (vty->node == RPKI_VRF_NODE) 1750 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1751 else 1752 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1753
CID 1575922: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1754 rpki_vrf->polling_period = POLLING_PERIOD_DEFAULT; 1755 return CMD_SUCCESS; 1756 } 1757 1758 DEFPY (rpki_expire_interval, 1759 rpki_expire_interval_cmd, /bgpd/bgp_rpki.c: 1754 in no_rpki_polling_period() 1748 1749 if (vty->node == RPKI_VRF_NODE) 1750 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1751 else 1752 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1753
CID 1575922: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1754 rpki_vrf->polling_period = POLLING_PERIOD_DEFAULT; 1755 return CMD_SUCCESS; 1756 } 1757 1758 DEFPY (rpki_expire_interval, 1759 rpki_expire_interval_cmd,
** CID 1575921: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1796 in no_rpki_expire_interval() /bgpd/bgp_rpki.c: 1796 in no_rpki_expire_interval() ________________________________________________________________________________________________________ *** CID 1575921: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1796 in no_rpki_expire_interval() 1790 1791 if (vty->node == RPKI_VRF_NODE) 1792 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1793 else 1794 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1795
CID 1575921: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1796 rpki_vrf->expire_interval = rpki_vrf->polling_period * 2; 1797 return CMD_SUCCESS; 1798 } 1799 1800 DEFPY (rpki_retry_interval, 1801 rpki_retry_interval_cmd, /bgpd/bgp_rpki.c: 1796 in no_rpki_expire_interval() 1790 1791 if (vty->node == RPKI_VRF_NODE) 1792 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1793 else 1794 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1795
CID 1575921: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1796 rpki_vrf->expire_interval = rpki_vrf->polling_period * 2; 1797 return CMD_SUCCESS; 1798 } 1799 1800 DEFPY (rpki_retry_interval, 1801 rpki_retry_interval_cmd,
** CID 1575920: (NULL_RETURNS) ________________________________________________________________________________________________________ *** CID 1575920: (NULL_RETURNS) /bgpd/bgp_rpki.c: 2425 in config_on_exit() 2419 struct rpki_vrf *rpki_vrf; 2420 2421 if (vty->node == RPKI_VRF_NODE) 2422 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 2423 else 2424 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf);
CID 1575920: (NULL_RETURNS) Dereferencing a pointer that might be "NULL" "rpki_vrf" when calling "reset".
2425 reset(false, rpki_vrf); 2426 return 1; 2427 } 2428 2429 DEFPY(rpki_reset, 2430 rpki_reset_cmd, /bgpd/bgp_rpki.c: 2425 in config_on_exit() 2419 struct rpki_vrf *rpki_vrf; 2420 2421 if (vty->node == RPKI_VRF_NODE) 2422 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 2423 else 2424 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf);
CID 1575920: (NULL_RETURNS) Dereferencing a pointer that might be "NULL" "rpki_vrf" when calling "reset".
2425 reset(false, rpki_vrf); 2426 return 1; 2427 } 2428 2429 DEFPY(rpki_reset, 2430 rpki_reset_cmd,
** CID 1575919: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1933 in no_rpki_cache_magic() /bgpd/bgp_rpki.c: 1933 in no_rpki_cache_magic() ________________________________________________________________________________________________________ *** CID 1575919: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1933 in no_rpki_cache_magic() 1927 1928 if (vty->node == RPKI_VRF_NODE) 1929 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1930 else 1931 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1932
CID 1575919: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1933 cache_list = rpki_vrf->cache_list; 1934 cache_p = find_cache(preference, cache_list); 1935 if (!rpki_vrf || !cache_p) { 1936 vty_out(vty, "Could not find cache with preference %ld\n", 1937 preference); 1938 return CMD_WARNING; /bgpd/bgp_rpki.c: 1933 in no_rpki_cache_magic() 1927 1928 if (vty->node == RPKI_VRF_NODE) 1929 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1930 else 1931 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1932
CID 1575919: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1933 cache_list = rpki_vrf->cache_list; 1934 cache_p = find_cache(preference, cache_list); 1935 if (!rpki_vrf || !cache_p) { 1936 vty_out(vty, "Could not find cache with preference %ld\n", 1937 preference); 1938 return CMD_WARNING;
** CID 1575918: Null pointer dereferences (REVERSE_INULL) /bgpd/bgp_rpki.c: 1294 in rpki_create_socket() ________________________________________________________________________________________________________ *** CID 1575918: Null pointer dereferences (REVERSE_INULL) /bgpd/bgp_rpki.c: 1294 in rpki_create_socket() 1288 int ret; 1289 #if defined(FOUND_SSH) 1290 struct tr_ssh_config *ssh_config; 1291 char s_port[10]; 1292 #endif 1293
CID 1575918: Null pointer dereferences (REVERSE_INULL) Null-checking "cache" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
1294 if (!cache) 1295 return -1; 1296 1297 if (rpki_vrf->vrfname == NULL) 1298 vrf = vrf_lookup_by_id(VRF_DEFAULT); 1299 else
** CID 1575917: Null pointer dereferences (NULL_RETURNS) /bgpd/bgp_rpki.c: 1631 in rpki() ________________________________________________________________________________________________________ *** CID 1575917: Null pointer dereferences (NULL_RETURNS) /bgpd/bgp_rpki.c: 1631 in rpki() 1625 if (vty->node == CONFIG_NODE) 1626 vty->node = RPKI_NODE; 1627 else { 1628 struct vrf *vrf = VTY_GET_CONTEXT(vrf); 1629 1630 vty->node = RPKI_VRF_NODE;
CID 1575917: Null pointer dereferences (NULL_RETURNS) Dereferencing "vrf", which is known to be "NULL".
1631 if (vrf->vrf_id != VRF_DEFAULT) 1632 vrfname = vrf->name; 1633 } 1634 1635 rpki_vrf = find_rpki_vrf(vrfname); 1636 if (!rpki_vrf) {
** CID 1575916: (CHECKED_RETURN) /bgpd/bgp_rpki.c: 1352 in rpki_create_socket() /bgpd/bgp_rpki.c: 1366 in rpki_create_socket() /bgpd/bgp_rpki.c: 1351 in rpki_create_socket() /bgpd/bgp_rpki.c: 1368 in rpki_create_socket() ________________________________________________________________________________________________________ *** CID 1575916: (CHECKED_RETURN) /bgpd/bgp_rpki.c: 1352 in rpki_create_socket() 1346 1347 optlen = sizeof(prev_rcv_tmout); 1348 getsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, &optlen); 1349 getsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, &optlen); 1350 1351 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout));
CID 1575916: (CHECKED_RETURN) Calling "setsockopt(socket, 1, 21, &timeout, 16U)" without checking return value. This library function may fail and return an error code.
1352 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)); 1353 1354 if (connect(socket, res->ai_addr, res->ai_addrlen) == -1) { 1355 if (res) 1356 freeaddrinfo(res); 1357 close(socket); /bgpd/bgp_rpki.c: 1366 in rpki_create_socket() 1360 } 1361 1362 if (res) 1363 freeaddrinfo(res); 1364 pthread_setcancelstate(cancel_state, NULL); 1365
CID 1575916: (CHECKED_RETURN) Calling "setsockopt(socket, 1, 20, &prev_rcv_tmout, 16U)" without checking return value. This library function may fail and return an error code.
1366 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, 1367 sizeof(prev_rcv_tmout)); 1368 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, 1369 sizeof(prev_snd_tmout)); 1370 1371 return socket; /bgpd/bgp_rpki.c: 1351 in rpki_create_socket() 1345 timeout.tv_usec = 0; 1346 1347 optlen = sizeof(prev_rcv_tmout); 1348 getsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, &optlen); 1349 getsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, &optlen); 1350
CID 1575916: (CHECKED_RETURN) Calling "setsockopt(socket, 1, 20, &timeout, 16U)" without checking return value. This library function may fail and return an error code.
1351 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)); 1352 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)); 1353 1354 if (connect(socket, res->ai_addr, res->ai_addrlen) == -1) { 1355 if (res) 1356 freeaddrinfo(res); /bgpd/bgp_rpki.c: 1368 in rpki_create_socket() 1362 if (res) 1363 freeaddrinfo(res); 1364 pthread_setcancelstate(cancel_state, NULL); 1365 1366 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, 1367 sizeof(prev_rcv_tmout));
CID 1575916: (CHECKED_RETURN) Calling "setsockopt(socket, 1, 21, &prev_snd_tmout, 16U)" without checking return value. This library function may fail and return an error code.
1368 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, 1369 sizeof(prev_snd_tmout)); 1370 1371 return socket; 1372 } 1373
** CID 1575915: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1814 in rpki_retry_interval_magic() /bgpd/bgp_rpki.c: 1814 in rpki_retry_interval_magic() ________________________________________________________________________________________________________ *** CID 1575915: (NULL_RETURNS) /bgpd/bgp_rpki.c: 1814 in rpki_retry_interval_magic() 1808 1809 if (vty->node == RPKI_VRF_NODE) 1810 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1811 else 1812 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1813
CID 1575915: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1814 rpki_vrf->retry_interval = tmp; 1815 return CMD_SUCCESS; 1816 } 1817 1818 DEFUN (no_rpki_retry_interval, 1819 no_rpki_retry_interval_cmd, /bgpd/bgp_rpki.c: 1814 in rpki_retry_interval_magic() 1808 1809 if (vty->node == RPKI_VRF_NODE) 1810 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1811 else 1812 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1813
CID 1575915: (NULL_RETURNS) Dereferencing "rpki_vrf", which is known to be "NULL".
1814 rpki_vrf->retry_interval = tmp; 1815 return CMD_SUCCESS; 1816 } 1817 1818 DEFUN (no_rpki_retry_interval, 1819 no_rpki_retry_interval_cmd,
** CID 1575914: Resource leaks (RESOURCE_LEAK) /bgpd/bgp_rpki.c: 1341 in rpki_create_socket() ________________________________________________________________________________________________________ *** CID 1575914: Resource leaks (RESOURCE_LEAK) /bgpd/bgp_rpki.c: 1341 in rpki_create_socket() 1335 1336 frr_with_privs (&bgpd_privs) { 1337 socket = vrf_socket(res->ai_family, res->ai_socktype, 1338 res->ai_protocol, vrf->vrf_id, NULL); 1339 } 1340 if (socket < 0)
CID 1575914: Resource leaks (RESOURCE_LEAK) Variable "res" going out of scope leaks the storage it points to.
1341 return -1; 1342 1343 pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, &cancel_state); 1344 timeout.tv_sec = 30; 1345 timeout.tv_usec = 0; 1346
** CID 1575913: (NULL_RETURNS) ________________________________________________________________________________________________________ *** CID 1575913: (NULL_RETURNS) /bgpd/bgp_rpki.c: 2457 in rpki_reset_config_mode_magic() 2451 struct rpki_vrf *rpki_vrf; 2452 2453 if (vty->node == RPKI_VRF_NODE) 2454 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 2455 else 2456 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf);
CID 1575913: (NULL_RETURNS) Dereferencing a pointer that might be "NULL" "rpki_vrf" when calling "reset".
2457 return reset(true, rpki_vrf) == SUCCESS ? CMD_SUCCESS : CMD_WARNING; 2458 } 2459 2460 DEFUN (debug_rpki, 2461 debug_rpki_cmd, 2462 "debug rpki", /bgpd/bgp_rpki.c: 2457 in rpki_reset_config_mode_magic() 2451 struct rpki_vrf *rpki_vrf; 2452 2453 if (vty->node == RPKI_VRF_NODE) 2454 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 2455 else 2456 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf);
CID 1575913: (NULL_RETURNS) Dereferencing a pointer that might be "NULL" "rpki_vrf" when calling "reset".
2457 return reset(true, rpki_vrf) == SUCCESS ? CMD_SUCCESS : CMD_WARNING; 2458 } 2459 2460 DEFUN (debug_rpki, 2461 debug_rpki_cmd, 2462 "debug rpki",
** CID 1575912: (REVERSE_INULL) /bgpd/bgp_rpki.c: 1355 in rpki_create_socket() /bgpd/bgp_rpki.c: 1362 in rpki_create_socket() ________________________________________________________________________________________________________ *** CID 1575912: (REVERSE_INULL) /bgpd/bgp_rpki.c: 1355 in rpki_create_socket() 1349 getsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &prev_snd_tmout, &optlen); 1350 1351 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)); 1352 setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)); 1353 1354 if (connect(socket, res->ai_addr, res->ai_addrlen) == -1) {
CID 1575912: (REVERSE_INULL) Null-checking "res" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
1355 if (res) 1356 freeaddrinfo(res); 1357 close(socket); 1358 pthread_setcancelstate(cancel_state, NULL); 1359 return -1; 1360 } /bgpd/bgp_rpki.c: 1362 in rpki_create_socket() 1356 freeaddrinfo(res); 1357 close(socket); 1358 pthread_setcancelstate(cancel_state, NULL); 1359 return -1; 1360 } 1361
CID 1575912: (REVERSE_INULL) Null-checking "res" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
1362 if (res) 1363 freeaddrinfo(res); 1364 pthread_setcancelstate(cancel_state, NULL); 1365 1366 setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &prev_rcv_tmout, 1367 sizeof(prev_rcv_tmout));
** CID 1575911: Null pointer dereferences (REVERSE_INULL) /bgpd/bgp_rpki.c: 1935 in no_rpki_cache_magic() ________________________________________________________________________________________________________ *** CID 1575911: Null pointer dereferences (REVERSE_INULL) /bgpd/bgp_rpki.c: 1935 in no_rpki_cache_magic() 1929 rpki_vrf = VTY_GET_CONTEXT_SUB(rpki_vrf); 1930 else 1931 rpki_vrf = VTY_GET_CONTEXT(rpki_vrf); 1932 1933 cache_list = rpki_vrf->cache_list; 1934 cache_p = find_cache(preference, cache_list);
CID 1575911: Null pointer dereferences (REVERSE_INULL) Null-checking "rpki_vrf" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
1935 if (!rpki_vrf || !cache_p) { 1936 vty_out(vty, "Could not find cache with preference %ld\n", 1937 preference); 1938 return CMD_WARNING; 1939 } 1940
________________________________________________________________________________________________________ To view the defects in Coverity Scan visit, https://u15810271.ct.sendgrid.net/ls/click?upn=HRESupC-2F2Czv4BOaCWWCy7my0P0...
participants (1)
-
scan-admin@coverity.com