From 9914e0224b34aea29dbcf6e314dc883dfc2ac382 Mon Sep 17 00:00:00 2001 From: Balaji Date: Mon, 16 Mar 2015 16:55:29 +0000 Subject: [PATCH] bgpd: Display of configured dampening parameters Function to display configured bgp dampening parameters. Signed-off-by: Balaji.G [DL: formatting adjustments] Signed-off-by: David Lamparter (cherry picked from commit 06bd420d4646333bc7ed9964e348f19a942fcfe2) --- bgpd/bgp_damp.c | 33 +++++++++++++++++++++++++++++++++ bgpd/bgp_damp.h | 1 + 2 files changed, 34 insertions(+) diff --git a/bgpd/bgp_damp.c b/bgpd/bgp_damp.c index a4ce5ae3f9..c1ab04407b 100644 --- a/bgpd/bgp_damp.c +++ b/bgpd/bgp_damp.c @@ -684,3 +684,36 @@ bgp_damp_reuse_time_vty (struct vty *vty, struct bgp_info *binfo, return bgp_get_reuse_time (penalty, timebuf, len, use_json, json); } + +int +bgp_show_dampening_parameters (struct vty *vty, afi_t afi, safi_t safi) +{ + struct bgp *bgp; + bgp = bgp_get_default(); + + if (bgp == NULL) + { + vty_out (vty, "No BGP process is configured%s", VTY_NEWLINE); + return CMD_WARNING; + } + + if (CHECK_FLAG (bgp->af_flags[afi][safi], BGP_CONFIG_DAMPENING)) + { + vty_out (vty, "Half-life time: %ld min%s", + damp->half_life / 60, VTY_NEWLINE); + vty_out (vty, "Reuse penalty: %d%s", + damp->reuse_limit, VTY_NEWLINE); + vty_out (vty, "Suppress penalty: %d%s", + damp->suppress_value, VTY_NEWLINE); + vty_out (vty, "Max suppress time: %ld min%s", + damp->max_suppress_time / 60, VTY_NEWLINE); + vty_out (vty, "Max supress penalty: %u%s", + damp->ceiling, VTY_NEWLINE); + vty_out (vty, "%s", VTY_NEWLINE); + } + else + vty_out (vty, "dampening not enabled for %s%s", + afi == AFI_IP ? "IPv4" : "IPv6", VTY_NEWLINE); + + return CMD_SUCCESS; +} diff --git a/bgpd/bgp_damp.h b/bgpd/bgp_damp.h index 6853696378..030a621974 100644 --- a/bgpd/bgp_damp.h +++ b/bgpd/bgp_damp.h @@ -143,5 +143,6 @@ extern void bgp_config_write_damp (struct vty *); extern void bgp_damp_info_vty (struct vty *, struct bgp_info *, json_object *json_path); extern const char * bgp_damp_reuse_time_vty (struct vty *, struct bgp_info *, char *, size_t, u_char, json_object *); +extern int bgp_show_dampening_parameters (struct vty *vty, afi_t, safi_t); #endif /* _QUAGGA_BGP_DAMP_H */ -- 2.39.5