diff options
author | Harald Welte <laforge@gnumonks.org> | 2017-07-15 19:59:33 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-07-15 21:38:36 +0200 |
commit | a418918e5047b59a13ace3dddf4b3663a7b0a73a (patch) | |
tree | d891788659cd581eb7d01290bb08abf9eda9b578 /sysinfo | |
parent | a082a696cfbf859b0212486d85534505d9539de0 (diff) |
GSM_SystemInformation: Share header (for generic matching of type)
Diffstat (limited to 'sysinfo')
-rw-r--r-- | sysinfo/GSM_SystemInformation.ttcn | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/sysinfo/GSM_SystemInformation.ttcn b/sysinfo/GSM_SystemInformation.ttcn index 8413ee37..51f687bf 100644 --- a/sysinfo/GSM_SystemInformation.ttcn +++ b/sysinfo/GSM_SystemInformation.ttcn @@ -142,7 +142,7 @@ module GSM_SystemInformation { /* 44.018 9.1.31 */ type record SystemInformationType1 { - SystemInformationHeader header, + //SystemInformationHeader header, CellChannelDescription cell_chan_desc, RachControlParameters rach_control, Si1RestOctets rest_octets @@ -150,7 +150,7 @@ module GSM_SystemInformation { /* 44.018 9.1.32 */ type record SystemInformationType2 { - SystemInformationHeader header, + //SystemInformationHeader header, NeighbourCellDescription bcch_freq_list, BIT8 ncc_permitted, RachControlParameters rach_control @@ -158,7 +158,7 @@ module GSM_SystemInformation { /* 44.018 9.1.33 */ type record SystemInformationType2bis { - SystemInformationHeader header, + //SystemInformationHeader header, NeighbourCellDescription extd_bcch_freq_list, RachControlParameters rach_control, OCT1 rest_octets @@ -166,7 +166,7 @@ module GSM_SystemInformation { /* 44.018 9.1.34 */ type record SystemInformationType2ter { - SystemInformationHeader header, + //SystemInformationHeader header, NeighbourCellDescription2 extd_bcch_freq_list, RachControlParameters rach_control, OCT4 rest_octets @@ -174,7 +174,7 @@ module GSM_SystemInformation { /* 44.018 9.1.35 */ type record SystemInformationType3 { - SystemInformationHeader header, + //SystemInformationHeader header, CellIdentity cell_id, LocationAreaIdentification lai, ControlChannelDescription ctrl_chan_desc, @@ -186,7 +186,7 @@ module GSM_SystemInformation { /* 44.018 9.1.36 */ type record SystemInformationType4 { - SystemInformationHeader header, + //SystemInformationHeader header, LocationAreaIdentification lai, CellSelectionParameters cell_sel_par, RachControlParameters rach_control, @@ -203,19 +203,19 @@ module GSM_SystemInformation { /* 44.018 9.1.38 */ type record SystemInformationType5bis { - SystemInformationHeader header, + //SystemInformationHeader header, NeighbourCellDescription extd_bcch_freq_list } with { variant "" }; /* 44.018 9.1.39 */ type record SystemInformationType5ter { - SystemInformationHeader header, + //SystemInformationHeader header, NeighbourCellDescription2 extd_bcch_freq_list } with { variant "" }; /* 44.018 9.1.40 */ type record SystemInformationType6 { - SystemInformationHeader header, + //SystemInformationHeader header, CellIdentity cell_id, LocationAreaIdentification lai, CellOptionsSacch cell_options, @@ -223,8 +223,7 @@ module GSM_SystemInformation { OCT7 rest_octets } with { variant "" }; - - type union SystemInformation { + type union SystemInformationUnion { SystemInformationType1 si1, SystemInformationType2 si2, SystemInformationType2bis si2bis, @@ -235,7 +234,12 @@ module GSM_SystemInformation { SystemInformationType5bis si5bis, SystemInformationType5ter si5ter, SystemInformationType6 si6 - } with { variant "TAG(si1, header.message_type = SYSTEM_INFORMATION_TYPE_1; + } with { variant "" }; + + type record SystemInformation { + SystemInformationHeader header, + SystemInformationUnion payload + } with { variant (payload) "CROSSTAG(si1, header.message_type = SYSTEM_INFORMATION_TYPE_1; si2, header.message_type = SYSTEM_INFORMATION_TYPE_2; si2bis, header.message_type = SYSTEM_INFORMATION_TYPE_2bis; si2ter, header.message_type = SYSTEM_INFORMATION_TYPE_2ter; |