From 2925dff513b6fce59d0b5bf6af77547fb049f3c1 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Fri, 21 Dec 2018 08:54:07 -0500 Subject: [PATCH] pimd: Move register_suppress_time into struct pim router Signed-off-by: Donald Sharp --- pimd/pim_cmd.c | 4 ++-- pimd/pim_instance.h | 1 + pimd/pim_upstream.h | 5 +++-- pimd/pim_vty.c | 4 ++-- pimd/pimd.c | 2 +- pimd/pimd.h | 1 - 6 files changed, 9 insertions(+), 8 deletions(-) diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index 5b3d0713ac..01f46d42bf 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -5256,7 +5256,7 @@ DEFUN (ip_pim_register_suppress, "Seconds\n") { PIM_DECLVAR_CONTEXT(vrf, pim); - qpim_register_suppress_time = atoi(argv[3]->arg); + router->register_suppress_time = atoi(argv[3]->arg); return CMD_SUCCESS; } @@ -5270,7 +5270,7 @@ DEFUN (no_ip_pim_register_suppress, "Seconds\n") { PIM_DECLVAR_CONTEXT(vrf, pim); - qpim_register_suppress_time = PIM_REGISTER_SUPPRESSION_TIME_DEFAULT; + router->register_suppress_time = PIM_REGISTER_SUPPRESSION_TIME_DEFAULT; return CMD_SUCCESS; } diff --git a/pimd/pim_instance.h b/pimd/pim_instance.h index f7b8e32af1..2bfa76ad6c 100644 --- a/pimd/pim_instance.h +++ b/pimd/pim_instance.h @@ -52,6 +52,7 @@ struct pim_router { int t_periodic; struct pim_assert_metric infinite_assert_metric; long rpf_cache_refresh_delay_msec; + int32_t register_suppress_time; }; /* Per VRF PIM DB */ diff --git a/pimd/pim_upstream.h b/pimd/pim_upstream.h index a347ab991c..c69e7388d3 100644 --- a/pimd/pim_upstream.h +++ b/pimd/pim_upstream.h @@ -126,13 +126,14 @@ struct pim_upstream { */ struct thread *t_ka_timer; #define PIM_KEEPALIVE_PERIOD (210) -#define PIM_RP_KEEPALIVE_PERIOD ( 3 * qpim_register_suppress_time + qpim_register_probe_time ) +#define PIM_RP_KEEPALIVE_PERIOD \ + (3 * router->register_suppress_time + qpim_register_probe_time) /* on the RP we restart a timer to indicate if registers are being rxed * for * SG. This is needed by MSDP to determine its local SA cache */ struct thread *t_msdp_reg_timer; -#define PIM_MSDP_REG_RXED_PERIOD (3 * (1.5 * qpim_register_suppress_time)) +#define PIM_MSDP_REG_RXED_PERIOD (3 * (1.5 * router->register_suppress_time)) int64_t state_transition; /* Record current state uptime */ }; diff --git a/pimd/pim_vty.c b/pimd/pim_vty.c index 6c837e2a3f..ff3ada774a 100644 --- a/pimd/pim_vty.c +++ b/pimd/pim_vty.c @@ -172,10 +172,10 @@ int pim_global_config_write_worker(struct pim_instance *pim, struct vty *vty) writes += pim_rp_config_write(pim, vty, spaces); - if (qpim_register_suppress_time + if (router->register_suppress_time != PIM_REGISTER_SUPPRESSION_TIME_DEFAULT) { vty_out(vty, "%sip pim register-suppress-time %d\n", spaces, - qpim_register_suppress_time); + router->register_suppress_time); ++writes; } if (router->t_periodic != PIM_DEFAULT_T_PERIODIC) { diff --git a/pimd/pimd.c b/pimd/pimd.c index 81f5888cb2..ee198776a3 100644 --- a/pimd/pimd.c +++ b/pimd/pimd.c @@ -54,7 +54,6 @@ struct pim_router *router = NULL; int qpim_packet_process = PIM_DEFAULT_PACKET_PROCESS; struct pim_instance *pimg = NULL; -int32_t qpim_register_suppress_time = PIM_REGISTER_SUPPRESSION_TIME_DEFAULT; int32_t qpim_register_probe_time = PIM_REGISTER_PROBE_TIME_DEFAULT; void pim_prefix_list_update(struct prefix_list *plist) @@ -103,6 +102,7 @@ void pim_router_init(void) PIM_ASSERT_ROUTE_METRIC_MAX; router->infinite_assert_metric.ip_address.s_addr = INADDR_ANY; router->rpf_cache_refresh_delay_msec = 50; + router->register_suppress_time = PIM_REGISTER_SUPPRESSION_TIME_DEFAULT; } void pim_router_terminate(void) diff --git a/pimd/pimd.h b/pimd/pimd.h index d653c19f7e..61dba8bcae 100644 --- a/pimd/pimd.h +++ b/pimd/pimd.h @@ -147,7 +147,6 @@ extern uint8_t qpim_ecmp_rebalance_enable; * Register-Stop Timer (RST(S,G)) * Default values */ -extern int32_t qpim_register_suppress_time; extern int32_t qpim_register_probe_time; #define PIM_REGISTER_SUPPRESSION_TIME_DEFAULT (60) #define PIM_REGISTER_PROBE_TIME_DEFAULT (5)