7a2903108dd0dd6c251d1e6ff67bd4cdcf17d391
[obnox/wireshark/wip.git] / epan / dissectors / packet-gnm.c
1 /* Do not modify this file.                                                   */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
3 /* packet-gnm.c                                                               */
4 /* ../../tools/asn2wrs.py -b -p gnm -c ./gnm.cnf -s ./packet-gnm-template -D . GNM.asn */
5
6 /* Input file: packet-gnm-template.c */
7
8 #line 1 "packet-gnm-template.c"
9 /* packet-gnm.c
10  * Routines for GENERIC NETWORK INFORMATION MODEL Data dissection
11  *
12  * Copyright 2005 , Anders Broman <anders.broman [AT] ericsson.com>
13  * $Id$
14  *
15  * Wireshark - Network traffic analyzer
16  * By Gerald Combs <gerald@wireshark.org>
17  * Copyright 1998 Gerald Combs
18  *
19  * This program is free software; you can redistribute it and/or
20  * modify it under the terms of the GNU General Public License
21  * as published by the Free Software Foundation; either version 2
22  * of the License, or (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with this program; if not, write to the Free Software
31  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32  *
33  *
34  * References:
35  * ITU-T recommendatiom M.3100
36  */
37
38 #ifdef HAVE_CONFIG_H
39 # include "config.h"
40 #endif
41
42 #include <glib.h>
43 #include <epan/packet.h>
44 #include <epan/asn1.h>
45
46 #include <string.h>
47 #include "packet-ber.h"
48 #include "packet-cmip.h"
49 #include "packet-gnm.h"
50
51 #define PNAME  "ITU M.3100 Generic Network Information Model"
52 #define PSNAME "GNM"
53 #define PFNAME "gnm"
54
55 /* Initialize the protocol and registered fields */
56 static int proto_gnm = -1;
57
58
59 /*--- Included file: packet-gnm-hf.c ---*/
60 #line 1 "packet-gnm-hf.c"
61 static int hf_gnm_SupportedTOClasses_PDU = -1;    /* SupportedTOClasses */
62 static int hf_gnm_AcceptableCircuitPackTypeList_PDU = -1;  /* AcceptableCircuitPackTypeList */
63 static int hf_gnm_AlarmSeverityAssignmentList_PDU = -1;  /* AlarmSeverityAssignmentList */
64 static int hf_gnm_AlarmStatus_PDU = -1;           /* AlarmStatus */
65 static int hf_gnm_Boolean_PDU = -1;               /* Boolean */
66 static int hf_gnm_ChannelNumber_PDU = -1;         /* ChannelNumber */
67 static int hf_gnm_CharacteristicInformation_PDU = -1;  /* CharacteristicInformation */
68 static int hf_gnm_CircuitDirectionality_PDU = -1;  /* CircuitDirectionality */
69 static int hf_gnm_CircuitPackType_PDU = -1;       /* CircuitPackType */
70 static int hf_gnm_ConnectInformation_PDU = -1;    /* ConnectInformation */
71 static int hf_gnm_ConnectivityPointer_PDU = -1;   /* ConnectivityPointer */
72 static int hf_gnm_Count_PDU = -1;                 /* Count */
73 static int hf_gnm_CrossConnectionName_PDU = -1;   /* CrossConnectionName */
74 static int hf_gnm_CrossConnectionObjectPointer_PDU = -1;  /* CrossConnectionObjectPointer */
75 static int hf_gnm_CurrentProblemList_PDU = -1;    /* CurrentProblemList */
76 static int hf_gnm_Directionality_PDU = -1;        /* Directionality */
77 static int hf_gnm_DisconnectResult_PDU = -1;      /* DisconnectResult */
78 static int hf_gnm_DownstreamConnectivityPointer_PDU = -1;  /* DownstreamConnectivityPointer */
79 static int hf_gnm_ExternalTime_PDU = -1;          /* ExternalTime */
80 static int hf_gnm_EquipmentHolderAddress_PDU = -1;  /* EquipmentHolderAddress */
81 static int hf_gnm_EquipmentHolderType_PDU = -1;   /* EquipmentHolderType */
82 static int hf_gnm_HolderStatus_PDU = -1;          /* HolderStatus */
83 static int hf_gnm_InformationTransferCapabilities_PDU = -1;  /* InformationTransferCapabilities */
84 static int hf_gnm_ListOfCharacteristicInformation_PDU = -1;  /* ListOfCharacteristicInformation */
85 static int hf_gnm_NameType_PDU = -1;              /* NameType */
86 static int hf_gnm_NumberOfCircuits_PDU = -1;      /* NumberOfCircuits */
87 static int hf_gnm_ObjectList_PDU = -1;            /* ObjectList */
88 static int hf_gnm_Pointer_PDU = -1;               /* Pointer */
89 static int hf_gnm_PointerOrNull_PDU = -1;         /* PointerOrNull */
90 static int hf_gnm_RelatedObjectInstance_PDU = -1;  /* RelatedObjectInstance */
91 static int hf_gnm_Replaceable_PDU = -1;           /* Replaceable */
92 static int hf_gnm_SequenceOfObjectInstance_PDU = -1;  /* SequenceOfObjectInstance */
93 static int hf_gnm_SerialNumber_PDU = -1;          /* SerialNumber */
94 static int hf_gnm_SignallingCapabilities_PDU = -1;  /* SignallingCapabilities */
95 static int hf_gnm_SignalType_PDU = -1;            /* SignalType */
96 static int hf_gnm_SubordinateCircuitPackSoftwareLoad_PDU = -1;  /* SubordinateCircuitPackSoftwareLoad */
97 static int hf_gnm_SupportableClientList_PDU = -1;  /* SupportableClientList */
98 static int hf_gnm_SystemTimingSource_PDU = -1;    /* SystemTimingSource */
99 static int hf_gnm_TpsInGtpList_PDU = -1;          /* TpsInGtpList */
100 static int hf_gnm_TransmissionCharacteristics_PDU = -1;  /* TransmissionCharacteristics */
101 static int hf_gnm_UserLabel_PDU = -1;             /* UserLabel */
102 static int hf_gnm_VendorName_PDU = -1;            /* VendorName */
103 static int hf_gnm_Version_PDU = -1;               /* Version */
104 static int hf_gnm_MappingList_item = -1;          /* PayloadLevel */
105 static int hf_gnm_objectClass = -1;               /* OBJECT_IDENTIFIER */
106 static int hf_gnm_characteristicInformation = -1;  /* CharacteristicInformation */
107 static int hf_gnm_SupportedTOClasses_item = -1;   /* OBJECT_IDENTIFIER */
108 static int hf_gnm_AcceptableCircuitPackTypeList_item = -1;  /* PrintableString */
109 static int hf_gnm_mpCrossConnection = -1;         /* ObjectInstance */
110 static int hf_gnm_legs = -1;                      /* SET_OF_ToTermSpecifier */
111 static int hf_gnm_legs_item = -1;                 /* ToTermSpecifier */
112 static int hf_gnm_problem = -1;                   /* ProbableCause */
113 static int hf_gnm_severityAssignedServiceAffecting = -1;  /* AlarmSeverityCode */
114 static int hf_gnm_severityAssignedNonServiceAffecting = -1;  /* AlarmSeverityCode */
115 static int hf_gnm_severityAssignedServiceIndependent = -1;  /* AlarmSeverityCode */
116 static int hf_gnm_AlarmSeverityAssignmentList_item = -1;  /* AlarmSeverityAssignment */
117 static int hf_gnm_characteristicInfoType = -1;    /* CharacteristicInformation */
118 static int hf_gnm_bundlingFactor = -1;            /* INTEGER */
119 static int hf_gnm_pointToPoint = -1;              /* PointToPoint */
120 static int hf_gnm_pointToMultipoint = -1;         /* PointToMultipoint */
121 static int hf_gnm_ConnectInformation_item = -1;   /* ConnectInformation_item */
122 static int hf_gnm_itemType = -1;                  /* T_itemType */
123 static int hf_gnm_unidirectional = -1;            /* ConnectionType */
124 static int hf_gnm_bidirectional = -1;             /* ConnectionTypeBi */
125 static int hf_gnm_addleg = -1;                    /* AddLeg */
126 static int hf_gnm_administrativeState = -1;       /* AdministrativeState */
127 static int hf_gnm_namedCrossConnection = -1;      /* NamedCrossConnection */
128 static int hf_gnm_userLabel = -1;                 /* UserLabel */
129 static int hf_gnm_redline = -1;                   /* Boolean */
130 static int hf_gnm_additionalInfo = -1;            /* AdditionalInformation */
131 static int hf_gnm_none = -1;                      /* NULL */
132 static int hf_gnm_single = -1;                    /* ObjectInstance */
133 static int hf_gnm_concatenated = -1;              /* SEQUENCE_OF_ObjectInstance */
134 static int hf_gnm_concatenated_item = -1;         /* ObjectInstance */
135 static int hf_gnm_explicitPToP = -1;              /* ExplicitPtoP */
136 static int hf_gnm_ptoTpPool = -1;                 /* PtoTPPool */
137 static int hf_gnm_explicitPtoMP = -1;             /* ExplicitPtoMP */
138 static int hf_gnm_ptoMPools = -1;                 /* PtoMPools */
139 static int hf_gnm_notConnected = -1;              /* ObjectInstance */
140 static int hf_gnm_connected = -1;                 /* ObjectInstance */
141 static int hf_gnm_multipleConnections = -1;       /* MultipleConnections */
142 static int hf_gnm_alarmStatus = -1;               /* AlarmStatus */
143 static int hf_gnm_CurrentProblemList_item = -1;   /* CurrentProblem */
144 static int hf_gnm_DisconnectResult_item = -1;     /* DisconnectResult_item */
145 static int hf_gnm_failed = -1;                    /* Failed */
146 static int hf_gnm_disconnected = -1;              /* ObjectInstance */
147 static int hf_gnm_broadcast = -1;                 /* SET_OF_ObjectInstance */
148 static int hf_gnm_broadcast_item = -1;            /* ObjectInstance */
149 static int hf_gnm_broadcastConcatenated = -1;     /* T_broadcastConcatenated */
150 static int hf_gnm_broadcastConcatenated_item = -1;  /* SEQUENCE_OF_ObjectInstance */
151 static int hf_gnm__item_item = -1;                /* ObjectInstance */
152 static int hf_gnm_fromTp = -1;                    /* ExplicitTP */
153 static int hf_gnm_toTPs = -1;                     /* SET_OF_ExplicitTP */
154 static int hf_gnm_toTPs_item = -1;                /* ExplicitTP */
155 static int hf_gnm_toTp = -1;                      /* ExplicitTP */
156 static int hf_gnm_oneTPorGTP = -1;                /* ObjectInstance */
157 static int hf_gnm_listofTPs = -1;                 /* SEQUENCE_OF_ObjectInstance */
158 static int hf_gnm_listofTPs_item = -1;            /* ObjectInstance */
159 static int hf_gnm_EquipmentHolderAddress_item = -1;  /* PrintableString */
160 static int hf_gnm_logicalProblem = -1;            /* LogicalProblem */
161 static int hf_gnm_resourceProblem = -1;           /* ResourceProblem */
162 static int hf_gnm_holderEmpty = -1;               /* NULL */
163 static int hf_gnm_inTheAcceptableList = -1;       /* CircuitPackType */
164 static int hf_gnm_notInTheAcceptableList = -1;    /* CircuitPackType */
165 static int hf_gnm_unknownType = -1;               /* NULL */
166 static int hf_gnm_ListOfCharacteristicInformation_item = -1;  /* CharacteristicInformation */
167 static int hf_gnm_problemCause = -1;              /* ProblemCause */
168 static int hf_gnm_incorrectInstances = -1;        /* SET_OF_ObjectInstance */
169 static int hf_gnm_incorrectInstances_item = -1;   /* ObjectInstance */
170 static int hf_gnm_MultipleConnections_item = -1;  /* MultipleConnections_item */
171 static int hf_gnm_downstreamNotConnected = -1;    /* ObjectInstance */
172 static int hf_gnm_downstreamConnected = -1;       /* ObjectInstance */
173 static int hf_gnm_upstreamNotConnected = -1;      /* ObjectInstance */
174 static int hf_gnm_upstreamConnected = -1;         /* ObjectInstance */
175 static int hf_gnm_redline_01 = -1;                /* BOOLEAN */
176 static int hf_gnm_name = -1;                      /* CrossConnectionName */
177 static int hf_gnm_numericName = -1;               /* INTEGER */
178 static int hf_gnm_pString = -1;                   /* GraphicString */
179 static int hf_gnm_ObjectList_item = -1;           /* ObjectInstance */
180 static int hf_gnm_diverse = -1;                   /* T_diverse */
181 static int hf_gnm_downstream = -1;                /* SignalRateAndMappingList */
182 static int hf_gnm_upStream = -1;                  /* SignalRateAndMappingList */
183 static int hf_gnm_uniform = -1;                   /* SignalRateAndMappingList */
184 static int hf_gnm_pointer = -1;                   /* ObjectInstance */
185 static int hf_gnm_null = -1;                      /* NULL */
186 static int hf_gnm_fromTp_01 = -1;                 /* ObjectInstance */
187 static int hf_gnm_toTp_01 = -1;                   /* ObjectInstance */
188 static int hf_gnm_xCon = -1;                      /* ObjectInstance */
189 static int hf_gnm_toTps = -1;                     /* T_toTps */
190 static int hf_gnm_toTps_item = -1;                /* T_toTps_item */
191 static int hf_gnm_tp = -1;                        /* ObjectInstance */
192 static int hf_gnm_xConnection = -1;               /* ObjectInstance */
193 static int hf_gnm_mpXCon = -1;                    /* ObjectInstance */
194 static int hf_gnm_unknown = -1;                   /* NULL */
195 static int hf_gnm_integerValue = -1;              /* INTEGER */
196 static int hf_gnm_toTPPools = -1;                 /* ToTPPools */
197 static int hf_gnm_toTpPool = -1;                  /* ObjectInstance */
198 static int hf_gnm_notAvailable = -1;              /* NULL */
199 static int hf_gnm_relatedObject = -1;             /* ObjectInstance */
200 static int hf_gnm_SequenceOfObjectInstance_item = -1;  /* ObjectInstance */
201 static int hf_gnm_SignalRateAndMappingList_item = -1;  /* SignalRateAndMappingList_item */
202 static int hf_gnm_signalRate = -1;                /* SignalRate */
203 static int hf_gnm_mappingList = -1;               /* MappingList */
204 static int hf_gnm_wavelength = -1;                /* WaveLength */
205 static int hf_gnm_simple = -1;                    /* CharacteristicInformation */
206 static int hf_gnm_bundle = -1;                    /* Bundle */
207 static int hf_gnm_complex = -1;                   /* SEQUENCE_OF_Bundle */
208 static int hf_gnm_complex_item = -1;              /* Bundle */
209 static int hf_gnm_notApplicable = -1;             /* NULL */
210 static int hf_gnm_softwareInstances = -1;         /* SEQUENCE_OF_ObjectInstance */
211 static int hf_gnm_softwareInstances_item = -1;    /* ObjectInstance */
212 static int hf_gnm_softwareIdentifiers = -1;       /* T_softwareIdentifiers */
213 static int hf_gnm_softwareIdentifiers_item = -1;  /* PrintableString */
214 static int hf_gnm_SupportableClientList_item = -1;  /* ObjectClass */
215 static int hf_gnm_sourceType = -1;                /* T_sourceType */
216 static int hf_gnm_sourceID = -1;                  /* ObjectInstance */
217 static int hf_gnm_primaryTimingSource = -1;       /* SystemTiming */
218 static int hf_gnm_secondaryTimingSource = -1;     /* SystemTiming */
219 static int hf_gnm_toTpOrGTP = -1;                 /* ExplicitTP */
220 static int hf_gnm_toPool = -1;                    /* ObjectInstance */
221 static int hf_gnm_ToTPPools_item = -1;            /* ToTPPools_item */
222 static int hf_gnm_tpPoolId = -1;                  /* ObjectInstance */
223 static int hf_gnm_numberOfTPs = -1;               /* INTEGER */
224 static int hf_gnm_TpsInGtpList_item = -1;         /* ObjectInstance */
225 /* named bits */
226 static int hf_gnm_TransmissionCharacteristics_satellite = -1;
227 static int hf_gnm_TransmissionCharacteristics_dCME = -1;
228 static int hf_gnm_TransmissionCharacteristics_echoControl = -1;
229
230 /*--- End of included file: packet-gnm-hf.c ---*/
231 #line 51 "packet-gnm-template.c"
232
233 /* Initialize the subtree pointers */
234
235 /*--- Included file: packet-gnm-ett.c ---*/
236 #line 1 "packet-gnm-ett.c"
237 static gint ett_gnm_MappingList = -1;
238 static gint ett_gnm_SignalRate = -1;
239 static gint ett_gnm_SupportedTOClasses = -1;
240 static gint ett_gnm_AcceptableCircuitPackTypeList = -1;
241 static gint ett_gnm_AddLeg = -1;
242 static gint ett_gnm_SET_OF_ToTermSpecifier = -1;
243 static gint ett_gnm_AlarmSeverityAssignment = -1;
244 static gint ett_gnm_AlarmSeverityAssignmentList = -1;
245 static gint ett_gnm_Bundle = -1;
246 static gint ett_gnm_Connected = -1;
247 static gint ett_gnm_ConnectInformation = -1;
248 static gint ett_gnm_ConnectInformation_item = -1;
249 static gint ett_gnm_T_itemType = -1;
250 static gint ett_gnm_ConnectivityPointer = -1;
251 static gint ett_gnm_SEQUENCE_OF_ObjectInstance = -1;
252 static gint ett_gnm_ConnectionType = -1;
253 static gint ett_gnm_ConnectionTypeBi = -1;
254 static gint ett_gnm_CrossConnectionObjectPointer = -1;
255 static gint ett_gnm_CurrentProblem = -1;
256 static gint ett_gnm_CurrentProblemList = -1;
257 static gint ett_gnm_DisconnectResult = -1;
258 static gint ett_gnm_DisconnectResult_item = -1;
259 static gint ett_gnm_DownstreamConnectivityPointer = -1;
260 static gint ett_gnm_SET_OF_ObjectInstance = -1;
261 static gint ett_gnm_T_broadcastConcatenated = -1;
262 static gint ett_gnm_ExplicitPtoMP = -1;
263 static gint ett_gnm_SET_OF_ExplicitTP = -1;
264 static gint ett_gnm_ExplicitPtoP = -1;
265 static gint ett_gnm_ExplicitTP = -1;
266 static gint ett_gnm_EquipmentHolderAddress = -1;
267 static gint ett_gnm_Failed = -1;
268 static gint ett_gnm_HolderStatus = -1;
269 static gint ett_gnm_ListOfCharacteristicInformation = -1;
270 static gint ett_gnm_LogicalProblem = -1;
271 static gint ett_gnm_MultipleConnections = -1;
272 static gint ett_gnm_MultipleConnections_item = -1;
273 static gint ett_gnm_NamedCrossConnection = -1;
274 static gint ett_gnm_NameType = -1;
275 static gint ett_gnm_ObjectList = -1;
276 static gint ett_gnm_PhysicalPortSignalRateAndMappingList = -1;
277 static gint ett_gnm_T_diverse = -1;
278 static gint ett_gnm_PointerOrNull = -1;
279 static gint ett_gnm_PointToPoint = -1;
280 static gint ett_gnm_PointToMultipoint = -1;
281 static gint ett_gnm_T_toTps = -1;
282 static gint ett_gnm_T_toTps_item = -1;
283 static gint ett_gnm_ProblemCause = -1;
284 static gint ett_gnm_PtoMPools = -1;
285 static gint ett_gnm_PtoTPPool = -1;
286 static gint ett_gnm_RelatedObjectInstance = -1;
287 static gint ett_gnm_ResourceProblem = -1;
288 static gint ett_gnm_SequenceOfObjectInstance = -1;
289 static gint ett_gnm_SignalRateAndMappingList = -1;
290 static gint ett_gnm_SignalRateAndMappingList_item = -1;
291 static gint ett_gnm_SignalType = -1;
292 static gint ett_gnm_SEQUENCE_OF_Bundle = -1;
293 static gint ett_gnm_SubordinateCircuitPackSoftwareLoad = -1;
294 static gint ett_gnm_T_softwareIdentifiers = -1;
295 static gint ett_gnm_SupportableClientList = -1;
296 static gint ett_gnm_SystemTiming = -1;
297 static gint ett_gnm_SystemTimingSource = -1;
298 static gint ett_gnm_ToTermSpecifier = -1;
299 static gint ett_gnm_ToTPPools = -1;
300 static gint ett_gnm_ToTPPools_item = -1;
301 static gint ett_gnm_TpsInGtpList = -1;
302 static gint ett_gnm_TransmissionCharacteristics = -1;
303
304 /*--- End of included file: packet-gnm-ett.c ---*/
305 #line 54 "packet-gnm-template.c"
306
307
308 /*--- Included file: packet-gnm-fn.c ---*/
309 #line 1 "packet-gnm-fn.c"
310
311
312 static int
313 dissect_gnm_CharacteristicInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
314   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
315
316   return offset;
317 }
318
319
320
321 static int
322 dissect_gnm_PayloadLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
323   offset = dissect_gnm_CharacteristicInformation(implicit_tag, tvb, offset, actx, tree, hf_index);
324
325   return offset;
326 }
327
328
329 static const ber_sequence_t MappingList_sequence_of[1] = {
330   { &hf_gnm_MappingList_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_gnm_PayloadLevel },
331 };
332
333 static int
334 dissect_gnm_MappingList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
335   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
336                                       MappingList_sequence_of, hf_index, ett_gnm_MappingList);
337
338   return offset;
339 }
340
341
342
343 static int
344 dissect_gnm_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
345   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
346
347   return offset;
348 }
349
350
351 static const value_string gnm_SignalRate_vals[] = {
352   {   0, "objectClass" },
353   {   1, "characteristicInformation" },
354   { 0, NULL }
355 };
356
357 static const ber_choice_t SignalRate_choice[] = {
358   {   0, &hf_gnm_objectClass     , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_OBJECT_IDENTIFIER },
359   {   1, &hf_gnm_characteristicInformation, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_CharacteristicInformation },
360   { 0, NULL, 0, 0, 0, NULL }
361 };
362
363 static int
364 dissect_gnm_SignalRate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
365   offset = dissect_ber_choice(actx, tree, tvb, offset,
366                                  SignalRate_choice, hf_index, ett_gnm_SignalRate,
367                                  NULL);
368
369   return offset;
370 }
371
372
373 static const ber_sequence_t SupportedTOClasses_set_of[1] = {
374   { &hf_gnm_SupportedTOClasses_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_gnm_OBJECT_IDENTIFIER },
375 };
376
377 static int
378 dissect_gnm_SupportedTOClasses(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
379   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
380                                  SupportedTOClasses_set_of, hf_index, ett_gnm_SupportedTOClasses);
381
382   return offset;
383 }
384
385
386
387 static int
388 dissect_gnm_PrintableString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
389   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
390                                             actx, tree, tvb, offset, hf_index,
391                                             NULL);
392
393   return offset;
394 }
395
396
397 static const ber_sequence_t AcceptableCircuitPackTypeList_set_of[1] = {
398   { &hf_gnm_AcceptableCircuitPackTypeList_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_gnm_PrintableString },
399 };
400
401 static int
402 dissect_gnm_AcceptableCircuitPackTypeList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
403   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
404                                  AcceptableCircuitPackTypeList_set_of, hf_index, ett_gnm_AcceptableCircuitPackTypeList);
405
406   return offset;
407 }
408
409
410 static const ber_sequence_t SEQUENCE_OF_ObjectInstance_sequence_of[1] = {
411   { &hf_gnm_concatenated_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
412 };
413
414 static int
415 dissect_gnm_SEQUENCE_OF_ObjectInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
416   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
417                                       SEQUENCE_OF_ObjectInstance_sequence_of, hf_index, ett_gnm_SEQUENCE_OF_ObjectInstance);
418
419   return offset;
420 }
421
422
423 static const value_string gnm_ExplicitTP_vals[] = {
424   {   0, "oneTPorGTP" },
425   {   1, "listofTPs" },
426   { 0, NULL }
427 };
428
429 static const ber_choice_t ExplicitTP_choice[] = {
430   {   0, &hf_gnm_oneTPorGTP      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
431   {   1, &hf_gnm_listofTPs       , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SEQUENCE_OF_ObjectInstance },
432   { 0, NULL, 0, 0, 0, NULL }
433 };
434
435 static int
436 dissect_gnm_ExplicitTP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
437   offset = dissect_ber_choice(actx, tree, tvb, offset,
438                                  ExplicitTP_choice, hf_index, ett_gnm_ExplicitTP,
439                                  NULL);
440
441   return offset;
442 }
443
444
445 static const value_string gnm_ToTermSpecifier_vals[] = {
446   {   0, "toTpOrGTP" },
447   {   1, "toPool" },
448   { 0, NULL }
449 };
450
451 static const ber_choice_t ToTermSpecifier_choice[] = {
452   {   0, &hf_gnm_toTpOrGTP       , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_ExplicitTP },
453   {   1, &hf_gnm_toPool          , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
454   { 0, NULL, 0, 0, 0, NULL }
455 };
456
457 static int
458 dissect_gnm_ToTermSpecifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
459   offset = dissect_ber_choice(actx, tree, tvb, offset,
460                                  ToTermSpecifier_choice, hf_index, ett_gnm_ToTermSpecifier,
461                                  NULL);
462
463   return offset;
464 }
465
466
467 static const ber_sequence_t SET_OF_ToTermSpecifier_set_of[1] = {
468   { &hf_gnm_legs_item       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ToTermSpecifier },
469 };
470
471 static int
472 dissect_gnm_SET_OF_ToTermSpecifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
473   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
474                                  SET_OF_ToTermSpecifier_set_of, hf_index, ett_gnm_SET_OF_ToTermSpecifier);
475
476   return offset;
477 }
478
479
480 static const ber_sequence_t AddLeg_sequence[] = {
481   { &hf_gnm_mpCrossConnection, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
482   { &hf_gnm_legs            , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SET_OF_ToTermSpecifier },
483   { NULL, 0, 0, 0, NULL }
484 };
485
486 static int
487 dissect_gnm_AddLeg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
488   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
489                                    AddLeg_sequence, hf_index, ett_gnm_AddLeg);
490
491   return offset;
492 }
493
494
495 static const value_string gnm_AlarmSeverityCode_vals[] = {
496   {   0, "non-alarmed" },
497   {   1, "minor" },
498   {   2, "major" },
499   {   3, "critical" },
500   {   4, "warning" },
501   { 0, NULL }
502 };
503
504
505 static int
506 dissect_gnm_AlarmSeverityCode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
507   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
508                                   NULL);
509
510   return offset;
511 }
512
513
514 static const ber_sequence_t AlarmSeverityAssignment_sequence[] = {
515   { &hf_gnm_problem         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ProbableCause },
516   { &hf_gnm_severityAssignedServiceAffecting, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_AlarmSeverityCode },
517   { &hf_gnm_severityAssignedNonServiceAffecting, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_AlarmSeverityCode },
518   { &hf_gnm_severityAssignedServiceIndependent, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_AlarmSeverityCode },
519   { NULL, 0, 0, 0, NULL }
520 };
521
522 static int
523 dissect_gnm_AlarmSeverityAssignment(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
524   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
525                                    AlarmSeverityAssignment_sequence, hf_index, ett_gnm_AlarmSeverityAssignment);
526
527   return offset;
528 }
529
530
531 static const ber_sequence_t AlarmSeverityAssignmentList_set_of[1] = {
532   { &hf_gnm_AlarmSeverityAssignmentList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_AlarmSeverityAssignment },
533 };
534
535 static int
536 dissect_gnm_AlarmSeverityAssignmentList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
537   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
538                                  AlarmSeverityAssignmentList_set_of, hf_index, ett_gnm_AlarmSeverityAssignmentList);
539
540   return offset;
541 }
542
543
544 static const value_string gnm_AlarmStatus_vals[] = {
545   {   0, "cleared" },
546   {   1, "activeReportable-Indeterminate" },
547   {   2, "activeReportable-Warning" },
548   {   3, "activeReportable-Minor" },
549   {   4, "activeReportable-Major" },
550   {   5, "activeReportable-Critical" },
551   {   6, "activePending" },
552   { 0, NULL }
553 };
554
555
556 static int
557 dissect_gnm_AlarmStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
558   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
559                                   NULL);
560
561   return offset;
562 }
563
564
565
566 static int
567 dissect_gnm_Boolean(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
568   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
569
570   return offset;
571 }
572
573
574
575 static int
576 dissect_gnm_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
577   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
578                                                 NULL);
579
580   return offset;
581 }
582
583
584 static const ber_sequence_t Bundle_sequence[] = {
585   { &hf_gnm_characteristicInfoType, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_gnm_CharacteristicInformation },
586   { &hf_gnm_bundlingFactor  , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_gnm_INTEGER },
587   { NULL, 0, 0, 0, NULL }
588 };
589
590 static int
591 dissect_gnm_Bundle(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
592   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
593                                    Bundle_sequence, hf_index, ett_gnm_Bundle);
594
595   return offset;
596 }
597
598
599
600 static int
601 dissect_gnm_ChannelNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
602   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
603                                                 NULL);
604
605   return offset;
606 }
607
608
609 static const value_string gnm_CircuitDirectionality_vals[] = {
610   {   0, "onewayOut" },
611   {   1, "onewayIn" },
612   {   2, "twoway" },
613   { 0, NULL }
614 };
615
616
617 static int
618 dissect_gnm_CircuitDirectionality(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
619   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
620                                   NULL);
621
622   return offset;
623 }
624
625
626
627 static int
628 dissect_gnm_CircuitPackType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
629   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
630                                             actx, tree, tvb, offset, hf_index,
631                                             NULL);
632
633   return offset;
634 }
635
636
637 static const ber_sequence_t PointToPoint_sequence[] = {
638   { &hf_gnm_fromTp_01       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
639   { &hf_gnm_toTp_01         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
640   { &hf_gnm_xCon            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
641   { NULL, 0, 0, 0, NULL }
642 };
643
644 static int
645 dissect_gnm_PointToPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
646   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
647                                    PointToPoint_sequence, hf_index, ett_gnm_PointToPoint);
648
649   return offset;
650 }
651
652
653 static const ber_sequence_t T_toTps_item_sequence[] = {
654   { &hf_gnm_tp              , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
655   { &hf_gnm_xConnection     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
656   { NULL, 0, 0, 0, NULL }
657 };
658
659 static int
660 dissect_gnm_T_toTps_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
661   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
662                                    T_toTps_item_sequence, hf_index, ett_gnm_T_toTps_item);
663
664   return offset;
665 }
666
667
668 static const ber_sequence_t T_toTps_set_of[1] = {
669   { &hf_gnm_toTps_item      , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_T_toTps_item },
670 };
671
672 static int
673 dissect_gnm_T_toTps(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
674   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
675                                  T_toTps_set_of, hf_index, ett_gnm_T_toTps);
676
677   return offset;
678 }
679
680
681 static const ber_sequence_t PointToMultipoint_sequence[] = {
682   { &hf_gnm_fromTp_01       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
683   { &hf_gnm_toTps           , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_T_toTps },
684   { &hf_gnm_mpXCon          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
685   { NULL, 0, 0, 0, NULL }
686 };
687
688 static int
689 dissect_gnm_PointToMultipoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
690   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
691                                    PointToMultipoint_sequence, hf_index, ett_gnm_PointToMultipoint);
692
693   return offset;
694 }
695
696
697 static const value_string gnm_Connected_vals[] = {
698   {   0, "pointToPoint" },
699   {   1, "pointToMultipoint" },
700   { 0, NULL }
701 };
702
703 static const ber_choice_t Connected_choice[] = {
704   {   0, &hf_gnm_pointToPoint    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_PointToPoint },
705   {   1, &hf_gnm_pointToMultipoint, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_PointToMultipoint },
706   { 0, NULL, 0, 0, 0, NULL }
707 };
708
709 static int
710 dissect_gnm_Connected(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
711   offset = dissect_ber_choice(actx, tree, tvb, offset,
712                                  Connected_choice, hf_index, ett_gnm_Connected,
713                                  NULL);
714
715   return offset;
716 }
717
718
719 static const ber_sequence_t ExplicitPtoP_sequence[] = {
720   { &hf_gnm_fromTp          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
721   { &hf_gnm_toTp            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
722   { NULL, 0, 0, 0, NULL }
723 };
724
725 static int
726 dissect_gnm_ExplicitPtoP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
727   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
728                                    ExplicitPtoP_sequence, hf_index, ett_gnm_ExplicitPtoP);
729
730   return offset;
731 }
732
733
734 static const ber_sequence_t PtoTPPool_sequence[] = {
735   { &hf_gnm_fromTp          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
736   { &hf_gnm_toTpPool        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
737   { NULL, 0, 0, 0, NULL }
738 };
739
740 static int
741 dissect_gnm_PtoTPPool(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
742   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
743                                    PtoTPPool_sequence, hf_index, ett_gnm_PtoTPPool);
744
745   return offset;
746 }
747
748
749 static const ber_sequence_t SET_OF_ExplicitTP_set_of[1] = {
750   { &hf_gnm_toTPs_item      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
751 };
752
753 static int
754 dissect_gnm_SET_OF_ExplicitTP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
755   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
756                                  SET_OF_ExplicitTP_set_of, hf_index, ett_gnm_SET_OF_ExplicitTP);
757
758   return offset;
759 }
760
761
762 static const ber_sequence_t ExplicitPtoMP_sequence[] = {
763   { &hf_gnm_fromTp          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
764   { &hf_gnm_toTPs           , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SET_OF_ExplicitTP },
765   { NULL, 0, 0, 0, NULL }
766 };
767
768 static int
769 dissect_gnm_ExplicitPtoMP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
770   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
771                                    ExplicitPtoMP_sequence, hf_index, ett_gnm_ExplicitPtoMP);
772
773   return offset;
774 }
775
776
777 static const ber_sequence_t ToTPPools_item_sequence[] = {
778   { &hf_gnm_tpPoolId        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
779   { &hf_gnm_numberOfTPs     , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_gnm_INTEGER },
780   { NULL, 0, 0, 0, NULL }
781 };
782
783 static int
784 dissect_gnm_ToTPPools_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
785   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
786                                    ToTPPools_item_sequence, hf_index, ett_gnm_ToTPPools_item);
787
788   return offset;
789 }
790
791
792 static const ber_sequence_t ToTPPools_set_of[1] = {
793   { &hf_gnm_ToTPPools_item  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_ToTPPools_item },
794 };
795
796 static int
797 dissect_gnm_ToTPPools(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
798   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
799                                  ToTPPools_set_of, hf_index, ett_gnm_ToTPPools);
800
801   return offset;
802 }
803
804
805 static const ber_sequence_t PtoMPools_sequence[] = {
806   { &hf_gnm_fromTp          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ExplicitTP },
807   { &hf_gnm_toTPPools       , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_ToTPPools },
808   { NULL, 0, 0, 0, NULL }
809 };
810
811 static int
812 dissect_gnm_PtoMPools(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
813   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
814                                    PtoMPools_sequence, hf_index, ett_gnm_PtoMPools);
815
816   return offset;
817 }
818
819
820 static const value_string gnm_ConnectionType_vals[] = {
821   {   0, "explicitPToP" },
822   {   1, "ptoTpPool" },
823   {   2, "explicitPtoMP" },
824   {   3, "ptoMPools" },
825   { 0, NULL }
826 };
827
828 static const ber_choice_t ConnectionType_choice[] = {
829   {   0, &hf_gnm_explicitPToP    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_ExplicitPtoP },
830   {   1, &hf_gnm_ptoTpPool       , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_PtoTPPool },
831   {   2, &hf_gnm_explicitPtoMP   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_gnm_ExplicitPtoMP },
832   {   3, &hf_gnm_ptoMPools       , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_gnm_PtoMPools },
833   { 0, NULL, 0, 0, 0, NULL }
834 };
835
836 static int
837 dissect_gnm_ConnectionType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
838   offset = dissect_ber_choice(actx, tree, tvb, offset,
839                                  ConnectionType_choice, hf_index, ett_gnm_ConnectionType,
840                                  NULL);
841
842   return offset;
843 }
844
845
846 static const value_string gnm_ConnectionTypeBi_vals[] = {
847   {   0, "explicitPToP" },
848   {   1, "ptoTpPool" },
849   { 0, NULL }
850 };
851
852 static const ber_choice_t ConnectionTypeBi_choice[] = {
853   {   0, &hf_gnm_explicitPToP    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_ExplicitPtoP },
854   {   1, &hf_gnm_ptoTpPool       , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_PtoTPPool },
855   { 0, NULL, 0, 0, 0, NULL }
856 };
857
858 static int
859 dissect_gnm_ConnectionTypeBi(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
860   offset = dissect_ber_choice(actx, tree, tvb, offset,
861                                  ConnectionTypeBi_choice, hf_index, ett_gnm_ConnectionTypeBi,
862                                  NULL);
863
864   return offset;
865 }
866
867
868 static const value_string gnm_T_itemType_vals[] = {
869   {   0, "unidirectional" },
870   {   1, "bidirectional" },
871   {   2, "addleg" },
872   { 0, NULL }
873 };
874
875 static const ber_choice_t T_itemType_choice[] = {
876   {   0, &hf_gnm_unidirectional  , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_ConnectionType },
877   {   1, &hf_gnm_bidirectional   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_ConnectionTypeBi },
878   {   2, &hf_gnm_addleg          , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_gnm_AddLeg },
879   { 0, NULL, 0, 0, 0, NULL }
880 };
881
882 static int
883 dissect_gnm_T_itemType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
884   offset = dissect_ber_choice(actx, tree, tvb, offset,
885                                  T_itemType_choice, hf_index, ett_gnm_T_itemType,
886                                  NULL);
887
888   return offset;
889 }
890
891
892
893 static int
894 dissect_gnm_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
895   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
896
897   return offset;
898 }
899
900
901
902 static int
903 dissect_gnm_CrossConnectionName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
904   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
905                                             actx, tree, tvb, offset, hf_index,
906                                             NULL);
907
908   return offset;
909 }
910
911
912 static const ber_sequence_t NamedCrossConnection_sequence[] = {
913   { &hf_gnm_redline_01      , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_gnm_BOOLEAN },
914   { &hf_gnm_name            , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_gnm_CrossConnectionName },
915   { NULL, 0, 0, 0, NULL }
916 };
917
918 static int
919 dissect_gnm_NamedCrossConnection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
920   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
921                                    NamedCrossConnection_sequence, hf_index, ett_gnm_NamedCrossConnection);
922
923   return offset;
924 }
925
926
927
928 static int
929 dissect_gnm_UserLabel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
930   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
931                                             actx, tree, tvb, offset, hf_index,
932                                             NULL);
933
934   return offset;
935 }
936
937
938 static const ber_sequence_t ConnectInformation_item_sequence[] = {
939   { &hf_gnm_itemType        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_T_itemType },
940   { &hf_gnm_administrativeState, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_AdministrativeState },
941   { &hf_gnm_namedCrossConnection, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_NamedCrossConnection },
942   { &hf_gnm_userLabel       , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_UserLabel },
943   { &hf_gnm_redline         , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gnm_Boolean },
944   { &hf_gnm_additionalInfo  , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AdditionalInformation },
945   { NULL, 0, 0, 0, NULL }
946 };
947
948 static int
949 dissect_gnm_ConnectInformation_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
950   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
951                                    ConnectInformation_item_sequence, hf_index, ett_gnm_ConnectInformation_item);
952
953   return offset;
954 }
955
956
957 static const ber_sequence_t ConnectInformation_sequence_of[1] = {
958   { &hf_gnm_ConnectInformation_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_ConnectInformation_item },
959 };
960
961 static int
962 dissect_gnm_ConnectInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
963   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
964                                       ConnectInformation_sequence_of, hf_index, ett_gnm_ConnectInformation);
965
966   return offset;
967 }
968
969
970
971 static int
972 dissect_gnm_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
973   offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
974
975   return offset;
976 }
977
978
979 static const value_string gnm_ConnectivityPointer_vals[] = {
980   {   0, "none" },
981   {   1, "single" },
982   {   2, "concatenated" },
983   { 0, NULL }
984 };
985
986 static const ber_choice_t ConnectivityPointer_choice[] = {
987   {   0, &hf_gnm_none            , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
988   {   1, &hf_gnm_single          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
989   {   2, &hf_gnm_concatenated    , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SEQUENCE_OF_ObjectInstance },
990   { 0, NULL, 0, 0, 0, NULL }
991 };
992
993 static int
994 dissect_gnm_ConnectivityPointer(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
995   offset = dissect_ber_choice(actx, tree, tvb, offset,
996                                  ConnectivityPointer_choice, hf_index, ett_gnm_ConnectivityPointer,
997                                  NULL);
998
999   return offset;
1000 }
1001
1002
1003
1004 static int
1005 dissect_gnm_Count(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1006   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1007                                                 NULL);
1008
1009   return offset;
1010 }
1011
1012
1013 static const value_string gnm_MultipleConnections_item_vals[] = {
1014   {   0, "downstreamNotConnected" },
1015   {   1, "downstreamConnected" },
1016   {   2, "upstreamNotConnected" },
1017   {   3, "upstreamConnected" },
1018   { 0, NULL }
1019 };
1020
1021 static const ber_choice_t MultipleConnections_item_choice[] = {
1022   {   0, &hf_gnm_downstreamNotConnected, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1023   {   1, &hf_gnm_downstreamConnected, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1024   {   2, &hf_gnm_upstreamNotConnected, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1025   {   3, &hf_gnm_upstreamConnected, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1026   { 0, NULL, 0, 0, 0, NULL }
1027 };
1028
1029 static int
1030 dissect_gnm_MultipleConnections_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1031   offset = dissect_ber_choice(actx, tree, tvb, offset,
1032                                  MultipleConnections_item_choice, hf_index, ett_gnm_MultipleConnections_item,
1033                                  NULL);
1034
1035   return offset;
1036 }
1037
1038
1039 static const ber_sequence_t MultipleConnections_set_of[1] = {
1040   { &hf_gnm_MultipleConnections_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_MultipleConnections_item },
1041 };
1042
1043 static int
1044 dissect_gnm_MultipleConnections(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1045   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1046                                  MultipleConnections_set_of, hf_index, ett_gnm_MultipleConnections);
1047
1048   return offset;
1049 }
1050
1051
1052 static const value_string gnm_CrossConnectionObjectPointer_vals[] = {
1053   {   0, "notConnected" },
1054   {   1, "connected" },
1055   {   2, "multipleConnections" },
1056   { 0, NULL }
1057 };
1058
1059 static const ber_choice_t CrossConnectionObjectPointer_choice[] = {
1060   {   0, &hf_gnm_notConnected    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1061   {   1, &hf_gnm_connected       , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1062   {   2, &hf_gnm_multipleConnections, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_MultipleConnections },
1063   { 0, NULL, 0, 0, 0, NULL }
1064 };
1065
1066 static int
1067 dissect_gnm_CrossConnectionObjectPointer(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1068   offset = dissect_ber_choice(actx, tree, tvb, offset,
1069                                  CrossConnectionObjectPointer_choice, hf_index, ett_gnm_CrossConnectionObjectPointer,
1070                                  NULL);
1071
1072   return offset;
1073 }
1074
1075
1076 static const ber_sequence_t CurrentProblem_sequence[] = {
1077   { &hf_gnm_problem         , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_ProbableCause },
1078   { &hf_gnm_alarmStatus     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_AlarmStatus },
1079   { NULL, 0, 0, 0, NULL }
1080 };
1081
1082 static int
1083 dissect_gnm_CurrentProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1084   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1085                                    CurrentProblem_sequence, hf_index, ett_gnm_CurrentProblem);
1086
1087   return offset;
1088 }
1089
1090
1091 static const ber_sequence_t CurrentProblemList_set_of[1] = {
1092   { &hf_gnm_CurrentProblemList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_CurrentProblem },
1093 };
1094
1095 static int
1096 dissect_gnm_CurrentProblemList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1097   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1098                                  CurrentProblemList_set_of, hf_index, ett_gnm_CurrentProblemList);
1099
1100   return offset;
1101 }
1102
1103
1104 static const value_string gnm_Directionality_vals[] = {
1105   {   0, "unidirectional" },
1106   {   1, "bidirectional" },
1107   { 0, NULL }
1108 };
1109
1110
1111 static int
1112 dissect_gnm_Directionality(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1113   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1114                                   NULL);
1115
1116   return offset;
1117 }
1118
1119
1120 static const value_string gnm_ProblemCause_vals[] = {
1121   {   0, "unknown" },
1122   {   1, "integerValue" },
1123   { 0, NULL }
1124 };
1125
1126 static const ber_choice_t ProblemCause_choice[] = {
1127   {   0, &hf_gnm_unknown         , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1128   {   1, &hf_gnm_integerValue    , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_gnm_INTEGER },
1129   { 0, NULL, 0, 0, 0, NULL }
1130 };
1131
1132 static int
1133 dissect_gnm_ProblemCause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1134   offset = dissect_ber_choice(actx, tree, tvb, offset,
1135                                  ProblemCause_choice, hf_index, ett_gnm_ProblemCause,
1136                                  NULL);
1137
1138   return offset;
1139 }
1140
1141
1142 static const ber_sequence_t SET_OF_ObjectInstance_set_of[1] = {
1143   { &hf_gnm_broadcast_item  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1144 };
1145
1146 static int
1147 dissect_gnm_SET_OF_ObjectInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1148   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1149                                  SET_OF_ObjectInstance_set_of, hf_index, ett_gnm_SET_OF_ObjectInstance);
1150
1151   return offset;
1152 }
1153
1154
1155 static const ber_sequence_t LogicalProblem_sequence[] = {
1156   { &hf_gnm_problemCause    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_ProblemCause },
1157   { &hf_gnm_incorrectInstances, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_gnm_SET_OF_ObjectInstance },
1158   { NULL, 0, 0, 0, NULL }
1159 };
1160
1161 static int
1162 dissect_gnm_LogicalProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1163   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1164                                    LogicalProblem_sequence, hf_index, ett_gnm_LogicalProblem);
1165
1166   return offset;
1167 }
1168
1169
1170 static const value_string gnm_ResourceProblem_vals[] = {
1171   {   0, "unknown" },
1172   {   1, "integerValue" },
1173   { 0, NULL }
1174 };
1175
1176 static const ber_choice_t ResourceProblem_choice[] = {
1177   {   0, &hf_gnm_unknown         , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1178   {   1, &hf_gnm_integerValue    , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_gnm_INTEGER },
1179   { 0, NULL, 0, 0, 0, NULL }
1180 };
1181
1182 static int
1183 dissect_gnm_ResourceProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1184   offset = dissect_ber_choice(actx, tree, tvb, offset,
1185                                  ResourceProblem_choice, hf_index, ett_gnm_ResourceProblem,
1186                                  NULL);
1187
1188   return offset;
1189 }
1190
1191
1192 static const value_string gnm_Failed_vals[] = {
1193   {   0, "logicalProblem" },
1194   {   1, "resourceProblem" },
1195   { 0, NULL }
1196 };
1197
1198 static const ber_choice_t Failed_choice[] = {
1199   {   0, &hf_gnm_logicalProblem  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_LogicalProblem },
1200   {   1, &hf_gnm_resourceProblem , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_gnm_ResourceProblem },
1201   { 0, NULL, 0, 0, 0, NULL }
1202 };
1203
1204 static int
1205 dissect_gnm_Failed(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1206   offset = dissect_ber_choice(actx, tree, tvb, offset,
1207                                  Failed_choice, hf_index, ett_gnm_Failed,
1208                                  NULL);
1209
1210   return offset;
1211 }
1212
1213
1214 static const value_string gnm_DisconnectResult_item_vals[] = {
1215   { -1/*choice*/, "failed" },
1216   { -1/*choice*/, "disconnected" },
1217   { 0, NULL }
1218 };
1219
1220 static const ber_choice_t DisconnectResult_item_choice[] = {
1221   { -1/*choice*/, &hf_gnm_failed          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_gnm_Failed },
1222   { -1/*choice*/, &hf_gnm_disconnected    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1223   { 0, NULL, 0, 0, 0, NULL }
1224 };
1225
1226 static int
1227 dissect_gnm_DisconnectResult_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1228   offset = dissect_ber_choice(actx, tree, tvb, offset,
1229                                  DisconnectResult_item_choice, hf_index, ett_gnm_DisconnectResult_item,
1230                                  NULL);
1231
1232   return offset;
1233 }
1234
1235
1236 static const ber_sequence_t DisconnectResult_sequence_of[1] = {
1237   { &hf_gnm_DisconnectResult_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_DisconnectResult_item },
1238 };
1239
1240 static int
1241 dissect_gnm_DisconnectResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1242   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1243                                       DisconnectResult_sequence_of, hf_index, ett_gnm_DisconnectResult);
1244
1245   return offset;
1246 }
1247
1248
1249 static const ber_sequence_t T_broadcastConcatenated_set_of[1] = {
1250   { &hf_gnm_broadcastConcatenated_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SEQUENCE_OF_ObjectInstance },
1251 };
1252
1253 static int
1254 dissect_gnm_T_broadcastConcatenated(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1255   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1256                                  T_broadcastConcatenated_set_of, hf_index, ett_gnm_T_broadcastConcatenated);
1257
1258   return offset;
1259 }
1260
1261
1262 static const value_string gnm_DownstreamConnectivityPointer_vals[] = {
1263   {   0, "none" },
1264   {   1, "single" },
1265   {   2, "concatenated" },
1266   {   3, "broadcast" },
1267   {   4, "broadcastConcatenated" },
1268   { 0, NULL }
1269 };
1270
1271 static const ber_choice_t DownstreamConnectivityPointer_choice[] = {
1272   {   0, &hf_gnm_none            , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1273   {   1, &hf_gnm_single          , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1274   {   2, &hf_gnm_concatenated    , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SEQUENCE_OF_ObjectInstance },
1275   {   3, &hf_gnm_broadcast       , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SET_OF_ObjectInstance },
1276   {   4, &hf_gnm_broadcastConcatenated, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_T_broadcastConcatenated },
1277   { 0, NULL, 0, 0, 0, NULL }
1278 };
1279
1280 static int
1281 dissect_gnm_DownstreamConnectivityPointer(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1282   offset = dissect_ber_choice(actx, tree, tvb, offset,
1283                                  DownstreamConnectivityPointer_choice, hf_index, ett_gnm_DownstreamConnectivityPointer,
1284                                  NULL);
1285
1286   return offset;
1287 }
1288
1289
1290
1291 static int
1292 dissect_gnm_ExternalTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1293   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1294
1295   return offset;
1296 }
1297
1298
1299 static const ber_sequence_t EquipmentHolderAddress_sequence_of[1] = {
1300   { &hf_gnm_EquipmentHolderAddress_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_gnm_PrintableString },
1301 };
1302
1303 static int
1304 dissect_gnm_EquipmentHolderAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1305   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1306                                       EquipmentHolderAddress_sequence_of, hf_index, ett_gnm_EquipmentHolderAddress);
1307
1308   return offset;
1309 }
1310
1311
1312
1313 static int
1314 dissect_gnm_EquipmentHolderType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1315   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
1316                                             actx, tree, tvb, offset, hf_index,
1317                                             NULL);
1318
1319   return offset;
1320 }
1321
1322
1323 static const value_string gnm_HolderStatus_vals[] = {
1324   {   0, "holderEmpty" },
1325   {   1, "inTheAcceptableList" },
1326   {   2, "notInTheAcceptableList" },
1327   {   3, "unknownType" },
1328   { 0, NULL }
1329 };
1330
1331 static const ber_choice_t HolderStatus_choice[] = {
1332   {   0, &hf_gnm_holderEmpty     , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_NULL },
1333   {   1, &hf_gnm_inTheAcceptableList, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_CircuitPackType },
1334   {   2, &hf_gnm_notInTheAcceptableList, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_gnm_CircuitPackType },
1335   {   3, &hf_gnm_unknownType     , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_gnm_NULL },
1336   { 0, NULL, 0, 0, 0, NULL }
1337 };
1338
1339 static int
1340 dissect_gnm_HolderStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1341   offset = dissect_ber_choice(actx, tree, tvb, offset,
1342                                  HolderStatus_choice, hf_index, ett_gnm_HolderStatus,
1343                                  NULL);
1344
1345   return offset;
1346 }
1347
1348
1349 static const value_string gnm_InformationTransferCapabilities_vals[] = {
1350   {   0, "speech" },
1351   {   1, "audio3pt1" },
1352   {   2, "audio7" },
1353   {   3, "audioComb" },
1354   {   4, "digitalRestricted56" },
1355   {   5, "digitalUnrestricted64" },
1356   { 0, NULL }
1357 };
1358
1359
1360 static int
1361 dissect_gnm_InformationTransferCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1362   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1363                                   NULL);
1364
1365   return offset;
1366 }
1367
1368
1369 static const ber_sequence_t ListOfCharacteristicInformation_set_of[1] = {
1370   { &hf_gnm_ListOfCharacteristicInformation_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_gnm_CharacteristicInformation },
1371 };
1372
1373 static int
1374 dissect_gnm_ListOfCharacteristicInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1375   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1376                                  ListOfCharacteristicInformation_set_of, hf_index, ett_gnm_ListOfCharacteristicInformation);
1377
1378   return offset;
1379 }
1380
1381
1382
1383 static int
1384 dissect_gnm_GraphicString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1385   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
1386                                             actx, tree, tvb, offset, hf_index,
1387                                             NULL);
1388
1389   return offset;
1390 }
1391
1392
1393 static const value_string gnm_NameType_vals[] = {
1394   {   0, "numericName" },
1395   {   1, "pString" },
1396   { 0, NULL }
1397 };
1398
1399 static const ber_choice_t NameType_choice[] = {
1400   {   0, &hf_gnm_numericName     , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_gnm_INTEGER },
1401   {   1, &hf_gnm_pString         , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_gnm_GraphicString },
1402   { 0, NULL, 0, 0, 0, NULL }
1403 };
1404
1405 static int
1406 dissect_gnm_NameType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1407   offset = dissect_ber_choice(actx, tree, tvb, offset,
1408                                  NameType_choice, hf_index, ett_gnm_NameType,
1409                                  NULL);
1410
1411   return offset;
1412 }
1413
1414
1415
1416 static int
1417 dissect_gnm_NumberOfCircuits(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1418   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1419                                                 NULL);
1420
1421   return offset;
1422 }
1423
1424
1425 static const ber_sequence_t ObjectList_set_of[1] = {
1426   { &hf_gnm_ObjectList_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1427 };
1428
1429 static int
1430 dissect_gnm_ObjectList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1431   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1432                                  ObjectList_set_of, hf_index, ett_gnm_ObjectList);
1433
1434   return offset;
1435 }
1436
1437
1438
1439 static int
1440 dissect_gnm_WaveLength(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1441   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1442                                                 NULL);
1443
1444   return offset;
1445 }
1446
1447
1448 static const ber_sequence_t SignalRateAndMappingList_item_sequence[] = {
1449   { &hf_gnm_signalRate      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_gnm_SignalRate },
1450   { &hf_gnm_mappingList     , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_gnm_MappingList },
1451   { &hf_gnm_wavelength      , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_gnm_WaveLength },
1452   { NULL, 0, 0, 0, NULL }
1453 };
1454
1455 static int
1456 dissect_gnm_SignalRateAndMappingList_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1457   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1458                                    SignalRateAndMappingList_item_sequence, hf_index, ett_gnm_SignalRateAndMappingList_item);
1459
1460   return offset;
1461 }
1462
1463
1464 static const ber_sequence_t SignalRateAndMappingList_set_of[1] = {
1465   { &hf_gnm_SignalRateAndMappingList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SignalRateAndMappingList_item },
1466 };
1467
1468 static int
1469 dissect_gnm_SignalRateAndMappingList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1470   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1471                                  SignalRateAndMappingList_set_of, hf_index, ett_gnm_SignalRateAndMappingList);
1472
1473   return offset;
1474 }
1475
1476
1477 static const ber_sequence_t T_diverse_sequence[] = {
1478   { &hf_gnm_downstream      , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SignalRateAndMappingList },
1479   { &hf_gnm_upStream        , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SignalRateAndMappingList },
1480   { NULL, 0, 0, 0, NULL }
1481 };
1482
1483 static int
1484 dissect_gnm_T_diverse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1485   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1486                                    T_diverse_sequence, hf_index, ett_gnm_T_diverse);
1487
1488   return offset;
1489 }
1490
1491
1492 static const value_string gnm_PhysicalPortSignalRateAndMappingList_vals[] = {
1493   {   0, "diverse" },
1494   {   1, "uniform" },
1495   { 0, NULL }
1496 };
1497
1498 static const ber_choice_t PhysicalPortSignalRateAndMappingList_choice[] = {
1499   {   0, &hf_gnm_diverse         , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_T_diverse },
1500   {   1, &hf_gnm_uniform         , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_gnm_SignalRateAndMappingList },
1501   { 0, NULL, 0, 0, 0, NULL }
1502 };
1503
1504 static int
1505 dissect_gnm_PhysicalPortSignalRateAndMappingList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1506   offset = dissect_ber_choice(actx, tree, tvb, offset,
1507                                  PhysicalPortSignalRateAndMappingList_choice, hf_index, ett_gnm_PhysicalPortSignalRateAndMappingList,
1508                                  NULL);
1509
1510   return offset;
1511 }
1512
1513
1514
1515 static int
1516 dissect_gnm_Pointer(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1517   offset = dissect_cmip_ObjectInstance(implicit_tag, tvb, offset, actx, tree, hf_index);
1518
1519   return offset;
1520 }
1521
1522
1523 static const value_string gnm_PointerOrNull_vals[] = {
1524   {   0, "pointer" },
1525   {   1, "null" },
1526   { 0, NULL }
1527 };
1528
1529 static const ber_choice_t PointerOrNull_choice[] = {
1530   {   0, &hf_gnm_pointer         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1531   {   1, &hf_gnm_null            , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1532   { 0, NULL, 0, 0, 0, NULL }
1533 };
1534
1535 static int
1536 dissect_gnm_PointerOrNull(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1537   offset = dissect_ber_choice(actx, tree, tvb, offset,
1538                                  PointerOrNull_choice, hf_index, ett_gnm_PointerOrNull,
1539                                  NULL);
1540
1541   return offset;
1542 }
1543
1544
1545 static const value_string gnm_RelatedObjectInstance_vals[] = {
1546   {   0, "notAvailable" },
1547   {   1, "relatedObject" },
1548   { 0, NULL }
1549 };
1550
1551 static const ber_choice_t RelatedObjectInstance_choice[] = {
1552   {   0, &hf_gnm_notAvailable    , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1553   {   1, &hf_gnm_relatedObject   , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1554   { 0, NULL, 0, 0, 0, NULL }
1555 };
1556
1557 static int
1558 dissect_gnm_RelatedObjectInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1559   offset = dissect_ber_choice(actx, tree, tvb, offset,
1560                                  RelatedObjectInstance_choice, hf_index, ett_gnm_RelatedObjectInstance,
1561                                  NULL);
1562
1563   return offset;
1564 }
1565
1566
1567 static const value_string gnm_Replaceable_vals[] = {
1568   {   0, "yes" },
1569   {   1, "no" },
1570   {   2, "notapplicable" },
1571   { 0, NULL }
1572 };
1573
1574
1575 static int
1576 dissect_gnm_Replaceable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1577   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1578                                   NULL);
1579
1580   return offset;
1581 }
1582
1583
1584 static const ber_sequence_t SequenceOfObjectInstance_sequence_of[1] = {
1585   { &hf_gnm_SequenceOfObjectInstance_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1586 };
1587
1588 static int
1589 dissect_gnm_SequenceOfObjectInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1590   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1591                                       SequenceOfObjectInstance_sequence_of, hf_index, ett_gnm_SequenceOfObjectInstance);
1592
1593   return offset;
1594 }
1595
1596
1597
1598 static int
1599 dissect_gnm_SerialNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1600   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
1601                                             actx, tree, tvb, offset, hf_index,
1602                                             NULL);
1603
1604   return offset;
1605 }
1606
1607
1608 static const value_string gnm_SignallingCapabilities_vals[] = {
1609   {   0, "isup" },
1610   {   1, "isup92" },
1611   {   2, "itu-tNo5" },
1612   {   3, "r2" },
1613   {   4, "itu-tNo6" },
1614   {   5, "tup" },
1615   { 0, NULL }
1616 };
1617
1618
1619 static int
1620 dissect_gnm_SignallingCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1621   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1622                                   NULL);
1623
1624   return offset;
1625 }
1626
1627
1628 static const ber_sequence_t SEQUENCE_OF_Bundle_sequence_of[1] = {
1629   { &hf_gnm_complex_item    , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_Bundle },
1630 };
1631
1632 static int
1633 dissect_gnm_SEQUENCE_OF_Bundle(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1634   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1635                                       SEQUENCE_OF_Bundle_sequence_of, hf_index, ett_gnm_SEQUENCE_OF_Bundle);
1636
1637   return offset;
1638 }
1639
1640
1641 static const value_string gnm_SignalType_vals[] = {
1642   {   0, "simple" },
1643   {   1, "bundle" },
1644   {   2, "complex" },
1645   { 0, NULL }
1646 };
1647
1648 static const ber_choice_t SignalType_choice[] = {
1649   {   0, &hf_gnm_simple          , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_gnm_CharacteristicInformation },
1650   {   1, &hf_gnm_bundle          , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_Bundle },
1651   {   2, &hf_gnm_complex         , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_SEQUENCE_OF_Bundle },
1652   { 0, NULL, 0, 0, 0, NULL }
1653 };
1654
1655 static int
1656 dissect_gnm_SignalType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1657   offset = dissect_ber_choice(actx, tree, tvb, offset,
1658                                  SignalType_choice, hf_index, ett_gnm_SignalType,
1659                                  NULL);
1660
1661   return offset;
1662 }
1663
1664
1665 static const ber_sequence_t T_softwareIdentifiers_sequence_of[1] = {
1666   { &hf_gnm_softwareIdentifiers_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_gnm_PrintableString },
1667 };
1668
1669 static int
1670 dissect_gnm_T_softwareIdentifiers(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1671   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1672                                       T_softwareIdentifiers_sequence_of, hf_index, ett_gnm_T_softwareIdentifiers);
1673
1674   return offset;
1675 }
1676
1677
1678 static const value_string gnm_SubordinateCircuitPackSoftwareLoad_vals[] = {
1679   {   0, "notApplicable" },
1680   {   1, "softwareInstances" },
1681   {   2, "softwareIdentifiers" },
1682   { 0, NULL }
1683 };
1684
1685 static const ber_choice_t SubordinateCircuitPackSoftwareLoad_choice[] = {
1686   {   0, &hf_gnm_notApplicable   , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_gnm_NULL },
1687   {   1, &hf_gnm_softwareInstances, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gnm_SEQUENCE_OF_ObjectInstance },
1688   {   2, &hf_gnm_softwareIdentifiers, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gnm_T_softwareIdentifiers },
1689   { 0, NULL, 0, 0, 0, NULL }
1690 };
1691
1692 static int
1693 dissect_gnm_SubordinateCircuitPackSoftwareLoad(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1694   offset = dissect_ber_choice(actx, tree, tvb, offset,
1695                                  SubordinateCircuitPackSoftwareLoad_choice, hf_index, ett_gnm_SubordinateCircuitPackSoftwareLoad,
1696                                  NULL);
1697
1698   return offset;
1699 }
1700
1701
1702 static const ber_sequence_t SupportableClientList_set_of[1] = {
1703   { &hf_gnm_SupportableClientList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectClass },
1704 };
1705
1706 static int
1707 dissect_gnm_SupportableClientList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1708   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1709                                  SupportableClientList_set_of, hf_index, ett_gnm_SupportableClientList);
1710
1711   return offset;
1712 }
1713
1714
1715 static const value_string gnm_T_sourceType_vals[] = {
1716   {   0, "internalTimingSource" },
1717   {   1, "remoteTimingSource" },
1718   {   2, "slavedTimingTerminationSignal" },
1719   { 0, NULL }
1720 };
1721
1722
1723 static int
1724 dissect_gnm_T_sourceType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1725   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1726                                   NULL);
1727
1728   return offset;
1729 }
1730
1731
1732 static const ber_sequence_t SystemTiming_sequence[] = {
1733   { &hf_gnm_sourceType      , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_gnm_T_sourceType },
1734   { &hf_gnm_sourceID        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1735   { NULL, 0, 0, 0, NULL }
1736 };
1737
1738 static int
1739 dissect_gnm_SystemTiming(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1740   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1741                                    SystemTiming_sequence, hf_index, ett_gnm_SystemTiming);
1742
1743   return offset;
1744 }
1745
1746
1747 static const ber_sequence_t SystemTimingSource_sequence[] = {
1748   { &hf_gnm_primaryTimingSource, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_gnm_SystemTiming },
1749   { &hf_gnm_secondaryTimingSource, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_gnm_SystemTiming },
1750   { NULL, 0, 0, 0, NULL }
1751 };
1752
1753 static int
1754 dissect_gnm_SystemTimingSource(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1755   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1756                                    SystemTimingSource_sequence, hf_index, ett_gnm_SystemTimingSource);
1757
1758   return offset;
1759 }
1760
1761
1762 static const ber_sequence_t TpsInGtpList_sequence_of[1] = {
1763   { &hf_gnm_TpsInGtpList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1764 };
1765
1766 static int
1767 dissect_gnm_TpsInGtpList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1768   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1769                                       TpsInGtpList_sequence_of, hf_index, ett_gnm_TpsInGtpList);
1770
1771   return offset;
1772 }
1773
1774
1775 static const asn_namedbit TransmissionCharacteristics_bits[] = {
1776   {  0, &hf_gnm_TransmissionCharacteristics_satellite, -1, -1, "satellite", NULL },
1777   {  1, &hf_gnm_TransmissionCharacteristics_dCME, -1, -1, "dCME", NULL },
1778   {  2, &hf_gnm_TransmissionCharacteristics_echoControl, -1, -1, "echoControl", NULL },
1779   { 0, NULL, 0, 0, NULL, NULL }
1780 };
1781
1782 static int
1783 dissect_gnm_TransmissionCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1784   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1785                                     TransmissionCharacteristics_bits, hf_index, ett_gnm_TransmissionCharacteristics,
1786                                     NULL);
1787
1788   return offset;
1789 }
1790
1791
1792
1793 static int
1794 dissect_gnm_VendorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1795   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
1796                                             actx, tree, tvb, offset, hf_index,
1797                                             NULL);
1798
1799   return offset;
1800 }
1801
1802
1803
1804 static int
1805 dissect_gnm_Version(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1806   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
1807                                             actx, tree, tvb, offset, hf_index,
1808                                             NULL);
1809
1810   return offset;
1811 }
1812
1813 /*--- PDUs ---*/
1814
1815 static void dissect_SupportedTOClasses_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1816   asn1_ctx_t asn1_ctx;
1817   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1818   dissect_gnm_SupportedTOClasses(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SupportedTOClasses_PDU);
1819 }
1820 static void dissect_AcceptableCircuitPackTypeList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1821   asn1_ctx_t asn1_ctx;
1822   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1823   dissect_gnm_AcceptableCircuitPackTypeList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_AcceptableCircuitPackTypeList_PDU);
1824 }
1825 static void dissect_AlarmSeverityAssignmentList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1826   asn1_ctx_t asn1_ctx;
1827   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1828   dissect_gnm_AlarmSeverityAssignmentList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_AlarmSeverityAssignmentList_PDU);
1829 }
1830 static void dissect_AlarmStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1831   asn1_ctx_t asn1_ctx;
1832   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1833   dissect_gnm_AlarmStatus(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_AlarmStatus_PDU);
1834 }
1835 static void dissect_Boolean_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1836   asn1_ctx_t asn1_ctx;
1837   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1838   dissect_gnm_Boolean(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Boolean_PDU);
1839 }
1840 static void dissect_ChannelNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1841   asn1_ctx_t asn1_ctx;
1842   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1843   dissect_gnm_ChannelNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ChannelNumber_PDU);
1844 }
1845 static void dissect_CharacteristicInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1846   asn1_ctx_t asn1_ctx;
1847   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1848   dissect_gnm_CharacteristicInformation(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CharacteristicInformation_PDU);
1849 }
1850 static void dissect_CircuitDirectionality_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1851   asn1_ctx_t asn1_ctx;
1852   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1853   dissect_gnm_CircuitDirectionality(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CircuitDirectionality_PDU);
1854 }
1855 static void dissect_CircuitPackType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1856   asn1_ctx_t asn1_ctx;
1857   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1858   dissect_gnm_CircuitPackType(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CircuitPackType_PDU);
1859 }
1860 static void dissect_ConnectInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1861   asn1_ctx_t asn1_ctx;
1862   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1863   dissect_gnm_ConnectInformation(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ConnectInformation_PDU);
1864 }
1865 static void dissect_ConnectivityPointer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1866   asn1_ctx_t asn1_ctx;
1867   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1868   dissect_gnm_ConnectivityPointer(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ConnectivityPointer_PDU);
1869 }
1870 static void dissect_Count_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1871   asn1_ctx_t asn1_ctx;
1872   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1873   dissect_gnm_Count(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Count_PDU);
1874 }
1875 static void dissect_CrossConnectionName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1876   asn1_ctx_t asn1_ctx;
1877   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1878   dissect_gnm_CrossConnectionName(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CrossConnectionName_PDU);
1879 }
1880 static void dissect_CrossConnectionObjectPointer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1881   asn1_ctx_t asn1_ctx;
1882   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1883   dissect_gnm_CrossConnectionObjectPointer(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CrossConnectionObjectPointer_PDU);
1884 }
1885 static void dissect_CurrentProblemList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1886   asn1_ctx_t asn1_ctx;
1887   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1888   dissect_gnm_CurrentProblemList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_CurrentProblemList_PDU);
1889 }
1890 static void dissect_Directionality_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1891   asn1_ctx_t asn1_ctx;
1892   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1893   dissect_gnm_Directionality(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Directionality_PDU);
1894 }
1895 static void dissect_DisconnectResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1896   asn1_ctx_t asn1_ctx;
1897   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1898   dissect_gnm_DisconnectResult(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_DisconnectResult_PDU);
1899 }
1900 static void dissect_DownstreamConnectivityPointer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1901   asn1_ctx_t asn1_ctx;
1902   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1903   dissect_gnm_DownstreamConnectivityPointer(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_DownstreamConnectivityPointer_PDU);
1904 }
1905 static void dissect_ExternalTime_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1906   asn1_ctx_t asn1_ctx;
1907   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1908   dissect_gnm_ExternalTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ExternalTime_PDU);
1909 }
1910 static void dissect_EquipmentHolderAddress_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1911   asn1_ctx_t asn1_ctx;
1912   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1913   dissect_gnm_EquipmentHolderAddress(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_EquipmentHolderAddress_PDU);
1914 }
1915 static void dissect_EquipmentHolderType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1916   asn1_ctx_t asn1_ctx;
1917   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1918   dissect_gnm_EquipmentHolderType(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_EquipmentHolderType_PDU);
1919 }
1920 static void dissect_HolderStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1921   asn1_ctx_t asn1_ctx;
1922   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1923   dissect_gnm_HolderStatus(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_HolderStatus_PDU);
1924 }
1925 static void dissect_InformationTransferCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1926   asn1_ctx_t asn1_ctx;
1927   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1928   dissect_gnm_InformationTransferCapabilities(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_InformationTransferCapabilities_PDU);
1929 }
1930 static void dissect_ListOfCharacteristicInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1931   asn1_ctx_t asn1_ctx;
1932   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1933   dissect_gnm_ListOfCharacteristicInformation(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ListOfCharacteristicInformation_PDU);
1934 }
1935 static void dissect_NameType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1936   asn1_ctx_t asn1_ctx;
1937   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1938   dissect_gnm_NameType(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_NameType_PDU);
1939 }
1940 static void dissect_NumberOfCircuits_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1941   asn1_ctx_t asn1_ctx;
1942   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1943   dissect_gnm_NumberOfCircuits(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_NumberOfCircuits_PDU);
1944 }
1945 static void dissect_ObjectList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1946   asn1_ctx_t asn1_ctx;
1947   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1948   dissect_gnm_ObjectList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_ObjectList_PDU);
1949 }
1950 static void dissect_Pointer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1951   asn1_ctx_t asn1_ctx;
1952   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1953   dissect_gnm_Pointer(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Pointer_PDU);
1954 }
1955 static void dissect_PointerOrNull_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1956   asn1_ctx_t asn1_ctx;
1957   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1958   dissect_gnm_PointerOrNull(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_PointerOrNull_PDU);
1959 }
1960 static void dissect_RelatedObjectInstance_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1961   asn1_ctx_t asn1_ctx;
1962   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1963   dissect_gnm_RelatedObjectInstance(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_RelatedObjectInstance_PDU);
1964 }
1965 static void dissect_Replaceable_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1966   asn1_ctx_t asn1_ctx;
1967   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1968   dissect_gnm_Replaceable(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Replaceable_PDU);
1969 }
1970 static void dissect_SequenceOfObjectInstance_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1971   asn1_ctx_t asn1_ctx;
1972   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1973   dissect_gnm_SequenceOfObjectInstance(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SequenceOfObjectInstance_PDU);
1974 }
1975 static void dissect_SerialNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1976   asn1_ctx_t asn1_ctx;
1977   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1978   dissect_gnm_SerialNumber(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SerialNumber_PDU);
1979 }
1980 static void dissect_SignallingCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1981   asn1_ctx_t asn1_ctx;
1982   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1983   dissect_gnm_SignallingCapabilities(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SignallingCapabilities_PDU);
1984 }
1985 static void dissect_SignalType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1986   asn1_ctx_t asn1_ctx;
1987   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1988   dissect_gnm_SignalType(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SignalType_PDU);
1989 }
1990 static void dissect_SubordinateCircuitPackSoftwareLoad_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1991   asn1_ctx_t asn1_ctx;
1992   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1993   dissect_gnm_SubordinateCircuitPackSoftwareLoad(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SubordinateCircuitPackSoftwareLoad_PDU);
1994 }
1995 static void dissect_SupportableClientList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
1996   asn1_ctx_t asn1_ctx;
1997   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
1998   dissect_gnm_SupportableClientList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SupportableClientList_PDU);
1999 }
2000 static void dissect_SystemTimingSource_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2001   asn1_ctx_t asn1_ctx;
2002   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2003   dissect_gnm_SystemTimingSource(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_SystemTimingSource_PDU);
2004 }
2005 static void dissect_TpsInGtpList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2006   asn1_ctx_t asn1_ctx;
2007   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2008   dissect_gnm_TpsInGtpList(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_TpsInGtpList_PDU);
2009 }
2010 static void dissect_TransmissionCharacteristics_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2011   asn1_ctx_t asn1_ctx;
2012   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2013   dissect_gnm_TransmissionCharacteristics(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_TransmissionCharacteristics_PDU);
2014 }
2015 static void dissect_UserLabel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2016   asn1_ctx_t asn1_ctx;
2017   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2018   dissect_gnm_UserLabel(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_UserLabel_PDU);
2019 }
2020 static void dissect_VendorName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2021   asn1_ctx_t asn1_ctx;
2022   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2023   dissect_gnm_VendorName(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_VendorName_PDU);
2024 }
2025 static void dissect_Version_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2026   asn1_ctx_t asn1_ctx;
2027   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2028   dissect_gnm_Version(FALSE, tvb, 0, &asn1_ctx, tree, hf_gnm_Version_PDU);
2029 }
2030
2031
2032 /*--- End of included file: packet-gnm-fn.c ---*/
2033 #line 56 "packet-gnm-template.c"
2034
2035
2036
2037 static void
2038 dissect_gnm_attribute_ObjectInstance(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
2039 {
2040         asn1_ctx_t asn1_ctx;
2041
2042         asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
2043
2044         dissect_cmip_ObjectInstance(FALSE, tvb, 0, &asn1_ctx, parent_tree, -1);
2045
2046 }
2047
2048 void
2049 dissect_gnm(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
2050 {
2051   /* Dymmy function */
2052 }
2053
2054 /*--- proto_register_gnm -------------------------------------------*/
2055 void proto_register_gnm(void) {
2056
2057   /* List of fields */
2058   static hf_register_info hf[] = {
2059
2060
2061 /*--- Included file: packet-gnm-hfarr.c ---*/
2062 #line 1 "packet-gnm-hfarr.c"
2063     { &hf_gnm_SupportedTOClasses_PDU,
2064       { "SupportedTOClasses", "gnm.SupportedTOClasses",
2065         FT_UINT32, BASE_DEC, NULL, 0,
2066         "gnm.SupportedTOClasses", HFILL }},
2067     { &hf_gnm_AcceptableCircuitPackTypeList_PDU,
2068       { "AcceptableCircuitPackTypeList", "gnm.AcceptableCircuitPackTypeList",
2069         FT_UINT32, BASE_DEC, NULL, 0,
2070         "gnm.AcceptableCircuitPackTypeList", HFILL }},
2071     { &hf_gnm_AlarmSeverityAssignmentList_PDU,
2072       { "AlarmSeverityAssignmentList", "gnm.AlarmSeverityAssignmentList",
2073         FT_UINT32, BASE_DEC, NULL, 0,
2074         "gnm.AlarmSeverityAssignmentList", HFILL }},
2075     { &hf_gnm_AlarmStatus_PDU,
2076       { "AlarmStatus", "gnm.AlarmStatus",
2077         FT_UINT32, BASE_DEC, VALS(gnm_AlarmStatus_vals), 0,
2078         "gnm.AlarmStatus", HFILL }},
2079     { &hf_gnm_Boolean_PDU,
2080       { "Boolean", "gnm.Boolean",
2081         FT_BOOLEAN, BASE_NONE, NULL, 0,
2082         "gnm.Boolean", HFILL }},
2083     { &hf_gnm_ChannelNumber_PDU,
2084       { "ChannelNumber", "gnm.ChannelNumber",
2085         FT_INT32, BASE_DEC, NULL, 0,
2086         "gnm.ChannelNumber", HFILL }},
2087     { &hf_gnm_CharacteristicInformation_PDU,
2088       { "CharacteristicInformation", "gnm.CharacteristicInformation",
2089         FT_OID, BASE_NONE, NULL, 0,
2090         "gnm.CharacteristicInformation", HFILL }},
2091     { &hf_gnm_CircuitDirectionality_PDU,
2092       { "CircuitDirectionality", "gnm.CircuitDirectionality",
2093         FT_UINT32, BASE_DEC, VALS(gnm_CircuitDirectionality_vals), 0,
2094         "gnm.CircuitDirectionality", HFILL }},
2095     { &hf_gnm_CircuitPackType_PDU,
2096       { "CircuitPackType", "gnm.CircuitPackType",
2097         FT_STRING, BASE_NONE, NULL, 0,
2098         "gnm.CircuitPackType", HFILL }},
2099     { &hf_gnm_ConnectInformation_PDU,
2100       { "ConnectInformation", "gnm.ConnectInformation",
2101         FT_UINT32, BASE_DEC, NULL, 0,
2102         "gnm.ConnectInformation", HFILL }},
2103     { &hf_gnm_ConnectivityPointer_PDU,
2104       { "ConnectivityPointer", "gnm.ConnectivityPointer",
2105         FT_UINT32, BASE_DEC, VALS(gnm_ConnectivityPointer_vals), 0,
2106         "gnm.ConnectivityPointer", HFILL }},
2107     { &hf_gnm_Count_PDU,
2108       { "Count", "gnm.Count",
2109         FT_INT32, BASE_DEC, NULL, 0,
2110         "gnm.Count", HFILL }},
2111     { &hf_gnm_CrossConnectionName_PDU,
2112       { "CrossConnectionName", "gnm.CrossConnectionName",
2113         FT_STRING, BASE_NONE, NULL, 0,
2114         "gnm.CrossConnectionName", HFILL }},
2115     { &hf_gnm_CrossConnectionObjectPointer_PDU,
2116       { "CrossConnectionObjectPointer", "gnm.CrossConnectionObjectPointer",
2117         FT_UINT32, BASE_DEC, VALS(gnm_CrossConnectionObjectPointer_vals), 0,
2118         "gnm.CrossConnectionObjectPointer", HFILL }},
2119     { &hf_gnm_CurrentProblemList_PDU,
2120       { "CurrentProblemList", "gnm.CurrentProblemList",
2121         FT_UINT32, BASE_DEC, NULL, 0,
2122         "gnm.CurrentProblemList", HFILL }},
2123     { &hf_gnm_Directionality_PDU,
2124       { "Directionality", "gnm.Directionality",
2125         FT_UINT32, BASE_DEC, VALS(gnm_Directionality_vals), 0,
2126         "gnm.Directionality", HFILL }},
2127     { &hf_gnm_DisconnectResult_PDU,
2128       { "DisconnectResult", "gnm.DisconnectResult",
2129         FT_UINT32, BASE_DEC, NULL, 0,
2130         "gnm.DisconnectResult", HFILL }},
2131     { &hf_gnm_DownstreamConnectivityPointer_PDU,
2132       { "DownstreamConnectivityPointer", "gnm.DownstreamConnectivityPointer",
2133         FT_UINT32, BASE_DEC, VALS(gnm_DownstreamConnectivityPointer_vals), 0,
2134         "gnm.DownstreamConnectivityPointer", HFILL }},
2135     { &hf_gnm_ExternalTime_PDU,
2136       { "ExternalTime", "gnm.ExternalTime",
2137         FT_STRING, BASE_NONE, NULL, 0,
2138         "gnm.ExternalTime", HFILL }},
2139     { &hf_gnm_EquipmentHolderAddress_PDU,
2140       { "EquipmentHolderAddress", "gnm.EquipmentHolderAddress",
2141         FT_UINT32, BASE_DEC, NULL, 0,
2142         "gnm.EquipmentHolderAddress", HFILL }},
2143     { &hf_gnm_EquipmentHolderType_PDU,
2144       { "EquipmentHolderType", "gnm.EquipmentHolderType",
2145         FT_STRING, BASE_NONE, NULL, 0,
2146         "gnm.EquipmentHolderType", HFILL }},
2147     { &hf_gnm_HolderStatus_PDU,
2148       { "HolderStatus", "gnm.HolderStatus",
2149         FT_UINT32, BASE_DEC, VALS(gnm_HolderStatus_vals), 0,
2150         "gnm.HolderStatus", HFILL }},
2151     { &hf_gnm_InformationTransferCapabilities_PDU,
2152       { "InformationTransferCapabilities", "gnm.InformationTransferCapabilities",
2153         FT_UINT32, BASE_DEC, VALS(gnm_InformationTransferCapabilities_vals), 0,
2154         "gnm.InformationTransferCapabilities", HFILL }},
2155     { &hf_gnm_ListOfCharacteristicInformation_PDU,
2156       { "ListOfCharacteristicInformation", "gnm.ListOfCharacteristicInformation",
2157         FT_UINT32, BASE_DEC, NULL, 0,
2158         "gnm.ListOfCharacteristicInformation", HFILL }},
2159     { &hf_gnm_NameType_PDU,
2160       { "NameType", "gnm.NameType",
2161         FT_UINT32, BASE_DEC, VALS(gnm_NameType_vals), 0,
2162         "gnm.NameType", HFILL }},
2163     { &hf_gnm_NumberOfCircuits_PDU,
2164       { "NumberOfCircuits", "gnm.NumberOfCircuits",
2165         FT_INT32, BASE_DEC, NULL, 0,
2166         "gnm.NumberOfCircuits", HFILL }},
2167     { &hf_gnm_ObjectList_PDU,
2168       { "ObjectList", "gnm.ObjectList",
2169         FT_UINT32, BASE_DEC, NULL, 0,
2170         "gnm.ObjectList", HFILL }},
2171     { &hf_gnm_Pointer_PDU,
2172       { "Pointer", "gnm.Pointer",
2173         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2174         "gnm.Pointer", HFILL }},
2175     { &hf_gnm_PointerOrNull_PDU,
2176       { "PointerOrNull", "gnm.PointerOrNull",
2177         FT_UINT32, BASE_DEC, VALS(gnm_PointerOrNull_vals), 0,
2178         "gnm.PointerOrNull", HFILL }},
2179     { &hf_gnm_RelatedObjectInstance_PDU,
2180       { "RelatedObjectInstance", "gnm.RelatedObjectInstance",
2181         FT_UINT32, BASE_DEC, VALS(gnm_RelatedObjectInstance_vals), 0,
2182         "gnm.RelatedObjectInstance", HFILL }},
2183     { &hf_gnm_Replaceable_PDU,
2184       { "Replaceable", "gnm.Replaceable",
2185         FT_UINT32, BASE_DEC, VALS(gnm_Replaceable_vals), 0,
2186         "gnm.Replaceable", HFILL }},
2187     { &hf_gnm_SequenceOfObjectInstance_PDU,
2188       { "SequenceOfObjectInstance", "gnm.SequenceOfObjectInstance",
2189         FT_UINT32, BASE_DEC, NULL, 0,
2190         "gnm.SequenceOfObjectInstance", HFILL }},
2191     { &hf_gnm_SerialNumber_PDU,
2192       { "SerialNumber", "gnm.SerialNumber",
2193         FT_STRING, BASE_NONE, NULL, 0,
2194         "gnm.SerialNumber", HFILL }},
2195     { &hf_gnm_SignallingCapabilities_PDU,
2196       { "SignallingCapabilities", "gnm.SignallingCapabilities",
2197         FT_UINT32, BASE_DEC, VALS(gnm_SignallingCapabilities_vals), 0,
2198         "gnm.SignallingCapabilities", HFILL }},
2199     { &hf_gnm_SignalType_PDU,
2200       { "SignalType", "gnm.SignalType",
2201         FT_UINT32, BASE_DEC, VALS(gnm_SignalType_vals), 0,
2202         "gnm.SignalType", HFILL }},
2203     { &hf_gnm_SubordinateCircuitPackSoftwareLoad_PDU,
2204       { "SubordinateCircuitPackSoftwareLoad", "gnm.SubordinateCircuitPackSoftwareLoad",
2205         FT_UINT32, BASE_DEC, VALS(gnm_SubordinateCircuitPackSoftwareLoad_vals), 0,
2206         "gnm.SubordinateCircuitPackSoftwareLoad", HFILL }},
2207     { &hf_gnm_SupportableClientList_PDU,
2208       { "SupportableClientList", "gnm.SupportableClientList",
2209         FT_UINT32, BASE_DEC, NULL, 0,
2210         "gnm.SupportableClientList", HFILL }},
2211     { &hf_gnm_SystemTimingSource_PDU,
2212       { "SystemTimingSource", "gnm.SystemTimingSource",
2213         FT_NONE, BASE_NONE, NULL, 0,
2214         "gnm.SystemTimingSource", HFILL }},
2215     { &hf_gnm_TpsInGtpList_PDU,
2216       { "TpsInGtpList", "gnm.TpsInGtpList",
2217         FT_UINT32, BASE_DEC, NULL, 0,
2218         "gnm.TpsInGtpList", HFILL }},
2219     { &hf_gnm_TransmissionCharacteristics_PDU,
2220       { "TransmissionCharacteristics", "gnm.TransmissionCharacteristics",
2221         FT_BYTES, BASE_NONE, NULL, 0,
2222         "gnm.TransmissionCharacteristics", HFILL }},
2223     { &hf_gnm_UserLabel_PDU,
2224       { "UserLabel", "gnm.UserLabel",
2225         FT_STRING, BASE_NONE, NULL, 0,
2226         "gnm.UserLabel", HFILL }},
2227     { &hf_gnm_VendorName_PDU,
2228       { "VendorName", "gnm.VendorName",
2229         FT_STRING, BASE_NONE, NULL, 0,
2230         "gnm.VendorName", HFILL }},
2231     { &hf_gnm_Version_PDU,
2232       { "Version", "gnm.Version",
2233         FT_STRING, BASE_NONE, NULL, 0,
2234         "gnm.Version", HFILL }},
2235     { &hf_gnm_MappingList_item,
2236       { "PayloadLevel", "gnm.PayloadLevel",
2237         FT_OID, BASE_NONE, NULL, 0,
2238         "gnm.PayloadLevel", HFILL }},
2239     { &hf_gnm_objectClass,
2240       { "objectClass", "gnm.objectClass",
2241         FT_OID, BASE_NONE, NULL, 0,
2242         "gnm.OBJECT_IDENTIFIER", HFILL }},
2243     { &hf_gnm_characteristicInformation,
2244       { "characteristicInformation", "gnm.characteristicInformation",
2245         FT_OID, BASE_NONE, NULL, 0,
2246         "gnm.CharacteristicInformation", HFILL }},
2247     { &hf_gnm_SupportedTOClasses_item,
2248       { "SupportedTOClasses item", "gnm.SupportedTOClasses_item",
2249         FT_OID, BASE_NONE, NULL, 0,
2250         "gnm.OBJECT_IDENTIFIER", HFILL }},
2251     { &hf_gnm_AcceptableCircuitPackTypeList_item,
2252       { "AcceptableCircuitPackTypeList item", "gnm.AcceptableCircuitPackTypeList_item",
2253         FT_STRING, BASE_NONE, NULL, 0,
2254         "gnm.PrintableString", HFILL }},
2255     { &hf_gnm_mpCrossConnection,
2256       { "mpCrossConnection", "gnm.mpCrossConnection",
2257         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2258         "cmip.ObjectInstance", HFILL }},
2259     { &hf_gnm_legs,
2260       { "legs", "gnm.legs",
2261         FT_UINT32, BASE_DEC, NULL, 0,
2262         "gnm.SET_OF_ToTermSpecifier", HFILL }},
2263     { &hf_gnm_legs_item,
2264       { "ToTermSpecifier", "gnm.ToTermSpecifier",
2265         FT_UINT32, BASE_DEC, VALS(gnm_ToTermSpecifier_vals), 0,
2266         "gnm.ToTermSpecifier", HFILL }},
2267     { &hf_gnm_problem,
2268       { "problem", "gnm.problem",
2269         FT_UINT32, BASE_DEC, VALS(cmip_ProbableCause_vals), 0,
2270         "cmip.ProbableCause", HFILL }},
2271     { &hf_gnm_severityAssignedServiceAffecting,
2272       { "severityAssignedServiceAffecting", "gnm.severityAssignedServiceAffecting",
2273         FT_UINT32, BASE_DEC, VALS(gnm_AlarmSeverityCode_vals), 0,
2274         "gnm.AlarmSeverityCode", HFILL }},
2275     { &hf_gnm_severityAssignedNonServiceAffecting,
2276       { "severityAssignedNonServiceAffecting", "gnm.severityAssignedNonServiceAffecting",
2277         FT_UINT32, BASE_DEC, VALS(gnm_AlarmSeverityCode_vals), 0,
2278         "gnm.AlarmSeverityCode", HFILL }},
2279     { &hf_gnm_severityAssignedServiceIndependent,
2280       { "severityAssignedServiceIndependent", "gnm.severityAssignedServiceIndependent",
2281         FT_UINT32, BASE_DEC, VALS(gnm_AlarmSeverityCode_vals), 0,
2282         "gnm.AlarmSeverityCode", HFILL }},
2283     { &hf_gnm_AlarmSeverityAssignmentList_item,
2284       { "AlarmSeverityAssignment", "gnm.AlarmSeverityAssignment",
2285         FT_NONE, BASE_NONE, NULL, 0,
2286         "gnm.AlarmSeverityAssignment", HFILL }},
2287     { &hf_gnm_characteristicInfoType,
2288       { "characteristicInfoType", "gnm.characteristicInfoType",
2289         FT_OID, BASE_NONE, NULL, 0,
2290         "gnm.CharacteristicInformation", HFILL }},
2291     { &hf_gnm_bundlingFactor,
2292       { "bundlingFactor", "gnm.bundlingFactor",
2293         FT_INT32, BASE_DEC, NULL, 0,
2294         "gnm.INTEGER", HFILL }},
2295     { &hf_gnm_pointToPoint,
2296       { "pointToPoint", "gnm.pointToPoint",
2297         FT_NONE, BASE_NONE, NULL, 0,
2298         "gnm.PointToPoint", HFILL }},
2299     { &hf_gnm_pointToMultipoint,
2300       { "pointToMultipoint", "gnm.pointToMultipoint",
2301         FT_NONE, BASE_NONE, NULL, 0,
2302         "gnm.PointToMultipoint", HFILL }},
2303     { &hf_gnm_ConnectInformation_item,
2304       { "ConnectInformation item", "gnm.ConnectInformation_item",
2305         FT_NONE, BASE_NONE, NULL, 0,
2306         "gnm.ConnectInformation_item", HFILL }},
2307     { &hf_gnm_itemType,
2308       { "itemType", "gnm.itemType",
2309         FT_UINT32, BASE_DEC, VALS(gnm_T_itemType_vals), 0,
2310         "gnm.T_itemType", HFILL }},
2311     { &hf_gnm_unidirectional,
2312       { "unidirectional", "gnm.unidirectional",
2313         FT_UINT32, BASE_DEC, VALS(gnm_ConnectionType_vals), 0,
2314         "gnm.ConnectionType", HFILL }},
2315     { &hf_gnm_bidirectional,
2316       { "bidirectional", "gnm.bidirectional",
2317         FT_UINT32, BASE_DEC, VALS(gnm_ConnectionTypeBi_vals), 0,
2318         "gnm.ConnectionTypeBi", HFILL }},
2319     { &hf_gnm_addleg,
2320       { "addleg", "gnm.addleg",
2321         FT_NONE, BASE_NONE, NULL, 0,
2322         "gnm.AddLeg", HFILL }},
2323     { &hf_gnm_administrativeState,
2324       { "administrativeState", "gnm.administrativeState",
2325         FT_UINT32, BASE_DEC, VALS(cmip_AdministrativeState_vals), 0,
2326         "cmip.AdministrativeState", HFILL }},
2327     { &hf_gnm_namedCrossConnection,
2328       { "namedCrossConnection", "gnm.namedCrossConnection",
2329         FT_NONE, BASE_NONE, NULL, 0,
2330         "gnm.NamedCrossConnection", HFILL }},
2331     { &hf_gnm_userLabel,
2332       { "userLabel", "gnm.userLabel",
2333         FT_STRING, BASE_NONE, NULL, 0,
2334         "gnm.UserLabel", HFILL }},
2335     { &hf_gnm_redline,
2336       { "redline", "gnm.redline",
2337         FT_BOOLEAN, BASE_NONE, NULL, 0,
2338         "gnm.Boolean", HFILL }},
2339     { &hf_gnm_additionalInfo,
2340       { "additionalInfo", "gnm.additionalInfo",
2341         FT_UINT32, BASE_DEC, NULL, 0,
2342         "cmip.AdditionalInformation", HFILL }},
2343     { &hf_gnm_none,
2344       { "none", "gnm.none",
2345         FT_NONE, BASE_NONE, NULL, 0,
2346         "gnm.NULL", HFILL }},
2347     { &hf_gnm_single,
2348       { "single", "gnm.single",
2349         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2350         "cmip.ObjectInstance", HFILL }},
2351     { &hf_gnm_concatenated,
2352       { "concatenated", "gnm.concatenated",
2353         FT_UINT32, BASE_DEC, NULL, 0,
2354         "gnm.SEQUENCE_OF_ObjectInstance", HFILL }},
2355     { &hf_gnm_concatenated_item,
2356       { "ObjectInstance", "gnm.ObjectInstance",
2357         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2358         "cmip.ObjectInstance", HFILL }},
2359     { &hf_gnm_explicitPToP,
2360       { "explicitPToP", "gnm.explicitPToP",
2361         FT_NONE, BASE_NONE, NULL, 0,
2362         "gnm.ExplicitPtoP", HFILL }},
2363     { &hf_gnm_ptoTpPool,
2364       { "ptoTpPool", "gnm.ptoTpPool",
2365         FT_NONE, BASE_NONE, NULL, 0,
2366         "gnm.PtoTPPool", HFILL }},
2367     { &hf_gnm_explicitPtoMP,
2368       { "explicitPtoMP", "gnm.explicitPtoMP",
2369         FT_NONE, BASE_NONE, NULL, 0,
2370         "gnm.ExplicitPtoMP", HFILL }},
2371     { &hf_gnm_ptoMPools,
2372       { "ptoMPools", "gnm.ptoMPools",
2373         FT_NONE, BASE_NONE, NULL, 0,
2374         "gnm.PtoMPools", HFILL }},
2375     { &hf_gnm_notConnected,
2376       { "notConnected", "gnm.notConnected",
2377         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2378         "cmip.ObjectInstance", HFILL }},
2379     { &hf_gnm_connected,
2380       { "connected", "gnm.connected",
2381         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2382         "cmip.ObjectInstance", HFILL }},
2383     { &hf_gnm_multipleConnections,
2384       { "multipleConnections", "gnm.multipleConnections",
2385         FT_UINT32, BASE_DEC, NULL, 0,
2386         "gnm.MultipleConnections", HFILL }},
2387     { &hf_gnm_alarmStatus,
2388       { "alarmStatus", "gnm.alarmStatus",
2389         FT_UINT32, BASE_DEC, VALS(gnm_AlarmStatus_vals), 0,
2390         "gnm.AlarmStatus", HFILL }},
2391     { &hf_gnm_CurrentProblemList_item,
2392       { "CurrentProblem", "gnm.CurrentProblem",
2393         FT_NONE, BASE_NONE, NULL, 0,
2394         "gnm.CurrentProblem", HFILL }},
2395     { &hf_gnm_DisconnectResult_item,
2396       { "DisconnectResult item", "gnm.DisconnectResult_item",
2397         FT_UINT32, BASE_DEC, VALS(gnm_DisconnectResult_item_vals), 0,
2398         "gnm.DisconnectResult_item", HFILL }},
2399     { &hf_gnm_failed,
2400       { "failed", "gnm.failed",
2401         FT_UINT32, BASE_DEC, VALS(gnm_Failed_vals), 0,
2402         "gnm.Failed", HFILL }},
2403     { &hf_gnm_disconnected,
2404       { "disconnected", "gnm.disconnected",
2405         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2406         "cmip.ObjectInstance", HFILL }},
2407     { &hf_gnm_broadcast,
2408       { "broadcast", "gnm.broadcast",
2409         FT_UINT32, BASE_DEC, NULL, 0,
2410         "gnm.SET_OF_ObjectInstance", HFILL }},
2411     { &hf_gnm_broadcast_item,
2412       { "ObjectInstance", "gnm.ObjectInstance",
2413         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2414         "cmip.ObjectInstance", HFILL }},
2415     { &hf_gnm_broadcastConcatenated,
2416       { "broadcastConcatenated", "gnm.broadcastConcatenated",
2417         FT_UINT32, BASE_DEC, NULL, 0,
2418         "gnm.T_broadcastConcatenated", HFILL }},
2419     { &hf_gnm_broadcastConcatenated_item,
2420       { "broadcastConcatenated item", "gnm.broadcastConcatenated_item",
2421         FT_UINT32, BASE_DEC, NULL, 0,
2422         "gnm.SEQUENCE_OF_ObjectInstance", HFILL }},
2423     { &hf_gnm__item_item,
2424       { "ObjectInstance", "gnm.ObjectInstance",
2425         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2426         "cmip.ObjectInstance", HFILL }},
2427     { &hf_gnm_fromTp,
2428       { "fromTp", "gnm.fromTp",
2429         FT_UINT32, BASE_DEC, VALS(gnm_ExplicitTP_vals), 0,
2430         "gnm.ExplicitTP", HFILL }},
2431     { &hf_gnm_toTPs,
2432       { "toTPs", "gnm.toTPs",
2433         FT_UINT32, BASE_DEC, NULL, 0,
2434         "gnm.SET_OF_ExplicitTP", HFILL }},
2435     { &hf_gnm_toTPs_item,
2436       { "ExplicitTP", "gnm.ExplicitTP",
2437         FT_UINT32, BASE_DEC, VALS(gnm_ExplicitTP_vals), 0,
2438         "gnm.ExplicitTP", HFILL }},
2439     { &hf_gnm_toTp,
2440       { "toTp", "gnm.toTp",
2441         FT_UINT32, BASE_DEC, VALS(gnm_ExplicitTP_vals), 0,
2442         "gnm.ExplicitTP", HFILL }},
2443     { &hf_gnm_oneTPorGTP,
2444       { "oneTPorGTP", "gnm.oneTPorGTP",
2445         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2446         "cmip.ObjectInstance", HFILL }},
2447     { &hf_gnm_listofTPs,
2448       { "listofTPs", "gnm.listofTPs",
2449         FT_UINT32, BASE_DEC, NULL, 0,
2450         "gnm.SEQUENCE_OF_ObjectInstance", HFILL }},
2451     { &hf_gnm_listofTPs_item,
2452       { "ObjectInstance", "gnm.ObjectInstance",
2453         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2454         "cmip.ObjectInstance", HFILL }},
2455     { &hf_gnm_EquipmentHolderAddress_item,
2456       { "EquipmentHolderAddress item", "gnm.EquipmentHolderAddress_item",
2457         FT_STRING, BASE_NONE, NULL, 0,
2458         "gnm.PrintableString", HFILL }},
2459     { &hf_gnm_logicalProblem,
2460       { "logicalProblem", "gnm.logicalProblem",
2461         FT_NONE, BASE_NONE, NULL, 0,
2462         "gnm.LogicalProblem", HFILL }},
2463     { &hf_gnm_resourceProblem,
2464       { "resourceProblem", "gnm.resourceProblem",
2465         FT_UINT32, BASE_DEC, VALS(gnm_ResourceProblem_vals), 0,
2466         "gnm.ResourceProblem", HFILL }},
2467     { &hf_gnm_holderEmpty,
2468       { "holderEmpty", "gnm.holderEmpty",
2469         FT_NONE, BASE_NONE, NULL, 0,
2470         "gnm.NULL", HFILL }},
2471     { &hf_gnm_inTheAcceptableList,
2472       { "inTheAcceptableList", "gnm.inTheAcceptableList",
2473         FT_STRING, BASE_NONE, NULL, 0,
2474         "gnm.CircuitPackType", HFILL }},
2475     { &hf_gnm_notInTheAcceptableList,
2476       { "notInTheAcceptableList", "gnm.notInTheAcceptableList",
2477         FT_STRING, BASE_NONE, NULL, 0,
2478         "gnm.CircuitPackType", HFILL }},
2479     { &hf_gnm_unknownType,
2480       { "unknownType", "gnm.unknownType",
2481         FT_NONE, BASE_NONE, NULL, 0,
2482         "gnm.NULL", HFILL }},
2483     { &hf_gnm_ListOfCharacteristicInformation_item,
2484       { "CharacteristicInformation", "gnm.CharacteristicInformation",
2485         FT_OID, BASE_NONE, NULL, 0,
2486         "gnm.CharacteristicInformation", HFILL }},
2487     { &hf_gnm_problemCause,
2488       { "problemCause", "gnm.problemCause",
2489         FT_UINT32, BASE_DEC, VALS(gnm_ProblemCause_vals), 0,
2490         "gnm.ProblemCause", HFILL }},
2491     { &hf_gnm_incorrectInstances,
2492       { "incorrectInstances", "gnm.incorrectInstances",
2493         FT_UINT32, BASE_DEC, NULL, 0,
2494         "gnm.SET_OF_ObjectInstance", HFILL }},
2495     { &hf_gnm_incorrectInstances_item,
2496       { "ObjectInstance", "gnm.ObjectInstance",
2497         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2498         "cmip.ObjectInstance", HFILL }},
2499     { &hf_gnm_MultipleConnections_item,
2500       { "MultipleConnections item", "gnm.MultipleConnections_item",
2501         FT_UINT32, BASE_DEC, VALS(gnm_MultipleConnections_item_vals), 0,
2502         "gnm.MultipleConnections_item", HFILL }},
2503     { &hf_gnm_downstreamNotConnected,
2504       { "downstreamNotConnected", "gnm.downstreamNotConnected",
2505         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2506         "cmip.ObjectInstance", HFILL }},
2507     { &hf_gnm_downstreamConnected,
2508       { "downstreamConnected", "gnm.downstreamConnected",
2509         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2510         "cmip.ObjectInstance", HFILL }},
2511     { &hf_gnm_upstreamNotConnected,
2512       { "upstreamNotConnected", "gnm.upstreamNotConnected",
2513         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2514         "cmip.ObjectInstance", HFILL }},
2515     { &hf_gnm_upstreamConnected,
2516       { "upstreamConnected", "gnm.upstreamConnected",
2517         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2518         "cmip.ObjectInstance", HFILL }},
2519     { &hf_gnm_redline_01,
2520       { "redline", "gnm.redline",
2521         FT_BOOLEAN, BASE_NONE, NULL, 0,
2522         "gnm.BOOLEAN", HFILL }},
2523     { &hf_gnm_name,
2524       { "name", "gnm.name",
2525         FT_STRING, BASE_NONE, NULL, 0,
2526         "gnm.CrossConnectionName", HFILL }},
2527     { &hf_gnm_numericName,
2528       { "numericName", "gnm.numericName",
2529         FT_INT32, BASE_DEC, NULL, 0,
2530         "gnm.INTEGER", HFILL }},
2531     { &hf_gnm_pString,
2532       { "pString", "gnm.pString",
2533         FT_STRING, BASE_NONE, NULL, 0,
2534         "gnm.GraphicString", HFILL }},
2535     { &hf_gnm_ObjectList_item,
2536       { "ObjectInstance", "gnm.ObjectInstance",
2537         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2538         "cmip.ObjectInstance", HFILL }},
2539     { &hf_gnm_diverse,
2540       { "diverse", "gnm.diverse",
2541         FT_NONE, BASE_NONE, NULL, 0,
2542         "gnm.T_diverse", HFILL }},
2543     { &hf_gnm_downstream,
2544       { "downstream", "gnm.downstream",
2545         FT_UINT32, BASE_DEC, NULL, 0,
2546         "gnm.SignalRateAndMappingList", HFILL }},
2547     { &hf_gnm_upStream,
2548       { "upStream", "gnm.upStream",
2549         FT_UINT32, BASE_DEC, NULL, 0,
2550         "gnm.SignalRateAndMappingList", HFILL }},
2551     { &hf_gnm_uniform,
2552       { "uniform", "gnm.uniform",
2553         FT_UINT32, BASE_DEC, NULL, 0,
2554         "gnm.SignalRateAndMappingList", HFILL }},
2555     { &hf_gnm_pointer,
2556       { "pointer", "gnm.pointer",
2557         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2558         "cmip.ObjectInstance", HFILL }},
2559     { &hf_gnm_null,
2560       { "null", "gnm.null",
2561         FT_NONE, BASE_NONE, NULL, 0,
2562         "gnm.NULL", HFILL }},
2563     { &hf_gnm_fromTp_01,
2564       { "fromTp", "gnm.fromTp",
2565         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2566         "cmip.ObjectInstance", HFILL }},
2567     { &hf_gnm_toTp_01,
2568       { "toTp", "gnm.toTp",
2569         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2570         "cmip.ObjectInstance", HFILL }},
2571     { &hf_gnm_xCon,
2572       { "xCon", "gnm.xCon",
2573         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2574         "cmip.ObjectInstance", HFILL }},
2575     { &hf_gnm_toTps,
2576       { "toTps", "gnm.toTps",
2577         FT_UINT32, BASE_DEC, NULL, 0,
2578         "gnm.T_toTps", HFILL }},
2579     { &hf_gnm_toTps_item,
2580       { "toTps item", "gnm.toTps_item",
2581         FT_NONE, BASE_NONE, NULL, 0,
2582         "gnm.T_toTps_item", HFILL }},
2583     { &hf_gnm_tp,
2584       { "tp", "gnm.tp",
2585         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2586         "cmip.ObjectInstance", HFILL }},
2587     { &hf_gnm_xConnection,
2588       { "xConnection", "gnm.xConnection",
2589         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2590         "cmip.ObjectInstance", HFILL }},
2591     { &hf_gnm_mpXCon,
2592       { "mpXCon", "gnm.mpXCon",
2593         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2594         "cmip.ObjectInstance", HFILL }},
2595     { &hf_gnm_unknown,
2596       { "unknown", "gnm.unknown",
2597         FT_NONE, BASE_NONE, NULL, 0,
2598         "gnm.NULL", HFILL }},
2599     { &hf_gnm_integerValue,
2600       { "integerValue", "gnm.integerValue",
2601         FT_INT32, BASE_DEC, NULL, 0,
2602         "gnm.INTEGER", HFILL }},
2603     { &hf_gnm_toTPPools,
2604       { "toTPPools", "gnm.toTPPools",
2605         FT_UINT32, BASE_DEC, NULL, 0,
2606         "gnm.ToTPPools", HFILL }},
2607     { &hf_gnm_toTpPool,
2608       { "toTpPool", "gnm.toTpPool",
2609         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2610         "cmip.ObjectInstance", HFILL }},
2611     { &hf_gnm_notAvailable,
2612       { "notAvailable", "gnm.notAvailable",
2613         FT_NONE, BASE_NONE, NULL, 0,
2614         "gnm.NULL", HFILL }},
2615     { &hf_gnm_relatedObject,
2616       { "relatedObject", "gnm.relatedObject",
2617         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2618         "cmip.ObjectInstance", HFILL }},
2619     { &hf_gnm_SequenceOfObjectInstance_item,
2620       { "ObjectInstance", "gnm.ObjectInstance",
2621         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2622         "cmip.ObjectInstance", HFILL }},
2623     { &hf_gnm_SignalRateAndMappingList_item,
2624       { "SignalRateAndMappingList item", "gnm.SignalRateAndMappingList_item",
2625         FT_NONE, BASE_NONE, NULL, 0,
2626         "gnm.SignalRateAndMappingList_item", HFILL }},
2627     { &hf_gnm_signalRate,
2628       { "signalRate", "gnm.signalRate",
2629         FT_UINT32, BASE_DEC, VALS(gnm_SignalRate_vals), 0,
2630         "gnm.SignalRate", HFILL }},
2631     { &hf_gnm_mappingList,
2632       { "mappingList", "gnm.mappingList",
2633         FT_UINT32, BASE_DEC, NULL, 0,
2634         "gnm.MappingList", HFILL }},
2635     { &hf_gnm_wavelength,
2636       { "wavelength", "gnm.wavelength",
2637         FT_INT32, BASE_DEC, NULL, 0,
2638         "gnm.WaveLength", HFILL }},
2639     { &hf_gnm_simple,
2640       { "simple", "gnm.simple",
2641         FT_OID, BASE_NONE, NULL, 0,
2642         "gnm.CharacteristicInformation", HFILL }},
2643     { &hf_gnm_bundle,
2644       { "bundle", "gnm.bundle",
2645         FT_NONE, BASE_NONE, NULL, 0,
2646         "gnm.Bundle", HFILL }},
2647     { &hf_gnm_complex,
2648       { "complex", "gnm.complex",
2649         FT_UINT32, BASE_DEC, NULL, 0,
2650         "gnm.SEQUENCE_OF_Bundle", HFILL }},
2651     { &hf_gnm_complex_item,
2652       { "Bundle", "gnm.Bundle",
2653         FT_NONE, BASE_NONE, NULL, 0,
2654         "gnm.Bundle", HFILL }},
2655     { &hf_gnm_notApplicable,
2656       { "notApplicable", "gnm.notApplicable",
2657         FT_NONE, BASE_NONE, NULL, 0,
2658         "gnm.NULL", HFILL }},
2659     { &hf_gnm_softwareInstances,
2660       { "softwareInstances", "gnm.softwareInstances",
2661         FT_UINT32, BASE_DEC, NULL, 0,
2662         "gnm.SEQUENCE_OF_ObjectInstance", HFILL }},
2663     { &hf_gnm_softwareInstances_item,
2664       { "ObjectInstance", "gnm.ObjectInstance",
2665         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2666         "cmip.ObjectInstance", HFILL }},
2667     { &hf_gnm_softwareIdentifiers,
2668       { "softwareIdentifiers", "gnm.softwareIdentifiers",
2669         FT_UINT32, BASE_DEC, NULL, 0,
2670         "gnm.T_softwareIdentifiers", HFILL }},
2671     { &hf_gnm_softwareIdentifiers_item,
2672       { "softwareIdentifiers item", "gnm.softwareIdentifiers_item",
2673         FT_STRING, BASE_NONE, NULL, 0,
2674         "gnm.PrintableString", HFILL }},
2675     { &hf_gnm_SupportableClientList_item,
2676       { "ObjectClass", "gnm.ObjectClass",
2677         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
2678         "cmip.ObjectClass", HFILL }},
2679     { &hf_gnm_sourceType,
2680       { "sourceType", "gnm.sourceType",
2681         FT_UINT32, BASE_DEC, VALS(gnm_T_sourceType_vals), 0,
2682         "gnm.T_sourceType", HFILL }},
2683     { &hf_gnm_sourceID,
2684       { "sourceID", "gnm.sourceID",
2685         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2686         "cmip.ObjectInstance", HFILL }},
2687     { &hf_gnm_primaryTimingSource,
2688       { "primaryTimingSource", "gnm.primaryTimingSource",
2689         FT_NONE, BASE_NONE, NULL, 0,
2690         "gnm.SystemTiming", HFILL }},
2691     { &hf_gnm_secondaryTimingSource,
2692       { "secondaryTimingSource", "gnm.secondaryTimingSource",
2693         FT_NONE, BASE_NONE, NULL, 0,
2694         "gnm.SystemTiming", HFILL }},
2695     { &hf_gnm_toTpOrGTP,
2696       { "toTpOrGTP", "gnm.toTpOrGTP",
2697         FT_UINT32, BASE_DEC, VALS(gnm_ExplicitTP_vals), 0,
2698         "gnm.ExplicitTP", HFILL }},
2699     { &hf_gnm_toPool,
2700       { "toPool", "gnm.toPool",
2701         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2702         "cmip.ObjectInstance", HFILL }},
2703     { &hf_gnm_ToTPPools_item,
2704       { "ToTPPools item", "gnm.ToTPPools_item",
2705         FT_NONE, BASE_NONE, NULL, 0,
2706         "gnm.ToTPPools_item", HFILL }},
2707     { &hf_gnm_tpPoolId,
2708       { "tpPoolId", "gnm.tpPoolId",
2709         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2710         "cmip.ObjectInstance", HFILL }},
2711     { &hf_gnm_numberOfTPs,
2712       { "numberOfTPs", "gnm.numberOfTPs",
2713         FT_INT32, BASE_DEC, NULL, 0,
2714         "gnm.INTEGER", HFILL }},
2715     { &hf_gnm_TpsInGtpList_item,
2716       { "ObjectInstance", "gnm.ObjectInstance",
2717         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
2718         "cmip.ObjectInstance", HFILL }},
2719     { &hf_gnm_TransmissionCharacteristics_satellite,
2720       { "satellite", "gnm.satellite",
2721         FT_BOOLEAN, 8, NULL, 0x80,
2722         NULL, HFILL }},
2723     { &hf_gnm_TransmissionCharacteristics_dCME,
2724       { "dCME", "gnm.dCME",
2725         FT_BOOLEAN, 8, NULL, 0x40,
2726         NULL, HFILL }},
2727     { &hf_gnm_TransmissionCharacteristics_echoControl,
2728       { "echoControl", "gnm.echoControl",
2729         FT_BOOLEAN, 8, NULL, 0x20,
2730         NULL, HFILL }},
2731
2732 /*--- End of included file: packet-gnm-hfarr.c ---*/
2733 #line 83 "packet-gnm-template.c"
2734   };
2735
2736   /* List of subtrees */
2737   static gint *ett[] = {
2738
2739 /*--- Included file: packet-gnm-ettarr.c ---*/
2740 #line 1 "packet-gnm-ettarr.c"
2741     &ett_gnm_MappingList,
2742     &ett_gnm_SignalRate,
2743     &ett_gnm_SupportedTOClasses,
2744     &ett_gnm_AcceptableCircuitPackTypeList,
2745     &ett_gnm_AddLeg,
2746     &ett_gnm_SET_OF_ToTermSpecifier,
2747     &ett_gnm_AlarmSeverityAssignment,
2748     &ett_gnm_AlarmSeverityAssignmentList,
2749     &ett_gnm_Bundle,
2750     &ett_gnm_Connected,
2751     &ett_gnm_ConnectInformation,
2752     &ett_gnm_ConnectInformation_item,
2753     &ett_gnm_T_itemType,
2754     &ett_gnm_ConnectivityPointer,
2755     &ett_gnm_SEQUENCE_OF_ObjectInstance,
2756     &ett_gnm_ConnectionType,
2757     &ett_gnm_ConnectionTypeBi,
2758     &ett_gnm_CrossConnectionObjectPointer,
2759     &ett_gnm_CurrentProblem,
2760     &ett_gnm_CurrentProblemList,
2761     &ett_gnm_DisconnectResult,
2762     &ett_gnm_DisconnectResult_item,
2763     &ett_gnm_DownstreamConnectivityPointer,
2764     &ett_gnm_SET_OF_ObjectInstance,
2765     &ett_gnm_T_broadcastConcatenated,
2766     &ett_gnm_ExplicitPtoMP,
2767     &ett_gnm_SET_OF_ExplicitTP,
2768     &ett_gnm_ExplicitPtoP,
2769     &ett_gnm_ExplicitTP,
2770     &ett_gnm_EquipmentHolderAddress,
2771     &ett_gnm_Failed,
2772     &ett_gnm_HolderStatus,
2773     &ett_gnm_ListOfCharacteristicInformation,
2774     &ett_gnm_LogicalProblem,
2775     &ett_gnm_MultipleConnections,
2776     &ett_gnm_MultipleConnections_item,
2777     &ett_gnm_NamedCrossConnection,
2778     &ett_gnm_NameType,
2779     &ett_gnm_ObjectList,
2780     &ett_gnm_PhysicalPortSignalRateAndMappingList,
2781     &ett_gnm_T_diverse,
2782     &ett_gnm_PointerOrNull,
2783     &ett_gnm_PointToPoint,
2784     &ett_gnm_PointToMultipoint,
2785     &ett_gnm_T_toTps,
2786     &ett_gnm_T_toTps_item,
2787     &ett_gnm_ProblemCause,
2788     &ett_gnm_PtoMPools,
2789     &ett_gnm_PtoTPPool,
2790     &ett_gnm_RelatedObjectInstance,
2791     &ett_gnm_ResourceProblem,
2792     &ett_gnm_SequenceOfObjectInstance,
2793     &ett_gnm_SignalRateAndMappingList,
2794     &ett_gnm_SignalRateAndMappingList_item,
2795     &ett_gnm_SignalType,
2796     &ett_gnm_SEQUENCE_OF_Bundle,
2797     &ett_gnm_SubordinateCircuitPackSoftwareLoad,
2798     &ett_gnm_T_softwareIdentifiers,
2799     &ett_gnm_SupportableClientList,
2800     &ett_gnm_SystemTiming,
2801     &ett_gnm_SystemTimingSource,
2802     &ett_gnm_ToTermSpecifier,
2803     &ett_gnm_ToTPPools,
2804     &ett_gnm_ToTPPools_item,
2805     &ett_gnm_TpsInGtpList,
2806     &ett_gnm_TransmissionCharacteristics,
2807
2808 /*--- End of included file: packet-gnm-ettarr.c ---*/
2809 #line 88 "packet-gnm-template.c"
2810   };
2811
2812   /* Register protocol */
2813   proto_gnm = proto_register_protocol(PNAME, PSNAME, PFNAME);
2814   register_dissector("gnm", dissect_gnm, proto_gnm);
2815   /* Register fields and subtrees */
2816   proto_register_field_array(proto_gnm, hf, array_length(hf));
2817   proto_register_subtree_array(ett, array_length(ett));
2818
2819 }
2820
2821
2822 /*--- proto_reg_handoff_gnm ---------------------------------------*/
2823 void proto_reg_handoff_gnm(void) {
2824
2825 /*--- Included file: packet-gnm-dis-tab.c ---*/
2826 #line 1 "packet-gnm-dis-tab.c"
2827   register_ber_oid_dissector("0.0.13.3100.0.7.1", dissect_RelatedObjectInstance_PDU, proto_gnm, "a-TPInstance(1)");
2828   register_ber_oid_dissector("0.0.13.3100.0.7.2", dissect_ObjectList_PDU, proto_gnm, "affectedObjectList(2)");
2829   register_ber_oid_dissector("0.0.13.3100.0.7.3", dissect_AlarmSeverityAssignmentList_PDU, proto_gnm, "alarmSeverityAssignmentList(3)");
2830   register_ber_oid_dissector("0.0.13.3100.0.7.4", dissect_NameType_PDU, proto_gnm, "alarmSeverityAssignmentProfileId(4)");
2831   register_ber_oid_dissector("0.0.13.3100.0.7.5", dissect_PointerOrNull_PDU, proto_gnm, "alarmSeverityAssignmentProfilePointer(5)");
2832   register_ber_oid_dissector("0.0.13.3100.0.7.6", dissect_AlarmStatus_PDU, proto_gnm, "alarmStatus(6)");
2833   register_ber_oid_dissector("0.0.13.3100.0.7.7", dissect_ChannelNumber_PDU, proto_gnm, "channelNumber(7)");
2834   register_ber_oid_dissector("0.0.13.3100.0.7.8", dissect_CharacteristicInformation_PDU, proto_gnm, "characteristicInformation(8)");
2835   register_ber_oid_dissector("0.0.13.3100.0.7.11", dissect_Count_PDU, proto_gnm, "connectedTpCount(11)");
2836   register_ber_oid_dissector("0.0.13.3100.0.7.12", dissect_NameType_PDU, proto_gnm, "connectionId(12)");
2837   register_ber_oid_dissector("0.0.13.3100.0.7.13", dissect_NameType_PDU, proto_gnm, "cTPId(13)");
2838   register_ber_oid_dissector("0.0.13.3100.0.7.14", dissect_NameType_PDU, proto_gnm, "crossConnectionId(14)");
2839   register_ber_oid_dissector("0.0.13.3100.0.7.15", dissect_CrossConnectionName_PDU, proto_gnm, "crossConnectionName(15)");
2840   register_ber_oid_dissector("0.0.13.3100.0.7.16", dissect_CrossConnectionObjectPointer_PDU, proto_gnm, "crossConnectionObjectPointer(16)");
2841   register_ber_oid_dissector("0.0.13.3100.0.7.17", dissect_CurrentProblemList_PDU, proto_gnm, "currentProblemList(17)");
2842   register_ber_oid_dissector("0.0.13.3100.0.7.18", dissect_Directionality_PDU, proto_gnm, "directionality(18)");
2843   register_ber_oid_dissector("0.0.13.3100.0.7.19", dissect_DownstreamConnectivityPointer_PDU, proto_gnm, "downstreamConnectivityPointer(19)");
2844   register_ber_oid_dissector("0.0.13.3100.0.7.20", dissect_NameType_PDU, proto_gnm, "equipmentId(20)");
2845   register_ber_oid_dissector("0.0.13.3100.0.7.21", dissect_ExternalTime_PDU, proto_gnm, "externalTime(21)");
2846   register_ber_oid_dissector("0.0.13.3100.0.7.22", dissect_NameType_PDU, proto_gnm, "fabricId(22)");
2847   register_ber_oid_dissector("0.0.13.3100.0.7.23", dissect_PointerOrNull_PDU, proto_gnm, "fromTermination(23)");
2848   register_ber_oid_dissector("0.0.13.3100.0.7.24", dissect_NameType_PDU, proto_gnm, "gtpId(24)");
2849   register_ber_oid_dissector("0.0.13.3100.0.7.25", dissect_Count_PDU, proto_gnm, "idleTpCount(25)");
2850   register_ber_oid_dissector("0.0.13.3100.0.7.26", dissect_ListOfCharacteristicInformation_PDU, proto_gnm, "listOfCharacteristicInfo(26)");
2851   register_ber_oid_dissector("0.0.13.3100.0.7.27", dissect_Replaceable_PDU, proto_gnm, "locationName(27)");
2852   register_ber_oid_dissector("0.0.13.3100.0.7.28", dissect_NameType_PDU, proto_gnm, "managedElementId(28)");
2853   register_ber_oid_dissector("0.0.13.3100.0.7.29", dissect_NameType_PDU, proto_gnm, "mpCrossConnectionId(29)");
2854   register_ber_oid_dissector("0.0.13.3100.0.7.30", dissect_NameType_PDU, proto_gnm, "networkId(30)");
2855   register_ber_oid_dissector("0.0.13.3100.0.7.32", dissect_Boolean_PDU, proto_gnm, "protected(32)");
2856   register_ber_oid_dissector("0.0.13.3100.0.7.33", dissect_Boolean_PDU, proto_gnm, "redline(33)");
2857   register_ber_oid_dissector("0.0.13.3100.0.7.34", dissect_Replaceable_PDU, proto_gnm, "replaceable(34)");
2858   register_ber_oid_dissector("0.0.13.3100.0.7.35", dissect_SequenceOfObjectInstance_PDU, proto_gnm, "serverConnectionList(35)");
2859   register_ber_oid_dissector("0.0.13.3100.0.7.36", dissect_ObjectList_PDU, proto_gnm, "serverTrailList(36)");
2860   register_ber_oid_dissector("0.0.13.3100.0.7.37", dissect_SignalType_PDU, proto_gnm, "signalType(37)");
2861   register_ber_oid_dissector("0.0.13.3100.0.7.38", dissect_NameType_PDU, proto_gnm, "softwareId(38)");
2862   register_ber_oid_dissector("0.0.13.3100.0.7.39", dissect_SupportableClientList_PDU, proto_gnm, "supportableClientList(39)");
2863   register_ber_oid_dissector("0.0.13.3100.0.7.40", dissect_ObjectList_PDU, proto_gnm, "supportedByObjectList(40)");
2864   register_ber_oid_dissector("0.0.13.3100.0.7.41", dissect_SystemTimingSource_PDU, proto_gnm, "systemTimingSource(41)");
2865   register_ber_oid_dissector("0.0.13.3100.0.7.42", dissect_Count_PDU, proto_gnm, "totalTpCount(42)");
2866   register_ber_oid_dissector("0.0.13.3100.0.7.43", dissect_Pointer_PDU, proto_gnm, "toTermination(43)");
2867   register_ber_oid_dissector("0.0.13.3100.0.7.44", dissect_NameType_PDU, proto_gnm, "tpPoolId(44)");
2868   register_ber_oid_dissector("0.0.13.3100.0.7.45", dissect_TpsInGtpList_PDU, proto_gnm, "tpsInGtpList(45)");
2869   register_ber_oid_dissector("0.0.13.3100.0.7.47", dissect_NameType_PDU, proto_gnm, "trailId(47)");
2870   register_ber_oid_dissector("0.0.13.3100.0.7.48", dissect_NameType_PDU, proto_gnm, "tTPId(48)");
2871   register_ber_oid_dissector("0.0.13.3100.0.7.49", dissect_ConnectivityPointer_PDU, proto_gnm, "upstreamConnectivityPointer(49)");
2872   register_ber_oid_dissector("0.0.13.3100.0.7.50", dissect_UserLabel_PDU, proto_gnm, "userLabel(50)");
2873   register_ber_oid_dissector("0.0.13.3100.0.7.51", dissect_VendorName_PDU, proto_gnm, "vendorName(51)");
2874   register_ber_oid_dissector("0.0.13.3100.0.7.52", dissect_Version_PDU, proto_gnm, "version(52)");
2875   register_ber_oid_dissector("0.0.13.3100.0.7.53", dissect_ObjectList_PDU, proto_gnm, "clientConnectionList(53)");
2876   register_ber_oid_dissector("0.0.13.3100.0.7.54", dissect_CircuitPackType_PDU, proto_gnm, "circuitPackType(54)");
2877   register_ber_oid_dissector("0.0.13.3100.0.7.55", dissect_RelatedObjectInstance_PDU, proto_gnm, "z-TPInstance(55)");
2878   register_ber_oid_dissector("0.0.13.3100.0.7.56", dissect_EquipmentHolderAddress_PDU, proto_gnm, "equipmentHolderAddress(56)");
2879   register_ber_oid_dissector("0.0.13.3100.0.7.57", dissect_EquipmentHolderType_PDU, proto_gnm, "equipmentHolderType(57)");
2880   register_ber_oid_dissector("0.0.13.3100.0.7.58", dissect_AcceptableCircuitPackTypeList_PDU, proto_gnm, "acceptableCircuitPackTypeList(58)");
2881   register_ber_oid_dissector("0.0.13.3100.0.7.59", dissect_HolderStatus_PDU, proto_gnm, "holderStatus(59)");
2882   register_ber_oid_dissector("0.0.13.3100.0.7.60", dissect_SubordinateCircuitPackSoftwareLoad_PDU, proto_gnm, "subordinateCircuitPackSoftwareLoad(60)");
2883   register_ber_oid_dissector("0.0.13.3100.0.7.61", dissect_NameType_PDU, proto_gnm, "circuitEndPointSubgroupId(61)");
2884   register_ber_oid_dissector("0.0.13.3100.0.7.62", dissect_NumberOfCircuits_PDU, proto_gnm, "numberOfCircuits(62)");
2885   register_ber_oid_dissector("0.0.13.3100.0.7.63", dissect_UserLabel_PDU, proto_gnm, "labelOfFarEndExchange(63)");
2886   register_ber_oid_dissector("0.0.13.3100.0.7.64", dissect_SignallingCapabilities_PDU, proto_gnm, "signallingCapabilities(64)");
2887   register_ber_oid_dissector("0.0.13.3100.0.7.65", dissect_InformationTransferCapabilities_PDU, proto_gnm, "informationTransferCapabilities(65)");
2888   register_ber_oid_dissector("0.0.13.3100.0.7.66", dissect_CircuitDirectionality_PDU, proto_gnm, "circuitDirectionality(66)");
2889   register_ber_oid_dissector("0.0.13.3100.0.7.67", dissect_TransmissionCharacteristics_PDU, proto_gnm, "transmissionCharacteristics(67)");
2890   register_ber_oid_dissector("0.0.13.3100.0.7.68", dissect_NameType_PDU, proto_gnm, "managedElementComplexId(68)");
2891   register_ber_oid_dissector("0.0.13.3100.0.7.69", dissect_SerialNumber_PDU, proto_gnm, "serialNumber(69)");
2892   register_ber_oid_dissector("0.0.13.3100.0.9.4", dissect_ConnectInformation_PDU, proto_gnm, "connect(4)");
2893   register_ber_oid_dissector("0.0.13.3100.0.9.5", dissect_DisconnectResult_PDU, proto_gnm, "disconnect(5)");
2894   register_ber_oid_dissector("2.9.2.12.7.7", dissect_SupportedTOClasses_PDU, proto_gnm, "supportedTOClasses(7)");
2895
2896
2897 /*--- End of included file: packet-gnm-dis-tab.c ---*/
2898 #line 103 "packet-gnm-template.c"
2899         /* Wrapper to call CMIP */
2900         register_ber_oid_dissector("0.0.13.3100.0.7.9", dissect_gnm_attribute_ObjectInstance, proto_gnm, "clientConnection(9)");
2901         register_ber_oid_dissector("0.0.13.3100.0.7.10", dissect_gnm_attribute_ObjectInstance, proto_gnm, "clientTrail(10)");
2902         register_ber_oid_dissector("0.0.13.3100.0.7.31", dissect_gnm_attribute_ObjectInstance, proto_gnm, "networkLevelPointer(31)");
2903         register_ber_oid_dissector("0.0.13.3100.0.7.46", dissect_gnm_attribute_ObjectInstance, proto_gnm, "networkLevelPointer(31)");
2904
2905 }