Change in osmo-bsc[master]: SRVCC: Forward Last EUTRAN PLMN Id in Handover Required

laforge gerrit-no-reply at lists.osmocom.org
Sat Apr 24 08:49:09 UTC 2021


laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/23761 )

Change subject: SRVCC: Forward Last EUTRAN PLMN Id in Handover Required
......................................................................

SRVCC: Forward Last EUTRAN PLMN Id in Handover Required

"""
The old BSS shall inform the new BSS of the MS's last used E-UTRAN PLMN
in the "Last used E-UTRAN PLMN ID" information element included in the
"Old BSS to New BSS information" Information Element if this information
is present.
"""

Depends: libosmocore.git Change-Id I6280ce1abc283f1491bc6f391b2dd952df33a16b
Related: SYS#5337
Change-Id: I6cf54f9a16d598f98dc56b25f0fef56225a25a28
---
M TODO-RELEASE
M src/osmo-bsc/osmo_bsc_bssap.c
2 files changed, 12 insertions(+), 4 deletions(-)

Approvals:
  laforge: Looks good to me, approved
  fixeria: Looks good to me, but someone else must approve
  Jenkins Builder: Verified



diff --git a/TODO-RELEASE b/TODO-RELEASE
index de9e62c..d0e3ff0 100644
--- a/TODO-RELEASE
+++ b/TODO-RELEASE
@@ -9,3 +9,4 @@
 #library	what		description / commit summary line
 libosmocore	>1.5.1		needs osmo_bts_features_name(), osmo_bts_features_desc()
 libosmogsm    >1.5.1            enum entry GSM0808_FE_IE_LAST_USED_EUTRAN_PLMN_ID
+libosmogsm    >1.5.1            introduced struct needed gsm0808_old_bss_to_new_bss_info->last_eutran_plmn_id
diff --git a/src/osmo-bsc/osmo_bsc_bssap.c b/src/osmo-bsc/osmo_bsc_bssap.c
index fc1484e..c3716ce 100644
--- a/src/osmo-bsc/osmo_bsc_bssap.c
+++ b/src/osmo-bsc/osmo_bsc_bssap.c
@@ -1358,6 +1358,7 @@
 {
 	int rc;
 	struct msgb *msg;
+	struct gsm_subscriber_connection *conn = lchan->conn;
 	struct gsm0808_handover_required params = {
 		.cause = GSM0808_CAUSE_BETTER_CELL,
 		.cil = *target_cells,
@@ -1365,6 +1366,12 @@
 		.current_channel_type_1 = gsm0808_current_channel_type_1(lchan->type),
 	};
 
+	if (conn->last_eutran_plmn_valid) {
+		params.old_bss_to_new_bss_info_present = true;
+		params.old_bss_to_new_bss_info.last_eutran_plmn_id_present = true;
+		params.old_bss_to_new_bss_info.last_eutran_plmn_id = conn->last_eutran_plmn;
+	}
+
 	switch (lchan->type) {
 	case GSM_LCHAN_TCH_F:
 	case GSM_LCHAN_TCH_H:
@@ -1383,14 +1390,14 @@
 
 	msg = gsm0808_create_handover_required(&params);
 	if (!msg) {
-		LOG_HO(lchan->conn, LOGL_ERROR, "Cannot compose BSSMAP Handover Required message\n");
+		LOG_HO(conn, LOGL_ERROR, "Cannot compose BSSMAP Handover Required message\n");
 		return -EINVAL;
 	}
 
-	rate_ctr_inc(&lchan->conn->sccp.msc->msc_ctrs->ctr[MSC_CTR_BSSMAP_TX_DT1_HANDOVER_REQUIRED]);
-	rc = gscon_sigtran_send(lchan->conn, msg);
+	rate_ctr_inc(&conn->sccp.msc->msc_ctrs->ctr[MSC_CTR_BSSMAP_TX_DT1_HANDOVER_REQUIRED]);
+	rc = gscon_sigtran_send(conn, msg);
 	if (rc) {
-		LOG_HO(lchan->conn, LOGL_ERROR, "Cannot send BSSMAP Handover Required message\n");
+		LOG_HO(conn, LOGL_ERROR, "Cannot send BSSMAP Handover Required message\n");
 		return rc;
 	}
 

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/23761
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I6cf54f9a16d598f98dc56b25f0fef56225a25a28
Gerrit-Change-Number: 23761
Gerrit-PatchSet: 9
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier at sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210424/e0488d95/attachment.htm>


More information about the gerrit-log mailing list