ranap: Allow RAB ReleaseList inside RabAssReq template
Related: OS#5152 Change-Id: If5dabf24ab410ef95f92be1cb865ac06330b495e
This commit is contained in:
parent
37c877fd1e
commit
9e789bec1b
|
@ -947,7 +947,7 @@ friend function f_tc_rab_release(charstring id, TestHdlrParams pars) runs on Con
|
||||||
f_create_rab(pars.mgcp_pars);
|
f_create_rab(pars.mgcp_pars);
|
||||||
|
|
||||||
/* Send RAB Release */
|
/* Send RAB Release */
|
||||||
tx := valueof(ts_RANAP_RabAssignmentReqRabRel(ts_RAB_RL(t_RAB_id(23), ts_RanapCause_om_intervention)));
|
tx := valueof(ts_RANAP_RabAssReq(rab_rl := ts_RAB_RL(t_RAB_id(23), ts_RanapCause_om_intervention)));
|
||||||
BSSAP.send(tx);
|
BSSAP.send(tx);
|
||||||
|
|
||||||
T.start;
|
T.start;
|
||||||
|
|
|
@ -1361,49 +1361,147 @@ template RAB_FailedList tr_RAB_FL(template RAB_ID rab_id,
|
||||||
}
|
}
|
||||||
} }
|
} }
|
||||||
|
|
||||||
template (value) RANAP_PDU
|
template (value) RAB_ReleaseList ts_RAB_RL(template (value) RAB_ID rab_id,
|
||||||
ts_RANAP_RabAssReq(template (value) RAB_SetupOrModifyList rab_sml,
|
template (value) Cause cause) := { {
|
||||||
template (omit) RAB_AssignmentRequest.protocolExtensions exts := omit) := {
|
{
|
||||||
initiatingMessage := {
|
id := id_RAB_ReleaseItem,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_ReleaseItem := {
|
||||||
|
rAB_ID := rab_id,
|
||||||
|
cause := cause,
|
||||||
|
iE_Extensions := omit
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} }
|
||||||
|
|
||||||
|
template RAB_ReleaseList tr_RAB_RL(template (present) RAB_ID rab_id,
|
||||||
|
template Cause cause := ?) := { {
|
||||||
|
{
|
||||||
|
id := id_RAB_ReleaseItem,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_ReleaseItem := {
|
||||||
|
rAB_ID := rab_id,
|
||||||
|
cause := cause,
|
||||||
|
iE_Extensions := *
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} }
|
||||||
|
|
||||||
|
|
||||||
|
function
|
||||||
|
ts_RANAP_RabAssReq(template (omit) RAB_SetupOrModifyList rab_sml := omit,
|
||||||
|
template (omit) RAB_ReleaseList rab_rl := omit,
|
||||||
|
template (omit) RAB_AssignmentRequest.protocolExtensions exts := omit) return template RANAP_PDU {
|
||||||
|
var template RANAP_PDU ret;
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs := {};
|
||||||
|
var integer ie_pos := 0;
|
||||||
|
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs_rab_sml;
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs_rab_rl;
|
||||||
|
|
||||||
|
/* RAB-SetupOrModifyList */
|
||||||
|
if (istemplatekind(rab_sml, "value")) {
|
||||||
|
protocolIEs_rab_sml := {
|
||||||
|
{
|
||||||
|
id := id_RAB_SetupOrModifyList,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_SetupOrModifyList := rab_sml
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
protocolIEs[ie_pos] := protocolIEs_rab_sml[0];
|
||||||
|
ie_pos := ie_pos + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* RAB-ReleaseList */
|
||||||
|
if (istemplatekind(rab_rl, "value")) {
|
||||||
|
protocolIEs_rab_rl := {
|
||||||
|
{
|
||||||
|
id := id_RAB_ReleaseList,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_ReleaseList := rab_rl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
protocolIEs[ie_pos] := protocolIEs_rab_rl[0];
|
||||||
|
ie_pos := ie_pos + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ret.initiatingMessage := {
|
||||||
procedureCode := id_RAB_Assignment,
|
procedureCode := id_RAB_Assignment,
|
||||||
criticality := reject,
|
criticality := reject,
|
||||||
value_ := {
|
value_ := {
|
||||||
rAB_AssignmentRequest := {
|
rAB_AssignmentRequest := {
|
||||||
protocolIEs := {
|
protocolIEs := protocolIEs,
|
||||||
{
|
|
||||||
id := id_RAB_SetupOrModifyList,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_SetupOrModifyList := rab_sml
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
protocolExtensions := exts
|
protocolExtensions := exts
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
template RANAP_PDU
|
|
||||||
tr_RANAP_RabAssReq(template RAB_SetupOrModifyList rab_sml,
|
function
|
||||||
template RAB_AssignmentRequest.protocolExtensions exts := *) := {
|
tr_RANAP_RabAssReq(template RAB_SetupOrModifyList rab_sml := omit,
|
||||||
initiatingMessage := {
|
template RAB_ReleaseList rab_rl := omit,
|
||||||
|
template RAB_AssignmentRequest.protocolExtensions exts := *) return template RANAP_PDU {
|
||||||
|
var template RANAP_PDU ret;
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs := {};
|
||||||
|
var integer ie_pos := 0;
|
||||||
|
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs_rab_sml;
|
||||||
|
var template RAB_AssignmentRequest.protocolIEs protocolIEs_rab_rl;
|
||||||
|
|
||||||
|
/* RAB-SetupOrModifyList */
|
||||||
|
if (not istemplatekind(rab_sml, "omit")) {
|
||||||
|
protocolIEs_rab_sml := {
|
||||||
|
{
|
||||||
|
id := id_RAB_SetupOrModifyList,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_SetupOrModifyList := rab_sml
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
protocolIEs[ie_pos] := protocolIEs_rab_sml[0];
|
||||||
|
ie_pos := ie_pos + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* RAB-ReleaseList */
|
||||||
|
if (not istemplatekind(rab_rl, "omit")) {
|
||||||
|
protocolIEs_rab_rl := {
|
||||||
|
{
|
||||||
|
id := id_RAB_ReleaseList,
|
||||||
|
criticality := ignore,
|
||||||
|
value_ := {
|
||||||
|
rAB_ReleaseList := rab_rl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
protocolIEs[ie_pos] := protocolIEs_rab_rl[0];
|
||||||
|
ie_pos := ie_pos + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ret.initiatingMessage := {
|
||||||
procedureCode := id_RAB_Assignment,
|
procedureCode := id_RAB_Assignment,
|
||||||
criticality := reject,
|
criticality := reject,
|
||||||
value_ := {
|
value_ := {
|
||||||
rAB_AssignmentRequest := {
|
rAB_AssignmentRequest := {
|
||||||
protocolIEs := {
|
protocolIEs := protocolIEs,
|
||||||
{
|
|
||||||
id := id_RAB_SetupOrModifyList,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_SetupOrModifyList := rab_sml
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
protocolExtensions := exts
|
protocolExtensions := exts
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
function
|
function
|
||||||
|
@ -1532,82 +1630,6 @@ tr_RANAP_RabAssResp(template RAB_SetupOrModifiedList rab_sml := omit,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
template (value) RAB_ReleaseList ts_RAB_RL(template (value) RAB_ID rab_id,
|
|
||||||
template (value) Cause cause) := { {
|
|
||||||
{
|
|
||||||
id := id_RAB_ReleaseItem,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_ReleaseItem := {
|
|
||||||
rAB_ID := rab_id,
|
|
||||||
cause := cause,
|
|
||||||
iE_Extensions := omit
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} }
|
|
||||||
|
|
||||||
template RAB_ReleaseList tr_RAB_RL(template (present) RAB_ID rab_id,
|
|
||||||
template Cause cause := ?) := { {
|
|
||||||
{
|
|
||||||
id := id_RAB_ReleaseItem,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_ReleaseItem := {
|
|
||||||
rAB_ID := rab_id,
|
|
||||||
cause := cause,
|
|
||||||
iE_Extensions := *
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} }
|
|
||||||
|
|
||||||
template (value) RANAP_PDU
|
|
||||||
ts_RANAP_RabAssignmentReqRabRel(template (value) RAB_ReleaseList rab_rl,
|
|
||||||
template (omit) RAB_AssignmentRequest.protocolExtensions exts := omit) := {
|
|
||||||
initiatingMessage := {
|
|
||||||
procedureCode := id_RAB_Assignment,
|
|
||||||
criticality := reject,
|
|
||||||
value_ := {
|
|
||||||
rAB_AssignmentRequest := {
|
|
||||||
protocolIEs := {
|
|
||||||
{
|
|
||||||
id := id_RAB_ReleaseList,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_ReleaseList := rab_rl
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
protocolExtensions := exts
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
template RANAP_PDU
|
|
||||||
tr_RANAP_RabAssignmentReqRabRel(template RAB_ReleaseList rab_rl,
|
|
||||||
template RAB_AssignmentRequest.protocolExtensions exts := *) := {
|
|
||||||
initiatingMessage := {
|
|
||||||
procedureCode := id_RAB_Assignment,
|
|
||||||
criticality := reject,
|
|
||||||
value_ := {
|
|
||||||
rAB_AssignmentRequest := {
|
|
||||||
protocolIEs := {
|
|
||||||
{
|
|
||||||
id := id_RAB_ReleaseList,
|
|
||||||
criticality := ignore,
|
|
||||||
value_ := {
|
|
||||||
rAB_ReleaseList := rab_rl
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
protocolExtensions := exts
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************************************
|
/*****************************************************************************************************
|
||||||
*
|
*
|
||||||
*****************************************************************************************************/
|
*****************************************************************************************************/
|
||||||
|
|
Loading…
Reference in New Issue