Newer
Older
* @author ETSI / STF519
* @version $URL:$
* $Id:$
* @desc This module provides Lib S1AP Templates used by the test component for S1AP tests.
* @copyright ETSI Copyright Notification
* No part may be reproduced except as authorized by written permission.
* The copyright and the foregoing restriction extend to reproduction in all media.
* All rights reserved.
* @see ETSI TS 136 413 / 3GPP TS 36.413 version 13.4.0 Release 13
// LibS1AP
import from S1AP_Constants language "ASN.1:1997" all;
import from S1AP_CommonDataTypes language "ASN.1:1997" all;
// import from S1AP_Containers language "ASN.1:1997" all;
import from S1AP_IEs language "ASN.1:1997" all;
import from S1AP_PDU_Contents language "ASN.1:1997" all;
import from S1AP_PDU_Descriptions language "ASN.1:1997" all;
import from LibS1AP_TypesAndValues all;
group g_S1AP {
group g_S1AP_PDU {
/**
* @desc Send template for S1AP PDU with InitiatingMessage payload
* @param p_procedureCode Procedure code
* @param p_value Message value according to the Procedure code
* @see ETSI TS 136 413 Clause 9.1 Message Functional Definition and Content
*/
template (value) S1AP_PDU m_initiatingMessage(
in ProcedureCode p_procedureCode,
in anytype p_value
):= {
initiatingMessage := {
procedureCode := p_procedureCode,
criticality := reject,
value_ := p_value
}
} // End of template m_initiatingMessage
} // End of group g_S1AP_PDU
group HandoverPreparation {
group initiatingMessage {
} // End of group initiatingMessage
group successfulOutcome {
} // End of group successfulOutcome
group unsuccessfulOutcome {
} // End of group unsuccessfulOutcome
} // End of group HandoverPreparation
group HandoverResourceAllocation {
}// End of group HandoverResourceAllocation
group ERABSetup{
/**
* @desc Send template for InitiatingMessage message with E-RABSetup payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_initiatingMessage_E_RABSetup(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_initiatingMessage_E_RABSetup
}// End of group ERABSetup
//TODO: Other....
}// End of group HandoverResourceAllocation
group ERABSetup{
/**
* @desc Receive template for SuccessfulOutcome message
* @param p_procedureCode Expected procedure code. Default: ?
* @param p_value Expected procedure code. Default: ?
*/
template (present) SuccessfulOutcome mw_successfulOutcome_E_RABSetupResponse(
template (present) ProcedureCode p_procedureCode := ?,
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := p_procedureCode,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_successfulOutcome_E_RABSetupResponse
} // End of group ERABSetup
//TODO: Other....
group Class2{
} //End of group Class2
} // End of group g_S1AP
group S1AP_Protocol_IEs {
group Send_IEs {
group E_RAB_IEsend {
/**
* @desc Send template for MME UE S1AP ID protocol IE
* @param p_value MME/UE S1AP identifier. Default: 1
* @see ETSI TS 136 413 Clause 9.2.3.3 MME UE S1AP ID
*/
template (value) ProtocolIE m_E_RAB_IE_MME(
in template (value) MME_UE_S1AP_ID p_value := 1
):= {
id := S1AP_Constants.id_MME_UE_S1AP_ID,
criticality := reject,
value_ := { MME_UE_S1AP_ID := valueof(p_value) }
} // End of template m_E_RAB_IE_MME
/**
* @desc Send template for ENB ID protocol IE
* @param p_value ENB identifier. Default: 1
* @see ETSI TS 136 413 Clause 9.2.3.4 eNB UE S1AP ID
*/
template (value) ProtocolIE m_E_RAB_IE_ENB(
in ENB_UE_S1AP_ID p_value := 1
):= {
id := S1AP_Constants.id_eNB_UE_S1AP_ID,
criticality := reject,
value_ := { ENB_UE_S1AP_ID := p_value }
} // End of template m_E_RAB_IE_ENB
/**
* @desc Send template for E-RABToBeSetupListBearerSUReq protocol IE
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
*/
template (value) ProtocolIE m_E_RAB_IE_ERAB(
in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_value := { m_E_RABToBeSetupItemBearerSUReq }
):= {
id := S1AP_Constants.id_E_RABToBeSetupListBearerSUReq,
criticality := reject,
value_ := { RecordOf_E_RABToBeSetupItemBearerSUReq := valueof(p_value) }
} // End of template m_E_RAB_IE_ERAB
} // End of group E_RAB_IEsend
} // End of group Send_IEs
group Receive_IEs{
/**
* @desc Receive template for MME UE S1AP ID protocol IE
* @param p_value Expected MME/UE S1AP identifier. Default: ?
* @see ETSI TS 136 413 Clause 9.2.3.3 MME UE S1AP ID
*/
template (present) ProtocolIE mw_E_RAB_IE_MME(
template (present) MME_UE_S1AP_ID p_parm := ?
) := {
id := S1AP_Constants.id_MME_UE_S1AP_ID,
criticality := ignore,
value_ := {MME_UE_S1AP_ID := p_parm}
} // End of template mw_E_RAB_IE_MME
/**
* @desc Receive template for ENB ID protocol IE
* @param p_value Expected ENB identifier. Default: ?
* @see ETSI TS 136 413 Clause 9.2.3.4 eNB UE S1AP ID
*/
template (present) ProtocolIE mw_E_RAB_IE_ENB(
template(present) ENB_UE_S1AP_ID p_parm := ?
) := {
id := S1AP_Constants.id_eNB_UE_S1AP_ID,
criticality := ignore,
value_ := {ENB_UE_S1AP_ID := p_parm}
} // End of template mw_E_RAB_IE_ENB
/**
* @desc Receive template for E-RABToBeSetupListBearerSUReq protocol IE
* @param p_value Expected protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
*/
template (present) ProtocolIE mw_E_RAB_IE_ERAB(
template (present) RecordOf_E_RABSetupItemBearerSURes p_value := { mw_E_RABSetupItemBearerSURes }
):= {
id := S1AP_Constants.id_E_RABSetupListBearerSURes,
criticality := ignore,
value_ := { RecordOf_E_RABSetupItemBearerSURes := p_value }
} // End of template
template (present) ProtocolIE mw_E_RAB_IE_fSUL(
template(present) RecordOf_E_RABItem p_value := { ? }
):= {
id := S1AP_Constants.id_E_RABFailedToSetupListBearerSURes,
criticality := ignore,
value_ := { RecordOf_E_RABItem := p_value }
} // End of template mw_E_RAB_IE_fSUL
} // End of group Receive_IEs
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
/**
* @desc
*/
template(value) E_RABToBeSetupItemBearerSUReq m_E_RABToBeSetupItemBearerSUReq(
in E_RAB_ID p_e_RAB_ID := 0,
in template (value) E_RABLevelQoSParameters p_e_RABlevelQoSParameters := m_e_RABlevelQoSParameters
) := {
e_RAB_ID := p_e_RAB_ID,
e_RABlevelQoSParameters := valueof(p_e_RABlevelQoSParameters),
transportLayerAddress := '0'B,
gTP_TEID := '00000000'O,
nAS_PDU := '0000'O,
iE_Extensions := omit
} // End of template m_E_RABToBeSetupItemBearerSUReq
/**
* @desc
* @param p_qCI
*/
template (value) E_RABLevelQoSParameters m_e_RABlevelQoSParameters(
in QCI p_qCI := 0
):= {
qCI := p_qCI,
allocationRetentionPriority := {
priorityLevel := 0,
pre_emptionCapability := shall_not_trigger_pre_emption,
pre_emptionVulnerability := pre_emptable,
iE_Extensions := omit
},
gbrQosInformation := omit,
iE_Extensions := omit
} // End of template m_e_RABlevelQoSParameters
/**
* @desc
* @param p_e_RAB_ID
* @param p_cause
*/
template (present) E_RABSetupItemBearerSURes mw_E_RABSetupItemBearerSURes(
template(present) E_RAB_ID p_e_RAB_ID := ?
):= {
e_RAB_ID := p_e_RAB_ID,
transportLayerAddress := '?'B,
gTP_TEID := ?,
iE_Extensions := *
} // End of template mw_E_RABSetupItemBearerSURes
/**
* @desc
*/
template (present) E_RABItem mw_E_RABItem(
template (present) E_RAB_ID p_e_RAB_ID := ?,
template (present) Cause p_cause := ?
) := {
e_RAB_ID := p_e_RAB_ID,cause := p_cause,iE_Extensions := *
} // End of template mw_E_RABItem
} // End of group g_IEParameters
} // End of group S1AP_Protocol_IEs