summaryrefslogtreecommitdiff
path: root/proto/bgp/bgp.h
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2018-11-20 17:38:19 +0100
committerOndrej Zajicek (work) <santiago@crfreenet.org>2018-11-20 17:45:35 +0100
commit863ecfc78538657e51f1ec67441aec32261aa405 (patch)
tree73b8628fbca9e04a554c5d08fe18bae4c647a51e /proto/bgp/bgp.h
parent6712e77271fb3cb4a3c48cd7b027b39c5cea00a2 (diff)
The MRT protocol
The new MRT protocol is responsible for periodic RIB table dumps in the MRT format (RFC 6396). Also the existing code for BGP4MP MRT dumps is refactored and splitted between BGP to MRT protocols, will be more integrated into MRT in the future. Example: protocol mrt { table "*"; filename "%N_%F_%T.mrt"; period 60; } It is partially based on the old MRT code from Pavel Tvrdik.
Diffstat (limited to 'proto/bgp/bgp.h')
-rw-r--r--proto/bgp/bgp.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/proto/bgp/bgp.h b/proto/bgp/bgp.h
index 6f0a5587..2729780c 100644
--- a/proto/bgp/bgp.h
+++ b/proto/bgp/bgp.h
@@ -266,6 +266,7 @@ struct bgp_proto {
u8 llgr_ready; /* Neighbor could do Long-lived GR, implies gr_ready */
u8 gr_active_num; /* Neighbor is doing GR, number of active channels */
u8 channel_count; /* Number of active channels */
+ u8 summary_add_path_rx; /* Summary state of ADD_PATH RX w.r.t active channels */
u32 *afi_map; /* Map channel index -> AFI */
struct bgp_channel **channel_map; /* Map channel index -> channel */
struct bgp_conn *conn; /* Connection we have established */
@@ -361,6 +362,7 @@ struct bgp_write_state {
struct bgp_channel *channel;
struct linpool *pool;
+ int mp_reach;
int as4_session;
int add_path;
int mpls;
@@ -538,7 +540,7 @@ void bgp_get_route_info(struct rte *, byte *buf);
/* packets.c */
-void mrt_dump_bgp_state_change(struct bgp_conn *conn, unsigned old, unsigned new);
+void bgp_dump_state_change(struct bgp_conn *conn, uint old, uint new);
const struct bgp_af_desc *bgp_get_af_desc(u32 afi);
const struct bgp_af_caps *bgp_find_af_caps(struct bgp_caps *caps, u32 afi);
void bgp_schedule_packet(struct bgp_conn *conn, struct bgp_channel *c, int type);