pespin has uploaded this change for review.
5gc: parametrize RequestType in f_pdu_sess_establish()
Change-Id: I69d6be5e581565720a21c719b0f982eb31ec2adf
---
M 5gc/C5G_Tests.ttcn
M 5gc/ConnHdlr.ttcn
M library/NG_NAS_Osmo_Types.ttcn
3 files changed, 19 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/29/42329/1
diff --git a/5gc/C5G_Tests.ttcn b/5gc/C5G_Tests.ttcn
index bdb0c84..636a0a3 100644
--- a/5gc/C5G_Tests.ttcn
+++ b/5gc/C5G_Tests.ttcn
@@ -360,7 +360,7 @@
}
private function f_TC_ue_context_release_with_pdu_session() runs on ConnHdlr {
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
f_sleep(1.0);
f_ue_context_release();
}
@@ -376,7 +376,7 @@
private function f_TC_pdu_sess_modification() runs on ConnHdlr {
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
f_sleep(1.0);
f_pdu_sess_modify();
f_pdu_sess_release();
@@ -432,7 +432,7 @@
var PDU_SessionStatus pdu_session_status;
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
pdu_session_status := f_PDU_SessionStatus();
f_service_request_cm_idle(ul_data_status := pdu_session_status,
pdu_sess_status := pdu_session_status);
@@ -457,7 +457,7 @@
* UE signals that the active session is now inactive. AMF sends a PFCP Session Delete to SMF. */
private function f_TC_ue_service_request_cm_idle_inact_sess() runs on ConnHdlr {
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
f_service_request_cm_idle(pdu_sess_status := cs_PDU_SessionStatus('00000000'B, '00000000'B));
NGAP.receive(cr_NG_SERVICE_ACCEPT(p_PDU_SessionStatus := cr_PDU_SessionStatus('00000000'B, '00000000'B)));
f_deregister();
@@ -495,7 +495,7 @@
var PDU_SessionStatus pdu_session_status;
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
pdu_session_status := f_PDU_SessionStatus();
f_service_request_cm_connected(ul_data_status := cs_PDU_SessionStatus('00000000'B, '00000000'B),
pdu_sess_status := pdu_session_status);
@@ -556,7 +556,7 @@
/* 3GPP TS 23.502 4.8.1.1(a) Connection Inactive procedure */
private function f_TC_connection_inactive() runs on ConnHdlr {
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
/* Figure 4.8.1.1a-1 step 2: "NG-RAN sends N2 MT Communication Handling request message
* to AMF indicating the UE is transitioning to RRC_INACTIVE state". */
@@ -588,7 +588,7 @@
* 3GPP TS 23.502 4.8.2.3 Connection Resume procedure */
private function f_TC_connection_suspend() runs on ConnHdlr {
f_register();
- f_pdu_sess_establish(false);
+ f_pdu_sess_establish(configure_userplane := false);
f_ue_context_suspend();
f_ue_context_resume();
diff --git a/5gc/ConnHdlr.ttcn b/5gc/ConnHdlr.ttcn
index a561949..38f55e0 100644
--- a/5gc/ConnHdlr.ttcn
+++ b/5gc/ConnHdlr.ttcn
@@ -526,7 +526,8 @@
}
/* 3GPP TS 23.502 4.3.2.2 UE Requested PDU Session Establishment */
-function f_pdu_sess_establish(boolean configure_userplane := true) runs on ConnHdlr {
+function f_pdu_sess_establish(BIT3 request_type := c_RequestType_initial_request,
+ boolean configure_userplane := true) runs on ConnHdlr {
var template (value) NG_NAS_UL_Message_Type nas_ul_msg;
var NAS_PDU nas_pdu;
var NG_NAS_DL_Message_Type rx_nas, inner_nas;
@@ -541,7 +542,7 @@
nas_ul_msg := cs_NG_UL_NAS_TRANSPORT(cs_PayloadContainerType(tsc_PayloadContainerESMMsg),
cs_PayloadContainerLV(nas_pdu),
p_PDU_SessionId := cs_NG_PDU_SessionIdTV(pdu_sess_id),
- p_RequestType := cs_NG_Request_TypeTV('001'B),
+ p_RequestType := cs_NG_Request_TypeTV(c_RequestType_initial_request),
p_DNN := cs_DNN_TLV(f_enc_dns_hostname(g_pars.ue_pars.apn)));
NGAP.send(nas_ul_msg);
as_ngap_handle_InitialCtxReq_withPDUSessionList(g_pars.ue_pars.amf_id);
diff --git a/library/NG_NAS_Osmo_Types.ttcn b/library/NG_NAS_Osmo_Types.ttcn
index a1a5263..f897246 100644
--- a/library/NG_NAS_Osmo_Types.ttcn
+++ b/library/NG_NAS_Osmo_Types.ttcn
@@ -37,6 +37,15 @@
const BIT4 c_PayloadContainer_SLPP_Message_Container := '1100'B;
const BIT4 c_PayloadContainer_Multiple_Payloads := '1111'B;
+/* 9.11.3.47 Request type */
+const BIT3 c_RequestType_initial_request := '001'B;
+const BIT3 c_RequestType_existing_pdu_session := '010'B;
+const BIT3 c_RequestType_initial_emergency_request := '011'B;
+const BIT3 c_RequestType_existing_emergency_pdu_session := '100'B;
+const BIT3 c_RequestType_modification_request := '101'B;
+const BIT3 c_RequestType_ma_pdu_request := '110'B;
+const BIT3 c_RequestType_reserved := '111'B;
+
const NAS_CauseValue_Type c_5GSM_Cause_RegularDeactivation := '00100100'B;
/* 3GPP TS 24.501 9.11.3.50 Service type */
To view, visit change 42329. To unsubscribe, or for help writing mail filters, visit settings.