[nat] Add a regexp test command to the VTY.
This allows to test the regexp to be used for allo/deny of
the imsi filter.
diff --git a/openbsc/src/nat/bsc_nat_vty.c b/openbsc/src/nat/bsc_nat_vty.c
index 2c804b3..7209ae9 100644
--- a/openbsc/src/nat/bsc_nat_vty.c
+++ b/openbsc/src/nat/bsc_nat_vty.c
@@ -410,6 +410,24 @@
return CMD_SUCCESS;
}
+DEFUN(test_regex, test_regex_cmd,
+ "test regex PATTERN STRING",
+ "Check if the string is matching the current pattern.")
+{
+ regex_t reg;
+ char *str = NULL;
+
+ memset(®, 0, sizeof(reg));
+ bsc_parse_reg(_nat, ®, &str, 1, argv);
+
+ vty_out(vty, "String matches allow pattern: %d%s",
+ regexec(®, argv[1], 0, NULL, 0) == 0, VTY_NEWLINE);
+
+ talloc_free(str);
+ regfree(®);
+ return CMD_SUCCESS;
+}
+
int bsc_nat_vty_init(struct bsc_nat *nat)
{
_nat = nat;
@@ -424,6 +442,7 @@
install_element(VIEW_NODE, &show_stats_cmd);
install_element(VIEW_NODE, &close_bsc_cmd);
install_element(VIEW_NODE, &show_msc_cmd);
+ install_element(VIEW_NODE, &test_regex_cmd);
openbsc_vty_add_cmds();