BSSMAP_templates: Update templates to set Osmux fields

After new fields (osmux osmocom extensions) were added to BSSMAP Reset
and BSSMAP AssignReq/AssignCompl in titan.ProtocolModules.BSSMAP, we
need to set them in ts_* templates, otherwise TTCN3 runtimes fails with:
"""
BSC_Tests.ttcn:143 Dynamic test case error: Performing a valueof or send
operation on a non-specific template of type @BSSAP_Types.BSSMAP_IE_Osmo_OsmuxSupport.
"""

Fixes: fe0c6083bd
Depends: titan.ProtocolModules.BSSMAP Iaf1e137269c0da20b2c96fd104b57edf336693af
Change-Id: I568100376cf8a47c01a33bada97bf8eaa7c07fcd
This commit is contained in:
Pau Espin 2019-05-23 15:03:54 +02:00
parent 4a129f83ce
commit 5eff975b23
1 changed files with 44 additions and 16 deletions

View File

@ -164,47 +164,62 @@ template (value) BSSMAP_IE_OldToNewBSSInfo ts_BSSMAP_IE_OldToNewBSSInfo(oldToNew
oldToNewBSSIEs := val
}
template (value) PDU_BSSAP ts_BSSMAP_Reset(BssmapCause cause) modifies ts_BSSAP_BSSMAP := {
template BSSMAP_IE_Osmo_OsmuxSupport tr_BSSMAP_IE_Osmo_OsmuxSupport := {
elementIdentifier := 'F0'O
}
private function f_enc_osmux_support(boolean osmux_enabled) return template BSSMAP_IE_Osmo_OsmuxSupport {
if (osmux_enabled) {
return tr_BSSMAP_IE_Osmo_OsmuxSupport;
}
return omit;
}
template (value) PDU_BSSAP ts_BSSMAP_Reset(BssmapCause cause, boolean osmux_enabled := false) modifies ts_BSSAP_BSSMAP := {
pdu := {
bssmap := {
reset := {
messageType := '30'O,
cause := ts_BSSMAP_IE_Cause(cause),
a_InterfaceSelectorForReset := omit
a_InterfaceSelectorForReset := omit,
osmuxSupport := f_enc_osmux_support(osmux_enabled)
}
}
}
}
template PDU_BSSAP tr_BSSMAP_Reset modifies tr_BSSAP_BSSMAP := {
template PDU_BSSAP tr_BSSMAP_Reset(boolean osmux_enabled := false) modifies tr_BSSAP_BSSMAP := {
pdu := {
bssmap := {
reset := {
messageType := '30'O,
cause := ?,
a_InterfaceSelectorForReset := *
a_InterfaceSelectorForReset := *,
osmuxSupport := f_enc_osmux_support(osmux_enabled)
}
}
}
}
template (value) PDU_BSSAP ts_BSSMAP_ResetAck modifies ts_BSSAP_BSSMAP := {
template (value) PDU_BSSAP ts_BSSMAP_ResetAck(boolean osmux_enabled := false) modifies ts_BSSAP_BSSMAP := {
pdu := {
bssmap := {
resetAck := {
messageType := '31'O,
a_InterfaceSelectorForReset := omit
a_InterfaceSelectorForReset := omit,
osmuxSupport := f_enc_osmux_support(osmux_enabled)
}
}
}
}
template PDU_BSSAP tr_BSSMAP_ResetAck modifies tr_BSSAP_BSSMAP := {
template PDU_BSSAP tr_BSSMAP_ResetAck(boolean osmux_enabled := false) modifies tr_BSSAP_BSSMAP := {
pdu := {
bssmap := {
resetAck := {
messageType := '31'O,
a_InterfaceSelectorForReset := *
a_InterfaceSelectorForReset := *,
osmuxSupport := f_enc_osmux_support(osmux_enabled)
}
}
}
@ -443,9 +458,15 @@ template BSSMAP_IE_SpeechCodec ts_BSSMAP_IE_SpeechCodec(template BSSMAP_FIELD_Co
codecElements := valueof(elem)
}
template (value) BSSMAP_IE_Osmo_OsmuxCID ts_OsmuxCID(INT1 cid) := {
elementIdentifier := 'F1'O,
osmuxCID := cid
}
template PDU_BSSAP
ts_BSSMAP_AssignmentReq(template BSSMAP_IE_CircuitIdentityCode cic := omit,
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit)
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit,
template BSSMAP_IE_Osmo_OsmuxCID osmuxCID := omit)
modifies ts_BSSAP_BSSMAP := {
pdu := {
bssmap := {
@ -472,14 +493,16 @@ modifies ts_BSSAP_BSSMAP := {
globalCallReference := omit,
lCLS_Configuration := omit,
lCLS_ConnectionStatusControl := omit,
lCLS_CorrelationNotNeeded := omit
lCLS_CorrelationNotNeeded := omit,
osmuxCID := osmuxCID
}
}
}
}
template PDU_BSSAP tr_BSSMAP_AssignmentReq(template BSSMAP_IE_CircuitIdentityCode cic := *,
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := *)
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := *,
template BSSMAP_IE_Osmo_OsmuxCID osmuxCID := *)
modifies tr_BSSAP_BSSMAP := {
pdu := {
bssmap := {
@ -506,7 +529,8 @@ modifies tr_BSSAP_BSSMAP := {
globalCallReference := *,
lCLS_Configuration := *,
lCLS_ConnectionStatusControl := *,
lCLS_CorrelationNotNeeded := *
lCLS_CorrelationNotNeeded := *,
osmuxCID := osmuxCID
}
}
}
@ -515,7 +539,8 @@ modifies tr_BSSAP_BSSMAP := {
template PDU_BSSAP
ts_BSSMAP_AssignmentComplete(template BSSMAP_IE_CircuitIdentityCode cic := omit,
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit,
template BSSMAP_IE_SpeechCodec speechCodec := omit)
template BSSMAP_IE_SpeechCodec speechCodec := omit,
template BSSMAP_IE_Osmo_OsmuxCID osmuxCID := omit)
modifies ts_BSSAP_BSSMAP := {
pdu := {
bssmap := {
@ -533,14 +558,16 @@ modifies ts_BSSAP_BSSMAP := {
aoIPTransportLayer := aoip,
speechCodec := speechCodec,
codecList := omit,
lCLS_BSS_Status := omit
lCLS_BSS_Status := omit,
osmuxCID := osmuxCID
}
}
}
}
template PDU_BSSAP tr_BSSMAP_AssignmentComplete(template BSSMAP_IE_CircuitIdentityCode cic := *,
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := *)
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := *,
template BSSMAP_IE_Osmo_OsmuxCID osmuxCID := *)
modifies tr_BSSAP_BSSMAP := {
pdu := {
bssmap := {
@ -558,7 +585,8 @@ modifies tr_BSSAP_BSSMAP := {
aoIPTransportLayer := aoip,
speechCodec := *,
codecList := *,
lCLS_BSS_Status := *
lCLS_BSS_Status := *,
osmuxCID := osmuxCID
}
}
}