summaryrefslogtreecommitdiffstats
path: root/src/host/layer23/src/mobile/vty_interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/host/layer23/src/mobile/vty_interface.c')
-rw-r--r--src/host/layer23/src/mobile/vty_interface.c36
1 files changed, 34 insertions, 2 deletions
diff --git a/src/host/layer23/src/mobile/vty_interface.c b/src/host/layer23/src/mobile/vty_interface.c
index 418c3f62..f1150b73 100644
--- a/src/host/layer23/src/mobile/vty_interface.c
+++ b/src/host/layer23/src/mobile/vty_interface.c
@@ -438,7 +438,7 @@ DEFUN(sim_test, sim_test_cmd, "sim testcard MS_NAME [MCC] [MNC] [LAC] [TMSI]",
return CMD_WARNING;
if (ms->subscr.sim_valid) {
- vty_out(vty, "SIM already presend, remove first!%s",
+ vty_out(vty, "SIM already present, remove first!%s",
VTY_NEWLINE);
return CMD_WARNING;
}
@@ -471,17 +471,27 @@ DEFUN(sim_reader, sim_reader_cmd, "sim reader MS_NAME",
"SIM actions\nSelect SIM from reader\nName of MS (see \"show ms\")")
{
struct osmocom_ms *ms;
+ struct gsm_settings *set = &ms->settings;
ms = get_ms(argv[0], vty);
if (!ms)
return CMD_WARNING;
if (ms->subscr.sim_valid) {
- vty_out(vty, "SIM already presend, remove first!%s",
+ vty_out(vty, "SIM already present, remove first!%s",
VTY_NEWLINE);
return CMD_WARNING;
}
+ if(access(set->sap_socket_path, F_OK) == 0){
+ if(osmosap_init(ms) != 0){
+ return CMD_WARNING;
+ }
+ } else {
+ /* this is only so we can check the first byte to be null in l1ctl_tx_sim_req */
+ set->sap_socket_path[0] = 0;
+ }
+
gsm_subscr_simcard(ms);
return CMD_SUCCESS;
@@ -652,6 +662,27 @@ DEFUN(sim_lai, sim_lai_cmd, "sim lai MS_NAME MCC MNC LAC",
return CMD_SUCCESS;
}
+DEFUN(sim_sapsocket, sim_sapsocket_cmd, "sim sap-socket MS_NAME SOCKET_PATH",
+ "SIM actions\nEnter SAP socket used instead of SIM driver for card\nName of MS (see \"show ms\")\n"
+ "socket path")
+{
+ struct osmocom_ms *ms;
+
+ ms = get_ms(argv[0], vty);
+ if (!ms)
+ return CMD_WARNING;
+
+ if(!argv[1]){
+ vty_out(vty, "You must specify a SAP socket path%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
+
+ osmosap_sapsocket(ms, (char *)argv[1]);
+
+ return CMD_SUCCESS;
+}
+
DEFUN(network_select, network_select_cmd, "network select MS_NAME MCC MNC",
"Select ...\nSelect Network\nName of MS (see \"show ms\")\n"
"Mobile Country Code\nMobile Network Code")
@@ -2296,6 +2327,7 @@ int ms_vty_init(void)
install_element(ENABLE_NODE, &sim_enable_pin_cmd);
install_element(ENABLE_NODE, &sim_change_pin_cmd);
install_element(ENABLE_NODE, &sim_unblock_pin_cmd);
+ install_element(ENABLE_NODE, &sim_sapsocket_cmd);
install_element(ENABLE_NODE, &sim_lai_cmd);
install_element(ENABLE_NODE, &network_search_cmd);
install_element(ENABLE_NODE, &network_show_cmd);