Review at  https://gerrit.osmocom.org/7276

restore sending of optional MM info messages

Since commit 2483f1b050496eda7f8707327204251c57212906 the function
gsm48_tx_mm_info() was not called anymore. No MM info messages were
transmitted to phones even if MM info messages were enabled via VTY.

With this commit, we call gsm48_tx_mm_info() after successfully
processing an IMSI ATTACH location update.

Change-Id: Ice5963d84253eb8c803cd2dfa8b25a4db5382827
Related: OS#2850
---
M include/osmocom/msc/vlr.h
M src/libmsc/gsm_04_08.c
M src/libvlr/vlr_lu_fsm.c
3 files changed, 15 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/76/7276/1

diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index 37702a9..96bfa2f 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -217,6 +217,7 @@
        /* UTRAN: send Common Id (when auth+ciph are complete) */
        int (*tx_common_id)(void *msc_conn_ref);
 
+       int (*tx_mm_info)(void *msc_conn_ref);
 
        /* notify MSC/SGSN that the subscriber data in VLR has been updated */
        void (*subscr_update)(struct vlr_subscr *vsub);
diff --git a/src/libmsc/gsm_04_08.c b/src/libmsc/gsm_04_08.c
index 08f1517..f604b87 100644
--- a/src/libmsc/gsm_04_08.c
+++ b/src/libmsc/gsm_04_08.c
@@ -3575,6 +3575,15 @@
        return msc_tx_common_id(conn);
 }
 
+/* VLR asks us to transmit MM info. */
+static int msc_vlr_tx_mm_info(void *msc_conn_ref)
+{
+       struct gsm_subscriber_connection *conn = msc_conn_ref;
+       if (!conn->network->send_mm_info)
+               return 0;
+       return gsm48_tx_mm_info(conn);
+}
+
 /* VLR asks us to transmit a CM Service Reject */
 static int msc_vlr_tx_cm_serv_rej(void *msc_conn_ref, enum vlr_proc_arq_result 
result)
 {
@@ -3741,6 +3750,7 @@
        .tx_cm_serv_rej = msc_vlr_tx_cm_serv_rej,
        .set_ciph_mode = msc_vlr_set_ciph_mode,
        .tx_common_id = msc_vlr_tx_common_id,
+       .tx_mm_info = msc_vlr_tx_mm_info,
        .subscr_update = msc_vlr_subscr_update,
        .subscr_assoc = msc_vlr_subscr_assoc,
 };
diff --git a/src/libvlr/vlr_lu_fsm.c b/src/libvlr/vlr_lu_fsm.c
index 9a4a239..908e0e3 100644
--- a/src/libvlr/vlr_lu_fsm.c
+++ b/src/libvlr/vlr_lu_fsm.c
@@ -1257,6 +1257,10 @@
                /* TODO: Set_Notification_Type 23.078 */
                /* TODO: Notify_gsmSCF 23.078 */
                /* TODO: Authenticated Radio Contact Established -> ARC */
+
+               if (lfp->type == VLR_LU_TYPE_IMSI_ATTACH)
+                       lfp->vlr->ops.tx_mm_info(lfp->msc_conn_ref);
+
                lu_fsm_success(fi);
                break;
        case VLR_ULA_E_LU_COMPL_FAILURE:

-- 
To view, visit https://gerrit.osmocom.org/7276
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ice5963d84253eb8c803cd2dfa8b25a4db5382827
Gerrit-PatchSet: 1
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Owner: Stefan Sperling <ssperl...@sysmocom.de>

Reply via email to