bgpd: fix parsing of graceful restart cap. (#663)

"While setting up a testbed, I ran across a little problem in the
parsing of the "graceful restart" BGP capability that resulted in
Quagga not actually activating it for the peer in question - when
the peer sent a single AFI/SAFI block."

* bgp_open.c
  * bgp_capability_restart(): actually process the last AFI/SAFI block
This commit is contained in:
Peter Pentchev 2011-09-12 16:30:31 +04:00 committed by Denis Ovsienko
parent a624cae2b2
commit 21cc76941a

View File

@ -380,7 +380,7 @@ bgp_capability_restart (struct peer *peer, struct capability_header *caphdr)
peer->v_gr_restart); peer->v_gr_restart);
} }
while (stream_get_getp (s) + 4 < end) while (stream_get_getp (s) + 4 <= end)
{ {
afi_t afi = stream_getw (s); afi_t afi = stream_getw (s);
safi_t safi = stream_getc (s); safi_t safi = stream_getc (s);