This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Vadim Yanitskiy gerrit-no-reply at lists.osmocom.orgVadim Yanitskiy has submitted this change and it was merged. ( https://gerrit.osmocom.org/11918 ) Change subject: libmsc/VTY: introduce kill-switch for routing SMS over GSUP ...................................................................... libmsc/VTY: introduce kill-switch for routing SMS over GSUP As a rudiment of OsmoNiTB, OsmoMSC is still involved in SMS processing, storage (in SQLite DB), and routing (via SMPP). In real networks this is done by the external entity called SMSC (SMS Centre), while the MSC is doing re-encapsulation of GSM 04.11 SM-TL (Transport Layer) payload (i.e. TPDU) between SM-RL (Relay Layer) and MAP. Since OsmoMSC itself is not a 'Network in The Box' anymore, it makes sense to replicate the 'traditional' behaviour of MSC. The problem is that this behaviour cannot co-exist with the current implementation, so the key idea is to rip out the local SMS storage and routing from OsmoMSC, and (re)implement it in a separate process (OsmoSMSC?). As a temporary solution, this change introduces a 'kill-switch' VTY option that enables routing of SMS messages over GSUP towards ESME (through VLR and HLR), but breaks the local storage and routing. This is why it's disabled by default. As soon as we move the SMS processing and storage away from OsmoMSC, this behaviour would be enabled by default, and the VTY option would be hidden and deprecated. At the moment, this option basically does nothing, and will take an effect in the follow-up changes. Change-Id: Ie57685ed2ce1e4c978e775b68fdffe58de44882b Related: OS#3587 --- M include/osmocom/msc/gsm_data.h M src/libmsc/msc_vty.c M tests/test_nodes.vty 3 files changed, 33 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved Max: Looks good to me, but someone else must approve Stefan Sperling: Looks good to me, but someone else must approve diff --git a/include/osmocom/msc/gsm_data.h b/include/osmocom/msc/gsm_data.h index d2511cb..dab082d 100644 --- a/include/osmocom/msc/gsm_data.h +++ b/include/osmocom/msc/gsm_data.h @@ -160,6 +160,14 @@ struct gsm_sms_queue *sms_queue; + /* The "SMS over GSUP" kill-switch that basically breaks internal + * SMS routing (i.e. SQLite DB and SMPP), and enables forwarding + * of short messages over GSUP towards ESME (through VLR and HLR). + * Please see OS#3587 for details. This is a temporary solution, + * so it should be removed as soon as we move the SMS processing + * logic to an external process (OsmoSMSC?). REMOVE ME! */ + bool sms_over_gsup; + /* control interface */ struct ctrl_handle *ctrl; diff --git a/src/libmsc/msc_vty.c b/src/libmsc/msc_vty.c index 7745e5d..201d2aa 100644 --- a/src/libmsc/msc_vty.c +++ b/src/libmsc/msc_vty.c @@ -476,6 +476,24 @@ return CMD_SUCCESS; } +/* TODO: to be deprecated as soon as we rip SMS handling out (see OS#3587) */ +DEFUN(cfg_msc_sms_over_gsup, cfg_msc_sms_over_gsup_cmd, + "sms-over-gsup", + "Enable routing of SMS messages over GSUP\n") +{ + gsmnet->sms_over_gsup = true; + return CMD_SUCCESS; +} + +/* TODO: to be deprecated as soon as we rip SMS handling out (see OS#3587) */ +DEFUN(cfg_msc_no_sms_over_gsup, cfg_msc_no_sms_over_gsup_cmd, + "no sms-over-gsup", + NO_STR "Disable routing of SMS messages over GSUP\n") +{ + gsmnet->sms_over_gsup = false; + return CMD_SUCCESS; +} + static int config_write_msc(struct vty *vty) { vty_out(vty, "msc%s", VTY_NEWLINE); @@ -512,6 +530,9 @@ if (gsmnet->msc_ipa_name) vty_out(vty, " ipa-name %s%s", gsmnet->msc_ipa_name, VTY_NEWLINE); + if (gsmnet->sms_over_gsup) + vty_out(vty, " sms-over-gsup%s", VTY_NEWLINE); + mgcp_client_config_write(vty, " "); #ifdef BUILD_IU ranap_iu_vty_config_write(vty, " "); @@ -1533,6 +1554,8 @@ install_element(MSC_NODE, &cfg_msc_paging_response_timer_cmd); install_element(MSC_NODE, &cfg_msc_emergency_msisdn_cmd); install_element(MSC_NODE, &cfg_msc_ipa_name_cmd); + install_element(MSC_NODE, &cfg_msc_sms_over_gsup_cmd); + install_element(MSC_NODE, &cfg_msc_no_sms_over_gsup_cmd); mgcp_client_vty_init(msc_network, MSC_NODE, &msc_network->mgw.conf); #ifdef BUILD_IU diff --git a/tests/test_nodes.vty b/tests/test_nodes.vty index d080082..18467d9 100644 --- a/tests/test_nodes.vty +++ b/tests/test_nodes.vty @@ -41,6 +41,8 @@ paging response-timer (default|<1-65535>) emergency-call route-to-msisdn MSISDN ipa-name NAME + sms-over-gsup + no sms-over-gsup mgw local-ip A.B.C.D mgw local-port <0-65535> mgw remote-ip A.B.C.D -- To view, visit https://gerrit.osmocom.org/11918 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ie57685ed2ce1e4c978e775b68fdffe58de44882b Gerrit-Change-Number: 11918 Gerrit-PatchSet: 10 Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com> Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org> Gerrit-Reviewer: Jenkins Builder (1000002) Gerrit-Reviewer: Max <msuraev at sysmocom.de> Gerrit-Reviewer: Stefan Sperling <stsp at stsp.name> Gerrit-Reviewer: Vadim Yanitskiy <axilirator at gmail.com> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190102/5e8bac15/attachment.htm>