a374d5e1aad73c606b5b8c9e478ae6784499f6c7
[obnox/wireshark/wip.git] / epan / dissectors / packet-cmip.c
1 /* Do not modify this file.                                                   */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
3 /* packet-cmip.c                                                              */
4 /* ../../tools/asn2wrs.py -b -e -p cmip -c ./cmip.cnf -s ./packet-cmip-template -D . CMIP-1.asn CMIP-A-ABORT-Information.asn CMIP-A-ASSOCIATE-Information.asn ../x721/Attribute-ASN1Module.asn ../ros/Remote-Operations-Information-Objects.asn ../ros/Remote-Operations-Generic-ROS-PDUs.asn */
5
6 /* Input file: packet-cmip-template.c */
7
8 #line 1 "packet-cmip-template.c"
9 /* packet-cmip.c
10  * Routines for X.711 CMIP packet dissection
11  *   Ronnie Sahlberg 2004
12  *
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 #ifdef HAVE_CONFIG_H
35 # include "config.h"
36 #endif
37
38 #include <glib.h>
39 #include <epan/packet.h>
40 #include <epan/oids.h>
41 #include <epan/asn1.h>
42
43 #include <string.h>
44
45 #include "packet-ber.h"
46 #include "packet-acse.h"
47 #include "packet-x509if.h"
48 #include "packet-cmip.h"
49
50 #define PNAME  "X711 CMIP"
51 #define PSNAME "CMIP"
52 #define PFNAME "cmip"
53
54 /* XXX some stuff we need until we can get rid of it */
55 #include "packet-ses.h"
56 #include "packet-pres.h"
57
58 /* Initialize the protocol and registered fields */
59 static int proto_cmip = -1;
60 static int hf_cmip_actionType_OID = -1;
61 static int hf_cmip_eventType_OID = -1;
62 static int hf_cmip_attributeId_OID = -1;
63 static int hf_cmip_errorId_OID = -1;
64 static int hf_DiscriminatorConstruct = -1;
65 static int hf_Destination = -1;
66 static int hf_NameBinding = -1;
67 static int hf_ObjectClass = -1;
68
69 /*--- Included file: packet-cmip-hf.c ---*/
70 #line 1 "packet-cmip-hf.c"
71 static int hf_cmip_BaseManagedObjectId_PDU = -1;  /* BaseManagedObjectId */
72 static int hf_cmip_EventTypeId_PDU = -1;          /* EventTypeId */
73 static int hf_cmip_ObjectClass_PDU = -1;          /* ObjectClass */
74 static int hf_cmip_ActiveDestination_PDU = -1;    /* ActiveDestination */
75 static int hf_cmip_AdditionalText_PDU = -1;       /* AdditionalText */
76 static int hf_cmip_AdditionalInformation_PDU = -1;  /* AdditionalInformation */
77 static int hf_cmip_Allomorphs_PDU = -1;           /* Allomorphs */
78 static int hf_cmip_AdministrativeState_PDU = -1;  /* AdministrativeState */
79 static int hf_cmip_AttributeIdentifierList_PDU = -1;  /* AttributeIdentifierList */
80 static int hf_cmip_AttributeList_PDU = -1;        /* AttributeList */
81 static int hf_cmip_AttributeValueChangeDefinition_PDU = -1;  /* AttributeValueChangeDefinition */
82 static int hf_cmip_AlarmStatus_PDU = -1;          /* AlarmStatus */
83 static int hf_cmip_AvailabilityStatus_PDU = -1;   /* AvailabilityStatus */
84 static int hf_cmip_BackedUpStatus_PDU = -1;       /* BackedUpStatus */
85 static int hf_cmip_BackUpDestinationList_PDU = -1;  /* BackUpDestinationList */
86 static int hf_cmip_BackUpRelationshipObject_PDU = -1;  /* BackUpRelationshipObject */
87 static int hf_cmip_CapacityAlarmThreshold_PDU = -1;  /* CapacityAlarmThreshold */
88 static int hf_cmip_ConfirmedMode_PDU = -1;        /* ConfirmedMode */
89 static int hf_cmip_ControlStatus_PDU = -1;        /* ControlStatus */
90 static int hf_cmip_CorrelatedNotifications_PDU = -1;  /* CorrelatedNotifications */
91 static int hf_cmip_CurrentLogSize_PDU = -1;       /* CurrentLogSize */
92 static int hf_cmip_Destination_PDU = -1;          /* Destination */
93 static int hf_cmip_DiscriminatorConstruct_PDU = -1;  /* DiscriminatorConstruct */
94 static int hf_cmip_EventTime_PDU = -1;            /* EventTime */
95 static int hf_cmip_GroupObjects_PDU = -1;         /* GroupObjects */
96 static int hf_cmip_IntervalsOfDay_PDU = -1;       /* IntervalsOfDay */
97 static int hf_cmip_LifecycleState_PDU = -1;       /* LifecycleState */
98 static int hf_cmip_LogFullAction_PDU = -1;        /* LogFullAction */
99 static int hf_cmip_LoggingTime_PDU = -1;          /* LoggingTime */
100 static int hf_cmip_LogRecordId_PDU = -1;          /* LogRecordId */
101 static int hf_cmip_MaxLogSize_PDU = -1;           /* MaxLogSize */
102 static int hf_cmip_MonitoredAttributes_PDU = -1;  /* MonitoredAttributes */
103 static int hf_cmip_NameBinding_PDU = -1;          /* NameBinding */
104 static int hf_cmip_NotificationIdentifier_PDU = -1;  /* NotificationIdentifier */
105 static int hf_cmip_NumberOfRecords_PDU = -1;      /* NumberOfRecords */
106 static int hf_cmip_OperationalState_PDU = -1;     /* OperationalState */
107 static int hf_cmip_Packages_PDU = -1;             /* Packages */
108 static int hf_cmip_PerceivedSeverity_PDU = -1;    /* PerceivedSeverity */
109 static int hf_cmip_PrioritisedObject_PDU = -1;    /* PrioritisedObject */
110 static int hf_cmip_ProbableCause_PDU = -1;        /* ProbableCause */
111 static int hf_cmip_ProceduralStatus_PDU = -1;     /* ProceduralStatus */
112 static int hf_cmip_ProposedRepairActions_PDU = -1;  /* ProposedRepairActions */
113 static int hf_cmip_SecurityAlarmCause_PDU = -1;   /* SecurityAlarmCause */
114 static int hf_cmip_SecurityAlarmSeverity_PDU = -1;  /* SecurityAlarmSeverity */
115 static int hf_cmip_SecurityAlarmDetector_PDU = -1;  /* SecurityAlarmDetector */
116 static int hf_cmip_ServiceProvider_PDU = -1;      /* ServiceProvider */
117 static int hf_cmip_ServiceUser_PDU = -1;          /* ServiceUser */
118 static int hf_cmip_SimpleNameType_PDU = -1;       /* SimpleNameType */
119 static int hf_cmip_SourceIndicator_PDU = -1;      /* SourceIndicator */
120 static int hf_cmip_SpecificProblems_PDU = -1;     /* SpecificProblems */
121 static int hf_cmip_StandbyStatus_PDU = -1;        /* StandbyStatus */
122 static int hf_cmip_StartTime_PDU = -1;            /* StartTime */
123 static int hf_cmip_StopTime_PDU = -1;             /* StopTime */
124 static int hf_cmip_SupportedFeatures_PDU = -1;    /* SupportedFeatures */
125 static int hf_cmip_SystemId_PDU = -1;             /* SystemId */
126 static int hf_cmip_SystemTitle_PDU = -1;          /* SystemTitle */
127 static int hf_cmip_ThresholdInfo_PDU = -1;        /* ThresholdInfo */
128 static int hf_cmip_TrendIndication_PDU = -1;      /* TrendIndication */
129 static int hf_cmip_UnknownStatus_PDU = -1;        /* UnknownStatus */
130 static int hf_cmip_UsageState_PDU = -1;           /* UsageState */
131 static int hf_cmip_WeekMask_PDU = -1;             /* WeekMask */
132 static int hf_cmip_PAR_missingAttributeValue_item = -1;  /* AttributeId */
133 static int hf_cmip_managedObjectClass = -1;       /* ObjectClass */
134 static int hf_cmip_managedObjectInstance = -1;    /* ObjectInstance */
135 static int hf_cmip_currentTime = -1;              /* GeneralizedTime */
136 static int hf_cmip_actionErroractionErrorInfo = -1;  /* ActionErrorInfo */
137 static int hf_cmip_actionErrorInfo_errorStatus = -1;  /* T_actionErrorInfo_errorStatus */
138 static int hf_cmip_actionErrorInfo = -1;          /* T_actionErrorInfo */
139 static int hf_cmip_actionType = -1;               /* ActionTypeId */
140 static int hf_cmip_actionArgument = -1;           /* NoSuchArgument */
141 static int hf_cmip_argumentValue = -1;            /* InvalidArgumentValue */
142 static int hf_cmip_actionInfoArg = -1;            /* T_actionInfoArg */
143 static int hf_cmip_actionReplyInfo = -1;          /* T_actionReplyInfo */
144 static int hf_cmip_actionReply = -1;              /* ActionReply */
145 static int hf_cmip_actionTypeId_globalForm = -1;  /* T_actionTypeId_globalForm */
146 static int hf_cmip_localForm = -1;                /* INTEGER */
147 static int hf_cmip_attributeid = -1;              /* AttributeId */
148 static int hf_cmip_value = -1;                    /* AttributeValue */
149 static int hf_cmip_attributeError_errorStatus = -1;  /* T_attributeError_errorStatus */
150 static int hf_cmip_modifyOperator = -1;           /* ModifyOperator */
151 static int hf_cmip_attributeId = -1;              /* AttributeId */
152 static int hf_cmip_attributeValue = -1;           /* T_attributeValue */
153 static int hf_cmip_attributeId_globalForm = -1;   /* T_attributeId_globalForm */
154 static int hf_cmip_attributeIdlocalForm = -1;     /* T_attributeIdlocalForm */
155 static int hf_cmip_attributeIdError_errorStatus = -1;  /* T_attributeIdError_errorStatus */
156 static int hf_cmip_id = -1;                       /* T_id */
157 static int hf_cmip_attributeValueAssertionvalue = -1;  /* T_attributeValueAssertionvalue */
158 static int hf_cmip_baseManagedObjectClass = -1;   /* ObjectClass */
159 static int hf_cmip_baseManagedObjectInstance = -1;  /* ObjectInstance */
160 static int hf_cmip_item = -1;                     /* FilterItem */
161 static int hf_cmip_and = -1;                      /* SET_OF_CMISFilter */
162 static int hf_cmip_and_item = -1;                 /* CMISFilter */
163 static int hf_cmip_or = -1;                       /* SET_OF_CMISFilter */
164 static int hf_cmip_or_item = -1;                  /* CMISFilter */
165 static int hf_cmip_not = -1;                      /* CMISFilter */
166 static int hf_cmip_scope = -1;                    /* Scope */
167 static int hf_cmip_filter = -1;                   /* CMISFilter */
168 static int hf_cmip_sync = -1;                     /* CMISSync */
169 static int hf_cmip_managedOrSuperiorObjectInstance = -1;  /* T_managedOrSuperiorObjectInstance */
170 static int hf_cmip_superiorObjectInstance = -1;   /* ObjectInstance */
171 static int hf_cmip_accessControl = -1;            /* AccessControl */
172 static int hf_cmip_referenceObjectInstance = -1;  /* ObjectInstance */
173 static int hf_cmip_attributeList = -1;            /* SET_OF_Attribute */
174 static int hf_cmip_attributeList_item = -1;       /* Attribute */
175 static int hf_cmip_deleteErrorInfo = -1;          /* T_deleteErrorInfo */
176 static int hf_cmip_eventType = -1;                /* EventTypeId */
177 static int hf_cmip_eventReplyInfo = -1;           /* T_eventReplyInfo */
178 static int hf_cmip_eventTime = -1;                /* GeneralizedTime */
179 static int hf_cmip_eventReportArgumenteventInfo = -1;  /* EventReportArgumentEventInfo */
180 static int hf_cmip_eventReply = -1;               /* EventReply */
181 static int hf_cmip_eventTypeId_globalForm = -1;   /* T_eventTypeId_globalForm */
182 static int hf_cmip_equality = -1;                 /* Attribute */
183 static int hf_cmip_substrings = -1;               /* T_substrings */
184 static int hf_cmip_substrings_item = -1;          /* T_substrings_item */
185 static int hf_cmip_initialString = -1;            /* Attribute */
186 static int hf_cmip_anyString = -1;                /* Attribute */
187 static int hf_cmip_finalString = -1;              /* Attribute */
188 static int hf_cmip_greaterOrEqual = -1;           /* Attribute */
189 static int hf_cmip_lessOrEqual = -1;              /* Attribute */
190 static int hf_cmip_filterItempresent = -1;        /* AttributeId */
191 static int hf_cmip_subsetOf = -1;                 /* Attribute */
192 static int hf_cmip_supersetOf = -1;               /* Attribute */
193 static int hf_cmip_nonNullSetIntersection = -1;   /* Attribute */
194 static int hf_cmip_attributeIdError = -1;         /* AttributeIdError */
195 static int hf_cmip_attribute = -1;                /* Attribute */
196 static int hf_cmip_getInfoList = -1;              /* SET_OF_GetInfoStatus */
197 static int hf_cmip_getInfoList_item = -1;         /* GetInfoStatus */
198 static int hf_cmip_actionValue = -1;              /* ActionInfo */
199 static int hf_cmip_eventValue = -1;               /* T_eventValue */
200 static int hf_cmip_eventInfo = -1;                /* T_eventInfo */
201 static int hf_cmip_getResult = -1;                /* GetResult */
202 static int hf_cmip_getListError = -1;             /* GetListError */
203 static int hf_cmip_setResult = -1;                /* SetResult */
204 static int hf_cmip_setListError = -1;             /* SetListError */
205 static int hf_cmip_actionResult = -1;             /* ActionResult */
206 static int hf_cmip_processingFailure = -1;        /* ProcessingFailure */
207 static int hf_cmip_deleteResult = -1;             /* DeleteResult */
208 static int hf_cmip_actionError = -1;              /* ActionError */
209 static int hf_cmip_deleteError = -1;              /* DeleteError */
210 static int hf_cmip_actionId = -1;                 /* T_actionId */
211 static int hf_cmip_eventId = -1;                  /* T_eventId */
212 static int hf_cmip_objectClass_globalForm = -1;   /* T_objectClass_globalForm */
213 static int hf_cmip_objectClasslocalForm = -1;     /* T_objectClasslocalForm */
214 static int hf_cmip_distinguishedName = -1;        /* DistinguishedName */
215 static int hf_cmip_nonSpecificForm = -1;          /* OCTET_STRING */
216 static int hf_cmip_localDistinguishedName = -1;   /* RDNSequence */
217 static int hf_cmip_specificErrorInfo = -1;        /* SpecificErrorInfo */
218 static int hf_cmip_RDNSequence_item = -1;         /* RelativeDistinguishedName */
219 static int hf_cmip_RelativeDistinguishedName_item = -1;  /* AttributeValueAssertion */
220 static int hf_cmip_namedNumbers = -1;             /* T_namedNumbers */
221 static int hf_cmip_individualLevels = -1;         /* INTEGER */
222 static int hf_cmip_baseToNthLevel = -1;           /* INTEGER */
223 static int hf_cmip_attributeError = -1;           /* AttributeError */
224 static int hf_cmip_setInfoList = -1;              /* SET_OF_SetInfoStatus */
225 static int hf_cmip_setInfoList_item = -1;         /* SetInfoStatus */
226 static int hf_cmip_errorId = -1;                  /* T_errorId */
227 static int hf_cmip_errorInfo = -1;                /* T_errorInfo */
228 static int hf_cmip_abortSource = -1;              /* CMIPAbortSource */
229 static int hf_cmip_userInfo = -1;                 /* EXTERNAL */
230 static int hf_cmip_protocolVersion = -1;          /* ProtocolVersion */
231 static int hf_cmip_functionalUnits = -1;          /* FunctionalUnits */
232 static int hf_cmip_cmipUserInfoaccessControl = -1;  /* EXTERNAL */
233 static int hf_cmip_AdditionalInformation_item = -1;  /* ManagementExtension */
234 static int hf_cmip_Allomorphs_item = -1;          /* ObjectClass */
235 static int hf_cmip_AttributeIdentifierList_item = -1;  /* AttributeId */
236 static int hf_cmip_AttributeList_item = -1;       /* Attribute */
237 static int hf_cmip_AttributeValueChangeDefinition_item = -1;  /* AttributeValueChangeDefinition_item */
238 static int hf_cmip_oldAttributeValue = -1;        /* T_oldAttributeValue */
239 static int hf_cmip_newAttributeValue = -1;        /* T_newAttributeValue */
240 static int hf_cmip_AlarmStatus_item = -1;         /* AlarmStatus_item */
241 static int hf_cmip_AvailabilityStatus_item = -1;  /* AvailabilityStatus_item */
242 static int hf_cmip_BackUpDestinationList_item = -1;  /* AE_title */
243 static int hf_cmip_objectName = -1;               /* ObjectInstance */
244 static int hf_cmip_noObject = -1;                 /* NULL */
245 static int hf_cmip_CapacityAlarmThreshold_item = -1;  /* INTEGER_0_100 */
246 static int hf_cmip_ControlStatus_item = -1;       /* ControlStatus_item */
247 static int hf_cmip_CorrelatedNotifications_item = -1;  /* CorrelatedNotifications_item */
248 static int hf_cmip_correlatedNotifications = -1;  /* SET_OF_NotificationIdentifier */
249 static int hf_cmip_correlatedNotifications_item = -1;  /* NotificationIdentifier */
250 static int hf_cmip_sourceObjectInst = -1;         /* ObjectInstance */
251 static int hf_cmip_single = -1;                   /* AE_title */
252 static int hf_cmip_multiple = -1;                 /* SET_OF_AE_title */
253 static int hf_cmip_multiple_item = -1;            /* AE_title */
254 static int hf_cmip_GroupObjects_item = -1;        /* ObjectInstance */
255 static int hf_cmip_IntervalsOfDay_item = -1;      /* IntervalsOfDay_item */
256 static int hf_cmip_intervalStart = -1;            /* Time24 */
257 static int hf_cmip_intervalEnd = -1;              /* Time24 */
258 static int hf_cmip_managementExtensionidentifier = -1;  /* T_managementExtensionidentifier */
259 static int hf_cmip_significance = -1;             /* BOOLEAN */
260 static int hf_cmip_information = -1;              /* T_information */
261 static int hf_cmip_MonitoredAttributes_item = -1;  /* Attribute */
262 static int hf_cmip_integer = -1;                  /* INTEGER */
263 static int hf_cmip_real = -1;                     /* REAL */
264 static int hf_cmip_Packages_item = -1;            /* OBJECT_IDENTIFIER */
265 static int hf_cmip_PrioritisedObject_item = -1;   /* PrioritisedObject_item */
266 static int hf_cmip_object = -1;                   /* ObjectInstance */
267 static int hf_cmip_priority = -1;                 /* T_priority */
268 static int hf_cmip_globalValue = -1;              /* OBJECT_IDENTIFIER */
269 static int hf_cmip_localValue = -1;               /* INTEGER */
270 static int hf_cmip_ProceduralStatus_item = -1;    /* ProceduralStatus_item */
271 static int hf_cmip_ProposedRepairActions_item = -1;  /* SpecificIdentifier */
272 static int hf_cmip_mechanism = -1;                /* OBJECT_IDENTIFIER */
273 static int hf_cmip_application = -1;              /* AE_title */
274 static int hf_cmip_serviceUseridentifier = -1;    /* T_serviceUseridentifier */
275 static int hf_cmip_details = -1;                  /* T_details */
276 static int hf_cmip_number = -1;                   /* INTEGER */
277 static int hf_cmip_string = -1;                   /* GraphicString */
278 static int hf_cmip_oi = -1;                       /* OBJECT_IDENTIFIER */
279 static int hf_cmip_int = -1;                      /* INTEGER */
280 static int hf_cmip_SpecificProblems_item = -1;    /* SpecificIdentifier */
281 static int hf_cmip_specific = -1;                 /* GeneralizedTime */
282 static int hf_cmip_continual = -1;                /* NULL */
283 static int hf_cmip_SupportedFeatures_item = -1;   /* SupportedFeatures_item */
284 static int hf_cmip_featureIdentifier = -1;        /* T_featureIdentifier */
285 static int hf_cmip_featureInfo = -1;              /* T_featureInfo */
286 static int hf_cmip_name = -1;                     /* GraphicString */
287 static int hf_cmip_nothing = -1;                  /* NULL */
288 static int hf_cmip_oid = -1;                      /* OBJECT_IDENTIFIER */
289 static int hf_cmip_hour = -1;                     /* INTEGER_0_23 */
290 static int hf_cmip_minute = -1;                   /* INTEGER_0_59 */
291 static int hf_cmip_triggeredThreshold = -1;       /* AttributeId */
292 static int hf_cmip_observedValue = -1;            /* ObservedValue */
293 static int hf_cmip_thresholdLevel = -1;           /* ThresholdLevelInd */
294 static int hf_cmip_armTime = -1;                  /* GeneralizedTime */
295 static int hf_cmip_up = -1;                       /* T_up */
296 static int hf_cmip_high = -1;                     /* ObservedValue */
297 static int hf_cmip_low = -1;                      /* ObservedValue */
298 static int hf_cmip_down = -1;                     /* T_down */
299 static int hf_cmip_WeekMask_item = -1;            /* WeekMask_item */
300 static int hf_cmip_daysOfWeek = -1;               /* T_daysOfWeek */
301 static int hf_cmip_intervalsOfDay = -1;           /* IntervalsOfDay */
302 static int hf_cmip_local = -1;                    /* T_local */
303 static int hf_cmip_global = -1;                   /* OBJECT_IDENTIFIER */
304 static int hf_cmip_invoke = -1;                   /* Invoke */
305 static int hf_cmip_returnResult = -1;             /* ReturnResult */
306 static int hf_cmip_returnError = -1;              /* ReturnError */
307 static int hf_cmip_reject = -1;                   /* Reject */
308 static int hf_cmip_invokeId = -1;                 /* InvokeId */
309 static int hf_cmip_linkedId = -1;                 /* T_linkedId */
310 static int hf_cmip_linkedIdPresent = -1;          /* T_linkedIdPresent */
311 static int hf_cmip_absent = -1;                   /* NULL */
312 static int hf_cmip_opcode = -1;                   /* Code */
313 static int hf_cmip_argument = -1;                 /* InvokeArgument */
314 static int hf_cmip_result = -1;                   /* T_result */
315 static int hf_cmip_resultArgument = -1;           /* ResultArgument */
316 static int hf_cmip_errcode = -1;                  /* Code */
317 static int hf_cmip_parameter = -1;                /* T_parameter */
318 static int hf_cmip_problem = -1;                  /* T_problem */
319 static int hf_cmip_general = -1;                  /* GeneralProblem */
320 static int hf_cmip_invokeProblem = -1;            /* InvokeProblem */
321 static int hf_cmip_returnResultProblem = -1;      /* ReturnResultProblem */
322 static int hf_cmip_returnErrorProblem = -1;       /* ReturnErrorProblem */
323 static int hf_cmip_present = -1;                  /* INTEGER */
324 static int hf_cmip_synchronization = -1;          /* CMISSync */
325 static int hf_cmip_actionInfo = -1;               /* ActionInfo */
326 static int hf_cmip_attributeIdList = -1;          /* SET_OF_AttributeId */
327 static int hf_cmip_attributeIdList_item = -1;     /* AttributeId */
328 static int hf_cmip_modificationList = -1;         /* T_modificationList */
329 static int hf_cmip_modificationList_item = -1;    /* T_modificationList_item */
330 static int hf_cmip_attributevalue = -1;           /* T_attributevalue */
331 static int hf_cmip_InvokeId_present = -1;         /* InvokeId_present */
332 /* named bits */
333 static int hf_cmip_FunctionalUnits_multipleObjectSelection = -1;
334 static int hf_cmip_FunctionalUnits_filter = -1;
335 static int hf_cmip_FunctionalUnits_multipleReply = -1;
336 static int hf_cmip_FunctionalUnits_extendedService = -1;
337 static int hf_cmip_FunctionalUnits_cancelGet = -1;
338 static int hf_cmip_ProtocolVersion_version1 = -1;
339 static int hf_cmip_ProtocolVersion_version2 = -1;
340 static int hf_cmip_T_daysOfWeek_sunday = -1;
341 static int hf_cmip_T_daysOfWeek_monday = -1;
342 static int hf_cmip_T_daysOfWeek_tuesday = -1;
343 static int hf_cmip_T_daysOfWeek_wednesday = -1;
344 static int hf_cmip_T_daysOfWeek_thursday = -1;
345 static int hf_cmip_T_daysOfWeek_friday = -1;
346 static int hf_cmip_T_daysOfWeek_saturday = -1;
347
348 /*--- End of included file: packet-cmip-hf.c ---*/
349 #line 61 "packet-cmip-template.c"
350
351 /* Initialize the subtree pointers */
352 static gint ett_cmip = -1;
353
354 /*--- Included file: packet-cmip-ett.c ---*/
355 #line 1 "packet-cmip-ett.c"
356 static gint ett_cmip_PAR_missingAttributeValue = -1;
357 static gint ett_cmip_ActionArgument = -1;
358 static gint ett_cmip_ActionError = -1;
359 static gint ett_cmip_ActionErrorInfo = -1;
360 static gint ett_cmip_T_actionErrorInfo = -1;
361 static gint ett_cmip_ActionInfo = -1;
362 static gint ett_cmip_ActionReply = -1;
363 static gint ett_cmip_ActionResult = -1;
364 static gint ett_cmip_ActionTypeId = -1;
365 static gint ett_cmip_Attribute = -1;
366 static gint ett_cmip_AttributeError = -1;
367 static gint ett_cmip_AttributeId = -1;
368 static gint ett_cmip_AttributeIdError = -1;
369 static gint ett_cmip_AttributeValueAssertion = -1;
370 static gint ett_cmip_BaseManagedObjectId = -1;
371 static gint ett_cmip_CMISFilter = -1;
372 static gint ett_cmip_SET_OF_CMISFilter = -1;
373 static gint ett_cmip_ComplexityLimitation = -1;
374 static gint ett_cmip_CreateArgument = -1;
375 static gint ett_cmip_T_managedOrSuperiorObjectInstance = -1;
376 static gint ett_cmip_SET_OF_Attribute = -1;
377 static gint ett_cmip_CreateResult = -1;
378 static gint ett_cmip_DeleteArgument = -1;
379 static gint ett_cmip_DeleteError = -1;
380 static gint ett_cmip_DeleteResult = -1;
381 static gint ett_cmip_EventReply = -1;
382 static gint ett_cmip_EventReportArgument = -1;
383 static gint ett_cmip_EventReportResult = -1;
384 static gint ett_cmip_EventTypeId = -1;
385 static gint ett_cmip_FilterItem = -1;
386 static gint ett_cmip_T_substrings = -1;
387 static gint ett_cmip_T_substrings_item = -1;
388 static gint ett_cmip_GetArgument = -1;
389 static gint ett_cmip_GetInfoStatus = -1;
390 static gint ett_cmip_GetListError = -1;
391 static gint ett_cmip_SET_OF_GetInfoStatus = -1;
392 static gint ett_cmip_GetResult = -1;
393 static gint ett_cmip_InvalidArgumentValue = -1;
394 static gint ett_cmip_T_eventValue = -1;
395 static gint ett_cmip_LinkedReplyArgument = -1;
396 static gint ett_cmip_NoSuchAction = -1;
397 static gint ett_cmip_NoSuchArgument = -1;
398 static gint ett_cmip_T_actionId = -1;
399 static gint ett_cmip_T_eventId = -1;
400 static gint ett_cmip_NoSuchEventType = -1;
401 static gint ett_cmip_ObjectClass = -1;
402 static gint ett_cmip_ObjectInstance = -1;
403 static gint ett_cmip_ProcessingFailure = -1;
404 static gint ett_cmip_RDNSequence = -1;
405 static gint ett_cmip_RelativeDistinguishedName = -1;
406 static gint ett_cmip_Scope = -1;
407 static gint ett_cmip_SetArgument = -1;
408 static gint ett_cmip_SetInfoStatus = -1;
409 static gint ett_cmip_SetListError = -1;
410 static gint ett_cmip_SET_OF_SetInfoStatus = -1;
411 static gint ett_cmip_SetResult = -1;
412 static gint ett_cmip_SpecificErrorInfo = -1;
413 static gint ett_cmip_CMIPAbortInfo = -1;
414 static gint ett_cmip_FunctionalUnits = -1;
415 static gint ett_cmip_CMIPUserInfo = -1;
416 static gint ett_cmip_ProtocolVersion = -1;
417 static gint ett_cmip_AdditionalInformation = -1;
418 static gint ett_cmip_Allomorphs = -1;
419 static gint ett_cmip_AttributeIdentifierList = -1;
420 static gint ett_cmip_AttributeList = -1;
421 static gint ett_cmip_AttributeValueChangeDefinition = -1;
422 static gint ett_cmip_AttributeValueChangeDefinition_item = -1;
423 static gint ett_cmip_AlarmStatus = -1;
424 static gint ett_cmip_AvailabilityStatus = -1;
425 static gint ett_cmip_BackUpDestinationList = -1;
426 static gint ett_cmip_BackUpRelationshipObject = -1;
427 static gint ett_cmip_CapacityAlarmThreshold = -1;
428 static gint ett_cmip_ControlStatus = -1;
429 static gint ett_cmip_CorrelatedNotifications = -1;
430 static gint ett_cmip_CorrelatedNotifications_item = -1;
431 static gint ett_cmip_SET_OF_NotificationIdentifier = -1;
432 static gint ett_cmip_Destination = -1;
433 static gint ett_cmip_SET_OF_AE_title = -1;
434 static gint ett_cmip_GroupObjects = -1;
435 static gint ett_cmip_IntervalsOfDay = -1;
436 static gint ett_cmip_IntervalsOfDay_item = -1;
437 static gint ett_cmip_ManagementExtension = -1;
438 static gint ett_cmip_MonitoredAttributes = -1;
439 static gint ett_cmip_ObservedValue = -1;
440 static gint ett_cmip_Packages = -1;
441 static gint ett_cmip_PrioritisedObject = -1;
442 static gint ett_cmip_PrioritisedObject_item = -1;
443 static gint ett_cmip_ProbableCause = -1;
444 static gint ett_cmip_ProceduralStatus = -1;
445 static gint ett_cmip_ProposedRepairActions = -1;
446 static gint ett_cmip_SecurityAlarmDetector = -1;
447 static gint ett_cmip_ServiceUser = -1;
448 static gint ett_cmip_SimpleNameType = -1;
449 static gint ett_cmip_SpecificIdentifier = -1;
450 static gint ett_cmip_SpecificProblems = -1;
451 static gint ett_cmip_StopTime = -1;
452 static gint ett_cmip_SupportedFeatures = -1;
453 static gint ett_cmip_SupportedFeatures_item = -1;
454 static gint ett_cmip_SystemId = -1;
455 static gint ett_cmip_SystemTitle = -1;
456 static gint ett_cmip_Time24 = -1;
457 static gint ett_cmip_ThresholdInfo = -1;
458 static gint ett_cmip_ThresholdLevelInd = -1;
459 static gint ett_cmip_T_up = -1;
460 static gint ett_cmip_T_down = -1;
461 static gint ett_cmip_WeekMask = -1;
462 static gint ett_cmip_WeekMask_item = -1;
463 static gint ett_cmip_T_daysOfWeek = -1;
464 static gint ett_cmip_Code = -1;
465 static gint ett_cmip_ROS = -1;
466 static gint ett_cmip_Invoke = -1;
467 static gint ett_cmip_T_linkedId = -1;
468 static gint ett_cmip_ReturnResult = -1;
469 static gint ett_cmip_T_result = -1;
470 static gint ett_cmip_ReturnError = -1;
471 static gint ett_cmip_Reject = -1;
472 static gint ett_cmip_T_problem = -1;
473 static gint ett_cmip_InvokeId = -1;
474 static gint ett_cmip_SET_OF_AttributeId = -1;
475 static gint ett_cmip_T_modificationList = -1;
476 static gint ett_cmip_T_modificationList_item = -1;
477
478 /*--- End of included file: packet-cmip-ett.c ---*/
479 #line 65 "packet-cmip-template.c"
480
481 static guint32 opcode;
482
483
484 /*--- Included file: packet-cmip-table.c ---*/
485 #line 1 "packet-cmip-table.c"
486
487 /* CMIP OPERATIONS */
488 static const value_string cmip_Opcode_vals[] = {
489         { 6, "m_Action" },
490         { 7, "m_Action_Confirmed" },
491         { 10, "m_CancelGet" },
492         { 8, "m_Create" },
493         { 9, "m_Delete" },
494         { 0, "m_EventReport" },
495         { 1, "m_EventReport_Confirmed" },
496         { 3, "m_Get" },
497         { 2, "m_Linked_Reply" },
498         { 4, "m_Set" },
499         { 5, "m_Set_Confirmed" },
500   { 0, NULL }
501 };
502
503
504 /* CMIP ERRORS */
505 static const value_string cmip_error_code_vals[] = {
506         { 2, "accessDenied" },  
507         { 19, "classInstanceConflict" },  
508         { 20, "complexityLimitation" },  
509         { 11, "duplicateManagedObjectInstance" },  
510         { 7, "getListError" },  
511         { 15, "invalidArgumentValue" },  
512         { 6, "invalidAttributeValue" },  
513         { 4, "invalidFilter" },  
514         { 17, "invalidObjectInstance" },  
515         { 16, "invalidScope" },  
516         { 18, "missingAttributeValue" },  
517         { 21, "mistypedOperation" },  
518         { 9, "noSuchAction" },  
519         { 14, "noSuchArgument" },  
520         { 5, "noSuchAttribute" },  
521         { 13, "noSuchEventType" },  
522         { 22, "noSuchInvokeId" },  
523         { 0, "noSuchObjectClass" },  
524         { 1, "noSuchObjectInstance" },  
525         { 12, "noSuchReferenceObject" },  
526         { 23, "operationCancelled" },  
527         { 10, "processingFailure" },  
528         { 8, "setListError" },  
529         { 3, "syncNotSupported" },  
530   { 0, NULL }
531 };
532
533
534 /*--- End of included file: packet-cmip-table.c ---*/
535 #line 69 "packet-cmip-template.c"
536
537 static int opcode_type;
538 #define OPCODE_INVOKE        1
539 #define OPCODE_RETURN_RESULT 2
540 #define OPCODE_RETURN_ERROR  3
541 #define OPCODE_REJECT        4
542
543 static int attributeform;
544 #define ATTRIBUTE_LOCAL_FORM  0
545 #define ATTRIBUTE_GLOBAL_FORM 1
546 static const char *attribute_identifier_id;
547
548 static const char *attributevalueassertion_id;
549
550 static const char *object_identifier_id;
551
552 static int objectclassform;
553 #define OBJECTCLASS_LOCAL_FORM  0
554 #define OBJECTCLASS_GLOBAL_FORM 1
555 static const char *objectclass_identifier_id;
556
557
558 /*--- Included file: packet-cmip-val.h ---*/
559 #line 1 "packet-cmip-val.h"
560 #define smi2AttributeID                "2.9.3.2.7"
561 #define smi2AttributeGroup             "2.9.3.2.8"
562 #define arfProbableCause               "2.9.3.2.0.0"
563 #define adapterError                   arfProbableCause".1"
564 #define applicationSubsystemFailure    arfProbableCause".2"
565 #define bandwidthReduced               arfProbableCause".3"
566 #define callEstablishmentError         arfProbableCause".4"
567 #define communicationsProtocolError    arfProbableCause".5"
568 #define communicationsSubsystemFailure arfProbableCause".6"
569 #define configurationOrCustomizationError arfProbableCause".7"
570 #define congestion                     arfProbableCause".8"
571 #define corruptData                    arfProbableCause".9"
572 #define cpuCyclesLimitExceeded         arfProbableCause".10"
573 #define dataSetOrModemError            arfProbableCause".11"
574 #define degradedSignal                 arfProbableCause".12"
575 #define dTE_DCEInterfaceError          arfProbableCause".13"
576 #define enclosureDoorOpen              arfProbableCause".14"
577 #define equipmentMalfunction           arfProbableCause".15"
578 #define excessiveVibration             arfProbableCause".16"
579 #define fileError                      arfProbableCause".17"
580 #define fireDetected                   arfProbableCause".18"
581 #define floodDetected                  arfProbableCause".19"
582 #define framingError                   arfProbableCause".20"
583 #define heatingOrVentilationOrCoolingSystemProblem arfProbableCause".21"
584 #define humidityUnacceptable           arfProbableCause".22"
585 #define inputOutputDeviceError         arfProbableCause".23"
586 #define inputDeviceError               arfProbableCause".24"
587 #define lANError                       arfProbableCause".25"
588 #define leakDetected                   arfProbableCause".26"
589 #define localNodeTransmissionError     arfProbableCause".27"
590 #define lossOfFrame                    arfProbableCause".28"
591 #define lossOfSignal                   arfProbableCause".29"
592 #define materialSupplyExhausted        arfProbableCause".30"
593 #define multiplexerProblem             arfProbableCause".31"
594 #define outOfMemory                    arfProbableCause".32"
595 #define ouputDeviceError               arfProbableCause".33"
596 #define performanceDegraded            arfProbableCause".34"
597 #define powerProblem                   arfProbableCause".35"
598 #define pressureUnacceptable           arfProbableCause".36"
599 #define processorProblem               arfProbableCause".37"
600 #define pumpFailure                    arfProbableCause".38"
601 #define queueSizeExceeded              arfProbableCause".39"
602 #define receiveFailure                 arfProbableCause".40"
603 #define receiverFailure                arfProbableCause".41"
604 #define remoteNodeTransmissionError    arfProbableCause".42"
605 #define resourceAtOrNearingCapacity    arfProbableCause".43"
606 #define responseTimeExcessive          arfProbableCause".44"
607 #define retransmissionRateExcessive    arfProbableCause".45"
608 #define softwareError                  arfProbableCause".46"
609 #define softwareProgramAbnormallyTerminated arfProbableCause".47"
610 #define softwareProgramError           arfProbableCause".48"
611 #define storageCapacityProblem         arfProbableCause".49"
612 #define temperatureUnacceptable        arfProbableCause".50"
613 #define thresholdCrossed               arfProbableCause".51"
614 #define timingProblem                  arfProbableCause".52"
615 #define toxicLeakDetected              arfProbableCause".53"
616 #define transmitFailure                arfProbableCause".54"
617 #define transmitterFailure             arfProbableCause".55"
618 #define underlyingResourceUnavailable  arfProbableCause".56"
619 #define versionMismatch                arfProbableCause".57"
620 #define arfProposedRepairAction        "2.9.3.2.0.2"
621 #define noActionRequired               arfProposedRepairAction".1"
622 #define repairActionRequired           arfProposedRepairAction".2"
623 #define securityAlarmCause             "2.9.3.2.0.1"
624 #define authenticationFailure          securityAlarmCause".1"
625 #define breachOfConfidentiality        securityAlarmCause".2"
626 #define cableTamper                    securityAlarmCause".3"
627 #define delayedInformation             securityAlarmCause".4"
628 #define denialOfService                securityAlarmCause".5"
629 #define duplicateInformation           securityAlarmCause".6"
630 #define informationMissing             securityAlarmCause".7"
631 #define informationModificationDetected securityAlarmCause".8"
632 #define informationOutOfSequence       securityAlarmCause".9"
633 #define intrusionDetection             securityAlarmCause".10"
634 #define keyExpired                     securityAlarmCause".11"
635 #define nonRepudiationFailure          securityAlarmCause".12"
636 #define outOfHoursActivity             securityAlarmCause".13"
637 #define outOfService                   securityAlarmCause".14"
638 #define proceduralError                securityAlarmCause".15"
639 #define unauthorizedAccessAttempt      securityAlarmCause".16"
640 #define unexpectedInformation          securityAlarmCause".17"
641 #define unspecifiedReason              securityAlarmCause".18"
642 #define defaultDiscriminatorConstruct  []
643 #define noInvokeId                     NULL
644
645 /*--- End of included file: packet-cmip-val.h ---*/
646 #line 91 "packet-cmip-template.c"
647
648 /*--- Included file: packet-cmip-fn.c ---*/
649 #line 1 "packet-cmip-fn.c"
650 /*--- Cyclic dependencies ---*/
651
652 /* CMISFilter -> CMISFilter/and -> CMISFilter */
653 /* CMISFilter -> CMISFilter */
654 static int dissect_cmip_CMISFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
655
656
657
658
659 static int
660 dissect_cmip_T_attributeId_globalForm(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 #line 266 "cmip.cnf"
662   attributeform = ATTRIBUTE_GLOBAL_FORM;
663     offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &attribute_identifier_id);
664
665
666
667
668   return offset;
669 }
670
671
672
673 static int
674 dissect_cmip_T_attributeIdlocalForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
675 #line 270 "cmip.cnf"
676   attributeform = ATTRIBUTE_LOCAL_FORM;
677   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_cmip_localForm, NULL);
678
679
680
681   return offset;
682 }
683
684
685 static const value_string cmip_AttributeId_vals[] = {
686   {   0, "globalForm" },
687   {   1, "localForm" },
688   { 0, NULL }
689 };
690
691 static const ber_choice_t AttributeId_choice[] = {
692   {   0, &hf_cmip_attributeId_globalForm, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_attributeId_globalForm },
693   {   1, &hf_cmip_attributeIdlocalForm, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_attributeIdlocalForm },
694   { 0, NULL, 0, 0, 0, NULL }
695 };
696
697 static int
698 dissect_cmip_AttributeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
699   offset = dissect_ber_choice(actx, tree, tvb, offset,
700                                  AttributeId_choice, hf_index, ett_cmip_AttributeId,
701                                  NULL);
702
703   return offset;
704 }
705
706
707 static const ber_sequence_t PAR_missingAttributeValue_set_of[1] = {
708   { &hf_cmip_PAR_missingAttributeValue_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
709 };
710
711 static int
712 dissect_cmip_PAR_missingAttributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
713   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
714                                  PAR_missingAttributeValue_set_of, hf_index, ett_cmip_PAR_missingAttributeValue);
715
716   return offset;
717 }
718
719
720
721 static int
722 dissect_cmip_AccessControl(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
723   offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
724
725   return offset;
726 }
727
728
729
730 static int
731 dissect_cmip_T_objectClass_globalForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
732 #line 426 "cmip.cnf"
733   objectclassform = OBJECTCLASS_GLOBAL_FORM;
734
735   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &objectclass_identifier_id);
736
737   return offset;
738 }
739
740
741
742 static int
743 dissect_cmip_T_objectClasslocalForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
744 #line 431 "cmip.cnf"
745   objectclassform = OBJECTCLASS_LOCAL_FORM;
746
747
748   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
749                                                 NULL);
750
751   return offset;
752 }
753
754
755 const value_string cmip_ObjectClass_vals[] = {
756   {   0, "globalForm" },
757   {   1, "localForm" },
758   { 0, NULL }
759 };
760
761 static const ber_choice_t ObjectClass_choice[] = {
762   {   0, &hf_cmip_objectClass_globalForm, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_objectClass_globalForm },
763   {   1, &hf_cmip_objectClasslocalForm, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_objectClasslocalForm },
764   { 0, NULL, 0, 0, 0, NULL }
765 };
766
767 int
768 dissect_cmip_ObjectClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
769   offset = dissect_ber_choice(actx, tree, tvb, offset,
770                                  ObjectClass_choice, hf_index, ett_cmip_ObjectClass,
771                                  NULL);
772
773   return offset;
774 }
775
776
777
778 static int
779 dissect_cmip_T_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
780   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &attributevalueassertion_id);
781
782   return offset;
783 }
784
785
786
787 static int
788 dissect_cmip_T_attributeValueAssertionvalue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
789 #line 282 "cmip.cnf"
790     offset=call_ber_oid_callback(attributevalueassertion_id, tvb, offset, actx->pinfo, tree);
791
792
793
794   return offset;
795 }
796
797
798 static const ber_sequence_t AttributeValueAssertion_sequence[] = {
799   { &hf_cmip_id             , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_id },
800   { &hf_cmip_attributeValueAssertionvalue, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeValueAssertionvalue },
801   { NULL, 0, 0, 0, NULL }
802 };
803
804 static int
805 dissect_cmip_AttributeValueAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
806   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
807                                    AttributeValueAssertion_sequence, hf_index, ett_cmip_AttributeValueAssertion);
808
809   return offset;
810 }
811
812
813 static const ber_sequence_t RelativeDistinguishedName_set_of[1] = {
814   { &hf_cmip_RelativeDistinguishedName_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_AttributeValueAssertion },
815 };
816
817 static int
818 dissect_cmip_RelativeDistinguishedName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
819   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
820                                  RelativeDistinguishedName_set_of, hf_index, ett_cmip_RelativeDistinguishedName);
821
822   return offset;
823 }
824
825
826 static const ber_sequence_t RDNSequence_sequence_of[1] = {
827   { &hf_cmip_RDNSequence_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_RelativeDistinguishedName },
828 };
829
830 int
831 dissect_cmip_RDNSequence(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
832   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
833                                       RDNSequence_sequence_of, hf_index, ett_cmip_RDNSequence);
834
835   return offset;
836 }
837
838
839
840 static int
841 dissect_cmip_DistinguishedName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
842   offset = dissect_cmip_RDNSequence(implicit_tag, tvb, offset, actx, tree, hf_index);
843
844   return offset;
845 }
846
847
848
849 static int
850 dissect_cmip_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
851   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
852                                        NULL);
853
854   return offset;
855 }
856
857
858 const value_string cmip_ObjectInstance_vals[] = {
859   {   2, "distinguishedName" },
860   {   3, "nonSpecificForm" },
861   {   4, "localDistinguishedName" },
862   { 0, NULL }
863 };
864
865 static const ber_choice_t ObjectInstance_choice[] = {
866   {   2, &hf_cmip_distinguishedName, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_DistinguishedName },
867   {   3, &hf_cmip_nonSpecificForm, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_OCTET_STRING },
868   {   4, &hf_cmip_localDistinguishedName, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_RDNSequence },
869   { 0, NULL, 0, 0, 0, NULL }
870 };
871
872 int
873 dissect_cmip_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_) {
874   offset = dissect_ber_choice(actx, tree, tvb, offset,
875                                  ObjectInstance_choice, hf_index, ett_cmip_ObjectInstance,
876                                  NULL);
877
878   return offset;
879 }
880
881
882 static const value_string cmip_CMISSync_vals[] = {
883   {   0, "bestEffort" },
884   {   1, "atomic" },
885   { 0, NULL }
886 };
887
888
889 static int
890 dissect_cmip_CMISSync(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
891   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
892                                   NULL);
893
894   return offset;
895 }
896
897
898 static const value_string cmip_T_namedNumbers_vals[] = {
899   {   0, "baseObject" },
900   {   1, "firstLevelOnly" },
901   {   2, "wholeSubtree" },
902   { 0, NULL }
903 };
904
905
906 static int
907 dissect_cmip_T_namedNumbers(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
908   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
909                                                 NULL);
910
911   return offset;
912 }
913
914
915
916 static int
917 dissect_cmip_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_) {
918   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
919                                                 NULL);
920
921   return offset;
922 }
923
924
925 static const value_string cmip_Scope_vals[] = {
926   {   0, "namedNumbers" },
927   {   1, "individualLevels" },
928   {   2, "baseToNthLevel" },
929   { 0, NULL }
930 };
931
932 static const ber_choice_t Scope_choice[] = {
933   {   0, &hf_cmip_namedNumbers   , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_T_namedNumbers },
934   {   1, &hf_cmip_individualLevels, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
935   {   2, &hf_cmip_baseToNthLevel , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
936   { 0, NULL, 0, 0, 0, NULL }
937 };
938
939 static int
940 dissect_cmip_Scope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
941   offset = dissect_ber_choice(actx, tree, tvb, offset,
942                                  Scope_choice, hf_index, ett_cmip_Scope,
943                                  NULL);
944
945   return offset;
946 }
947
948
949
950 static int
951 dissect_cmip_AttributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
952 #line 274 "cmip.cnf"
953   /*XXX handle local form here */
954   if(attributeform==ATTRIBUTE_GLOBAL_FORM){
955     offset=call_ber_oid_callback(attribute_identifier_id, tvb, offset, actx->pinfo, tree);
956   }
957
958
959   return offset;
960 }
961
962
963 static const ber_sequence_t Attribute_sequence[] = {
964   { &hf_cmip_attributeid    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
965   { &hf_cmip_value          , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_AttributeValue },
966   { NULL, 0, 0, 0, NULL }
967 };
968
969 int
970 dissect_cmip_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
971   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
972                                    Attribute_sequence, hf_index, ett_cmip_Attribute);
973
974   return offset;
975 }
976
977
978 static const value_string cmip_T_substrings_item_vals[] = {
979   {   0, "initialString" },
980   {   1, "anyString" },
981   {   2, "finalString" },
982   { 0, NULL }
983 };
984
985 static const ber_choice_t T_substrings_item_choice[] = {
986   {   0, &hf_cmip_initialString  , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
987   {   1, &hf_cmip_anyString      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
988   {   2, &hf_cmip_finalString    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
989   { 0, NULL, 0, 0, 0, NULL }
990 };
991
992 static int
993 dissect_cmip_T_substrings_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_) {
994   offset = dissect_ber_choice(actx, tree, tvb, offset,
995                                  T_substrings_item_choice, hf_index, ett_cmip_T_substrings_item,
996                                  NULL);
997
998   return offset;
999 }
1000
1001
1002 static const ber_sequence_t T_substrings_sequence_of[1] = {
1003   { &hf_cmip_substrings_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_substrings_item },
1004 };
1005
1006 static int
1007 dissect_cmip_T_substrings(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1008   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1009                                       T_substrings_sequence_of, hf_index, ett_cmip_T_substrings);
1010
1011   return offset;
1012 }
1013
1014
1015 static const value_string cmip_FilterItem_vals[] = {
1016   {   0, "equality" },
1017   {   1, "substrings" },
1018   {   2, "greaterOrEqual" },
1019   {   3, "lessOrEqual" },
1020   {   4, "present" },
1021   {   5, "subsetOf" },
1022   {   6, "supersetOf" },
1023   {   7, "nonNullSetIntersection" },
1024   { 0, NULL }
1025 };
1026
1027 static const ber_choice_t FilterItem_choice[] = {
1028   {   0, &hf_cmip_equality       , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1029   {   1, &hf_cmip_substrings     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_substrings },
1030   {   2, &hf_cmip_greaterOrEqual , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1031   {   3, &hf_cmip_lessOrEqual    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1032   {   4, &hf_cmip_filterItempresent, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_AttributeId },
1033   {   5, &hf_cmip_subsetOf       , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1034   {   6, &hf_cmip_supersetOf     , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1035   {   7, &hf_cmip_nonNullSetIntersection, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1036   { 0, NULL, 0, 0, 0, NULL }
1037 };
1038
1039 static int
1040 dissect_cmip_FilterItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1041   offset = dissect_ber_choice(actx, tree, tvb, offset,
1042                                  FilterItem_choice, hf_index, ett_cmip_FilterItem,
1043                                  NULL);
1044
1045   return offset;
1046 }
1047
1048
1049 static const ber_sequence_t SET_OF_CMISFilter_set_of[1] = {
1050   { &hf_cmip_and_item       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
1051 };
1052
1053 static int
1054 dissect_cmip_SET_OF_CMISFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1055   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1056                                  SET_OF_CMISFilter_set_of, hf_index, ett_cmip_SET_OF_CMISFilter);
1057
1058   return offset;
1059 }
1060
1061
1062 static const value_string cmip_CMISFilter_vals[] = {
1063   {   8, "item" },
1064   {   9, "and" },
1065   {  10, "or" },
1066   {  11, "not" },
1067   { 0, NULL }
1068 };
1069
1070 static const ber_choice_t CMISFilter_choice[] = {
1071   {   8, &hf_cmip_item           , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_cmip_FilterItem },
1072   {   9, &hf_cmip_and            , BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_CMISFilter },
1073   {  10, &hf_cmip_or             , BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_CMISFilter },
1074   {  11, &hf_cmip_not            , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_cmip_CMISFilter },
1075   { 0, NULL, 0, 0, 0, NULL }
1076 };
1077
1078 static int
1079 dissect_cmip_CMISFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1080   offset = dissect_ber_choice(actx, tree, tvb, offset,
1081                                  CMISFilter_choice, hf_index, ett_cmip_CMISFilter,
1082                                  NULL);
1083
1084   return offset;
1085 }
1086
1087
1088
1089 static int
1090 dissect_cmip_T_actionTypeId_globalForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1091   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_cmip_actionType_OID, &object_identifier_id);
1092
1093   return offset;
1094 }
1095
1096
1097 static const value_string cmip_ActionTypeId_vals[] = {
1098   {   2, "globalForm" },
1099   {   3, "localForm" },
1100   { 0, NULL }
1101 };
1102
1103 static const ber_choice_t ActionTypeId_choice[] = {
1104   {   2, &hf_cmip_actionTypeId_globalForm, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_actionTypeId_globalForm },
1105   {   3, &hf_cmip_localForm      , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
1106   { 0, NULL, 0, 0, 0, NULL }
1107 };
1108
1109 static int
1110 dissect_cmip_ActionTypeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1111   offset = dissect_ber_choice(actx, tree, tvb, offset,
1112                                  ActionTypeId_choice, hf_index, ett_cmip_ActionTypeId,
1113                                  NULL);
1114
1115   return offset;
1116 }
1117
1118
1119
1120 static int
1121 dissect_cmip_T_actionInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1122 #line 437 "cmip.cnf"
1123   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1124
1125
1126
1127   return offset;
1128 }
1129
1130
1131 static const ber_sequence_t ActionInfo_sequence[] = {
1132   { &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ActionTypeId },
1133   { &hf_cmip_actionInfoArg  , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_actionInfoArg },
1134   { NULL, 0, 0, 0, NULL }
1135 };
1136
1137 static int
1138 dissect_cmip_ActionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1139   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1140                                    ActionInfo_sequence, hf_index, ett_cmip_ActionInfo);
1141
1142   return offset;
1143 }
1144
1145
1146 static const ber_sequence_t ActionArgument_sequence[] = {
1147   { &hf_cmip_baseManagedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1148   { &hf_cmip_baseManagedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1149   { &hf_cmip_accessControl  , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AccessControl },
1150   { &hf_cmip_synchronization, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_CMISSync },
1151   { &hf_cmip_scope          , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Scope },
1152   { &hf_cmip_filter         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
1153   { &hf_cmip_actionInfo     , BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_cmip_ActionInfo },
1154   { NULL, 0, 0, 0, NULL }
1155 };
1156
1157 static int
1158 dissect_cmip_ActionArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1159   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1160                                    ActionArgument_sequence, hf_index, ett_cmip_ActionArgument);
1161
1162   return offset;
1163 }
1164
1165
1166
1167 static int
1168 dissect_cmip_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1169   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1170
1171   return offset;
1172 }
1173
1174
1175 static const value_string cmip_T_actionErrorInfo_errorStatus_vals[] = {
1176   {   2, "accessDenied" },
1177   {   9, "noSuchAction" },
1178   {  14, "noSuchArgument" },
1179   {  15, "invalidArgumentValue" },
1180   { 0, NULL }
1181 };
1182
1183
1184 static int
1185 dissect_cmip_T_actionErrorInfo_errorStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1186   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1187                                   NULL);
1188
1189   return offset;
1190 }
1191
1192
1193 static const ber_sequence_t T_actionId_sequence[] = {
1194   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1195   { &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ActionTypeId },
1196   { NULL, 0, 0, 0, NULL }
1197 };
1198
1199 static int
1200 dissect_cmip_T_actionId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1201   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1202                                    T_actionId_sequence, hf_index, ett_cmip_T_actionId);
1203
1204   return offset;
1205 }
1206
1207
1208
1209 static int
1210 dissect_cmip_T_eventTypeId_globalForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1211   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_cmip_eventType_OID, &object_identifier_id);
1212
1213   return offset;
1214 }
1215
1216
1217 static const value_string cmip_EventTypeId_vals[] = {
1218   {   6, "globalForm" },
1219   {   7, "localForm" },
1220   { 0, NULL }
1221 };
1222
1223 static const ber_choice_t EventTypeId_choice[] = {
1224   {   6, &hf_cmip_eventTypeId_globalForm, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_T_eventTypeId_globalForm },
1225   {   7, &hf_cmip_localForm      , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
1226   { 0, NULL, 0, 0, 0, NULL }
1227 };
1228
1229 static int
1230 dissect_cmip_EventTypeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1231   offset = dissect_ber_choice(actx, tree, tvb, offset,
1232                                  EventTypeId_choice, hf_index, ett_cmip_EventTypeId,
1233                                  NULL);
1234
1235   return offset;
1236 }
1237
1238
1239 static const ber_sequence_t T_eventId_sequence[] = {
1240   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1241   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
1242   { NULL, 0, 0, 0, NULL }
1243 };
1244
1245 static int
1246 dissect_cmip_T_eventId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1247   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1248                                    T_eventId_sequence, hf_index, ett_cmip_T_eventId);
1249
1250   return offset;
1251 }
1252
1253
1254 static const value_string cmip_NoSuchArgument_vals[] = {
1255   {   0, "actionId" },
1256   {   1, "eventId" },
1257   { 0, NULL }
1258 };
1259
1260 static const ber_choice_t NoSuchArgument_choice[] = {
1261   {   0, &hf_cmip_actionId       , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_actionId },
1262   {   1, &hf_cmip_eventId        , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_eventId },
1263   { 0, NULL, 0, 0, 0, NULL }
1264 };
1265
1266 static int
1267 dissect_cmip_NoSuchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1268   offset = dissect_ber_choice(actx, tree, tvb, offset,
1269                                  NoSuchArgument_choice, hf_index, ett_cmip_NoSuchArgument,
1270                                  NULL);
1271
1272   return offset;
1273 }
1274
1275
1276
1277 static int
1278 dissect_cmip_T_eventInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1279 #line 461 "cmip.cnf"
1280
1281   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1282
1283
1284   return offset;
1285 }
1286
1287
1288 static const ber_sequence_t T_eventValue_sequence[] = {
1289   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
1290   { &hf_cmip_eventInfo      , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_eventInfo },
1291   { NULL, 0, 0, 0, NULL }
1292 };
1293
1294 static int
1295 dissect_cmip_T_eventValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1296   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1297                                    T_eventValue_sequence, hf_index, ett_cmip_T_eventValue);
1298
1299   return offset;
1300 }
1301
1302
1303 static const value_string cmip_InvalidArgumentValue_vals[] = {
1304   {   0, "actionValue" },
1305   {   1, "eventValue" },
1306   { 0, NULL }
1307 };
1308
1309 static const ber_choice_t InvalidArgumentValue_choice[] = {
1310   {   0, &hf_cmip_actionValue    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_ActionInfo },
1311   {   1, &hf_cmip_eventValue     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_eventValue },
1312   { 0, NULL, 0, 0, 0, NULL }
1313 };
1314
1315 static int
1316 dissect_cmip_InvalidArgumentValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1317   offset = dissect_ber_choice(actx, tree, tvb, offset,
1318                                  InvalidArgumentValue_choice, hf_index, ett_cmip_InvalidArgumentValue,
1319                                  NULL);
1320
1321   return offset;
1322 }
1323
1324
1325 static const value_string cmip_T_actionErrorInfo_vals[] = {
1326   {   0, "actionType" },
1327   {   1, "actionArgument" },
1328   {   2, "argumentValue" },
1329   { 0, NULL }
1330 };
1331
1332 static const ber_choice_t T_actionErrorInfo_choice[] = {
1333   {   0, &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ActionTypeId },
1334   {   1, &hf_cmip_actionArgument , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_NoSuchArgument },
1335   {   2, &hf_cmip_argumentValue  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_InvalidArgumentValue },
1336   { 0, NULL, 0, 0, 0, NULL }
1337 };
1338
1339 static int
1340 dissect_cmip_T_actionErrorInfo(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                                  T_actionErrorInfo_choice, hf_index, ett_cmip_T_actionErrorInfo,
1343                                  NULL);
1344
1345   return offset;
1346 }
1347
1348
1349 static const ber_sequence_t ActionErrorInfo_sequence[] = {
1350   { &hf_cmip_actionErrorInfo_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_actionErrorInfo_errorStatus },
1351   { &hf_cmip_actionErrorInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_actionErrorInfo },
1352   { NULL, 0, 0, 0, NULL }
1353 };
1354
1355 static int
1356 dissect_cmip_ActionErrorInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1357   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1358                                    ActionErrorInfo_sequence, hf_index, ett_cmip_ActionErrorInfo);
1359
1360   return offset;
1361 }
1362
1363
1364 static const ber_sequence_t ActionError_sequence[] = {
1365   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1366   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1367   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1368   { &hf_cmip_actionErroractionErrorInfo, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_ActionErrorInfo },
1369   { NULL, 0, 0, 0, NULL }
1370 };
1371
1372 static int
1373 dissect_cmip_ActionError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1374   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1375                                    ActionError_sequence, hf_index, ett_cmip_ActionError);
1376
1377   return offset;
1378 }
1379
1380
1381
1382 static int
1383 dissect_cmip_T_actionReplyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1384 #line 464 "cmip.cnf"
1385   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1386
1387
1388
1389
1390   return offset;
1391 }
1392
1393
1394 static const ber_sequence_t ActionReply_sequence[] = {
1395   { &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ActionTypeId },
1396   { &hf_cmip_actionReplyInfo, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_T_actionReplyInfo },
1397   { NULL, 0, 0, 0, NULL }
1398 };
1399
1400 static int
1401 dissect_cmip_ActionReply(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1402   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1403                                    ActionReply_sequence, hf_index, ett_cmip_ActionReply);
1404
1405   return offset;
1406 }
1407
1408
1409 static const ber_sequence_t ActionResult_sequence[] = {
1410   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1411   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1412   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1413   { &hf_cmip_actionReply    , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ActionReply },
1414   { NULL, 0, 0, 0, NULL }
1415 };
1416
1417 static int
1418 dissect_cmip_ActionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1419   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1420                                    ActionResult_sequence, hf_index, ett_cmip_ActionResult);
1421
1422   return offset;
1423 }
1424
1425
1426 static const value_string cmip_T_attributeError_errorStatus_vals[] = {
1427   {   2, "accessDenied" },
1428   {   5, "noSuchAttribute" },
1429   {   6, "invalidAttributeValue" },
1430   {  24, "invalidOperation" },
1431   {  25, "invalidOperator" },
1432   { 0, NULL }
1433 };
1434
1435
1436 static int
1437 dissect_cmip_T_attributeError_errorStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1438   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1439                                   NULL);
1440
1441   return offset;
1442 }
1443
1444
1445 static const value_string cmip_ModifyOperator_vals[] = {
1446   {   0, "replace" },
1447   {   1, "addValues" },
1448   {   2, "removeValues" },
1449   {   3, "setToDefault" },
1450   { 0, NULL }
1451 };
1452
1453
1454 static int
1455 dissect_cmip_ModifyOperator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1456   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1457                                                 NULL);
1458
1459   return offset;
1460 }
1461
1462
1463
1464 static int
1465 dissect_cmip_T_attributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1466 #line 458 "cmip.cnf"
1467   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1468
1469
1470
1471   return offset;
1472 }
1473
1474
1475 static const ber_sequence_t AttributeError_sequence[] = {
1476   { &hf_cmip_attributeError_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeError_errorStatus },
1477   { &hf_cmip_modifyOperator , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ModifyOperator },
1478   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
1479   { &hf_cmip_attributeValue , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeValue },
1480   { NULL, 0, 0, 0, NULL }
1481 };
1482
1483 static int
1484 dissect_cmip_AttributeError(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                                    AttributeError_sequence, hf_index, ett_cmip_AttributeError);
1487
1488   return offset;
1489 }
1490
1491
1492 static const value_string cmip_T_attributeIdError_errorStatus_vals[] = {
1493   {   2, "accessDenied" },
1494   {   5, "noSuchAttribute" },
1495   { 0, NULL }
1496 };
1497
1498
1499 static int
1500 dissect_cmip_T_attributeIdError_errorStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1501   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1502                                   NULL);
1503
1504   return offset;
1505 }
1506
1507
1508 static const ber_sequence_t AttributeIdError_sequence[] = {
1509   { &hf_cmip_attributeIdError_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeIdError_errorStatus },
1510   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
1511   { NULL, 0, 0, 0, NULL }
1512 };
1513
1514 static int
1515 dissect_cmip_AttributeIdError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1516   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1517                                    AttributeIdError_sequence, hf_index, ett_cmip_AttributeIdError);
1518
1519   return offset;
1520 }
1521
1522
1523 static const ber_sequence_t BaseManagedObjectId_sequence[] = {
1524   { &hf_cmip_baseManagedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1525   { &hf_cmip_baseManagedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1526   { NULL, 0, 0, 0, NULL }
1527 };
1528
1529 static int
1530 dissect_cmip_BaseManagedObjectId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1531   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1532                                    BaseManagedObjectId_sequence, hf_index, ett_cmip_BaseManagedObjectId);
1533
1534   return offset;
1535 }
1536
1537
1538 static const ber_sequence_t ComplexityLimitation_set[] = {
1539   { &hf_cmip_scope          , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Scope },
1540   { &hf_cmip_filter         , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
1541   { &hf_cmip_sync           , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_CMISSync },
1542   { NULL, 0, 0, 0, NULL }
1543 };
1544
1545 static int
1546 dissect_cmip_ComplexityLimitation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1547   offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
1548                               ComplexityLimitation_set, hf_index, ett_cmip_ComplexityLimitation);
1549
1550   return offset;
1551 }
1552
1553
1554 static const value_string cmip_T_managedOrSuperiorObjectInstance_vals[] = {
1555   {   0, "managedObjectInstance" },
1556   {   1, "superiorObjectInstance" },
1557   { 0, NULL }
1558 };
1559
1560 static const ber_choice_t T_managedOrSuperiorObjectInstance_choice[] = {
1561   {   0, &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
1562   {   1, &hf_cmip_superiorObjectInstance, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
1563   { 0, NULL, 0, 0, 0, NULL }
1564 };
1565
1566 static int
1567 dissect_cmip_T_managedOrSuperiorObjectInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1568   offset = dissect_ber_choice(actx, tree, tvb, offset,
1569                                  T_managedOrSuperiorObjectInstance_choice, hf_index, ett_cmip_T_managedOrSuperiorObjectInstance,
1570                                  NULL);
1571
1572   return offset;
1573 }
1574
1575
1576 static const ber_sequence_t SET_OF_Attribute_set_of[1] = {
1577   { &hf_cmip_attributeList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Attribute },
1578 };
1579
1580 static int
1581 dissect_cmip_SET_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1582   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1583                                  SET_OF_Attribute_set_of, hf_index, ett_cmip_SET_OF_Attribute);
1584
1585   return offset;
1586 }
1587
1588
1589 static const ber_sequence_t CreateArgument_sequence[] = {
1590   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1591   { &hf_cmip_managedOrSuperiorObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_managedOrSuperiorObjectInstance },
1592   { &hf_cmip_accessControl  , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AccessControl },
1593   { &hf_cmip_referenceObjectInstance, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1594   { &hf_cmip_attributeList  , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_Attribute },
1595   { NULL, 0, 0, 0, NULL }
1596 };
1597
1598 static int
1599 dissect_cmip_CreateArgument(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_sequence(implicit_tag, actx, tree, tvb, offset,
1601                                    CreateArgument_sequence, hf_index, ett_cmip_CreateArgument);
1602
1603   return offset;
1604 }
1605
1606
1607 static const ber_sequence_t CreateResult_sequence[] = {
1608   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1609   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1610   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1611   { &hf_cmip_attributeList  , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_Attribute },
1612   { NULL, 0, 0, 0, NULL }
1613 };
1614
1615 static int
1616 dissect_cmip_CreateResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1617   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1618                                    CreateResult_sequence, hf_index, ett_cmip_CreateResult);
1619
1620   return offset;
1621 }
1622
1623
1624 static const ber_sequence_t DeleteArgument_sequence[] = {
1625   { &hf_cmip_baseManagedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1626   { &hf_cmip_baseManagedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1627   { &hf_cmip_accessControl  , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AccessControl },
1628   { &hf_cmip_synchronization, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_CMISSync },
1629   { &hf_cmip_scope          , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Scope },
1630   { &hf_cmip_filter         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
1631   { NULL, 0, 0, 0, NULL }
1632 };
1633
1634 static int
1635 dissect_cmip_DeleteArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1636   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1637                                    DeleteArgument_sequence, hf_index, ett_cmip_DeleteArgument);
1638
1639   return offset;
1640 }
1641
1642
1643 static const value_string cmip_T_deleteErrorInfo_vals[] = {
1644   {   2, "accessDenied" },
1645   { 0, NULL }
1646 };
1647
1648
1649 static int
1650 dissect_cmip_T_deleteErrorInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1651   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1652                                   NULL);
1653
1654   return offset;
1655 }
1656
1657
1658 static const ber_sequence_t DeleteError_sequence[] = {
1659   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1660   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1661   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1662   { &hf_cmip_deleteErrorInfo, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_T_deleteErrorInfo },
1663   { NULL, 0, 0, 0, NULL }
1664 };
1665
1666 static int
1667 dissect_cmip_DeleteError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1668   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1669                                    DeleteError_sequence, hf_index, ett_cmip_DeleteError);
1670
1671   return offset;
1672 }
1673
1674
1675 static const ber_sequence_t DeleteResult_sequence[] = {
1676   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1677   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1678   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1679   { NULL, 0, 0, 0, NULL }
1680 };
1681
1682 static int
1683 dissect_cmip_DeleteResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1684   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1685                                    DeleteResult_sequence, hf_index, ett_cmip_DeleteResult);
1686
1687   return offset;
1688 }
1689
1690
1691
1692 static int
1693 dissect_cmip_T_eventReplyInfo(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 #line 446 "cmip.cnf"
1695   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1696
1697
1698
1699   return offset;
1700 }
1701
1702
1703 static const ber_sequence_t EventReply_sequence[] = {
1704   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
1705   { &hf_cmip_eventReplyInfo , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_eventReplyInfo },
1706   { NULL, 0, 0, 0, NULL }
1707 };
1708
1709 static int
1710 dissect_cmip_EventReply(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1711   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1712                                    EventReply_sequence, hf_index, ett_cmip_EventReply);
1713
1714   return offset;
1715 }
1716
1717
1718
1719 static int
1720 dissect_cmip_EventReportArgumentEventInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1721 #line 443 "cmip.cnf"
1722   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1723
1724
1725
1726   return offset;
1727 }
1728
1729
1730 static const ber_sequence_t EventReportArgument_sequence[] = {
1731   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1732   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1733   { &hf_cmip_eventTime      , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1734   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
1735   { &hf_cmip_eventReportArgumenteventInfo, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EventReportArgumentEventInfo },
1736   { NULL, 0, 0, 0, NULL }
1737 };
1738
1739 static int
1740 dissect_cmip_EventReportArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1741   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1742                                    EventReportArgument_sequence, hf_index, ett_cmip_EventReportArgument);
1743
1744   return offset;
1745 }
1746
1747
1748 static const ber_sequence_t EventReportResult_sequence[] = {
1749   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1750   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1751   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1752   { &hf_cmip_eventReply     , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_EventReply },
1753   { NULL, 0, 0, 0, NULL }
1754 };
1755
1756 static int
1757 dissect_cmip_EventReportResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1758   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1759                                    EventReportResult_sequence, hf_index, ett_cmip_EventReportResult);
1760
1761   return offset;
1762 }
1763
1764
1765 static const ber_sequence_t SET_OF_AttributeId_set_of[1] = {
1766   { &hf_cmip_attributeIdList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
1767 };
1768
1769 static int
1770 dissect_cmip_SET_OF_AttributeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1771   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1772                                  SET_OF_AttributeId_set_of, hf_index, ett_cmip_SET_OF_AttributeId);
1773
1774   return offset;
1775 }
1776
1777
1778 static const ber_sequence_t GetArgument_sequence[] = {
1779   { &hf_cmip_baseManagedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1780   { &hf_cmip_baseManagedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1781   { &hf_cmip_accessControl  , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AccessControl },
1782   { &hf_cmip_synchronization, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_CMISSync },
1783   { &hf_cmip_scope          , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Scope },
1784   { &hf_cmip_filter         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
1785   { &hf_cmip_attributeIdList, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_AttributeId },
1786   { NULL, 0, 0, 0, NULL }
1787 };
1788
1789 static int
1790 dissect_cmip_GetArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1791   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1792                                    GetArgument_sequence, hf_index, ett_cmip_GetArgument);
1793
1794   return offset;
1795 }
1796
1797
1798 static const value_string cmip_GetInfoStatus_vals[] = {
1799   {   0, "attributeIdError" },
1800   {   1, "attribute" },
1801   { 0, NULL }
1802 };
1803
1804 static const ber_choice_t GetInfoStatus_choice[] = {
1805   {   0, &hf_cmip_attributeIdError, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_AttributeIdError },
1806   {   1, &hf_cmip_attribute      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1807   { 0, NULL, 0, 0, 0, NULL }
1808 };
1809
1810 static int
1811 dissect_cmip_GetInfoStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1812   offset = dissect_ber_choice(actx, tree, tvb, offset,
1813                                  GetInfoStatus_choice, hf_index, ett_cmip_GetInfoStatus,
1814                                  NULL);
1815
1816   return offset;
1817 }
1818
1819
1820 static const ber_sequence_t SET_OF_GetInfoStatus_set_of[1] = {
1821   { &hf_cmip_getInfoList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_GetInfoStatus },
1822 };
1823
1824 static int
1825 dissect_cmip_SET_OF_GetInfoStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1826   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1827                                  SET_OF_GetInfoStatus_set_of, hf_index, ett_cmip_SET_OF_GetInfoStatus);
1828
1829   return offset;
1830 }
1831
1832
1833 static const ber_sequence_t GetListError_sequence[] = {
1834   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1835   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1836   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1837   { &hf_cmip_getInfoList    , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_GetInfoStatus },
1838   { NULL, 0, 0, 0, NULL }
1839 };
1840
1841 static int
1842 dissect_cmip_GetListError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1843   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1844                                    GetListError_sequence, hf_index, ett_cmip_GetListError);
1845
1846   return offset;
1847 }
1848
1849
1850 static const ber_sequence_t GetResult_sequence[] = {
1851   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1852   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1853   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1854   { &hf_cmip_attributeList  , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_Attribute },
1855   { NULL, 0, 0, 0, NULL }
1856 };
1857
1858 static int
1859 dissect_cmip_GetResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1860   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1861                                    GetResult_sequence, hf_index, ett_cmip_GetResult);
1862
1863   return offset;
1864 }
1865
1866
1867
1868 static int
1869 dissect_cmip_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_) {
1870   offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
1871
1872   return offset;
1873 }
1874
1875
1876 static const value_string cmip_InvokeId_vals[] = {
1877   {   0, "present" },
1878   {   1, "absent" },
1879   { 0, NULL }
1880 };
1881
1882 static const ber_choice_t InvokeId_choice[] = {
1883   {   0, &hf_cmip_present        , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
1884   {   1, &hf_cmip_absent         , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
1885   { 0, NULL, 0, 0, 0, NULL }
1886 };
1887
1888 static int
1889 dissect_cmip_InvokeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1890   offset = dissect_ber_choice(actx, tree, tvb, offset,
1891                                  InvokeId_choice, hf_index, ett_cmip_InvokeId,
1892                                  NULL);
1893
1894   return offset;
1895 }
1896
1897
1898
1899 int
1900 dissect_cmip_InvokeIDType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1901   offset = dissect_cmip_InvokeId(implicit_tag, tvb, offset, actx, tree, hf_index);
1902
1903   return offset;
1904 }
1905
1906
1907 static const ber_sequence_t SetResult_sequence[] = {
1908   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1909   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1910   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1911   { &hf_cmip_attributeList  , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_Attribute },
1912   { NULL, 0, 0, 0, NULL }
1913 };
1914
1915 static int
1916 dissect_cmip_SetResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1917   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1918                                    SetResult_sequence, hf_index, ett_cmip_SetResult);
1919
1920   return offset;
1921 }
1922
1923
1924 static const value_string cmip_SetInfoStatus_vals[] = {
1925   {   0, "attributeError" },
1926   {   1, "attribute" },
1927   { 0, NULL }
1928 };
1929
1930 static const ber_choice_t SetInfoStatus_choice[] = {
1931   {   0, &hf_cmip_attributeError , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_AttributeError },
1932   {   1, &hf_cmip_attribute      , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
1933   { 0, NULL, 0, 0, 0, NULL }
1934 };
1935
1936 static int
1937 dissect_cmip_SetInfoStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1938   offset = dissect_ber_choice(actx, tree, tvb, offset,
1939                                  SetInfoStatus_choice, hf_index, ett_cmip_SetInfoStatus,
1940                                  NULL);
1941
1942   return offset;
1943 }
1944
1945
1946 static const ber_sequence_t SET_OF_SetInfoStatus_set_of[1] = {
1947   { &hf_cmip_setInfoList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_SetInfoStatus },
1948 };
1949
1950 static int
1951 dissect_cmip_SET_OF_SetInfoStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1952   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1953                                  SET_OF_SetInfoStatus_set_of, hf_index, ett_cmip_SET_OF_SetInfoStatus);
1954
1955   return offset;
1956 }
1957
1958
1959 static const ber_sequence_t SetListError_sequence[] = {
1960   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
1961   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
1962   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
1963   { &hf_cmip_setInfoList    , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_SET_OF_SetInfoStatus },
1964   { NULL, 0, 0, 0, NULL }
1965 };
1966
1967 static int
1968 dissect_cmip_SetListError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1969   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1970                                    SetListError_sequence, hf_index, ett_cmip_SetListError);
1971
1972   return offset;
1973 }
1974
1975
1976
1977 static int
1978 dissect_cmip_T_errorId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1979   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_cmip_errorId_OID, &object_identifier_id);
1980
1981   return offset;
1982 }
1983
1984
1985
1986 static int
1987 dissect_cmip_T_errorInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1988 #line 455 "cmip.cnf"
1989   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
1990
1991
1992
1993   return offset;
1994 }
1995
1996
1997 static const ber_sequence_t SpecificErrorInfo_sequence[] = {
1998   { &hf_cmip_errorId        , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorId },
1999   { &hf_cmip_errorInfo      , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorInfo },
2000   { NULL, 0, 0, 0, NULL }
2001 };
2002
2003 static int
2004 dissect_cmip_SpecificErrorInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2005   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2006                                    SpecificErrorInfo_sequence, hf_index, ett_cmip_SpecificErrorInfo);
2007
2008   return offset;
2009 }
2010
2011
2012 static const ber_sequence_t ProcessingFailure_sequence[] = {
2013   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
2014   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
2015   { &hf_cmip_specificErrorInfo, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_cmip_SpecificErrorInfo },
2016   { NULL, 0, 0, 0, NULL }
2017 };
2018
2019 static int
2020 dissect_cmip_ProcessingFailure(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2021   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2022                                    ProcessingFailure_sequence, hf_index, ett_cmip_ProcessingFailure);
2023
2024   return offset;
2025 }
2026
2027
2028 static const value_string cmip_LinkedReplyArgument_vals[] = {
2029   {   0, "getResult" },
2030   {   1, "getListError" },
2031   {   2, "setResult" },
2032   {   3, "setListError" },
2033   {   4, "actionResult" },
2034   {   5, "processingFailure" },
2035   {   6, "deleteResult" },
2036   {   7, "actionError" },
2037   {   8, "deleteError" },
2038   { 0, NULL }
2039 };
2040
2041 static const ber_choice_t LinkedReplyArgument_choice[] = {
2042   {   0, &hf_cmip_getResult      , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_GetResult },
2043   {   1, &hf_cmip_getListError   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_GetListError },
2044   {   2, &hf_cmip_setResult      , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_SetResult },
2045   {   3, &hf_cmip_setListError   , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_SetListError },
2046   {   4, &hf_cmip_actionResult   , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_ActionResult },
2047   {   5, &hf_cmip_processingFailure, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_cmip_ProcessingFailure },
2048   {   6, &hf_cmip_deleteResult   , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_DeleteResult },
2049   {   7, &hf_cmip_actionError    , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_cmip_ActionError },
2050   {   8, &hf_cmip_deleteError    , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_cmip_DeleteError },
2051   { 0, NULL, 0, 0, 0, NULL }
2052 };
2053
2054 static int
2055 dissect_cmip_LinkedReplyArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2056   offset = dissect_ber_choice(actx, tree, tvb, offset,
2057                                  LinkedReplyArgument_choice, hf_index, ett_cmip_LinkedReplyArgument,
2058                                  NULL);
2059
2060   return offset;
2061 }
2062
2063
2064 static const ber_sequence_t NoSuchAction_sequence[] = {
2065   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
2066   { &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ActionTypeId },
2067   { NULL, 0, 0, 0, NULL }
2068 };
2069
2070 static int
2071 dissect_cmip_NoSuchAction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2072   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2073                                    NoSuchAction_sequence, hf_index, ett_cmip_NoSuchAction);
2074
2075   return offset;
2076 }
2077
2078
2079 static const ber_sequence_t NoSuchEventType_sequence[] = {
2080   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
2081   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
2082   { NULL, 0, 0, 0, NULL }
2083 };
2084
2085 static int
2086 dissect_cmip_NoSuchEventType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2087   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2088                                    NoSuchEventType_sequence, hf_index, ett_cmip_NoSuchEventType);
2089
2090   return offset;
2091 }
2092
2093
2094
2095 static int
2096 dissect_cmip_T_attributevalue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2097 #line 449 "cmip.cnf"
2098   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
2099
2100
2101
2102   return offset;
2103 }
2104
2105
2106 static const ber_sequence_t T_modificationList_item_sequence[] = {
2107   { &hf_cmip_modifyOperator , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ModifyOperator },
2108   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
2109   { &hf_cmip_attributevalue , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributevalue },
2110   { NULL, 0, 0, 0, NULL }
2111 };
2112
2113 static int
2114 dissect_cmip_T_modificationList_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_) {
2115   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2116                                    T_modificationList_item_sequence, hf_index, ett_cmip_T_modificationList_item);
2117
2118   return offset;
2119 }
2120
2121
2122 static const ber_sequence_t T_modificationList_set_of[1] = {
2123   { &hf_cmip_modificationList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_T_modificationList_item },
2124 };
2125
2126 static int
2127 dissect_cmip_T_modificationList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2128   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2129                                  T_modificationList_set_of, hf_index, ett_cmip_T_modificationList);
2130
2131   return offset;
2132 }
2133
2134
2135 static const ber_sequence_t SetArgument_sequence[] = {
2136   { &hf_cmip_baseManagedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
2137   { &hf_cmip_baseManagedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
2138   { &hf_cmip_accessControl  , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_AccessControl },
2139   { &hf_cmip_synchronization, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_CMISSync },
2140   { &hf_cmip_scope          , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Scope },
2141   { &hf_cmip_filter         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_CMISFilter },
2142   { &hf_cmip_modificationList, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_cmip_T_modificationList },
2143   { NULL, 0, 0, 0, NULL }
2144 };
2145
2146 static int
2147 dissect_cmip_SetArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2148   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2149                                    SetArgument_sequence, hf_index, ett_cmip_SetArgument);
2150
2151   return offset;
2152 }
2153
2154
2155 static const value_string cmip_CMIPAbortSource_vals[] = {
2156   {   0, "cmiseServiceUser" },
2157   {   1, "cmiseServiceProvider" },
2158   { 0, NULL }
2159 };
2160
2161
2162 static int
2163 dissect_cmip_CMIPAbortSource(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2164 #line 230 "cmip.cnf"
2165   guint32 value;
2166
2167     offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2168                                   &value);
2169
2170   col_append_fstr(actx->pinfo->cinfo, COL_INFO, " AbortSource:%s", val_to_str(value, cmip_CMIPAbortSource_vals, " Unknown AbortSource:%d"));
2171
2172
2173   return offset;
2174 }
2175
2176
2177
2178 static int
2179 dissect_cmip_EXTERNAL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2180   offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
2181
2182   return offset;
2183 }
2184
2185
2186 static const ber_sequence_t CMIPAbortInfo_sequence[] = {
2187   { &hf_cmip_abortSource    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_CMIPAbortSource },
2188   { &hf_cmip_userInfo       , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
2189   { NULL, 0, 0, 0, NULL }
2190 };
2191
2192 int
2193 dissect_cmip_CMIPAbortInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2194 #line 222 "cmip.cnf"
2195   col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ABORT");
2196
2197   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2198                                    CMIPAbortInfo_sequence, hf_index, ett_cmip_CMIPAbortInfo);
2199
2200   return offset;
2201 }
2202
2203
2204 static const asn_namedbit FunctionalUnits_bits[] = {
2205   {  0, &hf_cmip_FunctionalUnits_multipleObjectSelection, -1, -1, "multipleObjectSelection", NULL },
2206   {  1, &hf_cmip_FunctionalUnits_filter, -1, -1, "filter", NULL },
2207   {  2, &hf_cmip_FunctionalUnits_multipleReply, -1, -1, "multipleReply", NULL },
2208   {  3, &hf_cmip_FunctionalUnits_extendedService, -1, -1, "extendedService", NULL },
2209   {  4, &hf_cmip_FunctionalUnits_cancelGet, -1, -1, "cancelGet", NULL },
2210   { 0, NULL, 0, 0, NULL, NULL }
2211 };
2212
2213 static int
2214 dissect_cmip_FunctionalUnits(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2215   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2216                                     FunctionalUnits_bits, hf_index, ett_cmip_FunctionalUnits,
2217                                     NULL);
2218
2219   return offset;
2220 }
2221
2222
2223 static const asn_namedbit ProtocolVersion_bits[] = {
2224   {  0, &hf_cmip_ProtocolVersion_version1, -1, -1, "version1", NULL },
2225   {  1, &hf_cmip_ProtocolVersion_version2, -1, -1, "version2", NULL },
2226   { 0, NULL, 0, 0, NULL, NULL }
2227 };
2228
2229 static int
2230 dissect_cmip_ProtocolVersion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2231   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2232                                     ProtocolVersion_bits, hf_index, ett_cmip_ProtocolVersion,
2233                                     NULL);
2234
2235   return offset;
2236 }
2237
2238
2239 static const ber_sequence_t CMIPUserInfo_sequence[] = {
2240   { &hf_cmip_protocolVersion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ProtocolVersion },
2241   { &hf_cmip_functionalUnits, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_FunctionalUnits },
2242   { &hf_cmip_cmipUserInfoaccessControl, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
2243   { &hf_cmip_userInfo       , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
2244   { NULL, 0, 0, 0, NULL }
2245 };
2246
2247 int
2248 dissect_cmip_CMIPUserInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2249 #line 226 "cmip.cnf"
2250   col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ASSOCIATE");
2251
2252   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2253                                    CMIPUserInfo_sequence, hf_index, ett_cmip_CMIPUserInfo);
2254
2255   return offset;
2256 }
2257
2258
2259 static const ber_sequence_t SET_OF_AE_title_set_of[1] = {
2260   { &hf_cmip_multiple_item  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
2261 };
2262
2263 static int
2264 dissect_cmip_SET_OF_AE_title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2265   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2266                                  SET_OF_AE_title_set_of, hf_index, ett_cmip_SET_OF_AE_title);
2267
2268   return offset;
2269 }
2270
2271
2272 static const value_string cmip_Destination_vals[] = {
2273   {   0, "single" },
2274   {   1, "multiple" },
2275   { 0, NULL }
2276 };
2277
2278 static const ber_choice_t Destination_choice[] = {
2279   {   0, &hf_cmip_single         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
2280   {   1, &hf_cmip_multiple       , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_SET_OF_AE_title },
2281   { 0, NULL, 0, 0, 0, NULL }
2282 };
2283
2284 static int
2285 dissect_cmip_Destination(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2286   offset = dissect_ber_choice(actx, tree, tvb, offset,
2287                                  Destination_choice, hf_index, ett_cmip_Destination,
2288                                  NULL);
2289
2290   return offset;
2291 }
2292
2293
2294
2295 static int
2296 dissect_cmip_ActiveDestination(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2297   offset = dissect_cmip_Destination(implicit_tag, tvb, offset, actx, tree, hf_index);
2298
2299   return offset;
2300 }
2301
2302
2303
2304 static int
2305 dissect_cmip_AdditionalText(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2306   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
2307                                             actx, tree, tvb, offset, hf_index,
2308                                             NULL);
2309
2310   return offset;
2311 }
2312
2313
2314
2315 static int
2316 dissect_cmip_T_managementExtensionidentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2317   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
2318
2319   return offset;
2320 }
2321
2322
2323
2324 static int
2325 dissect_cmip_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_) {
2326   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2327
2328   return offset;
2329 }
2330
2331
2332
2333 static int
2334 dissect_cmip_T_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2335 #line 471 "cmip.cnf"
2336   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
2337
2338
2339
2340   return offset;
2341 }
2342
2343
2344 static const ber_sequence_t ManagementExtension_sequence[] = {
2345   { &hf_cmip_managementExtensionidentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_managementExtensionidentifier },
2346   { &hf_cmip_significance   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_BOOLEAN },
2347   { &hf_cmip_information    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_information },
2348   { NULL, 0, 0, 0, NULL }
2349 };
2350
2351 static int
2352 dissect_cmip_ManagementExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2353   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2354                                    ManagementExtension_sequence, hf_index, ett_cmip_ManagementExtension);
2355
2356   return offset;
2357 }
2358
2359
2360 static const ber_sequence_t AdditionalInformation_set_of[1] = {
2361   { &hf_cmip_AdditionalInformation_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_ManagementExtension },
2362 };
2363
2364 int
2365 dissect_cmip_AdditionalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2366   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2367                                  AdditionalInformation_set_of, hf_index, ett_cmip_AdditionalInformation);
2368
2369   return offset;
2370 }
2371
2372
2373 static const ber_sequence_t Allomorphs_set_of[1] = {
2374   { &hf_cmip_Allomorphs_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
2375 };
2376
2377 static int
2378 dissect_cmip_Allomorphs(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2379   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2380                                  Allomorphs_set_of, hf_index, ett_cmip_Allomorphs);
2381
2382   return offset;
2383 }
2384
2385
2386 const value_string cmip_AdministrativeState_vals[] = {
2387   {   0, "locked" },
2388   {   1, "unlocked" },
2389   {   2, "shuttingDown" },
2390   { 0, NULL }
2391 };
2392
2393
2394 int
2395 dissect_cmip_AdministrativeState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2396   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2397                                   NULL);
2398
2399   return offset;
2400 }
2401
2402
2403 static const ber_sequence_t AttributeIdentifierList_set_of[1] = {
2404   { &hf_cmip_AttributeIdentifierList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
2405 };
2406
2407 static int
2408 dissect_cmip_AttributeIdentifierList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2409   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2410                                  AttributeIdentifierList_set_of, hf_index, ett_cmip_AttributeIdentifierList);
2411
2412   return offset;
2413 }
2414
2415
2416 static const ber_sequence_t AttributeList_set_of[1] = {
2417   { &hf_cmip_AttributeList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Attribute },
2418 };
2419
2420 int
2421 dissect_cmip_AttributeList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2422   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2423                                  AttributeList_set_of, hf_index, ett_cmip_AttributeList);
2424
2425   return offset;
2426 }
2427
2428
2429
2430 static int
2431 dissect_cmip_T_oldAttributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2432 #line 474 "cmip.cnf"
2433   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
2434
2435
2436
2437   return offset;
2438 }
2439
2440
2441
2442 static int
2443 dissect_cmip_T_newAttributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2444 #line 477 "cmip.cnf"
2445   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
2446
2447
2448
2449   return offset;
2450 }
2451
2452
2453 static const ber_sequence_t AttributeValueChangeDefinition_item_sequence[] = {
2454   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
2455   { &hf_cmip_oldAttributeValue, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_oldAttributeValue },
2456   { &hf_cmip_newAttributeValue, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_newAttributeValue },
2457   { NULL, 0, 0, 0, NULL }
2458 };
2459
2460 static int
2461 dissect_cmip_AttributeValueChangeDefinition_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_) {
2462   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2463                                    AttributeValueChangeDefinition_item_sequence, hf_index, ett_cmip_AttributeValueChangeDefinition_item);
2464
2465   return offset;
2466 }
2467
2468
2469 static const ber_sequence_t AttributeValueChangeDefinition_set_of[1] = {
2470   { &hf_cmip_AttributeValueChangeDefinition_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_AttributeValueChangeDefinition_item },
2471 };
2472
2473 static int
2474 dissect_cmip_AttributeValueChangeDefinition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2475   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2476                                  AttributeValueChangeDefinition_set_of, hf_index, ett_cmip_AttributeValueChangeDefinition);
2477
2478   return offset;
2479 }
2480
2481
2482 static const value_string cmip_AlarmStatus_item_vals[] = {
2483   {   0, "underRepair" },
2484   {   1, "critical" },
2485   {   2, "major" },
2486   {   3, "minor" },
2487   {   4, "alarmOutstanding" },
2488   { 0, NULL }
2489 };
2490
2491
2492 static int
2493 dissect_cmip_AlarmStatus_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_) {
2494   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2495                                                 NULL);
2496
2497   return offset;
2498 }
2499
2500
2501 static const ber_sequence_t AlarmStatus_set_of[1] = {
2502   { &hf_cmip_AlarmStatus_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_AlarmStatus_item },
2503 };
2504
2505 static int
2506 dissect_cmip_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_) {
2507   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2508                                  AlarmStatus_set_of, hf_index, ett_cmip_AlarmStatus);
2509
2510   return offset;
2511 }
2512
2513
2514 static const value_string cmip_AvailabilityStatus_item_vals[] = {
2515   {   0, "inTest" },
2516   {   1, "failed" },
2517   {   2, "powerOff" },
2518   {   3, "offLine" },
2519   {   4, "offDuty" },
2520   {   5, "dependency" },
2521   {   6, "degraded" },
2522   {   7, "notInstalled" },
2523   {   8, "logFull" },
2524   { 0, NULL }
2525 };
2526
2527
2528 static int
2529 dissect_cmip_AvailabilityStatus_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_) {
2530   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2531                                                 NULL);
2532
2533   return offset;
2534 }
2535
2536
2537 static const ber_sequence_t AvailabilityStatus_set_of[1] = {
2538   { &hf_cmip_AvailabilityStatus_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_AvailabilityStatus_item },
2539 };
2540
2541 int
2542 dissect_cmip_AvailabilityStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2543   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2544                                  AvailabilityStatus_set_of, hf_index, ett_cmip_AvailabilityStatus);
2545
2546   return offset;
2547 }
2548
2549
2550
2551 static int
2552 dissect_cmip_BackedUpStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2553   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2554
2555   return offset;
2556 }
2557
2558
2559 static const ber_sequence_t BackUpDestinationList_sequence_of[1] = {
2560   { &hf_cmip_BackUpDestinationList_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
2561 };
2562
2563 static int
2564 dissect_cmip_BackUpDestinationList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2565   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2566                                       BackUpDestinationList_sequence_of, hf_index, ett_cmip_BackUpDestinationList);
2567
2568   return offset;
2569 }
2570
2571
2572 static const value_string cmip_BackUpRelationshipObject_vals[] = {
2573   {   0, "objectName" },
2574   {   1, "noObject" },
2575   { 0, NULL }
2576 };
2577
2578 static const ber_choice_t BackUpRelationshipObject_choice[] = {
2579   {   0, &hf_cmip_objectName     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ObjectInstance },
2580   {   1, &hf_cmip_noObject       , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
2581   { 0, NULL, 0, 0, 0, NULL }
2582 };
2583
2584 static int
2585 dissect_cmip_BackUpRelationshipObject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2586   offset = dissect_ber_choice(actx, tree, tvb, offset,
2587                                  BackUpRelationshipObject_choice, hf_index, ett_cmip_BackUpRelationshipObject,
2588                                  NULL);
2589
2590   return offset;
2591 }
2592
2593
2594
2595 static int
2596 dissect_cmip_INTEGER_0_100(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2597   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2598                                                 NULL);
2599
2600   return offset;
2601 }
2602
2603
2604 static const ber_sequence_t CapacityAlarmThreshold_set_of[1] = {
2605   { &hf_cmip_CapacityAlarmThreshold_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER_0_100 },
2606 };
2607
2608 static int
2609 dissect_cmip_CapacityAlarmThreshold(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2610   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2611                                  CapacityAlarmThreshold_set_of, hf_index, ett_cmip_CapacityAlarmThreshold);
2612
2613   return offset;
2614 }
2615
2616
2617
2618 static int
2619 dissect_cmip_ConfirmedMode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2620   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2621
2622   return offset;
2623 }
2624
2625
2626 static const value_string cmip_ControlStatus_item_vals[] = {
2627   {   0, "subjectToTest" },
2628   {   1, "partOfServicesLocked" },
2629   {   2, "reservedForTest" },
2630   {   3, "suspended" },
2631   { 0, NULL }
2632 };
2633
2634
2635 static int
2636 dissect_cmip_ControlStatus_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_) {
2637   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2638                                                 NULL);
2639
2640   return offset;
2641 }
2642
2643
2644 static const ber_sequence_t ControlStatus_set_of[1] = {
2645   { &hf_cmip_ControlStatus_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_ControlStatus_item },
2646 };
2647
2648 static int
2649 dissect_cmip_ControlStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2650   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2651                                  ControlStatus_set_of, hf_index, ett_cmip_ControlStatus);
2652
2653   return offset;
2654 }
2655
2656
2657
2658 static int
2659 dissect_cmip_NotificationIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2660   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2661                                                 NULL);
2662
2663   return offset;
2664 }
2665
2666
2667 static const ber_sequence_t SET_OF_NotificationIdentifier_set_of[1] = {
2668   { &hf_cmip_correlatedNotifications_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_NotificationIdentifier },
2669 };
2670
2671 static int
2672 dissect_cmip_SET_OF_NotificationIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2673   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2674                                  SET_OF_NotificationIdentifier_set_of, hf_index, ett_cmip_SET_OF_NotificationIdentifier);
2675
2676   return offset;
2677 }
2678
2679
2680 static const ber_sequence_t CorrelatedNotifications_item_sequence[] = {
2681   { &hf_cmip_correlatedNotifications, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_SET_OF_NotificationIdentifier },
2682   { &hf_cmip_sourceObjectInst, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
2683   { NULL, 0, 0, 0, NULL }
2684 };
2685
2686 static int
2687 dissect_cmip_CorrelatedNotifications_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_) {
2688   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2689                                    CorrelatedNotifications_item_sequence, hf_index, ett_cmip_CorrelatedNotifications_item);
2690
2691   return offset;
2692 }
2693
2694
2695 static const ber_sequence_t CorrelatedNotifications_set_of[1] = {
2696   { &hf_cmip_CorrelatedNotifications_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_CorrelatedNotifications_item },
2697 };
2698
2699 static int
2700 dissect_cmip_CorrelatedNotifications(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2701   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2702                                  CorrelatedNotifications_set_of, hf_index, ett_cmip_CorrelatedNotifications);
2703
2704   return offset;
2705 }
2706
2707
2708
2709 static int
2710 dissect_cmip_CurrentLogSize(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2711   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2712                                                 NULL);
2713
2714   return offset;
2715 }
2716
2717
2718
2719 static int
2720 dissect_cmip_DiscriminatorConstruct(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2721   offset = dissect_cmip_CMISFilter(implicit_tag, tvb, offset, actx, tree, hf_index);
2722
2723   return offset;
2724 }
2725
2726
2727
2728 static int
2729 dissect_cmip_EventTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2730   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
2731
2732   return offset;
2733 }
2734
2735
2736 static const ber_sequence_t GroupObjects_set_of[1] = {
2737   { &hf_cmip_GroupObjects_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
2738 };
2739
2740 static int
2741 dissect_cmip_GroupObjects(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2742   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2743                                  GroupObjects_set_of, hf_index, ett_cmip_GroupObjects);
2744
2745   return offset;
2746 }
2747
2748
2749
2750 static int
2751 dissect_cmip_INTEGER_0_23(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2752   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2753                                                 NULL);
2754
2755   return offset;
2756 }
2757
2758
2759
2760 static int
2761 dissect_cmip_INTEGER_0_59(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2762   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2763                                                 NULL);
2764
2765   return offset;
2766 }
2767
2768
2769 static const ber_sequence_t Time24_sequence[] = {
2770   { &hf_cmip_hour           , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER_0_23 },
2771   { &hf_cmip_minute         , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER_0_59 },
2772   { NULL, 0, 0, 0, NULL }
2773 };
2774
2775 static int
2776 dissect_cmip_Time24(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2777   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2778                                    Time24_sequence, hf_index, ett_cmip_Time24);
2779
2780   return offset;
2781 }
2782
2783
2784 static const ber_sequence_t IntervalsOfDay_item_sequence[] = {
2785   { &hf_cmip_intervalStart  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Time24 },
2786   { &hf_cmip_intervalEnd    , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Time24 },
2787   { NULL, 0, 0, 0, NULL }
2788 };
2789
2790 static int
2791 dissect_cmip_IntervalsOfDay_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_) {
2792   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2793                                    IntervalsOfDay_item_sequence, hf_index, ett_cmip_IntervalsOfDay_item);
2794
2795   return offset;
2796 }
2797
2798
2799 static const ber_sequence_t IntervalsOfDay_set_of[1] = {
2800   { &hf_cmip_IntervalsOfDay_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_IntervalsOfDay_item },
2801 };
2802
2803 static int
2804 dissect_cmip_IntervalsOfDay(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2805   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2806                                  IntervalsOfDay_set_of, hf_index, ett_cmip_IntervalsOfDay);
2807
2808   return offset;
2809 }
2810
2811
2812 static const value_string cmip_LifecycleState_vals[] = {
2813   {   0, "planned" },
2814   {   1, "installed" },
2815   {   2, "pendingRemoval" },
2816   { 0, NULL }
2817 };
2818
2819
2820 static int
2821 dissect_cmip_LifecycleState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2822   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2823                                   NULL);
2824
2825   return offset;
2826 }
2827
2828
2829 static const value_string cmip_LogFullAction_vals[] = {
2830   {   0, "wrap" },
2831   {   1, "halt" },
2832   { 0, NULL }
2833 };
2834
2835
2836 static int
2837 dissect_cmip_LogFullAction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2838   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2839                                   NULL);
2840
2841   return offset;
2842 }
2843
2844
2845
2846 static int
2847 dissect_cmip_LoggingTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2848   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
2849
2850   return offset;
2851 }
2852
2853
2854
2855 static int
2856 dissect_cmip_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_) {
2857   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
2858                                             actx, tree, tvb, offset, hf_index,
2859                                             NULL);
2860
2861   return offset;
2862 }
2863
2864
2865 static const value_string cmip_SimpleNameType_vals[] = {
2866   {   0, "number" },
2867   {   1, "string" },
2868   { 0, NULL }
2869 };
2870
2871 static const ber_choice_t SimpleNameType_choice[] = {
2872   {   0, &hf_cmip_number         , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
2873   {   1, &hf_cmip_string         , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_cmip_GraphicString },
2874   { 0, NULL, 0, 0, 0, NULL }
2875 };
2876
2877 static int
2878 dissect_cmip_SimpleNameType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2879   offset = dissect_ber_choice(actx, tree, tvb, offset,
2880                                  SimpleNameType_choice, hf_index, ett_cmip_SimpleNameType,
2881                                  NULL);
2882
2883   return offset;
2884 }
2885
2886
2887
2888 static int
2889 dissect_cmip_LogRecordId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2890   offset = dissect_cmip_SimpleNameType(implicit_tag, tvb, offset, actx, tree, hf_index);
2891
2892   return offset;
2893 }
2894
2895
2896 static const value_string cmip_MaxLogSize_vals[] = {
2897   {   0, "unlimited" },
2898   { 0, NULL }
2899 };
2900
2901
2902 static int
2903 dissect_cmip_MaxLogSize(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2904   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2905                                                 NULL);
2906
2907   return offset;
2908 }
2909
2910
2911 static const ber_sequence_t MonitoredAttributes_set_of[1] = {
2912   { &hf_cmip_MonitoredAttributes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Attribute },
2913 };
2914
2915 static int
2916 dissect_cmip_MonitoredAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2917   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2918                                  MonitoredAttributes_set_of, hf_index, ett_cmip_MonitoredAttributes);
2919
2920   return offset;
2921 }
2922
2923
2924
2925 static int
2926 dissect_cmip_NameBinding(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2927   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2928
2929   return offset;
2930 }
2931
2932
2933
2934 static int
2935 dissect_cmip_NumberOfRecords(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2936   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2937                                                 NULL);
2938
2939   return offset;
2940 }
2941
2942
2943
2944 static int
2945 dissect_cmip_REAL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2946   offset = dissect_ber_real(implicit_tag, actx, tree, tvb, offset, hf_index,
2947                                NULL);
2948
2949   return offset;
2950 }
2951
2952
2953 static const value_string cmip_ObservedValue_vals[] = {
2954   {   0, "integer" },
2955   {   1, "real" },
2956   { 0, NULL }
2957 };
2958
2959 static const ber_choice_t ObservedValue_choice[] = {
2960   {   0, &hf_cmip_integer        , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
2961   {   1, &hf_cmip_real           , BER_CLASS_UNI, BER_UNI_TAG_REAL, BER_FLAGS_NOOWNTAG, dissect_cmip_REAL },
2962   { 0, NULL, 0, 0, 0, NULL }
2963 };
2964
2965 static int
2966 dissect_cmip_ObservedValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2967   offset = dissect_ber_choice(actx, tree, tvb, offset,
2968                                  ObservedValue_choice, hf_index, ett_cmip_ObservedValue,
2969                                  NULL);
2970
2971   return offset;
2972 }
2973
2974
2975 static const value_string cmip_OperationalState_vals[] = {
2976   {   0, "disabled" },
2977   {   1, "enabled" },
2978   { 0, NULL }
2979 };
2980
2981
2982 static int
2983 dissect_cmip_OperationalState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2984   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2985                                   NULL);
2986
2987   return offset;
2988 }
2989
2990
2991
2992 static int
2993 dissect_cmip_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_) {
2994   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2995
2996   return offset;
2997 }
2998
2999
3000 static const ber_sequence_t Packages_set_of[1] = {
3001   { &hf_cmip_Packages_item  , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
3002 };
3003
3004 static int
3005 dissect_cmip_Packages(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3006   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3007                                  Packages_set_of, hf_index, ett_cmip_Packages);
3008
3009   return offset;
3010 }
3011
3012
3013 static const value_string cmip_PerceivedSeverity_vals[] = {
3014   {   0, "indeterminate" },
3015   {   1, "critical" },
3016   {   2, "major" },
3017   {   3, "minor" },
3018   {   4, "warning" },
3019   {   5, "cleared" },
3020   { 0, NULL }
3021 };
3022
3023
3024 static int
3025 dissect_cmip_PerceivedSeverity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3026   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3027                                   NULL);
3028
3029   return offset;
3030 }
3031
3032
3033 static const value_string cmip_T_priority_vals[] = {
3034   {   0, "highest" },
3035   { 127, "lowest" },
3036   { 0, NULL }
3037 };
3038
3039
3040 static int
3041 dissect_cmip_T_priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3042   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3043                                                 NULL);
3044
3045   return offset;
3046 }
3047
3048
3049 static const ber_sequence_t PrioritisedObject_item_sequence[] = {
3050   { &hf_cmip_object         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
3051   { &hf_cmip_priority       , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_T_priority },
3052   { NULL, 0, 0, 0, NULL }
3053 };
3054
3055 static int
3056 dissect_cmip_PrioritisedObject_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_) {
3057   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3058                                    PrioritisedObject_item_sequence, hf_index, ett_cmip_PrioritisedObject_item);
3059
3060   return offset;
3061 }
3062
3063
3064 static const ber_sequence_t PrioritisedObject_set_of[1] = {
3065   { &hf_cmip_PrioritisedObject_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_PrioritisedObject_item },
3066 };
3067
3068 static int
3069 dissect_cmip_PrioritisedObject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3070   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3071                                  PrioritisedObject_set_of, hf_index, ett_cmip_PrioritisedObject);
3072
3073   return offset;
3074 }
3075
3076
3077 const value_string cmip_ProbableCause_vals[] = {
3078   {   0, "globalValue" },
3079   {   1, "localValue" },
3080   { 0, NULL }
3081 };
3082
3083 static const ber_choice_t ProbableCause_choice[] = {
3084   {   0, &hf_cmip_globalValue    , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
3085   {   1, &hf_cmip_localValue     , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
3086   { 0, NULL, 0, 0, 0, NULL }
3087 };
3088
3089 int
3090 dissect_cmip_ProbableCause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3091   offset = dissect_ber_choice(actx, tree, tvb, offset,
3092                                  ProbableCause_choice, hf_index, ett_cmip_ProbableCause,
3093                                  NULL);
3094
3095   return offset;
3096 }
3097
3098
3099 static const value_string cmip_ProceduralStatus_item_vals[] = {
3100   {   0, "initializationRequired" },
3101   {   1, "notInitialized" },
3102   {   2, "initializing" },
3103   {   3, "reporting" },
3104   {   4, "terminating" },
3105   { 0, NULL }
3106 };
3107
3108
3109 static int
3110 dissect_cmip_ProceduralStatus_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_) {
3111   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3112                                                 NULL);
3113
3114   return offset;
3115 }
3116
3117
3118 static const ber_sequence_t ProceduralStatus_set_of[1] = {
3119   { &hf_cmip_ProceduralStatus_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_ProceduralStatus_item },
3120 };
3121
3122 static int
3123 dissect_cmip_ProceduralStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3124   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3125                                  ProceduralStatus_set_of, hf_index, ett_cmip_ProceduralStatus);
3126
3127   return offset;
3128 }
3129
3130
3131 static const value_string cmip_SpecificIdentifier_vals[] = {
3132   {   0, "oi" },
3133   {   1, "int" },
3134   { 0, NULL }
3135 };
3136
3137 static const ber_choice_t SpecificIdentifier_choice[] = {
3138   {   0, &hf_cmip_oi             , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
3139   {   1, &hf_cmip_int            , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
3140   { 0, NULL, 0, 0, 0, NULL }
3141 };
3142
3143 static int
3144 dissect_cmip_SpecificIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3145   offset = dissect_ber_choice(actx, tree, tvb, offset,
3146                                  SpecificIdentifier_choice, hf_index, ett_cmip_SpecificIdentifier,
3147                                  NULL);
3148
3149   return offset;
3150 }
3151
3152
3153 static const ber_sequence_t ProposedRepairActions_set_of[1] = {
3154   { &hf_cmip_ProposedRepairActions_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_SpecificIdentifier },
3155 };
3156
3157 static int
3158 dissect_cmip_ProposedRepairActions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3159   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3160                                  ProposedRepairActions_set_of, hf_index, ett_cmip_ProposedRepairActions);
3161
3162   return offset;
3163 }
3164
3165
3166
3167 static int
3168 dissect_cmip_SecurityAlarmCause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3169   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
3170
3171   return offset;
3172 }
3173
3174
3175
3176 static int
3177 dissect_cmip_SecurityAlarmSeverity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3178   offset = dissect_cmip_PerceivedSeverity(implicit_tag, tvb, offset, actx, tree, hf_index);
3179
3180   return offset;
3181 }
3182
3183
3184 static const value_string cmip_SecurityAlarmDetector_vals[] = {
3185   {   0, "mechanism" },
3186   {   1, "object" },
3187   {   2, "application" },
3188   { 0, NULL }
3189 };
3190
3191 static const ber_choice_t SecurityAlarmDetector_choice[] = {
3192   {   0, &hf_cmip_mechanism      , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_OBJECT_IDENTIFIER },
3193   {   1, &hf_cmip_object         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_ObjectInstance },
3194   {   2, &hf_cmip_application    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_acse_AE_title },
3195   { 0, NULL, 0, 0, 0, NULL }
3196 };
3197
3198 static int
3199 dissect_cmip_SecurityAlarmDetector(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3200   offset = dissect_ber_choice(actx, tree, tvb, offset,
3201                                  SecurityAlarmDetector_choice, hf_index, ett_cmip_SecurityAlarmDetector,
3202                                  NULL);
3203
3204   return offset;
3205 }
3206
3207
3208
3209 static int
3210 dissect_cmip_T_serviceUseridentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3211   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
3212
3213   return offset;
3214 }
3215
3216
3217
3218 static int
3219 dissect_cmip_T_details(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3220 #line 482 "cmip.cnf"
3221   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
3222
3223
3224
3225   return offset;
3226 }
3227
3228
3229 static const ber_sequence_t ServiceUser_sequence[] = {
3230   { &hf_cmip_serviceUseridentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_serviceUseridentifier },
3231   { &hf_cmip_details        , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_details },
3232   { NULL, 0, 0, 0, NULL }
3233 };
3234
3235 static int
3236 dissect_cmip_ServiceUser(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3237   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3238                                    ServiceUser_sequence, hf_index, ett_cmip_ServiceUser);
3239
3240   return offset;
3241 }
3242
3243
3244
3245 static int
3246 dissect_cmip_ServiceProvider(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3247   offset = dissect_cmip_ServiceUser(implicit_tag, tvb, offset, actx, tree, hf_index);
3248
3249   return offset;
3250 }
3251
3252
3253 static const value_string cmip_SourceIndicator_vals[] = {
3254   {   0, "resourceOperation" },
3255   {   1, "managementOperation" },
3256   {   2, "unknown" },
3257   { 0, NULL }
3258 };
3259
3260
3261 static int
3262 dissect_cmip_SourceIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3263   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3264                                   NULL);
3265
3266   return offset;
3267 }
3268
3269
3270 static const ber_sequence_t SpecificProblems_set_of[1] = {
3271   { &hf_cmip_SpecificProblems_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_SpecificIdentifier },
3272 };
3273
3274 static int
3275 dissect_cmip_SpecificProblems(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3276   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3277                                  SpecificProblems_set_of, hf_index, ett_cmip_SpecificProblems);
3278
3279   return offset;
3280 }
3281
3282
3283 static const value_string cmip_StandbyStatus_vals[] = {
3284   {   0, "hotStandby" },
3285   {   1, "coldStandby" },
3286   {   2, "providingService" },
3287   { 0, NULL }
3288 };
3289
3290
3291 static int
3292 dissect_cmip_StandbyStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3293   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3294                                                 NULL);
3295
3296   return offset;
3297 }
3298
3299
3300
3301 static int
3302 dissect_cmip_StartTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3303   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
3304
3305   return offset;
3306 }
3307
3308
3309 static const value_string cmip_StopTime_vals[] = {
3310   {   0, "specific" },
3311   {   1, "continual" },
3312   { 0, NULL }
3313 };
3314
3315 static const ber_choice_t StopTime_choice[] = {
3316   {   0, &hf_cmip_specific       , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_cmip_GeneralizedTime },
3317   {   1, &hf_cmip_continual      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
3318   { 0, NULL, 0, 0, 0, NULL }
3319 };
3320
3321 static int
3322 dissect_cmip_StopTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3323   offset = dissect_ber_choice(actx, tree, tvb, offset,
3324                                  StopTime_choice, hf_index, ett_cmip_StopTime,
3325                                  NULL);
3326
3327   return offset;
3328 }
3329
3330
3331
3332 static int
3333 dissect_cmip_T_featureIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3334   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
3335
3336   return offset;
3337 }
3338
3339
3340
3341 static int
3342 dissect_cmip_T_featureInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3343 #line 487 "cmip.cnf"
3344   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
3345
3346
3347
3348
3349   return offset;
3350 }
3351
3352
3353 static const ber_sequence_t SupportedFeatures_item_sequence[] = {
3354   { &hf_cmip_featureIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureIdentifier },
3355   { &hf_cmip_featureInfo    , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureInfo },
3356   { NULL, 0, 0, 0, NULL }
3357 };
3358
3359 static int
3360 dissect_cmip_SupportedFeatures_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_) {
3361   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3362                                    SupportedFeatures_item_sequence, hf_index, ett_cmip_SupportedFeatures_item);
3363
3364   return offset;
3365 }
3366
3367
3368 static const ber_sequence_t SupportedFeatures_set_of[1] = {
3369   { &hf_cmip_SupportedFeatures_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_SupportedFeatures_item },
3370 };
3371
3372 static int
3373 dissect_cmip_SupportedFeatures(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3374   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3375                                  SupportedFeatures_set_of, hf_index, ett_cmip_SupportedFeatures);
3376
3377   return offset;
3378 }
3379
3380
3381 static const value_string cmip_SystemId_vals[] = {
3382   {   0, "name" },
3383   {   1, "number" },
3384   {   2, "nothing" },
3385   { 0, NULL }
3386 };
3387
3388 static const ber_choice_t SystemId_choice[] = {
3389   {   0, &hf_cmip_name           , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_cmip_GraphicString },
3390   {   1, &hf_cmip_number         , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
3391   {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
3392   { 0, NULL, 0, 0, 0, NULL }
3393 };
3394
3395 static int
3396 dissect_cmip_SystemId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3397   offset = dissect_ber_choice(actx, tree, tvb, offset,
3398                                  SystemId_choice, hf_index, ett_cmip_SystemId,
3399                                  NULL);
3400
3401   return offset;
3402 }
3403
3404
3405 static const value_string cmip_SystemTitle_vals[] = {
3406   {   0, "distinguishedName" },
3407   {   1, "oid" },
3408   {   2, "nothing" },
3409   { 0, NULL }
3410 };
3411
3412 static const ber_choice_t SystemTitle_choice[] = {
3413   {   0, &hf_cmip_distinguishedName, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_DistinguishedName },
3414   {   1, &hf_cmip_oid            , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
3415   {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
3416   { 0, NULL, 0, 0, 0, NULL }
3417 };
3418
3419 static int
3420 dissect_cmip_SystemTitle(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3421   offset = dissect_ber_choice(actx, tree, tvb, offset,
3422                                  SystemTitle_choice, hf_index, ett_cmip_SystemTitle,
3423                                  NULL);
3424
3425   return offset;
3426 }
3427
3428
3429 static const ber_sequence_t T_up_sequence[] = {
3430   { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
3431   { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
3432   { NULL, 0, 0, 0, NULL }
3433 };
3434
3435 static int
3436 dissect_cmip_T_up(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3437   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3438                                    T_up_sequence, hf_index, ett_cmip_T_up);
3439
3440   return offset;
3441 }
3442
3443
3444 static const ber_sequence_t T_down_sequence[] = {
3445   { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
3446   { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
3447   { NULL, 0, 0, 0, NULL }
3448 };
3449
3450 static int
3451 dissect_cmip_T_down(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3452   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3453                                    T_down_sequence, hf_index, ett_cmip_T_down);
3454
3455   return offset;
3456 }
3457
3458
3459 static const value_string cmip_ThresholdLevelInd_vals[] = {
3460   {   1, "up" },
3461   {   2, "down" },
3462   { 0, NULL }
3463 };
3464
3465 static const ber_choice_t ThresholdLevelInd_choice[] = {
3466   {   1, &hf_cmip_up             , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_up },
3467   {   2, &hf_cmip_down           , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_down },
3468   { 0, NULL, 0, 0, 0, NULL }
3469 };
3470
3471 static int
3472 dissect_cmip_ThresholdLevelInd(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3473   offset = dissect_ber_choice(actx, tree, tvb, offset,
3474                                  ThresholdLevelInd_choice, hf_index, ett_cmip_ThresholdLevelInd,
3475                                  NULL);
3476
3477   return offset;
3478 }
3479
3480
3481 static const ber_sequence_t ThresholdInfo_sequence[] = {
3482   { &hf_cmip_triggeredThreshold, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
3483   { &hf_cmip_observedValue  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
3484   { &hf_cmip_thresholdLevel , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ThresholdLevelInd },
3485   { &hf_cmip_armTime        , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
3486   { NULL, 0, 0, 0, NULL }
3487 };
3488
3489 static int
3490 dissect_cmip_ThresholdInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3491   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3492                                    ThresholdInfo_sequence, hf_index, ett_cmip_ThresholdInfo);
3493
3494   return offset;
3495 }
3496
3497
3498 static const value_string cmip_TrendIndication_vals[] = {
3499   {   0, "lessSevere" },
3500   {   1, "noChange" },
3501   {   2, "moreSevere" },
3502   { 0, NULL }
3503 };
3504
3505
3506 static int
3507 dissect_cmip_TrendIndication(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3508   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3509                                   NULL);
3510
3511   return offset;
3512 }
3513
3514
3515
3516 static int
3517 dissect_cmip_UnknownStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3518   offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
3519
3520   return offset;
3521 }
3522
3523
3524 static const value_string cmip_UsageState_vals[] = {
3525   {   0, "idle" },
3526   {   1, "active" },
3527   {   2, "busy" },
3528   { 0, NULL }
3529 };
3530
3531
3532 static int
3533 dissect_cmip_UsageState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3534   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3535                                   NULL);
3536
3537   return offset;
3538 }
3539
3540
3541 static const asn_namedbit T_daysOfWeek_bits[] = {
3542   {  0, &hf_cmip_T_daysOfWeek_sunday, -1, -1, "sunday", NULL },
3543   {  1, &hf_cmip_T_daysOfWeek_monday, -1, -1, "monday", NULL },
3544   {  2, &hf_cmip_T_daysOfWeek_tuesday, -1, -1, "tuesday", NULL },
3545   {  3, &hf_cmip_T_daysOfWeek_wednesday, -1, -1, "wednesday", NULL },
3546   {  4, &hf_cmip_T_daysOfWeek_thursday, -1, -1, "thursday", NULL },
3547   {  5, &hf_cmip_T_daysOfWeek_friday, -1, -1, "friday", NULL },
3548   {  6, &hf_cmip_T_daysOfWeek_saturday, -1, -1, "saturday", NULL },
3549   { 0, NULL, 0, 0, NULL, NULL }
3550 };
3551
3552 static int
3553 dissect_cmip_T_daysOfWeek(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3554   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3555                                     T_daysOfWeek_bits, hf_index, ett_cmip_T_daysOfWeek,
3556                                     NULL);
3557
3558   return offset;
3559 }
3560
3561
3562 static const ber_sequence_t WeekMask_item_sequence[] = {
3563   { &hf_cmip_daysOfWeek     , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_cmip_T_daysOfWeek },
3564   { &hf_cmip_intervalsOfDay , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_IntervalsOfDay },
3565   { NULL, 0, 0, 0, NULL }
3566 };
3567
3568 static int
3569 dissect_cmip_WeekMask_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_) {
3570   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3571                                    WeekMask_item_sequence, hf_index, ett_cmip_WeekMask_item);
3572
3573   return offset;
3574 }
3575
3576
3577 static const ber_sequence_t WeekMask_set_of[1] = {
3578   { &hf_cmip_WeekMask_item  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_WeekMask_item },
3579 };
3580
3581 static int
3582 dissect_cmip_WeekMask(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3583   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3584                                  WeekMask_set_of, hf_index, ett_cmip_WeekMask);
3585
3586   return offset;
3587 }
3588
3589
3590
3591 static int
3592 dissect_cmip_T_local(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3593 #line 237 "cmip.cnf"
3594     offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3595                                                 &opcode);
3596
3597   if(opcode_type== OPCODE_RETURN_ERROR){
3598         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, cmip_error_code_vals, " Unknown Opcode:%d"));
3599   }else{
3600         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, cmip_Opcode_vals, " Unknown Opcode:%d"));
3601   }
3602
3603
3604   return offset;
3605 }
3606
3607
3608 static const value_string cmip_Code_vals[] = {
3609   {   0, "local" },
3610   {   1, "global" },
3611   { 0, NULL }
3612 };
3613
3614 static const ber_choice_t Code_choice[] = {
3615   {   0, &hf_cmip_local          , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_T_local },
3616   {   1, &hf_cmip_global         , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
3617   { 0, NULL, 0, 0, 0, NULL }
3618 };
3619
3620 static int
3621 dissect_cmip_Code(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3622   offset = dissect_ber_choice(actx, tree, tvb, offset,
3623                                  Code_choice, hf_index, ett_cmip_Code,
3624                                  NULL);
3625
3626   return offset;
3627 }
3628
3629
3630
3631 static int
3632 dissect_cmip_InvokeId_present(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3633   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3634                                                 NULL);
3635
3636   return offset;
3637 }
3638
3639
3640
3641 static int
3642 dissect_cmip_T_linkedIdPresent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3643   offset = dissect_cmip_InvokeId_present(implicit_tag, tvb, offset, actx, tree, hf_index);
3644
3645   return offset;
3646 }
3647
3648
3649 static const value_string cmip_T_linkedId_vals[] = {
3650   {   0, "present" },
3651   {   1, "absent" },
3652   { 0, NULL }
3653 };
3654
3655 static const ber_choice_t T_linkedId_choice[] = {
3656   {   0, &hf_cmip_linkedIdPresent, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_linkedIdPresent },
3657   {   1, &hf_cmip_absent         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_NULL },
3658   { 0, NULL, 0, 0, 0, NULL }
3659 };
3660
3661 static int
3662 dissect_cmip_T_linkedId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3663   offset = dissect_ber_choice(actx, tree, tvb, offset,
3664                                  T_linkedId_choice, hf_index, ett_cmip_T_linkedId,
3665                                  NULL);
3666
3667   return offset;
3668 }
3669
3670
3671
3672 static int
3673 dissect_cmip_InvokeArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3674 #line 285 "cmip.cnf"
3675     switch(opcode){
3676     case 0: /* M-eventreport */
3677       offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
3678       break;
3679     case 1: /* M-eventreport-confirmed */
3680       offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
3681       break;
3682     case 2: /* M-linkedreply */
3683       offset = dissect_cmip_LinkedReplyArgument(FALSE, tvb, offset, actx, tree, -1);
3684       break;
3685     case 3: /* M-get */
3686       offset = dissect_cmip_GetArgument(FALSE, tvb, offset,actx, tree, -1);
3687       break;
3688     case 4: /* M-set */
3689       offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
3690       break;
3691     case 5: /* M-set-confirmed */
3692       offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
3693       break;
3694     case 6: /* M-action*/
3695       offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
3696       break;
3697     case 7: /* M-action-confirmed*/
3698       offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
3699       break;
3700     case 8: /* M-create*/
3701       offset = dissect_cmip_CreateArgument(FALSE, tvb,  offset, actx, tree, -1);
3702       break;
3703     case 9: /* M-delete*/
3704       offset = dissect_cmip_DeleteArgument(FALSE, tvb,  offset, actx, tree, -1);
3705       break;
3706     case 10: /* M-cancelget */
3707       offset = dissect_cmip_InvokeIDType(FALSE, tvb,  offset, actx, tree, -1);
3708       break;
3709     }
3710     
3711
3712
3713
3714   return offset;
3715 }
3716
3717
3718 static const ber_sequence_t Invoke_sequence[] = {
3719   { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
3720   { &hf_cmip_linkedId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_linkedId },
3721   { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
3722   { &hf_cmip_argument       , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_InvokeArgument },
3723   { NULL, 0, 0, 0, NULL }
3724 };
3725
3726 static int
3727 dissect_cmip_Invoke(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3728 #line 246 "cmip.cnf"
3729   opcode_type=OPCODE_INVOKE;
3730   col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Invoke ");
3731
3732   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3733                                    Invoke_sequence, hf_index, ett_cmip_Invoke);
3734
3735   return offset;
3736 }
3737
3738
3739
3740 static int
3741 dissect_cmip_ResultArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3742 #line 323 "cmip.cnf"
3743
3744     switch(opcode){
3745     case 0: /* M-eventreport*/
3746       break;  /* No return data */
3747     case 1: /* M-eventreport-confirmed */
3748       offset = dissect_cmip_EventReportResult(FALSE, tvb, offset, actx, tree, -1);
3749       break;
3750     case 2: /* M-linkedreply*/
3751       break;  /* No return data */
3752     case 3: /* M-get */
3753       offset = dissect_cmip_GetResult(FALSE, tvb, offset, actx, tree, -1);
3754       break;
3755     case 4: /* M-set */
3756       break;  /* No return data */
3757     case 5: /* M-set-confirmed*/
3758       offset = dissect_cmip_SetResult(FALSE, tvb, offset, actx, tree, -1);
3759       break;
3760     case 6: /* M-action*/
3761       break;  /* No return data */
3762     case 7: /* M-action-confirmed*/
3763       offset = dissect_cmip_ActionResult(FALSE, tvb, offset, actx, tree, -1);
3764       break;
3765     case 8: /* M-create*/
3766       offset = dissect_cmip_CreateResult(FALSE, tvb,  offset, actx, tree, -1);
3767       break;
3768     case 9: /* M-delete*/
3769       offset = dissect_cmip_DeleteResult(FALSE, tvb,  offset, actx, tree, -1);
3770       break;
3771     case 10: /* M-cancelget */
3772       break; /* doe this one return any data? */
3773     }
3774   /*XXX add more types here */
3775  
3776
3777
3778   return offset;
3779 }
3780
3781
3782 static const ber_sequence_t T_result_sequence[] = {
3783   { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
3784   { &hf_cmip_resultArgument , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_ResultArgument },
3785   { NULL, 0, 0, 0, NULL }
3786 };
3787
3788 static int
3789 dissect_cmip_T_result(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3790   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3791                                    T_result_sequence, hf_index, ett_cmip_T_result);
3792
3793   return offset;
3794 }
3795
3796
3797 static const ber_sequence_t ReturnResult_sequence[] = {
3798   { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
3799   { &hf_cmip_result         , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_result },
3800   { NULL, 0, 0, 0, NULL }
3801 };
3802
3803 static int
3804 dissect_cmip_ReturnResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3805 #line 251 "cmip.cnf"
3806   opcode_type=OPCODE_RETURN_RESULT;
3807   col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnResult ");
3808
3809   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3810                                    ReturnResult_sequence, hf_index, ett_cmip_ReturnResult);
3811
3812   return offset;
3813 }
3814
3815
3816
3817 static int
3818 dissect_cmip_T_parameter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3819 #line 357 "cmip.cnf"
3820
3821     switch(opcode){
3822         case 19: /* classInstanceConflict */
3823                 dissect_cmip_BaseManagedObjectId(FALSE, tvb,  offset, actx, tree, -1);
3824                 break;
3825         case 20:  /* complexityLimitation */
3826                 dissect_cmip_ComplexityLimitation(FALSE, tvb,  offset, actx, tree, -1);
3827                 break;
3828         case 11: /* duplicateManagedObjectInstance */
3829                 dissect_cmip_ObjectInstance(FALSE, tvb,  offset, actx, tree, -1);
3830                 break;
3831         case 7: /*  getListError */
3832                 dissect_cmip_GetListError(FALSE, tvb,  offset, actx, tree, -1);
3833                 break;
3834         case 15: /* invalidArgumentValue */
3835    &n