BSSMAP_Templates: Define various ASSIGNMENT related templates/constants

Change-Id: Id4f98120dbedf1a4fd5fb34df0d638eb08d7c3cb
This commit is contained in:
Harald Welte 2017-12-15 13:56:06 +01:00
parent b69533d153
commit 4bf5fc97fb
1 changed files with 42 additions and 0 deletions

View File

@ -316,8 +316,15 @@ modifies ts_BSSAP_BSSMAP := {
}
}
const OCT1 ChRate_ANY := '00'O;
const OCT1 ChRate_TCHF := '08'O;
const OCT1 ChRate_TCHH := '09'O;
const OCT1 ChRate_TCHForH_Fpref := '0A'O;
const OCT1 ChRate_TCHForH_Hpref := '0B'O;
const OCT1 ChRate_TCHForH_Fpref_nochg := '1A'O;
const OCT1 ChRate_TCHForH_Hpref_nochg := '1B'O;
const OCT1 ChRate_TCHForH := '0F'O;
const OCT1 ChRate_TCHForH_nochg := '1F'O;
template (value) BSSMAP_IE_ChannelType ts_BSSMAP_IE_ChannelType := {
elementIdentifier := '0B'O, /* overwritten */
@ -328,6 +335,36 @@ template (value) BSSMAP_IE_ChannelType ts_BSSMAP_IE_ChannelType := {
speechId_DataIndicator := '01'O /* FRv1 */
}
template (value) BSSMAP_IE_ChannelType ts_BSSMAP_IE_ChannelTypeCTM modifies ts_BSSMAP_IE_ChannelType := {
speechOrDataIndicator := '0100'B /* speech + CTM */
}
template (value) BSSMAP_IE_ChannelType ts_BSSMAP_IE_ChannelTypeCSD := {
elementIdentifier := '0B'O, /* overwritten */
lengthIndicator := 0, /* overwritten */
speechOrDataIndicator := '0010'B, /* data */
spare1_4 := '0000'B,
channelRateAndType := ChRate_TCHF,
speechId_DataIndicator := '10'O /* 9600 bps / transparent */
}
template (value) BSSMAP_IE_ChannelType ts_BSSMAP_IE_ChannelTypeSIGNAL := {
elementIdentifier := '0B'O, /* overwritten */
lengthIndicator := 0, /* overwritten */
speechOrDataIndicator := '0011'B, /* data */
spare1_4 := '0000'B,
channelRateAndType := ChRate_ANY,
speechId_DataIndicator := '00'O /* spare */
}
template (value) BSSMAP_IE_EncryptionInformation ts_BSSMAP_IE_EncrInfo(OCT8 kc, OCT1 algs := '05'O) := {
elementIdentifier := '0A'O,
lengthIndicator := 0, /* overwritten */
permittedAlgorithms := algs,
key := kc
}
template (value) BSSMAP_IE_CircuitIdentityCode ts_BSSMAP_IE_CIC(uint11_t span, uint5_t ts) := {
elementIdentifier := '01'O, /* overwritten */
cicHigh := bit2oct(substr(int2bit(span, 11) << 5, 0, 8)),
@ -342,6 +379,11 @@ template (value) BSSMAP_IE_AoIP_TransportLayerAddress ts_BSSMAP_IE_AoIP_TLA(BSSM
uDPPortValue := udp_port
}
template (value) BSSMAP_IE_KC128 ts_BSSMAP_IE_Kc128(OCT16 kc128) := {
elementIdentifier := '83'O,
kC128_Value := kc128
}
template PDU_BSSAP
ts_BSSMAP_AssignmentReq(template BSSMAP_IE_CircuitIdentityCode cic := omit,
template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit)