aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2018-06-12 05:24:52 +0700
committerVadim Yanitskiy <axilirator@gmail.com>2018-06-12 06:14:36 +0700
commit5b860faf4e0fcd9aa0bc9b9480a0c32cdf917cd8 (patch)
treef09fe8f8d864b3d5a19b40e2438e53f8ed17eb66
parent10c641979813c3bd2a66a7fd95f656731b83c1f8 (diff)
Use proper naming for GSM TS 09.11 implementation
During a long time, we had both file and symbol names, actually related to Supplementary Services, with the 'ussd' abbreviation. This is not absolutely wrong, but isn't correct at the same time. USSD is a kind of Supplementary Services, this is only a part of them. There are also 'structured' Supplementary Services, which can be call related or call independent. The "Signalling interworking for supplementary services" is defined by GSM TS 09.11, and this is exactly what MSC should implement. Let's use the specification number for naming, as we do e.g. in the GSM 04.11 (SMS) implementation. Change-Id: Ic1eaceddb58132318e4e941be542da34b8ebefe1
-rw-r--r--include/osmocom/msc/Makefile.am2
-rw-r--r--include/osmocom/msc/gsm_09_11.h5
-rw-r--r--include/osmocom/msc/ussd.h5
-rw-r--r--src/libmsc/Makefile.am2
-rw-r--r--src/libmsc/gsm_04_08.c4
-rw-r--r--src/libmsc/gsm_09_11.c (renamed from src/libmsc/ussd.c)13
6 files changed, 16 insertions, 15 deletions
diff --git a/include/osmocom/msc/Makefile.am b/include/osmocom/msc/Makefile.am
index f0e24c420..5be51ea90 100644
--- a/include/osmocom/msc/Makefile.am
+++ b/include/osmocom/msc/Makefile.am
@@ -9,6 +9,7 @@ noinst_HEADERS = \
gsm_04_11.h \
gsm_04_14.h \
gsm_04_80.h \
+ gsm_09_11.h \
gsm_data.h \
gsm_data_shared.h \
gsm_subscriber.h \
@@ -30,7 +31,6 @@ noinst_HEADERS = \
smpp.h \
sms_queue.h \
transaction.h \
- ussd.h \
vlr.h \
vty.h \
$(NULL)
diff --git a/include/osmocom/msc/gsm_09_11.h b/include/osmocom/msc/gsm_09_11.h
new file mode 100644
index 000000000..4e7a5b64b
--- /dev/null
+++ b/include/osmocom/msc/gsm_09_11.h
@@ -0,0 +1,5 @@
+#pragma once
+
+#include <osmocom/core/msgb.h>
+
+int gsm0911_rcv_nc_ss(struct gsm_subscriber_connection *conn, struct msgb *msg);
diff --git a/include/osmocom/msc/ussd.h b/include/osmocom/msc/ussd.h
deleted file mode 100644
index bc4227bb7..000000000
--- a/include/osmocom/msc/ussd.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#pragma once
-
-#include <osmocom/core/msgb.h>
-
-int handle_rcv_ussd(struct gsm_subscriber_connection *conn, struct msgb *msg);
diff --git a/src/libmsc/Makefile.am b/src/libmsc/Makefile.am
index 3173da54c..ad8deec90 100644
--- a/src/libmsc/Makefile.am
+++ b/src/libmsc/Makefile.am
@@ -35,6 +35,7 @@ libmsc_a_SOURCES = \
gsm_04_11.c \
gsm_04_14.c \
gsm_04_80.c \
+ gsm_09_11.c \
gsm_subscriber.c \
mncc.c \
mncc_builtin.c \
@@ -44,7 +45,6 @@ libmsc_a_SOURCES = \
rrlp.c \
silent_call.c \
sms_queue.c \
- ussd.c \
transaction.c \
osmo_msc.c \
ctrl_commands.c \
diff --git a/src/libmsc/gsm_04_08.c b/src/libmsc/gsm_04_08.c
index 5c453165c..beec6fa05 100644
--- a/src/libmsc/gsm_04_08.c
+++ b/src/libmsc/gsm_04_08.c
@@ -42,9 +42,9 @@
#include <osmocom/msc/gsm_04_08.h>
#include <osmocom/msc/gsm_04_80.h>
#include <osmocom/msc/gsm_04_14.h>
+#include <osmocom/msc/gsm_09_11.h>
#include <osmocom/msc/signal.h>
#include <osmocom/msc/transaction.h>
-#include <osmocom/msc/ussd.h>
#include <osmocom/msc/silent_call.h>
#include <osmocom/msc/osmo_msc.h>
#include <osmocom/msc/mncc_int.h>
@@ -3524,7 +3524,7 @@ int gsm0408_dispatch(struct gsm_subscriber_connection *conn, struct msgb *msg)
rc = -ENOTSUP;
break;
case GSM48_PDISC_NC_SS:
- rc = handle_rcv_ussd(conn, msg);
+ rc = gsm0911_rcv_nc_ss(conn, msg);
break;
case GSM48_PDISC_TEST:
rc = gsm0414_rcv_test(conn, msg);
diff --git a/src/libmsc/ussd.c b/src/libmsc/gsm_09_11.c
index a27d47bd6..8f7e54fac 100644
--- a/src/libmsc/ussd.c
+++ b/src/libmsc/gsm_09_11.c
@@ -1,5 +1,3 @@
-/* Network-specific handling of mobile-originated USSDs. */
-
/* (C) 2008-2009 by Harald Welte <laforge@gnumonks.org>
* (C) 2008, 2009 by Holger Hans Peter Freyther <zecke@selfish.org>
* (C) 2009 by Mike Haben <michael.haben@btinternet.com>
@@ -21,8 +19,11 @@
*
*/
-/* This module defines the network-specific handling of mobile-originated
- USSD messages. */
+/**
+ * MSC-specific handling of call independent Supplementary
+ * Services messages (NC_SS) according to GSM TS 09.11
+ * "Signalling interworking for supplementary services".
+ */
#include <stdio.h>
#include <stdlib.h>
@@ -58,8 +59,8 @@ static int send_own_number(struct gsm_subscriber_connection *conn,
return gsm0480_send_ussd_response(conn, response_string, req);
}
-/* Entrypoint - handler function common to all mobile-originated USSDs */
-int handle_rcv_ussd(struct gsm_subscriber_connection *conn, struct msgb *msg)
+/* Entry point for call independent MO SS messages */
+int gsm0911_rcv_nc_ss(struct gsm_subscriber_connection *conn, struct msgb *msg)
{
struct gsm48_hdr *gh = msgb_l3(msg);
struct gsm_trans *trans;