mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-09 05:33:42 +00:00
bgpd: Ensure pkt_afi and pkt_safi are not used uninited in some cases
The compiler is, rightly, pointing out that in some cases it is possible that the pkt_afi and pkt_safi values are not properly set and could result in a use before initialized. I do not actually belive that this is possible, but let's make the compiler happy. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
This commit is contained in:
parent
8f904fdb45
commit
617975d114
@ -3596,8 +3596,8 @@ size_t bgp_packet_mpattr_start(struct stream *s, struct peer *peer, afi_t afi,
|
|||||||
struct attr *attr)
|
struct attr *attr)
|
||||||
{
|
{
|
||||||
size_t sizep;
|
size_t sizep;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
afi_t nh_afi;
|
afi_t nh_afi;
|
||||||
|
|
||||||
/* Set extended bit always to encode the attribute length as 2 bytes */
|
/* Set extended bit always to encode the attribute length as 2 bytes */
|
||||||
@ -4404,8 +4404,8 @@ bgp_size_t bgp_packet_attribute(struct bgp *bgp, struct peer *peer,
|
|||||||
size_t bgp_packet_mpunreach_start(struct stream *s, afi_t afi, safi_t safi)
|
size_t bgp_packet_mpunreach_start(struct stream *s, afi_t afi, safi_t safi)
|
||||||
{
|
{
|
||||||
unsigned long attrlen_pnt;
|
unsigned long attrlen_pnt;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
/* Set extended bit always to encode the attribute length as 2 bytes */
|
/* Set extended bit always to encode the attribute length as 2 bytes */
|
||||||
stream_putc(s, BGP_ATTR_FLAG_OPTIONAL | BGP_ATTR_FLAG_EXTLEN);
|
stream_putc(s, BGP_ATTR_FLAG_OPTIONAL | BGP_ATTR_FLAG_EXTLEN);
|
||||||
|
@ -761,8 +761,8 @@ static void bmp_eor(struct bmp *bmp, afi_t afi, safi_t safi, uint8_t flags)
|
|||||||
struct peer *peer;
|
struct peer *peer;
|
||||||
struct listnode *node;
|
struct listnode *node;
|
||||||
struct stream *s, *s2;
|
struct stream *s, *s2;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
frrtrace(3, frr_bgp, bmp_eor, afi, safi, flags);
|
frrtrace(3, frr_bgp, bmp_eor, afi, safi, flags);
|
||||||
|
|
||||||
|
@ -1324,8 +1324,8 @@ static void bgp_open_capability_orf(struct stream *s, struct peer *peer,
|
|||||||
unsigned long orfp;
|
unsigned long orfp;
|
||||||
unsigned long numberp;
|
unsigned long numberp;
|
||||||
int number_of_orfs = 0;
|
int number_of_orfs = 0;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
/* Convert AFI, SAFI to values for packet. */
|
/* Convert AFI, SAFI to values for packet. */
|
||||||
bgp_map_afi_safi_int2iana(afi, safi, &pkt_afi, &pkt_safi);
|
bgp_map_afi_safi_int2iana(afi, safi, &pkt_afi, &pkt_safi);
|
||||||
@ -1389,10 +1389,10 @@ static void bgp_peer_send_gr_capability(struct stream *s, struct peer *peer,
|
|||||||
bool ext_opt_params)
|
bool ext_opt_params)
|
||||||
{
|
{
|
||||||
int len;
|
int len;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
afi_t afi;
|
afi_t afi;
|
||||||
safi_t safi;
|
safi_t safi;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
uint32_t restart_time;
|
uint32_t restart_time;
|
||||||
unsigned long capp = 0;
|
unsigned long capp = 0;
|
||||||
unsigned long rcapp = 0;
|
unsigned long rcapp = 0;
|
||||||
@ -1472,10 +1472,10 @@ static void bgp_peer_send_llgr_capability(struct stream *s, struct peer *peer,
|
|||||||
bool ext_opt_params)
|
bool ext_opt_params)
|
||||||
{
|
{
|
||||||
int len;
|
int len;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
afi_t afi;
|
afi_t afi;
|
||||||
safi_t safi;
|
safi_t safi;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
unsigned long capp = 0;
|
unsigned long capp = 0;
|
||||||
unsigned long rcapp = 0;
|
unsigned long rcapp = 0;
|
||||||
|
|
||||||
@ -1523,10 +1523,10 @@ uint16_t bgp_open_capability(struct stream *s, struct peer *peer,
|
|||||||
{
|
{
|
||||||
uint16_t len;
|
uint16_t len;
|
||||||
unsigned long cp, capp, rcapp, eopl = 0;
|
unsigned long cp, capp, rcapp, eopl = 0;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
afi_t afi;
|
afi_t afi;
|
||||||
safi_t safi;
|
safi_t safi;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
as_t local_as;
|
as_t local_as;
|
||||||
uint8_t afi_safi_count = 0;
|
uint8_t afi_safi_count = 0;
|
||||||
int adv_addpath_tx = 0;
|
int adv_addpath_tx = 0;
|
||||||
|
@ -131,8 +131,8 @@ static struct stream *bgp_update_packet_eor(struct peer *peer, afi_t afi,
|
|||||||
safi_t safi)
|
safi_t safi)
|
||||||
{
|
{
|
||||||
struct stream *s;
|
struct stream *s;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
if (DISABLE_BGP_ANNOUNCE)
|
if (DISABLE_BGP_ANNOUNCE)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -869,8 +869,8 @@ void bgp_route_refresh_send(struct peer *peer, afi_t afi, safi_t safi,
|
|||||||
struct stream *s;
|
struct stream *s;
|
||||||
struct bgp_filter *filter;
|
struct bgp_filter *filter;
|
||||||
int orf_refresh = 0;
|
int orf_refresh = 0;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
if (DISABLE_BGP_ANNOUNCE)
|
if (DISABLE_BGP_ANNOUNCE)
|
||||||
return;
|
return;
|
||||||
@ -976,8 +976,8 @@ void bgp_capability_send(struct peer *peer, afi_t afi, safi_t safi,
|
|||||||
int capability_code, int action)
|
int capability_code, int action)
|
||||||
{
|
{
|
||||||
struct stream *s;
|
struct stream *s;
|
||||||
iana_afi_t pkt_afi;
|
iana_afi_t pkt_afi = IANA_AFI_IPV4;
|
||||||
iana_safi_t pkt_safi;
|
iana_safi_t pkt_safi = IANA_SAFI_UNICAST;
|
||||||
|
|
||||||
/* Convert AFI, SAFI to values for packet. */
|
/* Convert AFI, SAFI to values for packet. */
|
||||||
bgp_map_afi_safi_int2iana(afi, safi, &pkt_afi, &pkt_safi);
|
bgp_map_afi_safi_int2iana(afi, safi, &pkt_afi, &pkt_safi);
|
||||||
|
Loading…
Reference in New Issue
Block a user