vty: Make new libgtp tdefs configurable through VTY
Related: OS#5485 Depends: osmo-ggsn.git Change-Id I10bc8e2e197c0e8753b23b684b5ae41025672bf7 Change-Id: I46e9cd158a9f2f721c69f807beb7bb67a459f4a4
This commit is contained in:
parent
b43496a60d
commit
8501126031
|
@ -1 +1,2 @@
|
||||||
#component what description / commit summary line
|
#component what description / commit summary line
|
||||||
|
libgtp >1.9.0 gtp_T_defs
|
|
@ -93,6 +93,7 @@ struct sgsn_config {
|
||||||
|
|
||||||
/* Timer defintions */
|
/* Timer defintions */
|
||||||
struct osmo_tdef *T_defs;
|
struct osmo_tdef *T_defs;
|
||||||
|
struct osmo_tdef *T_defs_gtp;
|
||||||
|
|
||||||
int dynamic_lookup;
|
int dynamic_lookup;
|
||||||
|
|
||||||
|
|
|
@ -136,6 +136,26 @@ DEFUN(cfg_sgsn_timer, cfg_sgsn_timer_cmd,
|
||||||
return osmo_tdef_vty_set_cmd(vty, g_cfg->T_defs, argv);
|
return osmo_tdef_vty_set_cmd(vty, g_cfg->T_defs, argv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DEFUN(show_timer_gtp, show_timer_gtp_cmd,
|
||||||
|
"show timer gtp " OSMO_TDEF_VTY_ARG_T_OPTIONAL,
|
||||||
|
SHOW_STR "Show timers\n" "GTP (libgtp) timers\n"
|
||||||
|
OSMO_TDEF_VTY_DOC_T)
|
||||||
|
{
|
||||||
|
const char *T_arg = argc > 0 ? argv[0] : NULL;
|
||||||
|
return osmo_tdef_vty_show_cmd(vty, g_cfg->T_defs_gtp, T_arg, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFUN(cfg_sgsn_timer_gtp, cfg_sgsn_timer_gtp_cmd,
|
||||||
|
"timer gtp " OSMO_TDEF_VTY_ARG_SET_OPTIONAL,
|
||||||
|
"Configure or show timers\n" "GTP (libgtp) timers\n"
|
||||||
|
OSMO_TDEF_VTY_DOC_SET)
|
||||||
|
{
|
||||||
|
/* 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, g_cfg->T_defs_gtp, argv);
|
||||||
|
}
|
||||||
|
|
||||||
char *gprs_pdpaddr2str(uint8_t *pdpa, uint8_t len, bool return_ipv6)
|
char *gprs_pdpaddr2str(uint8_t *pdpa, uint8_t len, bool return_ipv6)
|
||||||
{
|
{
|
||||||
static char str[INET6_ADDRSTRLEN + 10];
|
static char str[INET6_ADDRSTRLEN + 10];
|
||||||
|
@ -312,6 +332,7 @@ static int config_write_sgsn(struct vty *vty)
|
||||||
vty_out(vty, " cdr interval %d%s", g_cfg->cdr.interval, VTY_NEWLINE);
|
vty_out(vty, " cdr interval %d%s", g_cfg->cdr.interval, VTY_NEWLINE);
|
||||||
|
|
||||||
osmo_tdef_vty_write(vty, g_cfg->T_defs, " timer ");
|
osmo_tdef_vty_write(vty, g_cfg->T_defs, " timer ");
|
||||||
|
osmo_tdef_vty_write(vty, g_cfg->T_defs_gtp, " timer gtp ");
|
||||||
|
|
||||||
if (g_cfg->pcomp_rfc1144.active) {
|
if (g_cfg->pcomp_rfc1144.active) {
|
||||||
vty_out(vty, " compression rfc1144 active slots %d%s",
|
vty_out(vty, " compression rfc1144 active slots %d%s",
|
||||||
|
@ -1719,6 +1740,9 @@ int sgsn_vty_init(struct sgsn_config *cfg)
|
||||||
g_cfg->T_defs = sgsn_T_defs;
|
g_cfg->T_defs = sgsn_T_defs;
|
||||||
osmo_tdefs_reset(g_cfg->T_defs);
|
osmo_tdefs_reset(g_cfg->T_defs);
|
||||||
|
|
||||||
|
g_cfg->T_defs_gtp = gtp_T_defs;
|
||||||
|
osmo_tdefs_reset(g_cfg->T_defs_gtp);
|
||||||
|
|
||||||
install_element_ve(&show_sgsn_cmd);
|
install_element_ve(&show_sgsn_cmd);
|
||||||
//install_element_ve(&show_mmctx_tlli_cmd);
|
//install_element_ve(&show_mmctx_tlli_cmd);
|
||||||
install_element_ve(&show_mmctx_imsi_cmd);
|
install_element_ve(&show_mmctx_imsi_cmd);
|
||||||
|
@ -1726,6 +1750,7 @@ int sgsn_vty_init(struct sgsn_config *cfg)
|
||||||
install_element_ve(&show_pdpctx_all_cmd);
|
install_element_ve(&show_pdpctx_all_cmd);
|
||||||
install_element_ve(&show_subscr_cache_cmd);
|
install_element_ve(&show_subscr_cache_cmd);
|
||||||
install_element_ve(&show_timer_cmd);
|
install_element_ve(&show_timer_cmd);
|
||||||
|
install_element_ve(&show_timer_gtp_cmd);
|
||||||
|
|
||||||
install_element(ENABLE_NODE, &update_subscr_insert_auth_triplet_cmd);
|
install_element(ENABLE_NODE, &update_subscr_insert_auth_triplet_cmd);
|
||||||
install_element(ENABLE_NODE, &update_subscr_create_cmd);
|
install_element(ENABLE_NODE, &update_subscr_create_cmd);
|
||||||
|
@ -1773,6 +1798,7 @@ int sgsn_vty_init(struct sgsn_config *cfg)
|
||||||
install_element(SGSN_NODE, &cfg_grx_ggsn_cmd);
|
install_element(SGSN_NODE, &cfg_grx_ggsn_cmd);
|
||||||
|
|
||||||
install_element(SGSN_NODE, &cfg_sgsn_timer_cmd);
|
install_element(SGSN_NODE, &cfg_sgsn_timer_cmd);
|
||||||
|
install_element(SGSN_NODE, &cfg_sgsn_timer_gtp_cmd);
|
||||||
|
|
||||||
install_element(SGSN_NODE, &cfg_no_comp_rfc1144_cmd);
|
install_element(SGSN_NODE, &cfg_no_comp_rfc1144_cmd);
|
||||||
install_element(SGSN_NODE, &cfg_comp_rfc1144_cmd);
|
install_element(SGSN_NODE, &cfg_comp_rfc1144_cmd);
|
||||||
|
|
|
@ -55,6 +55,7 @@ OsmoSGSN(config-sgsn)# list
|
||||||
ggsn dynamic
|
ggsn dynamic
|
||||||
grx-dns-add A.B.C.D
|
grx-dns-add A.B.C.D
|
||||||
timer [TNNNN] [(<0-2147483647>|default)]
|
timer [TNNNN] [(<0-2147483647>|default)]
|
||||||
|
timer gtp [TNNNN] [(<0-2147483647>|default)]
|
||||||
no compression rfc1144
|
no compression rfc1144
|
||||||
compression rfc1144 active slots <1-256>
|
compression rfc1144 active slots <1-256>
|
||||||
compression rfc1144 passive
|
compression rfc1144 passive
|
||||||
|
|
Loading…
Reference in New Issue