summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Walton <dwalton@cumulusnetworks.com>2017-01-20 04:17:09 +0000
committerDonald Sharp <sharpd@cumulusnetworks.com>2017-01-30 13:40:53 -0500
commit64a608dbae92eb9ec084b22004ced29efa48defd (patch)
tree29350c7fcefd1d43ccae8bc42041b2b4defa5a8b
parent5c940836ab4c5e6716cc178f976e2d1a9d386bbf (diff)
bgpd: timers config is accepted but not recorded in running config
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Ticket: CM-14463
-rw-r--r--bgpd/bgpd.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index 244b1930b3..ef633c16e7 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -6680,26 +6680,27 @@ bgp_config_write_peer_global (struct vty *vty, struct bgp *bgp,
}
/* advertisement-interval */
- if (CHECK_FLAG (peer->config, PEER_CONFIG_ROUTEADV)
- && peer->v_routeadv != BGP_DEFAULT_EBGP_ROUTEADV
- && ! peer_group_active (peer))
+ if (CHECK_FLAG (peer->config, PEER_CONFIG_ROUTEADV) &&
+ ((! peer_group_active (peer) && peer->v_routeadv != BGP_DEFAULT_EBGP_ROUTEADV) ||
+ (peer_group_active (peer) && peer->v_routeadv != g_peer->v_routeadv)))
{
vty_out (vty, " neighbor %s advertisement-interval %d%s",
addr, peer->v_routeadv, VTY_NEWLINE);
}
/* timers */
- if (CHECK_FLAG (peer->config, PEER_CONFIG_TIMER)
- && (peer->keepalive != BGP_DEFAULT_KEEPALIVE || peer->holdtime != BGP_DEFAULT_HOLDTIME)
- && ! peer_group_active (peer))
+ if (CHECK_FLAG (peer->config, PEER_CONFIG_TIMER) &&
+ ((! peer_group_active (peer) && (peer->keepalive != BGP_DEFAULT_KEEPALIVE || peer->holdtime != BGP_DEFAULT_HOLDTIME)) ||
+ (peer_group_active (peer) && (peer->keepalive != g_peer->keepalive || peer->holdtime != g_peer->holdtime))))
{
vty_out (vty, " neighbor %s timers %d %d%s", addr,
peer->keepalive, peer->holdtime, VTY_NEWLINE);
}
if (CHECK_FLAG (peer->config, PEER_CONFIG_CONNECT) &&
- peer->connect != BGP_DEFAULT_CONNECT_RETRY &&
- ! peer_group_active (peer))
+ ((! peer_group_active (peer) && peer->connect != BGP_DEFAULT_CONNECT_RETRY) ||
+ (peer_group_active (peer) && peer->connect != g_peer->connect)))
+
{
vty_out (vty, " neighbor %s timers connect %d%s", addr,
peer->connect, VTY_NEWLINE);