Change in osmo-pcu[master]: Support Gb PAGING-CS

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/.

laforge gerrit-no-reply at lists.osmocom.org
Mon Jan 6 10:26:46 UTC 2020


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

Change subject: Support Gb PAGING-CS
......................................................................

Support Gb PAGING-CS

The paging is sent over PACCH towards MS with an active TBF.

Related: OS#2406
Change-Id: I9501e02e1d7f6944497e724dbccb9a19c3f5221f
---
M src/gprs_bssgp_pcu.cpp
1 file changed, 23 insertions(+), 1 deletion(-)

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



diff --git a/src/gprs_bssgp_pcu.cpp b/src/gprs_bssgp_pcu.cpp
index 33b2ded..955b8cd 100644
--- a/src/gprs_bssgp_pcu.cpp
+++ b/src/gprs_bssgp_pcu.cpp
@@ -171,6 +171,26 @@
 			ms_class, egprs_ms_class, delay_csec, data, len);
 }
 
+static int gprs_bssgp_pcu_rx_paging_cs(struct msgb *msg, struct tlv_parsed *tp)
+{
+	const uint8_t *mi;
+	uint8_t mi_len;
+	uint8_t *chan_needed = (uint8_t *)TLVP_VAL(tp, BSSGP_IE_CHAN_NEEDED);
+
+	if (TLVP_PRESENT(tp, BSSGP_IE_TMSI)) {
+		mi_len = TLVP_LEN(tp, BSSGP_IE_TMSI);
+		mi = TLVP_VAL(tp, BSSGP_IE_TMSI);
+	} else if (TLVP_PRESENT(tp, BSSGP_IE_IMSI)) { /* Use IMSI if TMSI not available: */
+		mi_len = TLVP_LEN(tp, BSSGP_IE_IMSI);
+		mi = TLVP_VAL(tp, BSSGP_IE_IMSI);
+	} else {
+		LOGP(DBSSGP, LOGL_ERROR, "Neither TMSI IE nor IMSI IE is present\n");
+		return bssgp_tx_status(BSSGP_CAUSE_COND_IE_ERR, NULL, msg);
+	}
+
+	return BTS::main_bts()->add_paging(chan_needed ? *chan_needed : 0, mi, mi_len);
+}
+
 static int gprs_bssgp_pcu_rx_paging_ps(struct msgb *msg, struct tlv_parsed *tp)
 {
 	char imsi[16];
@@ -308,6 +328,9 @@
 			the_pcu.bvc_reset = 1;
 		bvc_timeout(NULL);
 		break;
+	case BSSGP_PDUT_PAGING_CS:
+		gprs_bssgp_pcu_rx_paging_cs(msg, tp);
+		break;
 	case BSSGP_PDUT_PAGING_PS:
 		gprs_bssgp_pcu_rx_paging_ps(msg, tp);
 		break;
@@ -320,7 +343,6 @@
 		break;
 	case BSSGP_PDUT_SUSPEND_NACK:
 	case BSSGP_PDUT_RESUME_NACK:
-	case BSSGP_PDUT_PAGING_CS:
 	case BSSGP_PDUT_FLUSH_LL:
 	case BSSGP_PDUT_SGSN_INVOKE_TRACE:
 		LOGP(DBSSGP, LOGL_INFO, "Rx BSSGP BVCI=%d (SIGN) PDU type %s not implemented\n",

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

Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I9501e02e1d7f6944497e724dbccb9a19c3f5221f
Gerrit-Change-Number: 16537
Gerrit-PatchSet: 7
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <axilirator at gmail.com>
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/20200106/649918f1/attachment.htm>


More information about the gerrit-log mailing list