summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_open_state.h
diff options
context:
space:
mode:
authorChris Hall <GMCH@hestia.halldom.com>2010-08-04 11:20:31 +0100
committerChris Hall <GMCH@hestia.halldom.com>2010-08-04 11:20:31 +0100
commit11fe7d1d77cfd7b29ea14cc05b7fb2ea6ba13b74 (patch)
tree09b66e2a01eac2c3a8f610fed5bec9fbb062abfb /bgpd/bgp_open_state.h
parent4af8f7adc4fe05de92cb11912af029c623feb821 (diff)
downloadquagga-11fe7d1d77cfd7b29ea14cc05b7fb2ea6ba13b74.tar.bz2
quagga-11fe7d1d77cfd7b29ea14cc05b7fb2ea6ba13b74.tar.xz
Fix various capability flags so that sessions are restarted.
For some reason (unknown) changing the following did NOT restart any active session: neighbor dont-capability-negotiate neighbor override-capability neighbor strict-capability-match since these can all change the nature of a session, this seems to be a (long time) bug, and has been fixed. Also, per RFC 5492: if (during OpenSent and OpenConfirm) get a NOTIFICATION: "Open/Unsupported Optional Parameter", treat that as "don't understand capabilities" and suppress sending of capabilities. Advanced to "ex05".
Diffstat (limited to 'bgpd/bgp_open_state.h')
-rw-r--r--bgpd/bgp_open_state.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/bgpd/bgp_open_state.h b/bgpd/bgp_open_state.h
index 8ef109bd..8c30712b 100644
--- a/bgpd/bgp_open_state.h
+++ b/bgpd/bgp_open_state.h
@@ -92,9 +92,9 @@ struct bgp_open_state
unsigned holdtime ; /* in seconds */
bgp_id_t bgp_id ; /* an IPv4 address -- *network order* */
- int can_capability ; /* false => don't do capabilities */
+ bool can_capability ; /* false => don't do capabilities */
- int can_as4 ; /* true/false */
+ bool can_as4 ;
as2_t my_as2 ; /* AS2 from OPEN message */
qafx_set_t can_mp_ext ; /* will accept, may send these */
@@ -105,14 +105,14 @@ struct bgp_open_state
qafx_set_t can_orf_prefix_send ; /* wish to send ORF Prefix-List */
qafx_set_t can_orf_prefix_recv ; /* will accept ORF Prefix-List */
- int can_dynamic ;
+ bool can_dynamic ;
- int can_g_restart ; /* can do graceful restart */
+ bool can_g_restart ; /* can do graceful restart */
qafx_set_t can_preserve ; /* can preserve forwarding for these */
qafx_set_t has_preserved ; /* has preserved forwarding for these */
- int has_restarted ; /* Restart State flag */
- int restart_time ; /* Restart Time in seconds */
+ bool has_restarted ; /* Restart State flag */
+ unsigned restart_time ; /* Restart Time in seconds */
struct vector unknowns ; /* list of bgp_cap_unknown */
struct vector afi_safi ; /* various afi/safi capabilities */