Revert "TODO epan/dissectors/asn1/kerberos/packet-kerberos-template.c new GSS flags"
[wireshark-sm.git] / epan / dissectors / asn1 / hnbap / hnbap.cnf
blobd3d803e26921fd48c531a1103eaff6d0279381ed
1 # hnbap.cnf
2 # hnbap conformation file
3 # Copyright 2010 Neil Piercy, ip.access Limited <Neil.Piercy@ipaccess.com>
5 #.OPT
6 PER
7 ALIGNED
8 #.END
10 #.PDU
11 HNBAP-PDU
13 #.MAKE_ENUM
14 ProtocolIE-ID
15 ProcedureCode
17 #.TYPE_RENAME
18 ProtocolIE-Field/value     ProtocolIE_Field_value
19 PrivateIE-Field/value      PrivateIE_Field_value
20 InitiatingMessage/value    InitiatingMessage_value
21 SuccessfulOutcome/value    SuccessfulOutcome_value
22 UnsuccessfulOutcome/value  UnsuccessfulOutcome_value
24 #.FIELD_RENAME
25 InitiatingMessage/value initiatingMessagevalue
26 UnsuccessfulOutcome/value unsuccessfulOutcome_value
27 SuccessfulOutcome/value successfulOutcome_value
28 PrivateIE-Field/value private_value
29 ProtocolIE-Field/value ie_field_value
30 ProtocolIE-Field/id protocol_ie_field_id
31 PrivateIE-Field/id private_ie_field_id
32 GeographicalLocation/geographicalCoordinates geographical_location_geographical_coordinates
33 HNB-Location-Information/geographicalCoordinates hnb_location_information_geographical_coordinates
34 MacroCoverageInformation/cellIdentity macroCellID
36 #.OMIT_ASSIGNMENT
37 Presence
38 ProtocolIE-ContainerList
39 ProtocolIE-Single-Container
40 #.END
42 #.NO_EMIT
43 AccessResult
44 #.END
46 #.FN_PARS ProtocolIE-ID  VAL_PTR = &ProtocolIE_ID
47 #.FN_FTR ProtocolIE-ID
48   if (tree) {
49     proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
50                            val_to_str(ProtocolIE_ID, VALS(hnbap_ProtocolIE_ID_vals), "unknown (%d)"));
51   }
52 #.END
54 #.FN_PARS ProtocolIE-Field/value  FN_VARIANT=_pdu_new  TYPE_REF_FN=dissect_ProtocolIEFieldValue
56 #.FN_PARS ProtocolExtensionField/extensionValue  FN_VARIANT=_pdu_new  TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
58 #.FN_PARS  ProcedureCode  VAL_PTR = &ProcedureCode
59 #.FN_FTR ProcedureCode
60   if (strcmp(val_to_str_const(ProcedureCode, hnbap_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
61     col_set_str(actx->pinfo->cinfo, COL_INFO,
62                       "Unknown Message");
63   } /* Known Procedures should be included below and broken out as ELEMENTARY names to avoid confusion */
65 #.FN_PARS InitiatingMessage/value  FN_VARIANT=_pdu_new  TYPE_REF_FN=dissect_InitiatingMessageValue
67 #.FN_PARS SuccessfulOutcome/value  FN_VARIANT=_pdu_new  TYPE_REF_FN=dissect_SuccessfulOutcomeValue
69 #.FN_PARS UnsuccessfulOutcome/value  FN_VARIANT=_pdu_new  TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
71 # There is no protocol inside HNBAP so fill col info with HNBAP elementary procedure name
72 #.FN_BODY HNBRegisterRequest
73     col_set_str(actx->pinfo->cinfo, COL_INFO,
74                "HNB_REGISTER_REQUEST ");
75 %(DEFAULT_BODY)s
77 #.FN_BODY HNBRegisterAccept
78     col_set_str(actx->pinfo->cinfo, COL_INFO,
79                "HNB_REGISTER_ACCEPT ");
80 %(DEFAULT_BODY)s
82 #.FN_BODY HNBRegisterReject
83     col_set_str(actx->pinfo->cinfo, COL_INFO,
84                "HNB_REGISTER_REJECT ");
85 %(DEFAULT_BODY)s
87 #.FN_BODY UERegisterRequest
88     col_set_str(actx->pinfo->cinfo, COL_INFO,
89                "UE_REGISTER_REQUEST ");
90 %(DEFAULT_BODY)s
92 #.FN_BODY UERegisterAccept
93     col_set_str(actx->pinfo->cinfo, COL_INFO,
94                "UE_REGISTER_ACCEPT ");
95 %(DEFAULT_BODY)s
97 #.FN_BODY UERegisterReject
98     col_set_str(actx->pinfo->cinfo, COL_INFO,
99                "UE_REGISTER_REJECT ");
100 %(DEFAULT_BODY)s
102 #.FN_BODY UEDe-Register
103     col_set_str(actx->pinfo->cinfo, COL_INFO,
104                "UE_DE-REGISTER ");
105 %(DEFAULT_BODY)s
107 #.FN_BODY HNBDe-Register
108     col_set_str(actx->pinfo->cinfo, COL_INFO,
109                "HNB_DE-REGISTER ");
110 %(DEFAULT_BODY)s
112 #.FN_BODY ErrorIndication
113     col_set_str(actx->pinfo->cinfo, COL_INFO,
114                "ERROR_INDICATION ");
115     col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect info from CriticalityDiagnostics decodes */
116 %(DEFAULT_BODY)s
118 #.FN_BODY CSGMembershipUpdate
119     col_set_str(actx->pinfo->cinfo, COL_INFO,
120                "CSG_MEMBERSHIP_UPDATE_MESSAGE ");
121 %(DEFAULT_BODY)s
123 #.FN_BODY PrivateMessage
124     col_set_str(actx->pinfo->cinfo, COL_INFO,
125                "PRIVATE_MESSAGE ");
126 %(DEFAULT_BODY)s
128 #.FN_BODY TNLUpdateRequest
129     col_set_str(actx->pinfo->cinfo, COL_INFO,
130                "TNL_UPDATE_REQUEST_MESSAGE ");
131 %(DEFAULT_BODY)s
132 #.FN_BODY TNLUpdateResponse
133     col_set_str(actx->pinfo->cinfo, COL_INFO,
134                "TNL_UPDATE_RESPONSE_MESSAGE ");
135 %(DEFAULT_BODY)s
136 #.FN_BODY TNLUpdateFailure
137     col_set_str(actx->pinfo->cinfo, COL_INFO,
138                "TNL_UPDATE_FAILURE_MESSAGE ");
139 %(DEFAULT_BODY)s
140 #.FN_BODY HNBConfigTransferRequest
141     col_set_str(actx->pinfo->cinfo, COL_INFO,
142                "HNB_CONFIG_TRANSFER_REQUEST_MESSAGE ");
143 %(DEFAULT_BODY)s
144 #.FN_BODY HNBConfigTransferResponse
145     col_set_str(actx->pinfo->cinfo, COL_INFO,
146                "HNB_CONFIG_TRANSFER_RESPONSE_MESSAGE ");
147 %(DEFAULT_BODY)s
148 #.FN_BODY RelocationComplete
149     col_set_str(actx->pinfo->cinfo, COL_INFO,
150                "RELOCATION_COMPLETE_MESSAGE ");
151 %(DEFAULT_BODY)s
153 #.END
155 #.FN_BODY IMSI VAL_PTR = &parameter_tvb
156   tvbuff_t *parameter_tvb;
157 %(DEFAULT_BODY)s
158   if (parameter_tvb) {
159     proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_hnbap_imsi);
160     dissect_e212_imsi(parameter_tvb, actx->pinfo, subtree, 0, tvb_reported_length(parameter_tvb), false);
161   }
163 #.FN_BODY PLMNidentity VAL_PTR = &parameter_tvb
164   tvbuff_t *parameter_tvb;
165   struct hnbap_private_data *hnbap_data = hnbap_get_private_data(actx->pinfo);
166   e212_number_type_t number_type = hnbap_data->number_type;
167   hnbap_data->number_type = E212_NONE;
168 %(DEFAULT_BODY)s
169   if (parameter_tvb) {
170     dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, tree, 0, number_type, false);
171   }
172 #.END
174 #.FN_BODY CGI
175   struct hnbap_private_data *hnbap_data = hnbap_get_private_data(actx->pinfo);
176   hnbap_data->number_type = E212_CGI;
177 %(DEFAULT_BODY)s
179 #.FN_BODY LAI
180   struct hnbap_private_data *hnbap_data = hnbap_get_private_data(actx->pinfo);
181   /* The RAI is defined in the ASN.1 as the LAI plus the RAC; don't override
182    * the MNC/MCC field types in that case.
183    */
184   if (hnbap_data->number_type != E212_RAI) {
185     hnbap_data->number_type = E212_LAI;
186   }
187 %(DEFAULT_BODY)s
189 #.TYPE_ATTR
190 LAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
191 #.FN_BODY LAC VAL_PTR = &parameter_tvb HF_INDEX = -1
192   tvbuff_t *parameter_tvb = NULL;
193 %(DEFAULT_BODY)s
194   if (parameter_tvb) {
195     actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
196   }
198 #.FN_BODY RAI
199   struct hnbap_private_data *hnbap_data = hnbap_get_private_data(actx->pinfo);
200   hnbap_data->number_type = E212_RAI;
201 %(DEFAULT_BODY)s
203 #.TYPE_ATTR
204 RAC TYPE = FT_UINT8 DISPLAY = BASE_DEC_HEX
205 #.FN_BODY RAC VAL_PTR = &parameter_tvb HF_INDEX = -1
206   tvbuff_t *parameter_tvb = NULL;
207 %(DEFAULT_BODY)s
208   if (parameter_tvb) {
209     actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 1, ENC_BIG_ENDIAN);
210   }
212 #.TYPE_ATTR
213 SAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
214 #.FN_BODY SAC VAL_PTR = &parameter_tvb HF_INDEX = -1
215   tvbuff_t *parameter_tvb = NULL;
216 %(DEFAULT_BODY)s
217   if (parameter_tvb) {
218     actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
219   }
221 #.ASSIGN_VALUE_TO_TYPE  # HNBAP ASN.1 does not have constants assigned to types
222 # ProcedureCode
223 id-HNBRegister                                  ProcedureCode
224 id-HNBDe-Register                               ProcedureCode
225 id-UERegister                                   ProcedureCode
226 id-UEDe-Register                                ProcedureCode
227 id-ErrorIndication                              ProcedureCode
228 id-privateMessage                               ProcedureCode
229 id-CSGMembershipUpdate                          ProcedureCode
230 id-TNLUpdate                                    ProcedureCode
231 id-HNBConfigTransfer                            ProcedureCode
232 id-RelocationComplete                           ProcedureCode
234 # ProtocolIE-ID
235 id-Cause                                        ProtocolIE-ID
236 id-CriticalityDiagnostics                       ProtocolIE-ID
237 id-HNB-Identity                                 ProtocolIE-ID
238 id-Context-ID                                   ProtocolIE-ID
239 id-UE-Identity                                  ProtocolIE-ID
240 id-LAC                                          ProtocolIE-ID
241 id-RAC                                          ProtocolIE-ID
242 id-HNB-Location-Information                     ProtocolIE-ID
243 id-PLMNidentity                                 ProtocolIE-ID
244 id-SAC                                          ProtocolIE-ID
245 id-CellIdentity                                 ProtocolIE-ID
246 id-Registration-Cause                           ProtocolIE-ID
247 id-UE-Capabilities                              ProtocolIE-ID
248 id-RNC-ID                                       ProtocolIE-ID
249 id-CSG-ID                                       ProtocolIE-ID
250 id-BackoffTimer                                 ProtocolIE-ID
251 id-HNB-Internet-Information                     ProtocolIE-ID
252 id-HNB-Cell-Access-Mode                         ProtocolIE-ID
253 id-MuxPortNumber                                ProtocolIE-ID
254 id-Service-Area-For-Broadcast                   ProtocolIE-ID
255 id-CSGMembershipStatus                          ProtocolIE-ID
256 id-RABList                                      ProtocolIE-ID
257 id-HNBConfigInfo                                ProtocolIE-ID
258 id-AccessResult                                 ProtocolIE-ID
259 id-Update-cause                                 ProtocolIE-ID
260 id-NeighbourInfoList                            ProtocolIE-ID
261 id-NeighbourInfoRequestList                     ProtocolIE-ID
262 id-Iurh-Signalling-TNL-Address                  ProtocolIE-ID
263 id-PSC                                          ProtocolIE-ID
264 id-HNB-Cell-Identifier                          ProtocolIE-ID
265 #.END
268 #.REGISTER
270 #HNBAP-PROTOCOL-IES
271 Cause                                                           N hnbap.ies id-Cause
272 CriticalityDiagnostics                          N hnbap.ies id-CriticalityDiagnostics
273 HNB-Identity                                            N hnbap.ies id-HNB-Identity
274 Context-ID                                                      N hnbap.ies id-Context-ID
275 UE-Identity                                                     N hnbap.ies id-UE-Identity
276 LAC                                                                     N hnbap.ies id-LAC
277 RAC                                                                     N hnbap.ies id-RAC
278 HNB-Location-Information                        N hnbap.ies id-HNB-Location-Information
279 PLMNidentity                                            N hnbap.ies id-PLMNidentity
280 SAC                                                                     N hnbap.ies id-SAC
281 CellIdentity                                            N hnbap.ies id-CellIdentity
282 Registration-Cause                                      N hnbap.ies id-Registration-Cause
283 UE-Capabilities                                         N hnbap.ies id-UE-Capabilities
284 RNC-ID                                                          N hnbap.ies id-RNC-ID
285 CSG-ID                                                          N hnbap.ies id-CSG-ID
286 BackoffTimer                                            N hnbap.ies id-BackoffTimer
287 CSGMembershipStatus                                     N hnbap.ies id-CSGMembershipStatus
289 RABList                             N hnbap.ies id-RABList
290 # id-HNBConfigInfo
291 # id-AccessResult
292 Update-cause                        N hnbap.ies id-Update-cause
293 NeighbourInfoList                   N hnbap.ies id-NeighbourInfoList
294 NeighbourInfoRequestList            N hnbap.ies id-NeighbourInfoRequestList
295 # id-HNB-Cell-Identifier
297 #HNBAP-PROTOCOL-EXTENSION
298 IP-Address                                                      N hnbap.extension id-HNB-Internet-Information
299 HNB-Cell-Access-Mode                            N hnbap.extension id-HNB-Cell-Access-Mode
300 MuxPortNumber                                           N hnbap.extension id-MuxPortNumber
301 CSGMembershipStatus                                     N hnbap.extension id-CSGMembershipStatus
302 IP-Address                          N hnbap.extension id-Iurh-Signalling-TNL-Address
303 PSC                                 N hnbap.extension id-PSC
305 #HNBAP-ELEMENTARY-PROCEDURE
306 #CLASS 1
307 HNBRegisterRequest                                      N hnbap.proc.imsg id-HNBRegister
308 HNBRegisterAccept                                       N hnbap.proc.sout id-HNBRegister
309 HNBRegisterReject                                       N hnbap.proc.uout id-HNBRegister
310 UERegisterRequest                                       N hnbap.proc.imsg id-UERegister
311 UERegisterAccept                                        N hnbap.proc.sout id-UERegister
312 UERegisterReject                                        N hnbap.proc.uout id-UERegister
314 TNLUpdateRequest                                        N hnbap.proc.imsg id-TNLUpdate
315 TNLUpdateResponse                                       N hnbap.proc.sout id-TNLUpdate
316 TNLUpdateFailure                                        N hnbap.proc.uout id-TNLUpdate
318 HNBConfigTransferRequest                        N hnbap.proc.imsg id-HNBConfigTransfer
319 HNBConfigTransferResponse                       N hnbap.proc.sout id-HNBConfigTransfer
321 RelocationComplete                                      N hnbap.proc.imsg id-RelocationComplete
323 #CLASS 2
324 UEDe-Register                                           N hnbap.proc.imsg id-UEDe-Register
325 HNBDe-Register                                          N hnbap.proc.imsg id-HNBDe-Register
326 ErrorIndication                                         N hnbap.proc.imsg id-ErrorIndication
327 CSGMembershipUpdate                                     N hnbap.proc.imsg id-CSGMembershipUpdate
328 PrivateMessage                                          N hnbap.proc.imsg id-privateMessage
329 #.END