LOGGING: make sure to make the 'logging filter' compatible with vty log cfg
Recent libosmocore introdues a way how log targets can be configured from
the VTY.
This commit makes the 'log filter (imsi|nsvc|bvc)' compatible with it.
diff --git a/openbsc/src/gprs/gprs_bssgp_vty.c b/openbsc/src/gprs/gprs_bssgp_vty.c
index 6208ae3..9ebd090 100644
--- a/openbsc/src/gprs/gprs_bssgp_vty.c
+++ b/openbsc/src/gprs/gprs_bssgp_vty.c
@@ -138,16 +138,13 @@
"BVCI of the BVC to be filtered\n"
"BSSGP Virtual Connection Identifier (BVCI)\n")
{
- struct telnet_connection *conn;
+ struct log_target *tgt = osmo_log_vty2tgt(vty);
struct bssgp_bvc_ctx *bvc;
uint16_t nsei = atoi(argv[0]);
uint16_t bvci = atoi(argv[1]);
- conn = (struct telnet_connection *) vty->priv;
- if (!conn->dbg) {
- vty_out(vty, "Logging was not enabled.%s", VTY_NEWLINE);
+ if (!tgt)
return CMD_WARNING;
- }
bvc = btsctx_by_bvci_nsei(bvci, nsei);
if (!bvc) {
@@ -155,7 +152,7 @@
return CMD_WARNING;
}
- log_set_bvc_filter(conn->dbg, bvc);
+ log_set_bvc_filter(tgt, bvc);
return CMD_SUCCESS;
}
@@ -166,6 +163,8 @@
install_element_ve(&show_bvc_cmd);
install_element_ve(&logging_fltr_bvc_cmd);
+ install_element(CFG_LOG_NODE, &logging_fltr_bvc_cmd);
+
install_element(CONFIG_NODE, &cfg_bssgp_cmd);
install_node(&bssgp_node, config_write_bssgp);
install_default(BSSGP_NODE);
diff --git a/openbsc/src/gprs/gprs_ns_vty.c b/openbsc/src/gprs/gprs_ns_vty.c
index 42fc025..39277fc 100644
--- a/openbsc/src/gprs/gprs_ns_vty.c
+++ b/openbsc/src/gprs/gprs_ns_vty.c
@@ -513,15 +513,12 @@
"Identify NS-VC by NSVCI\n"
"Numeric identifier\n")
{
- struct telnet_connection *conn;
+ struct log_target *tgt = osmo_log_vty2tgt(vty);
struct gprs_nsvc *nsvc;
uint16_t id = atoi(argv[1]);
- conn = (struct telnet_connection *) vty->priv;
- if (!conn->dbg) {
- vty_out(vty, "Logging was not enabled.%s", VTY_NEWLINE);
+ if (!tgt)
return CMD_WARNING;
- }
if (!strcmp(argv[0], "nsei"))
nsvc = nsvc_by_nsei(vty_nsi, id);
@@ -533,7 +530,7 @@
return CMD_WARNING;
}
- log_set_nsvc_filter(conn->dbg, nsvc);
+ log_set_nsvc_filter(tgt, nsvc);
return CMD_SUCCESS;
}
@@ -546,6 +543,8 @@
install_element_ve(&show_nse_cmd);
install_element_ve(&logging_fltr_nsvc_cmd);
+ install_element(CFG_LOG_NODE, &logging_fltr_nsvc_cmd);
+
install_element(CONFIG_NODE, &cfg_ns_cmd);
install_node(&ns_node, config_write_ns);
install_default(NS_NODE);