NACC: allow setting keep time for entries in neigh and si cache
Related: SYS#4909
Change-Id: Ifa336aa27dd88ff5b78dbc5a2799740f542bb369
diff --git a/src/pcu_vty.c b/src/pcu_vty.c
index 8f97f30..b0d1ac6 100644
--- a/src/pcu_vty.c
+++ b/src/pcu_vty.c
@@ -1064,10 +1064,25 @@
OSMO_TDEF_VTY_DOC_SET,
CMD_ATTR_IMMEDIATE)
{
+ int rc;
+ struct osmo_tdef *t;
/* If any arguments are missing, redirect to 'show' */
if (argc < 2)
return show_timer(self, vty, argc, argv);
- return osmo_tdef_vty_set_cmd(vty, the_pcu->T_defs, argv);
+ if ((rc = osmo_tdef_vty_set_cmd(vty, the_pcu->T_defs, argv)) != CMD_SUCCESS)
+ return rc;
+ t = osmo_tdef_vty_parse_T_arg(vty, the_pcu->T_defs, argv[0]);
+ switch (t->T) {
+ case PCU_TDEF_NEIGH_CACHE_ALIVE:
+ neigh_cache_set_keep_time_interval(the_pcu->neigh_cache, t->val);
+ break;
+ case PCU_TDEF_SI_CACHE_ALIVE:
+ si_cache_set_keep_time_interval(the_pcu->si_cache, t->val);
+ break;
+ default:
+ break;
+ }
+ return CMD_SUCCESS;
}
DEFUN(show_tbf,