forked from Mirror/frr
bgpd: Check if su_local/su_remote exist before encoding BMP peer state
Fixes: 035304c25a
("bgpd: bmp loc-rib peer up/down for vrfs")
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
parent
5c194b3639
commit
e15eb6a089
|
@ -501,14 +501,14 @@ static struct stream *bmp_peerstate(struct peer *peer, bool down)
|
|||
}
|
||||
|
||||
/* Local Port, Remote Port */
|
||||
if (is_locrib)
|
||||
if (!peer->su_local || is_locrib)
|
||||
stream_putw(s, 0);
|
||||
else if (peer->su_local->sa.sa_family == AF_INET6)
|
||||
stream_putw(s, htons(peer->su_local->sin6.sin6_port));
|
||||
else if (peer->su_local->sa.sa_family == AF_INET)
|
||||
stream_putw(s, htons(peer->su_local->sin.sin_port));
|
||||
|
||||
if (is_locrib)
|
||||
if (!peer->su_remote || is_locrib)
|
||||
stream_putw(s, 0);
|
||||
else if (peer->su_remote->sa.sa_family == AF_INET6)
|
||||
stream_putw(s, htons(peer->su_remote->sin6.sin6_port));
|
||||
|
|
Loading…
Reference in a new issue