fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38308?usp=email )
Change subject: s1gw: move MME_UE_S1AP_ID to ConnHdlrPars ......................................................................
s1gw: move MME_UE_S1AP_ID to ConnHdlrPars
Change-Id: Idac24c54529073855f75bef7bcec87fc68b66e1e --- M s1gw/S1GW_ConnHdlr.ttcn M s1gw/S1GW_Tests.ttcn 2 files changed, 31 insertions(+), 44 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/08/38308/1
diff --git a/s1gw/S1GW_ConnHdlr.ttcn b/s1gw/S1GW_ConnHdlr.ttcn index 775f44c..453eff5 100644 --- a/s1gw/S1GW_ConnHdlr.ttcn +++ b/s1gw/S1GW_ConnHdlr.ttcn @@ -54,6 +54,7 @@ charstring statsd_prefix, charstring pfcp_loc_addr, charstring pfcp_rem_addr, + MME_UE_S1AP_ID mme_ue_id, ERabList erabs };
@@ -296,11 +297,9 @@ charstring tla /* Transport Layer Address */ };
-private const MME_UE_S1AP_ID c_MME_UE_ID := 4242; private const S1AP_IEs.Cause c_REL_CMD_CAUSE := { nas := normal_release };
-function f_ConnHdlr_tx_erab_setup_req(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_tx_erab_setup_req(in ERabList erabs) runs on ConnHdlr { var template (value) E_RABToBeSetupListBearerSUReq items; var template (value) E_RABLevelQoSParameters qos_params; @@ -322,11 +321,10 @@ items[i] := ts_S1AP_RABToBeSetupListBearerSUReq(item)[0]; }
- f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_RABSetupReq(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_RABSetupReq(g_pars.mme_ue_id, enb_ue_id, items)); }
-function f_ConnHdlr_rx_erab_setup_req(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_rx_erab_setup_req(in ERabList erabs) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABToBeSetupListBearerSUReq items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -346,12 +344,11 @@ items[i] := tr_S1AP_RABToBeSetupListBearerSUReq(item)[0]; }
- f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_RABSetupReq(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_RABSetupReq(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
-function f_ConnHdlr_tx_erab_setup_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_tx_erab_setup_rsp(in ERabList erabs) runs on ConnHdlr { var template (value) E_RABSetupListBearerSURes items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -368,11 +365,10 @@ items[i] := ts_S1AP_RABSetupListBearerSURes(item)[0]; }
- f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABSetupRsp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABSetupRsp(g_pars.mme_ue_id, enb_ue_id, items)); }
-function f_ConnHdlr_rx_erab_setup_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_rx_erab_setup_rsp(in ERabList erabs) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABSetupListBearerSURes items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -390,7 +386,7 @@ items[i] := tr_S1AP_RABSetupListBearerSURes(item)[0]; }
- f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABSetupRsp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABSetupRsp(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
@@ -424,29 +420,26 @@ }
function f_ConnHdlr_tx_erab_release_cmd(in ERabList erabs, - S1AP_IEs.Cause cause := c_REL_CMD_CAUSE, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) + S1AP_IEs.Cause cause := c_REL_CMD_CAUSE) runs on ConnHdlr { var template (value) E_RABList items := f_ts_E_RABList(erabs, cause); var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx;
- f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_RABReleaseCmd(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_RABReleaseCmd(g_pars.mme_ue_id, enb_ue_id, items)); }
function f_ConnHdlr_rx_erab_release_cmd(in ERabList erabs, - S1AP_IEs.Cause cause := c_REL_CMD_CAUSE, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) + S1AP_IEs.Cause cause := c_REL_CMD_CAUSE) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABList items := f_tr_E_RABList(erabs, cause); var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; var S1AP_PDU pdu;
- f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_RABReleaseCmd(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_RABReleaseCmd(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
-function f_ConnHdlr_tx_erab_release_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_tx_erab_release_rsp(in ERabList erabs) runs on ConnHdlr { var template (value) E_RABReleaseListBearerRelComp items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -458,11 +451,10 @@ items[i] := ts_E_RABReleaseListBearerRelComp(item)[0]; }
- f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABReleaseRsp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABReleaseRsp(g_pars.mme_ue_id, enb_ue_id, items)); }
-function f_ConnHdlr_rx_erab_release_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_rx_erab_release_rsp(in ERabList erabs) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABReleaseListBearerRelComp items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -475,34 +467,31 @@ items[i] := tr_E_RABReleaseListBearerRelComp(item)[0]; }
- f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABReleaseRsp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABReleaseRsp(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
function f_ConnHdlr_tx_erab_release_ind(in ERabList erabs, - S1AP_IEs.Cause cause := c_REL_CMD_CAUSE, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) + S1AP_IEs.Cause cause := c_REL_CMD_CAUSE) runs on ConnHdlr { var template (value) E_RABList items := f_ts_E_RABList(erabs, cause); var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx;
- f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABReleaseInd(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABReleaseInd(g_pars.mme_ue_id, enb_ue_id, items)); }
function f_ConnHdlr_rx_erab_release_ind(in ERabList erabs, - S1AP_IEs.Cause cause := c_REL_CMD_CAUSE, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) + S1AP_IEs.Cause cause := c_REL_CMD_CAUSE) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABList items := f_tr_E_RABList(erabs, cause); var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; var S1AP_PDU pdu;
- f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABReleaseInd(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABReleaseInd(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
-function f_ConnHdlr_tx_initial_ctx_setup_req(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_tx_initial_ctx_setup_req(in ERabList erabs) runs on ConnHdlr { var template (value) E_RABToBeSetupListCtxtSUReq items; var template (value) E_RABLevelQoSParameters qos_params; @@ -524,7 +513,7 @@ items[i] := ts_E_RABToBeSetupListCtxtSUReq(item)[0]; }
- f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_IntialCtxSetupReq(mme_id := mme_ue_id, + f_ConnHdlr_tx_s1ap_from_mme(ts_S1AP_IntialCtxSetupReq(mme_id := g_pars.mme_ue_id, enb_id := enb_ue_id, max_br := ts_UEAggregateMaximumBitrate, rab_setup_items := items, @@ -532,8 +521,7 @@ sec_key := f_rnd_bitstring(256))); }
-function f_ConnHdlr_rx_initial_ctx_setup_req(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_rx_initial_ctx_setup_req(in ERabList erabs) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABToBeSetupListCtxtSUReq items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -553,7 +541,7 @@ items[i] := tr_E_RABToBeSetupListCtxtSUReq(item)[0]; }
- f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_IntialCtxSetupReq(mme_id := mme_ue_id, + f_ConnHdlr_rx_s1ap_from_mme(pdu, tr_S1AP_IntialCtxSetupReq(mme_id := g_pars.mme_ue_id, enb_id := enb_ue_id, max_br := tr_UEAggregateMaximumBitrate, rab_setup_items := items, @@ -561,8 +549,7 @@ return pdu; }
-function f_ConnHdlr_tx_initial_ctx_setup_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_tx_initial_ctx_setup_rsp(in ERabList erabs) runs on ConnHdlr { var template (value) E_RABSetupListCtxtSURes items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -579,11 +566,10 @@ items[i] := ts_S1AP_RABSetupListCtxtSURes(item)[0]; }
- f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_InitialCtxSetupResp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_InitialCtxSetupResp(g_pars.mme_ue_id, enb_ue_id, items)); }
-function f_ConnHdlr_rx_initial_ctx_setup_rsp(in ERabList erabs, - MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID) +function f_ConnHdlr_rx_initial_ctx_setup_rsp(in ERabList erabs) runs on ConnHdlr return S1AP_PDU { var template (present) E_RABSetupListCtxtSURes items; var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx; @@ -601,7 +587,7 @@ items[i] := tr_S1AP_RABSetupListCtxtSURes(item)[0]; }
- f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_InitialCtxSetupResp(mme_ue_id, enb_ue_id, items)); + f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_InitialCtxSetupResp(g_pars.mme_ue_id, enb_ue_id, items)); return pdu; }
diff --git a/s1gw/S1GW_Tests.ttcn b/s1gw/S1GW_Tests.ttcn index fbe9d44..7fcc5d8 100644 --- a/s1gw/S1GW_Tests.ttcn +++ b/s1gw/S1GW_Tests.ttcn @@ -140,6 +140,7 @@ statsd_prefix := statsd_prefix, pfcp_loc_addr := pfcp_loc_addr, pfcp_rem_addr := pfcp_rem_addr, + mme_ue_id := 4242, erabs := f_gen_erab_list(idx, num_erabs) }
@@ -425,7 +426,7 @@
/* INITIAL CONTEXT SETUP FAILURE does not immediately trigger deletion of PFCP * sessions. It's forwarded as-is without any action. */ - s1ap_pdu := ts_S1AP_InitialCtxSetupFail(mme_id := 4242, + s1ap_pdu := ts_S1AP_InitialCtxSetupFail(mme_id := g_pars.mme_ue_id, enb_id := g_pars.idx, cause := { misc := unspecified }); f_ConnHdlr_tx_s1ap_from_enb(s1ap_pdu);