aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libmsc
diff options
context:
space:
mode:
authorIvan Kluchnikov <kluchnikovi@gmail.com>2015-12-21 12:31:06 +0300
committerIvan Kluchnikov <kluchnikovi@gmail.com>2017-02-07 18:59:55 +0300
commitb314380065323f4f21edb7ec6f0cd55a21e8d1b3 (patch)
tree765d5b492434dffd9afba1b2c83d811e06e732a3 /openbsc/src/libmsc
parent8bb11c90fcb333de65f5bdbbe0787ba93a1c9a82 (diff)
sms: Add new socket for forwarding/receiving SMS in RP format to/from external application
Diffstat (limited to 'openbsc/src/libmsc')
-rw-r--r--openbsc/src/libmsc/vty_interface_layer3.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/openbsc/src/libmsc/vty_interface_layer3.c b/openbsc/src/libmsc/vty_interface_layer3.c
index 9583a5b29..071de1479 100644
--- a/openbsc/src/libmsc/vty_interface_layer3.c
+++ b/openbsc/src/libmsc/vty_interface_layer3.c
@@ -1053,6 +1053,28 @@ DEFUN(sup_ussd_destination, sup_ussd_destination_cmd,
return CMD_SUCCESS;
}
+DEFUN(sms_destination, sms_destination_cmd,
+ "sms destination ADDR <0-65535>",
+ "Enable SMS socket to a given address/port" "destination\n" "address or hostname\n" "port number\n")
+{
+ struct gsm_network *gsmnet = gsmnet_from_vty(vty);
+
+ if (gsmnet->sms_client) {
+ LOGP(DSUP, LOGL_FATAL, "Can't create two SMS clients\n");
+ vty_out(vty, "%%SMS client already configured%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
+ gsmnet->sms_client = gprs_gsup_client_create(
+ argv[0], atoi(argv[1]), &sup_read_cb);
+ if (!gsmnet->sms_client) {
+ LOGP(DSUP, LOGL_FATAL, "Cannot set up SMS socket\n");
+ vty_out(vty, "%%Cannot set up SMS socket%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
+ return CMD_SUCCESS;
+}
DEFUN(logging_fltr_imsi,
logging_fltr_imsi_cmd,