aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libcommon-cs/common_cs_vty.c
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2017-02-03 02:42:47 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2017-03-16 15:32:29 +0100
commitd20e7483d0872270a38d83efe1b7a14e87fe37de (patch)
tree19110266eb7f2879abb4c2f81943039a6f6549f4 /openbsc/src/libcommon-cs/common_cs_vty.c
parent067991aeb2b404f120678bd618ebd15614de3446 (diff)
Use libvlr in libmsc (large refactoring)
Original libvlr code is by Harald Welte <laforge@gnumonks.org>, polished and tweaked by Neels Hofmeyr <nhofmeyr@sysmocom.de>. This is a long series of development collapsed in one patch. The original history may still be available as branch neels/vlr_orig. TODO: This commit may be split in several smaller changes before merging to master. Related: OS#1592 Change-Id: I702ba504ce2de93507312c28eca8d11f09f4ee8b
Diffstat (limited to 'openbsc/src/libcommon-cs/common_cs_vty.c')
-rw-r--r--openbsc/src/libcommon-cs/common_cs_vty.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/openbsc/src/libcommon-cs/common_cs_vty.c b/openbsc/src/libcommon-cs/common_cs_vty.c
index 08a758151..80af33de1 100644
--- a/openbsc/src/libcommon-cs/common_cs_vty.c
+++ b/openbsc/src/libcommon-cs/common_cs_vty.c
@@ -168,6 +168,20 @@ DEFUN(cfg_net_encryption,
return CMD_SUCCESS;
}
+DEFUN(cfg_net_authentication,
+ cfg_net_authentication_cmd,
+ "authentication (optional|required)",
+ "Whether to enforce MS authentication in 2G\n"
+ "Allow MS to attach via 2G BSC without authentication\n"
+ "Always do authentication\n")
+{
+ struct gsm_network *gsmnet = gsmnet_from_vty(vty);
+
+ gsmnet->authentication_required = (argv[0][0] == 'r') ? true : false;
+
+ return CMD_SUCCESS;
+}
+
DEFUN(cfg_net_rrlp_mode, cfg_net_rrlp_mode_cmd,
"rrlp mode (none|ms-based|ms-preferred|ass-preferred)",
"Radio Resource Location Protocol\n"
@@ -203,9 +217,10 @@ DEFUN(cfg_net_subscr_keep,
"Keep unused subscribers in RAM.\n"
"Delete unused subscribers\n" "Keep unused subscribers\n")
{
- struct gsm_network *gsmnet = gsmnet_from_vty(vty);
- gsmnet->subscr_group->keep_subscr = atoi(argv[0]);
- return CMD_SUCCESS;
+ vty_out(vty, "%% subscriber-keep-in-ram is currently not implemented%s",
+ VTY_NEWLINE);
+ /* TODO add a libvlr mechanism to keep vlr_subscrs in RAM? */
+ return CMD_WARNING;
}
DEFUN(cfg_net_timezone,
@@ -289,6 +304,7 @@ int common_cs_vty_init(struct gsm_network *network,
install_element(GSMNET_NODE, &cfg_net_authorize_regexp_cmd);
install_element(GSMNET_NODE, &cfg_net_reject_cause_cmd);
install_element(GSMNET_NODE, &cfg_net_encryption_cmd);
+ install_element(GSMNET_NODE, &cfg_net_authentication_cmd);
install_element(GSMNET_NODE, &cfg_net_rrlp_mode_cmd);
install_element(GSMNET_NODE, &cfg_net_mm_info_cmd);
install_element(GSMNET_NODE, &cfg_net_subscr_keep_cmd);