diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2019-05-12 05:38:41 +0700 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2019-05-19 07:34:35 +0000 |
commit | 643270f7179d31cc4d8b60733007f488aa9becdc (patch) | |
tree | e8695d520a75feca6b2a235ee5a31fa41b3cbc5d /include/osmocom | |
parent | c9ba754235cbe2cb59272b180888231d55a85404 (diff) |
libmsc/gsm_04_11.c: properly handle MMTS indication
According to 3GPP TS 29.002, section 7.6.8.7, MMS (More Messages to Send)
is an optional IE of MT-ForwardSM-Req message which is used by SMSC to
indicate that there are more (multi-part) MT SMS messages to be sent.
The MSC needs to use this indication in order to decide whether to
keep the RAN connection with a given subscriber open.
Related Change-Id: (TTCN) I6308586a70c4fb3254c519330a61a9667372149f
Change-Id: Ic46b04913b2e8cc5d11a39426dcc1bfe11f1d31e
Related: OS#3587
Diffstat (limited to 'include/osmocom')
-rw-r--r-- | include/osmocom/msc/gsm_04_11.h | 3 | ||||
-rw-r--r-- | include/osmocom/msc/msc_a.h | 1 | ||||
-rw-r--r-- | include/osmocom/msc/transaction.h | 2 |
3 files changed, 5 insertions, 1 deletions
diff --git a/include/osmocom/msc/gsm_04_11.h b/include/osmocom/msc/gsm_04_11.h index be8bff3c3..c504c7f0b 100644 --- a/include/osmocom/msc/gsm_04_11.h +++ b/include/osmocom/msc/gsm_04_11.h @@ -45,7 +45,8 @@ int gsm411_send_sms(struct gsm_network *net, struct gsm_sms *sms); int gsm411_send_rp_data(struct gsm_network *net, struct vlr_subscr *vsub, size_t sm_rp_oa_len, const uint8_t *sm_rp_oa, - size_t sm_rp_ud_len, const uint8_t *sm_rp_ud); + size_t sm_rp_ud_len, const uint8_t *sm_rp_ud, + bool sm_rp_mmts_ind); void gsm411_sapi_n_reject(struct msc_a *msc_a); diff --git a/include/osmocom/msc/msc_a.h b/include/osmocom/msc/msc_a.h index c732695a1..a4d3226ed 100644 --- a/include/osmocom/msc/msc_a.h +++ b/include/osmocom/msc/msc_a.h @@ -45,6 +45,7 @@ struct ran_infra; #define MSC_A_USE_PAGING_RESPONSE "paging-response" #define MSC_A_USE_CC "cc" #define MSC_A_USE_SMS "sms" +#define MSC_A_USE_SMS_MMTS "sms_mmts" #define MSC_A_USE_NC_SS "nc_ss" #define MSC_A_USE_SILENT_CALL "silent_call" diff --git a/include/osmocom/msc/transaction.h b/include/osmocom/msc/transaction.h index 9278b6400..ba609ea3b 100644 --- a/include/osmocom/msc/transaction.h +++ b/include/osmocom/msc/transaction.h @@ -110,6 +110,8 @@ struct gsm_trans { /* SM-RP-MR, Message Reference (see GSM TS 04.11, section 8.2.3) */ uint8_t sm_rp_mr; + /* More Messages to Send (see 3GPP TS 29.002, section 7.6.8.7) */ + bool sm_rp_mmts_ind; struct gsm_sms *sms; } sms; |