Don't do fcn calls in arg of g_?to??(); Macro may very well eval args multiple times.
[obnox/wireshark/wip.git] / epan / dissectors / packet-cmip.c
index 88a9d1bb1df434eab6763999065f173c47bc09c3..31cefc9ec4fc6c88d9b8e808e6bd8f346ae82c15 100644 (file)
@@ -1,11 +1,11 @@
 /* Do not modify this file.                                                   */
 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
-/* .\packet-cmip.c                                                            */
-/* ../../tools/asn2wrs.py -b -X -T -e -p cmip -c cmip.cnf -s packet-cmip-template 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 */
+/* packet-cmip.c                                                              */
+/* ../../tools/asn2wrs.py -b -p cmip -c ./cmip.cnf -s ./packet-cmip-template -D . -O ../../epan/dissectors 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 */
 
 /* Input file: packet-cmip-template.c */
 
-#line 1 "packet-cmip-template.c"
+#line 1 "../../asn1/cmip/packet-cmip-template.c"
 /* packet-cmip.c
  * Routines for X.711 CMIP packet dissection
  *   Ronnie Sahlberg 2004
 
 #include <glib.h>
 #include <epan/packet.h>
-#include <epan/conversation.h>
-#include <epan/oid_resolv.h>
+#include <epan/oids.h>
 #include <epan/asn1.h>
 
-#include <stdio.h>
-#include <string.h>
-
 #include "packet-ber.h"
 #include "packet-acse.h"
 #include "packet-x509if.h"
@@ -58,7 +54,7 @@
 #include "packet-pres.h"
 
 /* Initialize the protocol and registered fields */
-int proto_cmip = -1;
+static int proto_cmip = -1;
 static int hf_cmip_actionType_OID = -1;
 static int hf_cmip_eventType_OID = -1;
 static int hf_cmip_attributeId_OID = -1;
@@ -69,8 +65,9 @@ static int hf_NameBinding = -1;
 static int hf_ObjectClass = -1;
 
 /*--- Included file: packet-cmip-hf.c ---*/
-#line 1 "packet-cmip-hf.c"
+#line 1 "../../asn1/cmip/packet-cmip-hf.c"
 static int hf_cmip_BaseManagedObjectId_PDU = -1;  /* BaseManagedObjectId */
+static int hf_cmip_EventTypeId_PDU = -1;          /* EventTypeId */
 static int hf_cmip_ObjectClass_PDU = -1;          /* ObjectClass */
 static int hf_cmip_ActiveDestination_PDU = -1;    /* ActiveDestination */
 static int hf_cmip_AdditionalText_PDU = -1;       /* AdditionalText */
@@ -81,8 +78,11 @@ static int hf_cmip_AttributeIdentifierList_PDU = -1;  /* AttributeIdentifierList
 static int hf_cmip_AttributeList_PDU = -1;        /* AttributeList */
 static int hf_cmip_AttributeValueChangeDefinition_PDU = -1;  /* AttributeValueChangeDefinition */
 static int hf_cmip_AlarmStatus_PDU = -1;          /* AlarmStatus */
+static int hf_cmip_AvailabilityStatus_PDU = -1;   /* AvailabilityStatus */
 static int hf_cmip_BackedUpStatus_PDU = -1;       /* BackedUpStatus */
 static int hf_cmip_BackUpDestinationList_PDU = -1;  /* BackUpDestinationList */
+static int hf_cmip_BackUpRelationshipObject_PDU = -1;  /* BackUpRelationshipObject */
+static int hf_cmip_CapacityAlarmThreshold_PDU = -1;  /* CapacityAlarmThreshold */
 static int hf_cmip_ConfirmedMode_PDU = -1;        /* ConfirmedMode */
 static int hf_cmip_ControlStatus_PDU = -1;        /* ControlStatus */
 static int hf_cmip_CorrelatedNotifications_PDU = -1;  /* CorrelatedNotifications */
@@ -90,6 +90,8 @@ static int hf_cmip_CurrentLogSize_PDU = -1;       /* CurrentLogSize */
 static int hf_cmip_Destination_PDU = -1;          /* Destination */
 static int hf_cmip_DiscriminatorConstruct_PDU = -1;  /* DiscriminatorConstruct */
 static int hf_cmip_EventTime_PDU = -1;            /* EventTime */
+static int hf_cmip_GroupObjects_PDU = -1;         /* GroupObjects */
+static int hf_cmip_IntervalsOfDay_PDU = -1;       /* IntervalsOfDay */
 static int hf_cmip_LifecycleState_PDU = -1;       /* LifecycleState */
 static int hf_cmip_LogFullAction_PDU = -1;        /* LogFullAction */
 static int hf_cmip_LoggingTime_PDU = -1;          /* LoggingTime */
@@ -97,15 +99,21 @@ static int hf_cmip_LogRecordId_PDU = -1;          /* LogRecordId */
 static int hf_cmip_MaxLogSize_PDU = -1;           /* MaxLogSize */
 static int hf_cmip_MonitoredAttributes_PDU = -1;  /* MonitoredAttributes */
 static int hf_cmip_NameBinding_PDU = -1;          /* NameBinding */
+static int hf_cmip_NotificationIdentifier_PDU = -1;  /* NotificationIdentifier */
 static int hf_cmip_NumberOfRecords_PDU = -1;      /* NumberOfRecords */
 static int hf_cmip_OperationalState_PDU = -1;     /* OperationalState */
 static int hf_cmip_Packages_PDU = -1;             /* Packages */
+static int hf_cmip_PerceivedSeverity_PDU = -1;    /* PerceivedSeverity */
+static int hf_cmip_PrioritisedObject_PDU = -1;    /* PrioritisedObject */
 static int hf_cmip_ProbableCause_PDU = -1;        /* ProbableCause */
 static int hf_cmip_ProceduralStatus_PDU = -1;     /* ProceduralStatus */
 static int hf_cmip_ProposedRepairActions_PDU = -1;  /* ProposedRepairActions */
+static int hf_cmip_SecurityAlarmCause_PDU = -1;   /* SecurityAlarmCause */
 static int hf_cmip_SecurityAlarmSeverity_PDU = -1;  /* SecurityAlarmSeverity */
 static int hf_cmip_SecurityAlarmDetector_PDU = -1;  /* SecurityAlarmDetector */
 static int hf_cmip_ServiceProvider_PDU = -1;      /* ServiceProvider */
+static int hf_cmip_ServiceUser_PDU = -1;          /* ServiceUser */
+static int hf_cmip_SimpleNameType_PDU = -1;       /* SimpleNameType */
 static int hf_cmip_SourceIndicator_PDU = -1;      /* SourceIndicator */
 static int hf_cmip_SpecificProblems_PDU = -1;     /* SpecificProblems */
 static int hf_cmip_StandbyStatus_PDU = -1;        /* StandbyStatus */
@@ -119,31 +127,32 @@ static int hf_cmip_TrendIndication_PDU = -1;      /* TrendIndication */
 static int hf_cmip_UnknownStatus_PDU = -1;        /* UnknownStatus */
 static int hf_cmip_UsageState_PDU = -1;           /* UsageState */
 static int hf_cmip_WeekMask_PDU = -1;             /* WeekMask */
+static int hf_cmip_PAR_missingAttributeValue_item = -1;  /* AttributeId */
 static int hf_cmip_managedObjectClass = -1;       /* ObjectClass */
 static int hf_cmip_managedObjectInstance = -1;    /* ObjectInstance */
 static int hf_cmip_currentTime = -1;              /* GeneralizedTime */
-static int hf_cmip_actionErrorInfo = -1;          /* ActionErrorInfo */
-static int hf_cmip_errorStatus = -1;              /* T_errorStatus */
-static int hf_cmip_errorInfo = -1;                /* T_errorInfo */
+static int hf_cmip_actionErroractionErrorInfo = -1;  /* ActionErrorInfo */
+static int hf_cmip_actionErrorInfo_errorStatus = -1;  /* T_actionErrorInfo_errorStatus */
+static int hf_cmip_actionErrorInfo = -1;          /* T_actionErrorInfo */
 static int hf_cmip_actionType = -1;               /* ActionTypeId */
 static int hf_cmip_actionArgument = -1;           /* NoSuchArgument */
 static int hf_cmip_argumentValue = -1;            /* InvalidArgumentValue */
 static int hf_cmip_actionInfoArg = -1;            /* T_actionInfoArg */
 static int hf_cmip_actionReplyInfo = -1;          /* T_actionReplyInfo */
 static int hf_cmip_actionReply = -1;              /* ActionReply */
-static int hf_cmip_globalForm = -1;               /* T_globalForm */
+static int hf_cmip_actionTypeId_globalForm = -1;  /* T_actionTypeId_globalForm */
 static int hf_cmip_localForm = -1;                /* INTEGER */
-static int hf_cmip_id = -1;                       /* AttributeId */
-static int hf_cmip_value = -1;                    /* T_value */
-static int hf_cmip_errorStatus_01 = -1;           /* T_errorStatus_01 */
+static int hf_cmip_attributeid = -1;              /* AttributeId */
+static int hf_cmip_value = -1;                    /* AttributeValue */
+static int hf_cmip_attributeError_errorStatus = -1;  /* T_attributeError_errorStatus */
 static int hf_cmip_modifyOperator = -1;           /* ModifyOperator */
 static int hf_cmip_attributeId = -1;              /* AttributeId */
 static int hf_cmip_attributeValue = -1;           /* T_attributeValue */
-static int hf_cmip_globalForm_01 = -1;            /* T_globalForm_01 */
-static int hf_cmip_localForm_01 = -1;             /* T_localForm */
-static int hf_cmip_errorStatus_02 = -1;           /* T_errorStatus_02 */
-static int hf_cmip_id_01 = -1;                    /* T_id */
-static int hf_cmip_value_01 = -1;                 /* T_value_01 */
+static int hf_cmip_attributeId_globalForm = -1;   /* T_attributeId_globalForm */
+static int hf_cmip_attributeIdlocalForm = -1;     /* T_attributeIdlocalForm */
+static int hf_cmip_attributeIdError_errorStatus = -1;  /* T_attributeIdError_errorStatus */
+static int hf_cmip_id = -1;                       /* T_id */
+static int hf_cmip_attributeValueAssertionvalue = -1;  /* T_attributeValueAssertionvalue */
 static int hf_cmip_baseManagedObjectClass = -1;   /* ObjectClass */
 static int hf_cmip_baseManagedObjectInstance = -1;  /* ObjectInstance */
 static int hf_cmip_item = -1;                     /* FilterItem */
@@ -165,9 +174,9 @@ static int hf_cmip_deleteErrorInfo = -1;          /* T_deleteErrorInfo */
 static int hf_cmip_eventType = -1;                /* EventTypeId */
 static int hf_cmip_eventReplyInfo = -1;           /* T_eventReplyInfo */
 static int hf_cmip_eventTime = -1;                /* GeneralizedTime */
-static int hf_cmip_eventInfo = -1;                /* T_eventInfo */
+static int hf_cmip_eventReportArgumenteventInfo = -1;  /* EventReportArgumentEventInfo */
 static int hf_cmip_eventReply = -1;               /* EventReply */
-static int hf_cmip_globalForm_02 = -1;            /* T_globalForm_02 */
+static int hf_cmip_eventTypeId_globalForm = -1;   /* T_eventTypeId_globalForm */
 static int hf_cmip_equality = -1;                 /* Attribute */
 static int hf_cmip_substrings = -1;               /* T_substrings */
 static int hf_cmip_substrings_item = -1;          /* T_substrings_item */
@@ -176,7 +185,7 @@ static int hf_cmip_anyString = -1;                /* Attribute */
 static int hf_cmip_finalString = -1;              /* Attribute */
 static int hf_cmip_greaterOrEqual = -1;           /* Attribute */
 static int hf_cmip_lessOrEqual = -1;              /* Attribute */
-static int hf_cmip_present = -1;                  /* AttributeId */
+static int hf_cmip_filterItempresent = -1;        /* AttributeId */
 static int hf_cmip_subsetOf = -1;                 /* Attribute */
 static int hf_cmip_supersetOf = -1;               /* Attribute */
 static int hf_cmip_nonNullSetIntersection = -1;   /* Attribute */
@@ -186,7 +195,7 @@ static int hf_cmip_getInfoList = -1;              /* SET_OF_GetInfoStatus */
 static int hf_cmip_getInfoList_item = -1;         /* GetInfoStatus */
 static int hf_cmip_actionValue = -1;              /* ActionInfo */
 static int hf_cmip_eventValue = -1;               /* T_eventValue */
-static int hf_cmip_eventInfo_01 = -1;             /* T_eventInfo_01 */
+static int hf_cmip_eventInfo = -1;                /* T_eventInfo */
 static int hf_cmip_getResult = -1;                /* GetResult */
 static int hf_cmip_getListError = -1;             /* GetListError */
 static int hf_cmip_setResult = -1;                /* SetResult */
@@ -198,8 +207,8 @@ static int hf_cmip_actionError = -1;              /* ActionError */
 static int hf_cmip_deleteError = -1;              /* DeleteError */
 static int hf_cmip_actionId = -1;                 /* T_actionId */
 static int hf_cmip_eventId = -1;                  /* T_eventId */
-static int hf_cmip_globalForm_03 = -1;            /* T_globalForm_03 */
-static int hf_cmip_localForm_02 = -1;             /* T_localForm_01 */
+static int hf_cmip_objectClass_globalForm = -1;   /* T_objectClass_globalForm */
+static int hf_cmip_objectClasslocalForm = -1;     /* T_objectClasslocalForm */
 static int hf_cmip_distinguishedName = -1;        /* DistinguishedName */
 static int hf_cmip_nonSpecificForm = -1;          /* OCTET_STRING */
 static int hf_cmip_localDistinguishedName = -1;   /* RDNSequence */
@@ -213,12 +222,12 @@ static int hf_cmip_attributeError = -1;           /* AttributeError */
 static int hf_cmip_setInfoList = -1;              /* SET_OF_SetInfoStatus */
 static int hf_cmip_setInfoList_item = -1;         /* SetInfoStatus */
 static int hf_cmip_errorId = -1;                  /* T_errorId */
-static int hf_cmip_errorInfo_01 = -1;             /* T_errorInfo_01 */
+static int hf_cmip_errorInfo = -1;                /* T_errorInfo */
 static int hf_cmip_abortSource = -1;              /* CMIPAbortSource */
 static int hf_cmip_userInfo = -1;                 /* EXTERNAL */
 static int hf_cmip_protocolVersion = -1;          /* ProtocolVersion */
 static int hf_cmip_functionalUnits = -1;          /* FunctionalUnits */
-static int hf_cmip_accessControl_01 = -1;         /* EXTERNAL */
+static int hf_cmip_cmipUserInfoaccessControl = -1;  /* EXTERNAL */
 static int hf_cmip_AdditionalInformation_item = -1;  /* ManagementExtension */
 static int hf_cmip_Allomorphs_item = -1;          /* ObjectClass */
 static int hf_cmip_AttributeIdentifierList_item = -1;  /* AttributeId */
@@ -233,10 +242,6 @@ static int hf_cmip_objectName = -1;               /* ObjectInstance */
 static int hf_cmip_noObject = -1;                 /* NULL */
 static int hf_cmip_CapacityAlarmThreshold_item = -1;  /* INTEGER_0_100 */
 static int hf_cmip_ControlStatus_item = -1;       /* ControlStatus_item */
-static int hf_cmip_CounterThreshold_item = -1;    /* CounterThreshold_item */
-static int hf_cmip_comparisonLevel = -1;          /* INTEGER */
-static int hf_cmip_offsetValue = -1;              /* INTEGER */
-static int hf_cmip_notificationOnOff = -1;        /* BOOLEAN */
 static int hf_cmip_CorrelatedNotifications_item = -1;  /* CorrelatedNotifications_item */
 static int hf_cmip_correlatedNotifications = -1;  /* SET_OF_NotificationIdentifier */
 static int hf_cmip_correlatedNotifications_item = -1;  /* NotificationIdentifier */
@@ -244,19 +249,14 @@ static int hf_cmip_sourceObjectInst = -1;         /* ObjectInstance */
 static int hf_cmip_single = -1;                   /* AE_title */
 static int hf_cmip_multiple = -1;                 /* SET_OF_AE_title */
 static int hf_cmip_multiple_item = -1;            /* AE_title */
-static int hf_cmip_GaugeThreshold_item = -1;      /* GaugeThreshold_item */
-static int hf_cmip_notifyLow = -1;                /* NotifyThreshold */
-static int hf_cmip_notifyHigh = -1;               /* NotifyThreshold */
 static int hf_cmip_GroupObjects_item = -1;        /* ObjectInstance */
 static int hf_cmip_IntervalsOfDay_item = -1;      /* IntervalsOfDay_item */
 static int hf_cmip_intervalStart = -1;            /* Time24 */
 static int hf_cmip_intervalEnd = -1;              /* Time24 */
-static int hf_cmip_identifier = -1;               /* T_identifier */
+static int hf_cmip_managementExtensionidentifier = -1;  /* T_managementExtensionidentifier */
 static int hf_cmip_significance = -1;             /* BOOLEAN */
 static int hf_cmip_information = -1;              /* T_information */
 static int hf_cmip_MonitoredAttributes_item = -1;  /* Attribute */
-static int hf_cmip_threshold = -1;                /* ObservedValue */
-static int hf_cmip_notifyOnOff = -1;              /* BOOLEAN */
 static int hf_cmip_integer = -1;                  /* INTEGER */
 static int hf_cmip_real = -1;                     /* REAL */
 static int hf_cmip_Packages_item = -1;            /* OBJECT_IDENTIFIER */
@@ -269,7 +269,7 @@ static int hf_cmip_ProceduralStatus_item = -1;    /* ProceduralStatus_item */
 static int hf_cmip_ProposedRepairActions_item = -1;  /* SpecificIdentifier */
 static int hf_cmip_mechanism = -1;                /* OBJECT_IDENTIFIER */
 static int hf_cmip_application = -1;              /* AE_title */
-static int hf_cmip_identifier_01 = -1;            /* T_identifier_01 */
+static int hf_cmip_serviceUseridentifier = -1;    /* T_serviceUseridentifier */
 static int hf_cmip_details = -1;                  /* T_details */
 static int hf_cmip_number = -1;                   /* INTEGER */
 static int hf_cmip_string = -1;                   /* GraphicString */
@@ -284,11 +284,6 @@ static int hf_cmip_featureInfo = -1;              /* T_featureInfo */
 static int hf_cmip_name = -1;                     /* GraphicString */
 static int hf_cmip_nothing = -1;                  /* NULL */
 static int hf_cmip_oid = -1;                      /* OBJECT_IDENTIFIER */
-static int hf_cmip_currentTideMark = -1;          /* TideMark */
-static int hf_cmip_previousTideMark = -1;         /* TideMark */
-static int hf_cmip_resetTime = -1;                /* GeneralizedTime */
-static int hf_cmip_maxTideMar = -1;               /* ObservedValue */
-static int hf_cmip_minTideMark = -1;              /* ObservedValue */
 static int hf_cmip_hour = -1;                     /* INTEGER_0_23 */
 static int hf_cmip_minute = -1;                   /* INTEGER_0_59 */
 static int hf_cmip_triggeredThreshold = -1;       /* AttributeId */
@@ -323,7 +318,7 @@ static int hf_cmip_general = -1;                  /* GeneralProblem */
 static int hf_cmip_invokeProblem = -1;            /* InvokeProblem */
 static int hf_cmip_returnResultProblem = -1;      /* ReturnResultProblem */
 static int hf_cmip_returnErrorProblem = -1;       /* ReturnErrorProblem */
-static int hf_cmip_present_01 = -1;               /* INTEGER */
+static int hf_cmip_present = -1;                  /* INTEGER */
 static int hf_cmip_synchronization = -1;          /* CMISSync */
 static int hf_cmip_actionInfo = -1;               /* ActionInfo */
 static int hf_cmip_attributeIdList = -1;          /* SET_OF_AttributeId */
@@ -349,17 +344,18 @@ static int hf_cmip_T_daysOfWeek_friday = -1;
 static int hf_cmip_T_daysOfWeek_saturday = -1;
 
 /*--- End of included file: packet-cmip-hf.c ---*/
-#line 63 "packet-cmip-template.c"
+#line 59 "../../asn1/cmip/packet-cmip-template.c"
 
 /* Initialize the subtree pointers */
 static gint ett_cmip = -1;
 
 /*--- Included file: packet-cmip-ett.c ---*/
-#line 1 "packet-cmip-ett.c"
+#line 1 "../../asn1/cmip/packet-cmip-ett.c"
+static gint ett_cmip_PAR_missingAttributeValue = -1;
 static gint ett_cmip_ActionArgument = -1;
 static gint ett_cmip_ActionError = -1;
 static gint ett_cmip_ActionErrorInfo = -1;
-static gint ett_cmip_T_errorInfo = -1;
+static gint ett_cmip_T_actionErrorInfo = -1;
 static gint ett_cmip_ActionInfo = -1;
 static gint ett_cmip_ActionReply = -1;
 static gint ett_cmip_ActionResult = -1;
@@ -428,21 +424,16 @@ static gint ett_cmip_BackUpDestinationList = -1;
 static gint ett_cmip_BackUpRelationshipObject = -1;
 static gint ett_cmip_CapacityAlarmThreshold = -1;
 static gint ett_cmip_ControlStatus = -1;
-static gint ett_cmip_CounterThreshold = -1;
-static gint ett_cmip_CounterThreshold_item = -1;
 static gint ett_cmip_CorrelatedNotifications = -1;
 static gint ett_cmip_CorrelatedNotifications_item = -1;
 static gint ett_cmip_SET_OF_NotificationIdentifier = -1;
 static gint ett_cmip_Destination = -1;
 static gint ett_cmip_SET_OF_AE_title = -1;
-static gint ett_cmip_GaugeThreshold = -1;
-static gint ett_cmip_GaugeThreshold_item = -1;
 static gint ett_cmip_GroupObjects = -1;
 static gint ett_cmip_IntervalsOfDay = -1;
 static gint ett_cmip_IntervalsOfDay_item = -1;
 static gint ett_cmip_ManagementExtension = -1;
 static gint ett_cmip_MonitoredAttributes = -1;
-static gint ett_cmip_NotifyThreshold = -1;
 static gint ett_cmip_ObservedValue = -1;
 static gint ett_cmip_Packages = -1;
 static gint ett_cmip_PrioritisedObject = -1;
@@ -460,8 +451,6 @@ static gint ett_cmip_SupportedFeatures = -1;
 static gint ett_cmip_SupportedFeatures_item = -1;
 static gint ett_cmip_SystemId = -1;
 static gint ett_cmip_SystemTitle = -1;
-static gint ett_cmip_TideMarkInfo = -1;
-static gint ett_cmip_TideMark = -1;
 static gint ett_cmip_Time24 = -1;
 static gint ett_cmip_ThresholdInfo = -1;
 static gint ett_cmip_ThresholdLevelInd = -1;
@@ -485,25 +474,67 @@ static gint ett_cmip_T_modificationList = -1;
 static gint ett_cmip_T_modificationList_item = -1;
 
 /*--- End of included file: packet-cmip-ett.c ---*/
-#line 67 "packet-cmip-template.c"
+#line 63 "../../asn1/cmip/packet-cmip-template.c"
 
 static guint32 opcode;
 
+/* Dissector table */
+static dissector_table_t attribute_id_dissector_table;
+
+
+/*--- Included file: packet-cmip-table.c ---*/
+#line 1 "../../asn1/cmip/packet-cmip-table.c"
+
+/* CMIP OPERATIONS */
 static const value_string cmip_Opcode_vals[] = {
-  {   0, "m-EventReport" },
-  {   1, "m-EventReport-Confirmed" },
-  {   2, "m-Linked-Reply" },
-  {   3, "m-Get" },
-  {   4, "m-Set" },
-  {   5, "m-Set-Confirmed" },
-  {   6, "m-Action" },
-  {   7, "m-Action-Confirmed" },
-  {   8, "m-Create" },
-  {   9, "m-Delete" },
-  {  10, "m-CancelGet" },
+       { 6, "m_Action" },
+       { 7, "m_Action_Confirmed" },
+       { 10, "m_CancelGet" },
+       { 8, "m_Create" },
+       { 9, "m_Delete" },
+       { 0, "m_EventReport" },
+       { 1, "m_EventReport_Confirmed" },
+       { 3, "m_Get" },
+       { 2, "m_Linked_Reply" },
+       { 4, "m_Set" },
+       { 5, "m_Set_Confirmed" },
   { 0, NULL }
 };
 
+
+/* CMIP ERRORS */
+static const value_string cmip_error_code_vals[] = {
+       { 2, "accessDenied" },  
+       { 19, "classInstanceConflict" },  
+       { 20, "complexityLimitation" },  
+       { 11, "duplicateManagedObjectInstance" },  
+       { 7, "getListError" },  
+       { 15, "invalidArgumentValue" },  
+       { 6, "invalidAttributeValue" },  
+       { 4, "invalidFilter" },  
+       { 17, "invalidObjectInstance" },  
+       { 16, "invalidScope" },  
+       { 18, "missingAttributeValue" },  
+       { 21, "mistypedOperation" },  
+       { 9, "noSuchAction" },  
+       { 14, "noSuchArgument" },  
+       { 5, "noSuchAttribute" },  
+       { 13, "noSuchEventType" },  
+       { 22, "noSuchInvokeId" },  
+       { 0, "noSuchObjectClass" },  
+       { 1, "noSuchObjectInstance" },  
+       { 12, "noSuchReferenceObject" },  
+       { 23, "operationCancelled" },  
+       { 10, "processingFailure" },  
+       { 8, "setListError" },  
+       { 3, "syncNotSupported" },  
+  { 0, NULL }
+};
+
+
+/*--- End of included file: packet-cmip-table.c ---*/
+#line 70 "../../asn1/cmip/packet-cmip-template.c"
+
 static int opcode_type;
 #define OPCODE_INVOKE        1
 #define OPCODE_RETURN_RESULT 2
@@ -513,6 +544,7 @@ static int opcode_type;
 static int attributeform;
 #define ATTRIBUTE_LOCAL_FORM  0
 #define ATTRIBUTE_GLOBAL_FORM 1
+static int attribute_local_id;
 static const char *attribute_identifier_id;
 
 static const char *attributevalueassertion_id;
@@ -526,7 +558,7 @@ static const char *objectclass_identifier_id;
 
 
 /*--- Included file: packet-cmip-val.h ---*/
-#line 1 "packet-cmip-val.h"
+#line 1 "../../asn1/cmip/packet-cmip-val.h"
 #define smi2AttributeID                "2.9.3.2.7"
 #define smi2AttributeGroup             "2.9.3.2.8"
 #define arfProbableCause               "2.9.3.2.0.0"
@@ -613,10 +645,10 @@ static const char *objectclass_identifier_id;
 #define noInvokeId                     NULL
 
 /*--- End of included file: packet-cmip-val.h ---*/
-#line 106 "packet-cmip-template.c"
+#line 93 "../../asn1/cmip/packet-cmip-template.c"
 
 /*--- Included file: packet-cmip-fn.c ---*/
-#line 1 "packet-cmip-fn.c"
+#line 1 "../../asn1/cmip/packet-cmip-fn.c"
 /*--- Cyclic dependencies ---*/
 
 /* CMISFilter -> CMISFilter/and -> CMISFilter */
@@ -626,6 +658,70 @@ static int dissect_cmip_CMISFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
 
 
 
+static int
+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_) {
+#line 266 "../../asn1/cmip/cmip.cnf"
+  attributeform = ATTRIBUTE_GLOBAL_FORM;
+    offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &attribute_identifier_id);
+
+
+
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+#line 270 "../../asn1/cmip/cmip.cnf"
+  attributeform = ATTRIBUTE_LOCAL_FORM;
+    offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                &attribute_local_id);
+
+
+
+
+  return offset;
+}
+
+
+static const value_string cmip_AttributeId_vals[] = {
+  {   0, "globalForm" },
+  {   1, "localForm" },
+  { 0, NULL }
+};
+
+static const ber_choice_t AttributeId_choice[] = {
+  {   0, &hf_cmip_attributeId_globalForm, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_attributeId_globalForm },
+  {   1, &hf_cmip_attributeIdlocalForm, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_attributeIdlocalForm },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 AttributeId_choice, hf_index, ett_cmip_AttributeId,
+                                 NULL);
+
+  return offset;
+}
+
+
+static const ber_sequence_t PAR_missingAttributeValue_set_of[1] = {
+  { &hf_cmip_PAR_missingAttributeValue_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
+};
+
+static int
+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_) {
+  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
+                                 PAR_missingAttributeValue_set_of, hf_index, ett_cmip_PAR_missingAttributeValue);
+
+  return offset;
+}
+
+
+
 static int
 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_) {
   offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
@@ -636,8 +732,8 @@ dissect_cmip_AccessControl(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
 
 
 static int
-dissect_cmip_T_globalForm_03(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 315 "cmip.cnf"
+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_) {
+#line 430 "../../asn1/cmip/cmip.cnf"
   objectclassform = OBJECTCLASS_GLOBAL_FORM;
 
   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &objectclass_identifier_id);
@@ -648,13 +744,13 @@ dissect_cmip_T_globalForm_03(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
 
 
 static int
-dissect_cmip_T_localForm_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 320 "cmip.cnf"
+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_) {
+#line 435 "../../asn1/cmip/cmip.cnf"
   objectclassform = OBJECTCLASS_LOCAL_FORM;
 
 
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -667,8 +763,8 @@ const value_string cmip_ObjectClass_vals[] = {
 };
 
 static const ber_choice_t ObjectClass_choice[] = {
-  {   0, &hf_cmip_globalForm_03  , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_globalForm_03 },
-  {   1, &hf_cmip_localForm_02   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_localForm_01 },
+  {   0, &hf_cmip_objectClass_globalForm, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_objectClass_globalForm },
+  {   1, &hf_cmip_objectClasslocalForm, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_objectClasslocalForm },
   { 0, NULL, 0, 0, 0, NULL }
 };
 
@@ -693,8 +789,8 @@ dissect_cmip_T_id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_,
 
 
 static int
-dissect_cmip_T_value_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 237 "cmip.cnf"
+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_) {
+#line 286 "../../asn1/cmip/cmip.cnf"
     offset=call_ber_oid_callback(attributevalueassertion_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -704,8 +800,8 @@ dissect_cmip_T_value_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static const ber_sequence_t AttributeValueAssertion_sequence[] = {
-  { &hf_cmip_id_01          , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_id },
-  { &hf_cmip_value_01       , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_value_01 },
+  { &hf_cmip_id             , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_id },
+  { &hf_cmip_attributeValueAssertionvalue, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeValueAssertionvalue },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -814,7 +910,7 @@ static const value_string cmip_T_namedNumbers_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -824,7 +920,7 @@ dissect_cmip_T_namedNumbers(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -856,70 +952,25 @@ dissect_cmip_Scope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_,
 
 
 static int
-dissect_cmip_T_globalForm_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 221 "cmip.cnf"
-  attributeform = ATTRIBUTE_GLOBAL_FORM;
-    offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &attribute_identifier_id);
-
-
-
-
-  return offset;
-}
-
-
-
-static int
-dissect_cmip_T_localForm(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 225 "cmip.cnf"
-  attributeform = ATTRIBUTE_LOCAL_FORM;
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_cmip_localForm, NULL);
-
-
-
-  return offset;
-}
-
-
-static const value_string cmip_AttributeId_vals[] = {
-  {   0, "globalForm" },
-  {   1, "localForm" },
-  { 0, NULL }
-};
-
-static const ber_choice_t AttributeId_choice[] = {
-  {   0, &hf_cmip_globalForm_01  , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_globalForm_01 },
-  {   1, &hf_cmip_localForm_01   , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_localForm },
-  { 0, NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 AttributeId_choice, hf_index, ett_cmip_AttributeId,
-                                 NULL);
-
-  return offset;
-}
-
-
-
-static int
-dissect_cmip_T_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 229 "cmip.cnf"
-  /*XXX handle local form here */
+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_) {
+#line 274 "../../asn1/cmip/cmip.cnf"
   if(attributeform==ATTRIBUTE_GLOBAL_FORM){
     offset=call_ber_oid_callback(attribute_identifier_id, tvb, offset, actx->pinfo, tree);
+  } else if (dissector_try_uint(attribute_id_dissector_table, attribute_local_id, tvb, actx->pinfo, tree)) {
+    offset=tvb_length (tvb);
+  } else {
+    offset=dissect_unknown_ber(actx->pinfo, tvb, offset, tree);
   }
 
 
+
   return offset;
 }
 
 
 static const ber_sequence_t Attribute_sequence[] = {
-  { &hf_cmip_id             , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
-  { &hf_cmip_value          , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_value },
+  { &hf_cmip_attributeid    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
+  { &hf_cmip_value          , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_AttributeValue },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -986,7 +1037,7 @@ static const ber_choice_t FilterItem_choice[] = {
   {   1, &hf_cmip_substrings     , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_substrings },
   {   2, &hf_cmip_greaterOrEqual , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
   {   3, &hf_cmip_lessOrEqual    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
-  {   4, &hf_cmip_present        , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_AttributeId },
+  {   4, &hf_cmip_filterItempresent, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_AttributeId },
   {   5, &hf_cmip_subsetOf       , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
   {   6, &hf_cmip_supersetOf     , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
   {   7, &hf_cmip_nonNullSetIntersection, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_cmip_Attribute },
@@ -1044,7 +1095,7 @@ dissect_cmip_CMISFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static int
-dissect_cmip_T_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_) {
+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_) {
   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_cmip_actionType_OID, &object_identifier_id);
 
   return offset;
@@ -1058,7 +1109,7 @@ static const value_string cmip_ActionTypeId_vals[] = {
 };
 
 static const ber_choice_t ActionTypeId_choice[] = {
-  {   2, &hf_cmip_globalForm     , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_globalForm },
+  {   2, &hf_cmip_actionTypeId_globalForm, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_actionTypeId_globalForm },
   {   3, &hf_cmip_localForm      , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
   { 0, NULL, 0, 0, 0, NULL }
 };
@@ -1076,7 +1127,7 @@ dissect_cmip_ActionTypeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 
 static int
 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_) {
-#line 326 "cmip.cnf"
+#line 441 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1129,7 +1180,7 @@ dissect_cmip_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
 }
 
 
-static const value_string cmip_T_errorStatus_vals[] = {
+static const value_string cmip_T_actionErrorInfo_errorStatus_vals[] = {
   {   2, "accessDenied" },
   {   9, "noSuchAction" },
   {  14, "noSuchArgument" },
@@ -1139,7 +1190,7 @@ static const value_string cmip_T_errorStatus_vals[] = {
 
 
 static int
-dissect_cmip_T_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_) {
+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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
 
@@ -1164,7 +1215,7 @@ dissect_cmip_T_actionId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static int
-dissect_cmip_T_globalForm_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+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_) {
   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_cmip_eventType_OID, &object_identifier_id);
 
   return offset;
@@ -1178,7 +1229,7 @@ static const value_string cmip_EventTypeId_vals[] = {
 };
 
 static const ber_choice_t EventTypeId_choice[] = {
-  {   6, &hf_cmip_globalForm_02  , BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_T_globalForm_02 },
+  {   6, &hf_cmip_eventTypeId_globalForm, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_T_eventTypeId_globalForm },
   {   7, &hf_cmip_localForm      , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_cmip_INTEGER },
   { 0, NULL, 0, 0, 0, NULL }
 };
@@ -1232,19 +1283,19 @@ dissect_cmip_NoSuchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 
 
 static int
-dissect_cmip_T_eventInfo_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 350 "cmip.cnf"
-
+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_) {
+#line 471 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
+
   return offset;
 }
 
 
 static const ber_sequence_t T_eventValue_sequence[] = {
   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
-  { &hf_cmip_eventInfo_01   , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_eventInfo_01 },
+  { &hf_cmip_eventInfo      , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_eventInfo },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -1279,14 +1330,14 @@ dissect_cmip_InvalidArgumentValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
 }
 
 
-static const value_string cmip_T_errorInfo_vals[] = {
+static const value_string cmip_T_actionErrorInfo_vals[] = {
   {   0, "actionType" },
   {   1, "actionArgument" },
   {   2, "argumentValue" },
   { 0, NULL }
 };
 
-static const ber_choice_t T_errorInfo_choice[] = {
+static const ber_choice_t T_actionErrorInfo_choice[] = {
   {   0, &hf_cmip_actionType     , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_cmip_ActionTypeId },
   {   1, &hf_cmip_actionArgument , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_NoSuchArgument },
   {   2, &hf_cmip_argumentValue  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_InvalidArgumentValue },
@@ -1294,9 +1345,9 @@ static const ber_choice_t T_errorInfo_choice[] = {
 };
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 T_errorInfo_choice, hf_index, ett_cmip_T_errorInfo,
+                                 T_actionErrorInfo_choice, hf_index, ett_cmip_T_actionErrorInfo,
                                  NULL);
 
   return offset;
@@ -1304,8 +1355,8 @@ dissect_cmip_T_errorInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
 
 
 static const ber_sequence_t ActionErrorInfo_sequence[] = {
-  { &hf_cmip_errorStatus    , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorStatus },
-  { &hf_cmip_errorInfo      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_errorInfo },
+  { &hf_cmip_actionErrorInfo_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_actionErrorInfo_errorStatus },
+  { &hf_cmip_actionErrorInfo, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_actionErrorInfo },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -1322,7 +1373,7 @@ static const ber_sequence_t ActionError_sequence[] = {
   { &hf_cmip_managedObjectClass, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectClass },
   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
   { &hf_cmip_currentTime    , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
-  { &hf_cmip_actionErrorInfo, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_ActionErrorInfo },
+  { &hf_cmip_actionErroractionErrorInfo, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_cmip_ActionErrorInfo },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -1338,7 +1389,7 @@ dissect_cmip_ActionError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
 
 static int
 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_) {
-#line 353 "cmip.cnf"
+#line 474 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1380,7 +1431,7 @@ dissect_cmip_ActionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 }
 
 
-static const value_string cmip_T_errorStatus_01_vals[] = {
+static const value_string cmip_T_attributeError_errorStatus_vals[] = {
   {   2, "accessDenied" },
   {   5, "noSuchAttribute" },
   {   6, "invalidAttributeValue" },
@@ -1391,7 +1442,7 @@ static const value_string cmip_T_errorStatus_01_vals[] = {
 
 
 static int
-dissect_cmip_T_errorStatus_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
 
@@ -1411,7 +1462,7 @@ static const value_string cmip_ModifyOperator_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -1420,7 +1471,7 @@ dissect_cmip_ModifyOperator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 
 static int
 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_) {
-#line 347 "cmip.cnf"
+#line 468 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1430,7 +1481,7 @@ dissect_cmip_T_attributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
 
 
 static const ber_sequence_t AttributeError_sequence[] = {
-  { &hf_cmip_errorStatus_01 , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorStatus_01 },
+  { &hf_cmip_attributeError_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeError_errorStatus },
   { &hf_cmip_modifyOperator , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ModifyOperator },
   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
   { &hf_cmip_attributeValue , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeValue },
@@ -1446,7 +1497,7 @@ dissect_cmip_AttributeError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 }
 
 
-static const value_string cmip_T_errorStatus_02_vals[] = {
+static const value_string cmip_T_attributeIdError_errorStatus_vals[] = {
   {   2, "accessDenied" },
   {   5, "noSuchAttribute" },
   { 0, NULL }
@@ -1454,7 +1505,7 @@ static const value_string cmip_T_errorStatus_02_vals[] = {
 
 
 static int
-dissect_cmip_T_errorStatus_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
 
@@ -1463,7 +1514,7 @@ dissect_cmip_T_errorStatus_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
 
 
 static const ber_sequence_t AttributeIdError_sequence[] = {
-  { &hf_cmip_errorStatus_02 , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorStatus_02 },
+  { &hf_cmip_attributeIdError_errorStatus, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_cmip_T_attributeIdError_errorStatus },
   { &hf_cmip_attributeId    , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
   { NULL, 0, 0, 0, NULL }
 };
@@ -1648,7 +1699,7 @@ dissect_cmip_DeleteResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 
 static int
 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_) {
-#line 335 "cmip.cnf"
+#line 450 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1674,8 +1725,8 @@ dissect_cmip_EventReply(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static int
-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_) {
-#line 332 "cmip.cnf"
+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_) {
+#line 447 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1689,7 +1740,7 @@ static const ber_sequence_t EventReportArgument_sequence[] = {
   { &hf_cmip_managedObjectInstance, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
   { &hf_cmip_eventTime      , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
   { &hf_cmip_eventType      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_EventTypeId },
-  { &hf_cmip_eventInfo      , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_T_eventInfo },
+  { &hf_cmip_eventReportArgumenteventInfo, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EventReportArgumentEventInfo },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -1837,7 +1888,7 @@ static const value_string cmip_InvokeId_vals[] = {
 };
 
 static const ber_choice_t InvokeId_choice[] = {
-  {   0, &hf_cmip_present_01     , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
+  {   0, &hf_cmip_present        , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
   {   1, &hf_cmip_absent         , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
   { 0, NULL, 0, 0, 0, NULL }
 };
@@ -1941,8 +1992,8 @@ dissect_cmip_T_errorId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static int
-dissect_cmip_T_errorInfo_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 344 "cmip.cnf"
+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_) {
+#line 465 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -1953,7 +2004,7 @@ dissect_cmip_T_errorInfo_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 
 static const ber_sequence_t SpecificErrorInfo_sequence[] = {
   { &hf_cmip_errorId        , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorId },
-  { &hf_cmip_errorInfo_01   , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorInfo_01 },
+  { &hf_cmip_errorInfo      , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_errorInfo },
   { NULL, 0, 0, 0, NULL }
 };
 
@@ -2051,9 +2102,15 @@ dissect_cmip_NoSuchEventType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
 
 static int
 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_) {
-#line 338 "cmip.cnf"
-  offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
-
+#line 453 "../../asn1/cmip/cmip.cnf"
+  if(attributeform==ATTRIBUTE_GLOBAL_FORM){
+    offset=call_ber_oid_callback(attribute_identifier_id, tvb, offset, actx->pinfo, tree);
+  } else if (dissector_try_uint(attribute_id_dissector_table, attribute_local_id, tvb, actx->pinfo, tree)) {
+    offset=tvb_length (tvb);
+  } else {
+    offset=dissect_unknown_ber(actx->pinfo, tvb, offset, tree);
+  }
+  
 
 
   return offset;
@@ -2109,11 +2166,23 @@ dissect_cmip_SetArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
 }
 
 
+static const value_string cmip_CMIPAbortSource_vals[] = {
+  {   0, "cmiseServiceUser" },
+  {   1, "cmiseServiceProvider" },
+  { 0, NULL }
+};
+
 
 static int
-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_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+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_) {
+#line 230 "../../asn1/cmip/cmip.cnf"
+  guint32 value;
+
+    offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                  &value);
+
+  col_append_fstr(actx->pinfo->cinfo, COL_INFO, " AbortSource:%s", val_to_str(value, cmip_CMIPAbortSource_vals, " Unknown AbortSource:%d"));
+
 
   return offset;
 }
@@ -2121,561 +2190,115 @@ dissect_cmip_InvokeId_present(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
 
 
 static int
-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_) {
-  offset = dissect_cmip_InvokeId_present(implicit_tag, tvb, offset, actx, tree, hf_index);
+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_) {
+  offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_T_linkedId_vals[] = {
-  {   0, "present" },
-  {   1, "absent" },
-  { 0, NULL }
+static const ber_sequence_t CMIPAbortInfo_sequence[] = {
+  { &hf_cmip_abortSource    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_CMIPAbortSource },
+  { &hf_cmip_userInfo       , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
+  { NULL, 0, 0, 0, NULL }
 };
 
-static const ber_choice_t T_linkedId_choice[] = {
-  {   0, &hf_cmip_linkedIdPresent, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_linkedIdPresent },
-  {   1, &hf_cmip_absent         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_NULL },
-  { 0, NULL, 0, 0, 0, NULL }
+int
+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_) {
+#line 222 "../../asn1/cmip/cmip.cnf"
+  col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ABORT");
+
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   CMIPAbortInfo_sequence, hf_index, ett_cmip_CMIPAbortInfo);
+
+  return offset;
+}
+
+
+static const asn_namedbit FunctionalUnits_bits[] = {
+  {  0, &hf_cmip_FunctionalUnits_multipleObjectSelection, -1, -1, "multipleObjectSelection", NULL },
+  {  1, &hf_cmip_FunctionalUnits_filter, -1, -1, "filter", NULL },
+  {  2, &hf_cmip_FunctionalUnits_multipleReply, -1, -1, "multipleReply", NULL },
+  {  3, &hf_cmip_FunctionalUnits_extendedService, -1, -1, "extendedService", NULL },
+  {  4, &hf_cmip_FunctionalUnits_cancelGet, -1, -1, "cancelGet", NULL },
+  { 0, NULL, 0, 0, NULL, NULL }
 };
 
 static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 T_linkedId_choice, hf_index, ett_cmip_T_linkedId,
-                                 NULL);
+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_) {
+  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
+                                    FunctionalUnits_bits, hf_index, ett_cmip_FunctionalUnits,
+                                    NULL);
 
   return offset;
 }
 
 
+static const asn_namedbit ProtocolVersion_bits[] = {
+  {  0, &hf_cmip_ProtocolVersion_version1, -1, -1, "version1", NULL },
+  {  1, &hf_cmip_ProtocolVersion_version2, -1, -1, "version2", NULL },
+  { 0, NULL, 0, 0, NULL, NULL }
+};
 
 static int
-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_) {
-#line 186 "cmip.cnf"
-    offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  &opcode);
+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_) {
+  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
+                                    ProtocolVersion_bits, hf_index, ett_cmip_ProtocolVersion,
+                                    NULL);
 
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, cmip_Opcode_vals, " Unknown Opcode:%d"));
-  }
+  return offset;
+}
+
+
+static const ber_sequence_t CMIPUserInfo_sequence[] = {
+  { &hf_cmip_protocolVersion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ProtocolVersion },
+  { &hf_cmip_functionalUnits, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_FunctionalUnits },
+  { &hf_cmip_cmipUserInfoaccessControl, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
+  { &hf_cmip_userInfo       , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
+  { NULL, 0, 0, 0, NULL }
+};
+
+int
+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_) {
+#line 226 "../../asn1/cmip/cmip.cnf"
+  col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ASSOCIATE");
 
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   CMIPUserInfo_sequence, hf_index, ett_cmip_CMIPUserInfo);
 
   return offset;
 }
 
 
+static const ber_sequence_t SET_OF_AE_title_set_of[1] = {
+  { &hf_cmip_multiple_item  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
+};
 
 static int
-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_) {
-  offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
+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_) {
+  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
+                                 SET_OF_AE_title_set_of, hf_index, ett_cmip_SET_OF_AE_title);
 
   return offset;
 }
 
 
-static const value_string cmip_Code_vals[] = {
-  {   0, "local" },
-  {   1, "global" },
+static const value_string cmip_Destination_vals[] = {
+  {   0, "single" },
+  {   1, "multiple" },
   { 0, NULL }
 };
 
-static const ber_choice_t Code_choice[] = {
-  {   0, &hf_cmip_local          , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_T_local },
-  {   1, &hf_cmip_global         , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
+static const ber_choice_t Destination_choice[] = {
+  {   0, &hf_cmip_single         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
+  {   1, &hf_cmip_multiple       , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_SET_OF_AE_title },
   { 0, NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 Code_choice, hf_index, ett_cmip_Code,
-                                 NULL);
-
-  return offset;
-}
-
-
-
-static int
-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_) {
-#line 240 "cmip.cnf"
-    switch(opcode){
-    case 0: /* M-eventreport */
-      offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 1: /* M-eventreport-confirmed */
-      offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 2: /* M-linkedreply */
-      offset = dissect_cmip_LinkedReplyArgument(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 3: /* M-get */
-      offset = dissect_cmip_GetArgument(FALSE, tvb, offset,actx, tree, -1);
-      break;
-    case 4: /* M-set */
-      offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
-      break;
-    case 5: /* M-set-confirmed */
-      offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
-      break;
-    case 6: /* M-action*/
-      offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 7: /* M-action-confirmed*/
-      offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 8: /* M-create*/
-      offset = dissect_cmip_CreateArgument(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 9: /* M-delete*/
-      offset = dissect_cmip_DeleteArgument(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 10: /* M-cancelget */
-      offset = dissect_cmip_InvokeIDType(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    }
-    
-
-
-
-  return offset;
-}
-
-
-static const ber_sequence_t Invoke_sequence[] = {
-  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
-  { &hf_cmip_linkedId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_linkedId },
-  { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
-  { &hf_cmip_argument       , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_InvokeArgument },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-#line 193 "cmip.cnf"
-  opcode_type=OPCODE_INVOKE;
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Invoke ");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   Invoke_sequence, hf_index, ett_cmip_Invoke);
-
-  return offset;
-}
-
-
-
-static int
-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_) {
-#line 278 "cmip.cnf"
-
-    switch(opcode){
-    case 0: /* M-eventreport*/
-      break;  /* No return data */
-    case 1: /* M-eventreport-confirmed */
-      offset = dissect_cmip_EventReportResult(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 2: /* M-linkedreply*/
-      break;  /* No return data */
-    case 3: /* M-get */
-      offset = dissect_cmip_GetResult(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 4: /* M-set */
-      break;  /* No return data */
-    case 5: /* M-set-confirmed*/
-      offset = dissect_cmip_SetResult(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 6: /* M-action*/
-      break;  /* No return data */
-    case 7: /* M-action-confirmed*/
-      offset = dissect_cmip_ActionResult(FALSE, tvb, offset, actx, tree, -1);
-      break;
-    case 8: /* M-create*/
-      offset = dissect_cmip_CreateResult(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 9: /* M-delete*/
-      offset = dissect_cmip_DeleteResult(FALSE, tvb,  offset, actx, tree, -1);
-      break;
-    case 10: /* M-cancelget */
-      break; /* doe this one return any data? */
-    }
-  /*XXX add more types here */
-
-
-  return offset;
-}
-
-
-static const ber_sequence_t T_result_sequence[] = {
-  { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
-  { &hf_cmip_resultArgument , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_ResultArgument },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   T_result_sequence, hf_index, ett_cmip_T_result);
-
-  return offset;
-}
-
-
-static const ber_sequence_t ReturnResult_sequence[] = {
-  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
-  { &hf_cmip_result         , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_result },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-#line 200 "cmip.cnf"
-  opcode_type=OPCODE_RETURN_RESULT;
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnResult ");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   ReturnResult_sequence, hf_index, ett_cmip_ReturnResult);
-
-  return offset;
-}
-
-
-
-static int
-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_) {
-#line 312 "cmip.cnf"
-/* TODO: add code here */
-
-
-
-  return offset;
-}
-
-
-static const ber_sequence_t ReturnError_sequence[] = {
-  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
-  { &hf_cmip_errcode        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
-  { &hf_cmip_parameter      , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_parameter },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_ReturnError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 207 "cmip.cnf"
-  opcode_type=OPCODE_RETURN_ERROR;
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnError ");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   ReturnError_sequence, hf_index, ett_cmip_ReturnError);
-
-  return offset;
-}
-
-
-static const value_string cmip_GeneralProblem_vals[] = {
-  {   0, "unrecognizedPDU" },
-  {   1, "mistypedPDU" },
-  {   2, "badlyStructuredPDU" },
-  { 0, NULL }
-};
-
-
-static int
-dissect_cmip_GeneralProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
-
-  return offset;
-}
-
-
-static const value_string cmip_InvokeProblem_vals[] = {
-  {   0, "duplicateInvocation" },
-  {   1, "unrecognizedOperation" },
-  {   2, "mistypedArgument" },
-  {   3, "resourceLimitation" },
-  {   4, "releaseInProgress" },
-  {   5, "unrecognizedLinkedId" },
-  {   6, "linkedResponseUnexpected" },
-  {   7, "unexpectedLinkedOperation" },
-  { 0, NULL }
-};
-
-
-static int
-dissect_cmip_InvokeProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
-
-  return offset;
-}
-
-
-static const value_string cmip_ReturnResultProblem_vals[] = {
-  {   0, "unrecognizedInvocation" },
-  {   1, "resultResponseUnexpected" },
-  {   2, "mistypedResult" },
-  { 0, NULL }
-};
-
-
-static int
-dissect_cmip_ReturnResultProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
-
-  return offset;
-}
-
-
-static const value_string cmip_ReturnErrorProblem_vals[] = {
-  {   0, "unrecognizedInvocation" },
-  {   1, "errorResponseUnexpected" },
-  {   2, "unrecognizedError" },
-  {   3, "unexpectedError" },
-  {   4, "mistypedParameter" },
-  { 0, NULL }
-};
-
-
-static int
-dissect_cmip_ReturnErrorProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
-
-  return offset;
-}
-
-
-static const value_string cmip_T_problem_vals[] = {
-  {   0, "general" },
-  {   1, "invoke" },
-  {   2, "returnResult" },
-  {   3, "returnError" },
-  { 0, NULL }
-};
-
-static const ber_choice_t T_problem_choice[] = {
-  {   0, &hf_cmip_general        , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_GeneralProblem },
-  {   1, &hf_cmip_invokeProblem  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_InvokeProblem },
-  {   2, &hf_cmip_returnResultProblem, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnResultProblem },
-  {   3, &hf_cmip_returnErrorProblem, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnErrorProblem },
-  { 0, NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_T_problem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 T_problem_choice, hf_index, ett_cmip_T_problem,
-                                 NULL);
-
-  return offset;
-}
-
-
-static const ber_sequence_t Reject_sequence[] = {
-  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
-  { &hf_cmip_problem        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_problem },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_Reject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 214 "cmip.cnf"
-  opcode_type=OPCODE_REJECT;
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Reject ");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   Reject_sequence, hf_index, ett_cmip_Reject);
-
-  return offset;
-}
-
-
-const value_string cmip_ROS_vals[] = {
-  {   1, "invoke" },
-  {   2, "returnResult" },
-  {   3, "returnError" },
-  {   4, "reject" },
-  { 0, NULL }
-};
-
-static const ber_choice_t ROS_choice[] = {
-  {   1, &hf_cmip_invoke         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_Invoke },
-  {   2, &hf_cmip_returnResult   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnResult },
-  {   3, &hf_cmip_returnError    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnError },
-  {   4, &hf_cmip_reject         , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_Reject },
-  { 0, NULL, 0, 0, 0, NULL }
-};
-
-int
-dissect_cmip_ROS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 ROS_choice, hf_index, ett_cmip_ROS,
-                                 NULL);
-
-  return offset;
-}
-
-
-
-static int
-dissect_cmip_ROSEapdus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_cmip_ROS(implicit_tag, tvb, offset, actx, tree, hf_index);
-
-  return offset;
-}
-
-
-static const value_string cmip_CMIPAbortSource_vals[] = {
-  {   0, "cmiseServiceUser" },
-  {   1, "cmiseServiceProvider" },
-  { 0, NULL }
-};
-
-
-static int
-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_) {
-#line 177 "cmip.cnf"
-  guint32 value;
-
-    offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  &value);
-
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_append_fstr(actx->pinfo->cinfo, COL_INFO, " AbortSource:%s", val_to_str(value, cmip_CMIPAbortSource_vals, " Unknown AbortSource:%d"));
-  }
-
-
-  return offset;
-}
-
-
-
-static int
-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_) {
-  offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
-
-  return offset;
-}
-
-
-static const ber_sequence_t CMIPAbortInfo_sequence[] = {
-  { &hf_cmip_abortSource    , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_CMIPAbortSource },
-  { &hf_cmip_userInfo       , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
-  { NULL, 0, 0, 0, NULL }
-};
-
-int
-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_) {
-#line 165 "cmip.cnf"
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_append_fstr(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ABORT");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   CMIPAbortInfo_sequence, hf_index, ett_cmip_CMIPAbortInfo);
-
-  return offset;
-}
-
-
-static const asn_namedbit FunctionalUnits_bits[] = {
-  {  0, &hf_cmip_FunctionalUnits_multipleObjectSelection, -1, -1, "multipleObjectSelection", NULL },
-  {  1, &hf_cmip_FunctionalUnits_filter, -1, -1, "filter", NULL },
-  {  2, &hf_cmip_FunctionalUnits_multipleReply, -1, -1, "multipleReply", NULL },
-  {  3, &hf_cmip_FunctionalUnits_extendedService, -1, -1, "extendedService", NULL },
-  {  4, &hf_cmip_FunctionalUnits_cancelGet, -1, -1, "cancelGet", NULL },
-  { 0, NULL, 0, 0, NULL, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
-                                    FunctionalUnits_bits, hf_index, ett_cmip_FunctionalUnits,
-                                    NULL);
-
-  return offset;
-}
-
-
-static const asn_namedbit ProtocolVersion_bits[] = {
-  {  0, &hf_cmip_ProtocolVersion_version1, -1, -1, "version1", NULL },
-  {  1, &hf_cmip_ProtocolVersion_version2, -1, -1, "version2", NULL },
-  { 0, NULL, 0, 0, NULL, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
-                                    ProtocolVersion_bits, hf_index, ett_cmip_ProtocolVersion,
-                                    NULL);
-
-  return offset;
-}
-
-
-static const ber_sequence_t CMIPUserInfo_sequence[] = {
-  { &hf_cmip_protocolVersion, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_ProtocolVersion },
-  { &hf_cmip_functionalUnits, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_FunctionalUnits },
-  { &hf_cmip_accessControl_01, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
-  { &hf_cmip_userInfo       , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_EXTERNAL },
-  { NULL, 0, 0, 0, NULL }
-};
-
-int
-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_) {
-#line 171 "cmip.cnf"
-  if(check_col(actx->pinfo->cinfo, COL_INFO)){
-    col_append_fstr(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ASSOCIATE");
-  }
-
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   CMIPUserInfo_sequence, hf_index, ett_cmip_CMIPUserInfo);
-
-  return offset;
-}
-
-
-static const ber_sequence_t SET_OF_AE_title_set_of[1] = {
-  { &hf_cmip_multiple_item  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
-};
-
-static int
-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_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 SET_OF_AE_title_set_of, hf_index, ett_cmip_SET_OF_AE_title);
-
-  return offset;
-}
-
-
-static const value_string cmip_Destination_vals[] = {
-  {   0, "single" },
-  {   1, "multiple" },
-  { 0, NULL }
-};
-
-static const ber_choice_t Destination_choice[] = {
-  {   0, &hf_cmip_single         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_acse_AE_title },
-  {   1, &hf_cmip_multiple       , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_SET_OF_AE_title },
-  { 0, NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 Destination_choice, hf_index, ett_cmip_Destination,
+                                 Destination_choice, hf_index, ett_cmip_Destination,
                                  NULL);
 
   return offset;
@@ -2704,7 +2327,7 @@ dissect_cmip_AdditionalText(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 
 
 static int
-dissect_cmip_T_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_) {
+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_) {
   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
 
   return offset;
@@ -2714,7 +2337,7 @@ dissect_cmip_T_identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 
 static int
 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_) {
-  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index);
+  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
 
   return offset;
 }
@@ -2723,7 +2346,7 @@ dissect_cmip_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U
 
 static int
 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_) {
-#line 360 "cmip.cnf"
+#line 481 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -2733,7 +2356,7 @@ dissect_cmip_T_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
 
 
 static const ber_sequence_t ManagementExtension_sequence[] = {
-  { &hf_cmip_identifier     , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_identifier },
+  { &hf_cmip_managementExtensionidentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_managementExtensionidentifier },
   { &hf_cmip_significance   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_BOOLEAN },
   { &hf_cmip_information    , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_information },
   { NULL, 0, 0, 0, NULL }
@@ -2752,7 +2375,7 @@ static const ber_sequence_t AdditionalInformation_set_of[1] = {
   { &hf_cmip_AdditionalInformation_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_ManagementExtension },
 };
 
-static int
+int
 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_) {
   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
                                  AdditionalInformation_set_of, hf_index, ett_cmip_AdditionalInformation);
@@ -2774,7 +2397,7 @@ dissect_cmip_Allomorphs(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 }
 
 
-static const value_string cmip_AdministrativeState_vals[] = {
+const value_string cmip_AdministrativeState_vals[] = {
   {   0, "locked" },
   {   1, "unlocked" },
   {   2, "shuttingDown" },
@@ -2782,7 +2405,7 @@ static const value_string cmip_AdministrativeState_vals[] = {
 };
 
 
-static int
+int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
@@ -2808,7 +2431,7 @@ static const ber_sequence_t AttributeList_set_of[1] = {
   { &hf_cmip_AttributeList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_Attribute },
 };
 
-static int
+int
 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_) {
   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
                                  AttributeList_set_of, hf_index, ett_cmip_AttributeList);
@@ -2820,7 +2443,7 @@ dissect_cmip_AttributeList(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
 
 static int
 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_) {
-#line 363 "cmip.cnf"
+#line 484 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -2832,7 +2455,7 @@ dissect_cmip_T_oldAttributeValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i
 
 static int
 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_) {
-#line 366 "cmip.cnf"
+#line 487 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -2883,7 +2506,7 @@ static const value_string cmip_AlarmStatus_item_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -2919,7 +2542,7 @@ static const value_string cmip_AvailabilityStatus_item_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -2929,7 +2552,7 @@ static const ber_sequence_t AvailabilityStatus_set_of[1] = {
   { &hf_cmip_AvailabilityStatus_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_AvailabilityStatus_item },
 };
 
-static int
+int
 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_) {
   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
                                  AvailabilityStatus_set_of, hf_index, ett_cmip_AvailabilityStatus);
@@ -2941,7 +2564,7 @@ dissect_cmip_AvailabilityStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in
 
 static int
 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_) {
-  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index);
+  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
 
   return offset;
 }
@@ -2986,7 +2609,7 @@ dissect_cmip_BackUpRelationshipObject(gboolean implicit_tag _U_, tvbuff_t *tvb _
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3008,7 +2631,7 @@ dissect_cmip_CapacityAlarmThreshold(gboolean implicit_tag _U_, tvbuff_t *tvb _U_
 
 static int
 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_) {
-  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index);
+  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
 
   return offset;
 }
@@ -3026,7 +2649,7 @@ static const value_string cmip_ControlStatus_item_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3045,40 +2668,11 @@ dissect_cmip_ControlStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
 }
 
 
-static const ber_sequence_t CounterThreshold_item_sequence[] = {
-  { &hf_cmip_comparisonLevel, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
-  { &hf_cmip_offsetValue    , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
-  { &hf_cmip_notificationOnOff, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_cmip_BOOLEAN },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_CounterThreshold_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_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   CounterThreshold_item_sequence, hf_index, ett_cmip_CounterThreshold_item);
-
-  return offset;
-}
-
-
-static const ber_sequence_t CounterThreshold_set_of[1] = {
-  { &hf_cmip_CounterThreshold_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_CounterThreshold_item },
-};
-
-static int
-dissect_cmip_CounterThreshold(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 CounterThreshold_set_of, hf_index, ett_cmip_CounterThreshold);
-
-  return offset;
-}
-
-
 
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3129,7 +2723,7 @@ dissect_cmip_CorrelatedNotifications(gboolean implicit_tag _U_, tvbuff_t *tvb _U
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3153,90 +2747,6 @@ dissect_cmip_EventTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 }
 
 
-
-static int
-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_) {
-  offset = dissect_ber_real(implicit_tag, actx, tree, tvb, offset, hf_index,
-                               NULL);
-
-  return offset;
-}
-
-
-static const value_string cmip_ObservedValue_vals[] = {
-  {   0, "integer" },
-  {   1, "real" },
-  { 0, NULL }
-};
-
-static const ber_choice_t ObservedValue_choice[] = {
-  {   0, &hf_cmip_integer        , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
-  {   1, &hf_cmip_real           , BER_CLASS_UNI, BER_UNI_TAG_REAL, BER_FLAGS_NOOWNTAG, dissect_cmip_REAL },
-  { 0, NULL, 0, 0, 0, NULL }
-};
-
-static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 ObservedValue_choice, hf_index, ett_cmip_ObservedValue,
-                                 NULL);
-
-  return offset;
-}
-
-
-static const ber_sequence_t NotifyThreshold_sequence[] = {
-  { &hf_cmip_threshold      , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
-  { &hf_cmip_notifyOnOff    , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_cmip_BOOLEAN },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_NotifyThreshold(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   NotifyThreshold_sequence, hf_index, ett_cmip_NotifyThreshold);
-
-  return offset;
-}
-
-
-static const ber_sequence_t GaugeThreshold_item_sequence[] = {
-  { &hf_cmip_notifyLow      , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_NotifyThreshold },
-  { &hf_cmip_notifyHigh     , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_NotifyThreshold },
-  { NULL, 0, 0, 0, NULL }
-};
-
-static int
-dissect_cmip_GaugeThreshold_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_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   GaugeThreshold_item_sequence, hf_index, ett_cmip_GaugeThreshold_item);
-
-  return offset;
-}
-
-
-static const ber_sequence_t GaugeThreshold_set_of[1] = {
-  { &hf_cmip_GaugeThreshold_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_GaugeThreshold_item },
-};
-
-static int
-dissect_cmip_GaugeThreshold(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 GaugeThreshold_set_of, hf_index, ett_cmip_GaugeThreshold);
-
-  return offset;
-}
-
-
-
-static int
-dissect_cmip_GaugeThresholdValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_cmip_ObservedValue(implicit_tag, tvb, offset, actx, tree, hf_index);
-
-  return offset;
-}
-
-
 static const ber_sequence_t GroupObjects_set_of[1] = {
   { &hf_cmip_GroupObjects_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObjectInstance },
 };
@@ -3254,7 +2764,7 @@ dissect_cmip_GroupObjects(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3264,7 +2774,7 @@ dissect_cmip_INTEGER_0_23(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3330,15 +2840,6 @@ dissect_cmip_LifecycleState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
 }
 
 
-
-static int
-dissect_cmip_LogAvailability(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_cmip_AvailabilityStatus(implicit_tag, tvb, offset, actx, tree, hf_index);
-
-  return offset;
-}
-
-
 static const value_string cmip_LogFullAction_vals[] = {
   {   0, "wrap" },
   {   1, "halt" },
@@ -3415,7 +2916,7 @@ static const value_string cmip_MaxLogSize_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3447,7 +2948,39 @@ dissect_cmip_NameBinding(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+  offset = dissect_ber_real(implicit_tag, actx, tree, tvb, offset, hf_index,
+                               NULL);
+
+  return offset;
+}
+
+
+static const value_string cmip_ObservedValue_vals[] = {
+  {   0, "integer" },
+  {   1, "real" },
+  { 0, NULL }
+};
+
+static const ber_choice_t ObservedValue_choice[] = {
+  {   0, &hf_cmip_integer        , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
+  {   1, &hf_cmip_real           , BER_CLASS_UNI, BER_UNI_TAG_REAL, BER_FLAGS_NOOWNTAG, dissect_cmip_REAL },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 ObservedValue_choice, hf_index, ett_cmip_ObservedValue,
+                                 NULL);
 
   return offset;
 }
@@ -3461,9 +2994,18 @@ static const value_string cmip_OperationalState_vals[] = {
 
 
 static int
-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_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+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_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                  NULL);
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+  offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
 
   return offset;
 }
@@ -3512,7 +3054,7 @@ static const value_string cmip_T_priority_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3546,7 +3088,7 @@ dissect_cmip_PrioritisedObject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
 }
 
 
-static const value_string cmip_ProbableCause_vals[] = {
+const value_string cmip_ProbableCause_vals[] = {
   {   0, "globalValue" },
   {   1, "localValue" },
   { 0, NULL }
@@ -3558,7 +3100,7 @@ static const ber_choice_t ProbableCause_choice[] = {
   { 0, NULL, 0, 0, 0, NULL }
 };
 
-static int
+int
 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_) {
   offset = dissect_ber_choice(actx, tree, tvb, offset,
                                  ProbableCause_choice, hf_index, ett_cmip_ProbableCause,
@@ -3581,7 +3123,7 @@ static const value_string cmip_ProceduralStatus_item_vals[] = {
 static int
 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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
@@ -3636,15 +3178,6 @@ dissect_cmip_ProposedRepairActions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
 
 
 
-static int
-dissect_cmip_SchedulingAvailability(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_cmip_AvailabilityStatus(implicit_tag, tvb, offset, actx, tree, hf_index);
-
-  return offset;
-}
-
-
-
 static int
 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_) {
   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
@@ -3688,7 +3221,7 @@ dissect_cmip_SecurityAlarmDetector(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
 
 
 static int
-dissect_cmip_T_identifier_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+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_) {
   offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
 
   return offset;
@@ -3698,7 +3231,7 @@ dissect_cmip_T_identifier_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
 
 static int
 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_) {
-#line 371 "cmip.cnf"
+#line 492 "../../asn1/cmip/cmip.cnf"
   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
 
 
@@ -3708,7 +3241,7 @@ dissect_cmip_T_details(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
 
 
 static const ber_sequence_t ServiceUser_sequence[] = {
-  { &hf_cmip_identifier_01  , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_identifier_01 },
+  { &hf_cmip_serviceUseridentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_serviceUseridentifier },
   { &hf_cmip_details        , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_details },
   { NULL, 0, 0, 0, NULL }
 };
@@ -3724,23 +3257,268 @@ dissect_cmip_ServiceUser(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
 
 
 static int
-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_) {
-  offset = dissect_cmip_ServiceUser(implicit_tag, tvb, offset, actx, tree, hf_index);
+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_) {
+  offset = dissect_cmip_ServiceUser(implicit_tag, tvb, offset, actx, tree, hf_index);
+
+  return offset;
+}
+
+
+static const value_string cmip_SourceIndicator_vals[] = {
+  {   0, "resourceOperation" },
+  {   1, "managementOperation" },
+  {   2, "unknown" },
+  { 0, NULL }
+};
+
+
+static int
+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_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                  NULL);
+
+  return offset;
+}
+
+
+static const ber_sequence_t SpecificProblems_set_of[1] = {
+  { &hf_cmip_SpecificProblems_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_SpecificIdentifier },
+};
+
+static int
+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_) {
+  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
+                                 SpecificProblems_set_of, hf_index, ett_cmip_SpecificProblems);
+
+  return offset;
+}
+
+
+static const value_string cmip_StandbyStatus_vals[] = {
+  {   0, "hotStandby" },
+  {   1, "coldStandby" },
+  {   2, "providingService" },
+  { 0, NULL }
+};
+
+
+static int
+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_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                NULL);
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
+
+  return offset;
+}
+
+
+static const value_string cmip_StopTime_vals[] = {
+  {   0, "specific" },
+  {   1, "continual" },
+  { 0, NULL }
+};
+
+static const ber_choice_t StopTime_choice[] = {
+  {   0, &hf_cmip_specific       , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_cmip_GeneralizedTime },
+  {   1, &hf_cmip_continual      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 StopTime_choice, hf_index, ett_cmip_StopTime,
+                                 NULL);
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+  offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
+
+  return offset;
+}
+
+
+
+static int
+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_) {
+#line 497 "../../asn1/cmip/cmip.cnf"
+  offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
+
+
+
+
+  return offset;
+}
+
+
+static const ber_sequence_t SupportedFeatures_item_sequence[] = {
+  { &hf_cmip_featureIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureIdentifier },
+  { &hf_cmip_featureInfo    , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureInfo },
+  { NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   SupportedFeatures_item_sequence, hf_index, ett_cmip_SupportedFeatures_item);
+
+  return offset;
+}
+
+
+static const ber_sequence_t SupportedFeatures_set_of[1] = {
+  { &hf_cmip_SupportedFeatures_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_SupportedFeatures_item },
+};
+
+static int
+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_) {
+  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
+                                 SupportedFeatures_set_of, hf_index, ett_cmip_SupportedFeatures);
+
+  return offset;
+}
+
+
+static const value_string cmip_SystemId_vals[] = {
+  {   0, "name" },
+  {   1, "number" },
+  {   2, "nothing" },
+  { 0, NULL }
+};
+
+static const ber_choice_t SystemId_choice[] = {
+  {   0, &hf_cmip_name           , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_cmip_GraphicString },
+  {   1, &hf_cmip_number         , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
+  {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 SystemId_choice, hf_index, ett_cmip_SystemId,
+                                 NULL);
+
+  return offset;
+}
+
+
+static const value_string cmip_SystemTitle_vals[] = {
+  {   0, "distinguishedName" },
+  {   1, "oid" },
+  {   2, "nothing" },
+  { 0, NULL }
+};
+
+static const ber_choice_t SystemTitle_choice[] = {
+  {   0, &hf_cmip_distinguishedName, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_DistinguishedName },
+  {   1, &hf_cmip_oid            , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
+  {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 SystemTitle_choice, hf_index, ett_cmip_SystemTitle,
+                                 NULL);
+
+  return offset;
+}
+
+
+static const ber_sequence_t T_up_sequence[] = {
+  { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+  { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+  { NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   T_up_sequence, hf_index, ett_cmip_T_up);
+
+  return offset;
+}
+
+
+static const ber_sequence_t T_down_sequence[] = {
+  { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+  { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+  { NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   T_down_sequence, hf_index, ett_cmip_T_down);
+
+  return offset;
+}
+
+
+static const value_string cmip_ThresholdLevelInd_vals[] = {
+  {   1, "up" },
+  {   2, "down" },
+  { 0, NULL }
+};
+
+static const ber_choice_t ThresholdLevelInd_choice[] = {
+  {   1, &hf_cmip_up             , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_up },
+  {   2, &hf_cmip_down           , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_down },
+  { 0, NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 ThresholdLevelInd_choice, hf_index, ett_cmip_ThresholdLevelInd,
+                                 NULL);
+
+  return offset;
+}
+
+
+static const ber_sequence_t ThresholdInfo_sequence[] = {
+  { &hf_cmip_triggeredThreshold, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
+  { &hf_cmip_observedValue  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+  { &hf_cmip_thresholdLevel , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ThresholdLevelInd },
+  { &hf_cmip_armTime        , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
+  { NULL, 0, 0, 0, NULL }
+};
+
+static int
+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_) {
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   ThresholdInfo_sequence, hf_index, ett_cmip_ThresholdInfo);
 
   return offset;
 }
 
 
-static const value_string cmip_SourceIndicator_vals[] = {
-  {   0, "resourceOperation" },
-  {   1, "managementOperation" },
-  {   2, "unknown" },
+static const value_string cmip_TrendIndication_vals[] = {
+  {   0, "lessSevere" },
+  {   1, "noChange" },
+  {   2, "moreSevere" },
   { 0, NULL }
 };
 
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
 
@@ -3748,29 +3526,25 @@ dissect_cmip_SourceIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
 }
 
 
-static const ber_sequence_t SpecificProblems_set_of[1] = {
-  { &hf_cmip_SpecificProblems_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_SpecificIdentifier },
-};
 
 static int
-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_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 SpecificProblems_set_of, hf_index, ett_cmip_SpecificProblems);
+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_) {
+  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_StandbyStatus_vals[] = {
-  {   0, "hotStandby" },
-  {   1, "coldStandby" },
-  {   2, "providingService" },
+static const value_string cmip_UsageState_vals[] = {
+  {   0, "idle" },
+  {   1, "active" },
+  {   2, "busy" },
   { 0, NULL }
 };
 
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
                                   NULL);
 
@@ -3778,41 +3552,50 @@ dissect_cmip_StandbyStatus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
 }
 
 
+static const asn_namedbit T_daysOfWeek_bits[] = {
+  {  0, &hf_cmip_T_daysOfWeek_sunday, -1, -1, "sunday", NULL },
+  {  1, &hf_cmip_T_daysOfWeek_monday, -1, -1, "monday", NULL },
+  {  2, &hf_cmip_T_daysOfWeek_tuesday, -1, -1, "tuesday", NULL },
+  {  3, &hf_cmip_T_daysOfWeek_wednesday, -1, -1, "wednesday", NULL },
+  {  4, &hf_cmip_T_daysOfWeek_thursday, -1, -1, "thursday", NULL },
+  {  5, &hf_cmip_T_daysOfWeek_friday, -1, -1, "friday", NULL },
+  {  6, &hf_cmip_T_daysOfWeek_saturday, -1, -1, "saturday", NULL },
+  { 0, NULL, 0, 0, NULL, NULL }
+};
 
 static int
-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_) {
-  offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
+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_) {
+  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
+                                    T_daysOfWeek_bits, hf_index, ett_cmip_T_daysOfWeek,
+                                    NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_StopTime_vals[] = {
-  {   0, "specific" },
-  {   1, "continual" },
-  { 0, NULL }
-};
-
-static const ber_choice_t StopTime_choice[] = {
-  {   0, &hf_cmip_specific       , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_cmip_GeneralizedTime },
-  {   1, &hf_cmip_continual      , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
-  { 0, NULL, 0, 0, 0, NULL }
+static const ber_sequence_t WeekMask_item_sequence[] = {
+  { &hf_cmip_daysOfWeek     , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_cmip_T_daysOfWeek },
+  { &hf_cmip_intervalsOfDay , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_IntervalsOfDay },
+  { NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 StopTime_choice, hf_index, ett_cmip_StopTime,
-                                 NULL);
+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_) {
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   WeekMask_item_sequence, hf_index, ett_cmip_WeekMask_item);
 
   return offset;
 }
 
 
+static const ber_sequence_t WeekMask_set_of[1] = {
+  { &hf_cmip_WeekMask_item  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_WeekMask_item },
+};
 
 static int
-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_) {
-  offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
+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_) {
+  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
+                                 WeekMask_set_of, hf_index, ett_cmip_WeekMask);
 
   return offset;
 }
@@ -3820,339 +3603,469 @@ dissect_cmip_T_featureIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i
 
 
 static int
-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_) {
-#line 376 "cmip.cnf"
-  offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
-
+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_) {
+#line 237 "../../asn1/cmip/cmip.cnf"
+    offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                &opcode);
 
+  if(opcode_type== OPCODE_RETURN_ERROR){
+       col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, cmip_error_code_vals, " Unknown Opcode:%d"));
+  }else{
+       col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, cmip_Opcode_vals, " Unknown Opcode:%d"));
+  }
 
 
   return offset;
 }
 
 
-static const ber_sequence_t SupportedFeatures_item_sequence[] = {
-  { &hf_cmip_featureIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureIdentifier },
-  { &hf_cmip_featureInfo    , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_T_featureInfo },
-  { NULL, 0, 0, 0, NULL }
+static const value_string cmip_Code_vals[] = {
+  {   0, "local" },
+  {   1, "global" },
+  { 0, NULL }
+};
+
+static const ber_choice_t Code_choice[] = {
+  {   0, &hf_cmip_local          , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_T_local },
+  {   1, &hf_cmip_global         , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
+  { 0, NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   SupportedFeatures_item_sequence, hf_index, ett_cmip_SupportedFeatures_item);
+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_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 Code_choice, hf_index, ett_cmip_Code,
+                                 NULL);
 
   return offset;
 }
 
 
-static const ber_sequence_t SupportedFeatures_set_of[1] = {
-  { &hf_cmip_SupportedFeatures_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_SupportedFeatures_item },
-};
 
 static int
-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_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 SupportedFeatures_set_of, hf_index, ett_cmip_SupportedFeatures);
+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_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_SystemId_vals[] = {
-  {   0, "name" },
-  {   1, "number" },
-  {   2, "nothing" },
-  { 0, NULL }
-};
-
-static const ber_choice_t SystemId_choice[] = {
-  {   0, &hf_cmip_name           , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_cmip_GraphicString },
-  {   1, &hf_cmip_number         , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cmip_INTEGER },
-  {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
-  { 0, NULL, 0, 0, 0, NULL }
-};
 
 static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 SystemId_choice, hf_index, ett_cmip_SystemId,
-                                 NULL);
+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_) {
+  offset = dissect_cmip_InvokeId_present(implicit_tag, tvb, offset, actx, tree, hf_index);
 
   return offset;
 }
 
 
-static const value_string cmip_SystemTitle_vals[] = {
-  {   0, "distinguishedName" },
-  {   1, "oid" },
-  {   2, "nothing" },
+static const value_string cmip_T_linkedId_vals[] = {
+  {   0, "present" },
+  {   1, "absent" },
   { 0, NULL }
 };
 
-static const ber_choice_t SystemTitle_choice[] = {
-  {   0, &hf_cmip_distinguishedName, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_DistinguishedName },
-  {   1, &hf_cmip_oid            , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cmip_OBJECT_IDENTIFIER },
-  {   2, &hf_cmip_nothing        , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_cmip_NULL },
+static const ber_choice_t T_linkedId_choice[] = {
+  {   0, &hf_cmip_linkedIdPresent, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_T_linkedIdPresent },
+  {   1, &hf_cmip_absent         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_NULL },
   { 0, NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 SystemTitle_choice, hf_index, ett_cmip_SystemTitle,
+                                 T_linkedId_choice, hf_index, ett_cmip_T_linkedId,
                                  NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_TideMark_vals[] = {
-  {   0, "maxTideMar" },
-  {   1, "minTideMark" },
-  { 0, NULL }
-};
-
-static const ber_choice_t TideMark_choice[] = {
-  {   0, &hf_cmip_maxTideMar     , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_ObservedValue },
-  {   1, &hf_cmip_minTideMark    , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_ObservedValue },
-  { 0, NULL, 0, 0, 0, NULL }
-};
 
 static int
-dissect_cmip_TideMark(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 TideMark_choice, hf_index, ett_cmip_TideMark,
-                                 NULL);
+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_) {
+#line 289 "../../asn1/cmip/cmip.cnf"
+    switch(opcode){
+    case 0: /* M-eventreport */
+      offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 1: /* M-eventreport-confirmed */
+      offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 2: /* M-linkedreply */
+      offset = dissect_cmip_LinkedReplyArgument(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 3: /* M-get */
+      offset = dissect_cmip_GetArgument(FALSE, tvb, offset,actx, tree, -1);
+      break;
+    case 4: /* M-set */
+      offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
+      break;
+    case 5: /* M-set-confirmed */
+      offset = dissect_cmip_SetArgument(FALSE, tvb, offset,actx, tree, -1);
+      break;
+    case 6: /* M-action*/
+      offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 7: /* M-action-confirmed*/
+      offset = dissect_cmip_ActionArgument(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 8: /* M-create*/
+      offset = dissect_cmip_CreateArgument(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 9: /* M-delete*/
+      offset = dissect_cmip_DeleteArgument(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 10: /* M-cancelget */
+      offset = dissect_cmip_InvokeIDType(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    }
+    
+
+
 
   return offset;
 }
 
 
-static const ber_sequence_t TideMarkInfo_sequence[] = {
-  { &hf_cmip_currentTideMark, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_TideMark },
-  { &hf_cmip_previousTideMark, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_TideMark },
-  { &hf_cmip_resetTime      , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_cmip_GeneralizedTime },
+static const ber_sequence_t Invoke_sequence[] = {
+  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
+  { &hf_cmip_linkedId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_linkedId },
+  { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
+  { &hf_cmip_argument       , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_InvokeArgument },
   { NULL, 0, 0, 0, NULL }
 };
 
 static int
-dissect_cmip_TideMarkInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+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_) {
+#line 246 "../../asn1/cmip/cmip.cnf"
+  opcode_type=OPCODE_INVOKE;
+  col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Invoke ");
+
   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   TideMarkInfo_sequence, hf_index, ett_cmip_TideMarkInfo);
+                                   Invoke_sequence, hf_index, ett_cmip_Invoke);
 
   return offset;
 }
 
 
-static const ber_sequence_t T_up_sequence[] = {
-  { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
-  { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+
+static int
+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_) {
+#line 327 "../../asn1/cmip/cmip.cnf"
+
+    switch(opcode){
+    case 0: /* M-eventreport*/
+      break;  /* No return data */
+    case 1: /* M-eventreport-confirmed */
+      offset = dissect_cmip_EventReportResult(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 2: /* M-linkedreply*/
+      break;  /* No return data */
+    case 3: /* M-get */
+      offset = dissect_cmip_GetResult(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 4: /* M-set */
+      break;  /* No return data */
+    case 5: /* M-set-confirmed*/
+      offset = dissect_cmip_SetResult(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 6: /* M-action*/
+      break;  /* No return data */
+    case 7: /* M-action-confirmed*/
+      offset = dissect_cmip_ActionResult(FALSE, tvb, offset, actx, tree, -1);
+      break;
+    case 8: /* M-create*/
+      offset = dissect_cmip_CreateResult(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 9: /* M-delete*/
+      offset = dissect_cmip_DeleteResult(FALSE, tvb,  offset, actx, tree, -1);
+      break;
+    case 10: /* M-cancelget */
+      break; /* doe this one return any data? */
+    }
+  /*XXX add more types here */
+
+
+  return offset;
+}
+
+
+static const ber_sequence_t T_result_sequence[] = {
+  { &hf_cmip_opcode         , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
+  { &hf_cmip_resultArgument , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_cmip_ResultArgument },
   { NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
+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_) {
   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   T_up_sequence, hf_index, ett_cmip_T_up);
+                                   T_result_sequence, hf_index, ett_cmip_T_result);
 
   return offset;
 }
 
 
-static const ber_sequence_t T_down_sequence[] = {
-  { &hf_cmip_high           , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
-  { &hf_cmip_low            , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
+static const ber_sequence_t ReturnResult_sequence[] = {
+  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
+  { &hf_cmip_result         , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_result },
   { NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
+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_) {
+#line 251 "../../asn1/cmip/cmip.cnf"
+  opcode_type=OPCODE_RETURN_RESULT;
+  col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnResult ");
+
   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   T_down_sequence, hf_index, ett_cmip_T_down);
+                                   ReturnResult_sequence, hf_index, ett_cmip_ReturnResult);
 
   return offset;
 }
 
 
-static const value_string cmip_ThresholdLevelInd_vals[] = {
-  {   1, "up" },
-  {   2, "down" },
-  { 0, NULL }
-};
-
-static const ber_choice_t ThresholdLevelInd_choice[] = {
-  {   1, &hf_cmip_up             , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_T_up },
-  {   2, &hf_cmip_down           , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_T_down },
-  { 0, NULL, 0, 0, 0, NULL }
-};
 
 static int
-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_) {
-  offset = dissect_ber_choice(actx, tree, tvb, offset,
-                                 ThresholdLevelInd_choice, hf_index, ett_cmip_ThresholdLevelInd,
-                                 NULL);
+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_) {
+#line 361 "../../asn1/cmip/cmip.cnf"
+
+    switch(opcode){
+       case 19: /* classInstanceConflict */
+               dissect_cmip_BaseManagedObjectId(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 20:  /* complexityLimitation */
+               dissect_cmip_ComplexityLimitation(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 11: /* duplicateManagedObjectInstance */
+               dissect_cmip_ObjectInstance(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 7: /*  getListError */
+               dissect_cmip_GetListError(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 15: /* invalidArgumentValue */
+               dissect_cmip_InvalidArgumentValue(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 6: /* invalidAttributeValue */ 
+               dissect_cmip_Attribute(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 4: /* invalidFilter */ 
+               dissect_cmip_CMISFilter(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 17: /* invalidObjectInstance */
+               dissect_cmip_ObjectInstance(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 16: /* invalidScope */ 
+               dissect_cmip_Scope(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 18: /* missingAttributeValue */
+               /* Hmmm  SET OF AttributeId */
+               dissect_cmip_PAR_missingAttributeValue(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 9: /* noSuchAction */ 
+               dissect_cmip_NoSuchAction(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 14: /* noSuchArgument */
+               dissect_cmip_NoSuchArgument(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 5: /* noSuchAttribute */
+               dissect_cmip_AttributeId(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 13: /* noSuchEventType */
+               dissect_cmip_NoSuchEventType(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 22: /* noSuchInvokeId */
+               dissect_cmip_InvokeIDType(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 0: /* noSuchObjectClass */
+               dissect_cmip_ObjectClass(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 1:/* noSuchObjectInstance */
+               dissect_cmip_ObjectInstance(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 12: /* noSuchReferenceObject */
+               dissect_cmip_ObjectInstance(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 10: /* processingFailure OPTIONAL   TRUE*/
+               dissect_cmip_ProcessingFailure(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 8: /* setListError */
+               dissect_cmip_SetListError(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       case 3:/* syncNotSupported */
+               dissect_cmip_CMISSync(FALSE, tvb,  offset, actx, tree, -1);
+               break;
+       }
+
+
 
   return offset;
 }
 
 
-static const ber_sequence_t ThresholdInfo_sequence[] = {
-  { &hf_cmip_triggeredThreshold, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_AttributeId },
-  { &hf_cmip_observedValue  , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ObservedValue },
-  { &hf_cmip_thresholdLevel , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_ThresholdLevelInd },
-  { &hf_cmip_armTime        , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cmip_GeneralizedTime },
+static const ber_sequence_t ReturnError_sequence[] = {
+  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
+  { &hf_cmip_errcode        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_Code },
+  { &hf_cmip_parameter      , BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cmip_T_parameter },
   { NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
+dissect_cmip_ReturnError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 256 "../../asn1/cmip/cmip.cnf"
+  opcode_type=OPCODE_RETURN_ERROR;
+  col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnError ");
+
   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   ThresholdInfo_sequence, hf_index, ett_cmip_ThresholdInfo);
+                                   ReturnError_sequence, hf_index, ett_cmip_ReturnError);
 
   return offset;
 }
 
 
-static const value_string cmip_TrendIndication_vals[] = {
-  {   0, "lessSevere" },
-  {   1, "noChange" },
-  {   2, "moreSevere" },
+static const value_string cmip_GeneralProblem_vals[] = {
+  {   0, "unrecognizedPDU" },
+  {   1, "mistypedPDU" },
+  {   2, "badlyStructuredPDU" },
   { 0, NULL }
 };
 
 
 static int
-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_) {
+dissect_cmip_GeneralProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
 
 
-
-static int
-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_) {
-  offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index);
-
-  return offset;
-}
-
+static const value_string cmip_InvokeProblem_vals[] = {
+  {   0, "duplicateInvocation" },
+  {   1, "unrecognizedOperation" },
+  {   2, "mistypedArgument" },
+  {   3, "resourceLimitation" },
+  {   4, "releaseInProgress" },
+  {   5, "unrecognizedLinkedId" },
+  {   6, "linkedResponseUnexpected" },
+  {   7, "unexpectedLinkedOperation" },
+  { 0, NULL }
+};
 
 
 static int
-dissect_cmip_UnscheduledLogAvailability(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_cmip_AvailabilityStatus(implicit_tag, tvb, offset, actx, tree, hf_index);
+dissect_cmip_InvokeProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                NULL);
 
   return offset;
 }
 
 
-static const value_string cmip_UsageState_vals[] = {
-  {   0, "idle" },
-  {   1, "active" },
-  {   2, "busy" },
+static const value_string cmip_ReturnResultProblem_vals[] = {
+  {   0, "unrecognizedInvocation" },
+  {   1, "resultResponseUnexpected" },
+  {   2, "mistypedResult" },
   { 0, NULL }
 };
 
 
 static int
-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_) {
+dissect_cmip_ReturnResultProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+                                                NULL);
 
   return offset;
 }
 
 
-static const asn_namedbit T_daysOfWeek_bits[] = {
-  {  0, &hf_cmip_T_daysOfWeek_sunday, -1, -1, "sunday", NULL },
-  {  1, &hf_cmip_T_daysOfWeek_monday, -1, -1, "monday", NULL },
-  {  2, &hf_cmip_T_daysOfWeek_tuesday, -1, -1, "tuesday", NULL },
-  {  3, &hf_cmip_T_daysOfWeek_wednesday, -1, -1, "wednesday", NULL },
-  {  4, &hf_cmip_T_daysOfWeek_thursday, -1, -1, "thursday", NULL },
-  {  5, &hf_cmip_T_daysOfWeek_friday, -1, -1, "friday", NULL },
-  {  6, &hf_cmip_T_daysOfWeek_saturday, -1, -1, "saturday", NULL },
-  { 0, NULL, 0, 0, NULL, NULL }
+static const value_string cmip_ReturnErrorProblem_vals[] = {
+  {   0, "unrecognizedInvocation" },
+  {   1, "errorResponseUnexpected" },
+  {   2, "unrecognizedError" },
+  {   3, "unexpectedError" },
+  {   4, "mistypedParameter" },
+  { 0, NULL }
 };
 
+
 static int
-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_) {
-  offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
-                                    T_daysOfWeek_bits, hf_index, ett_cmip_T_daysOfWeek,
-                                    NULL);
+dissect_cmip_ReturnErrorProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
+                                                NULL);
 
   return offset;
 }
 
 
-static const ber_sequence_t WeekMask_item_sequence[] = {
-  { &hf_cmip_daysOfWeek     , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_cmip_T_daysOfWeek },
-  { &hf_cmip_intervalsOfDay , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_cmip_IntervalsOfDay },
-  { NULL, 0, 0, 0, NULL }
+static const value_string cmip_T_problem_vals[] = {
+  {   0, "general" },
+  {   1, "invoke" },
+  {   2, "returnResult" },
+  {   3, "returnError" },
+  { 0, NULL }
 };
 
-static int
-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_) {
-  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
-                                   WeekMask_item_sequence, hf_index, ett_cmip_WeekMask_item);
-
-  return offset;
-}
-
-
-static const ber_sequence_t WeekMask_set_of[1] = {
-  { &hf_cmip_WeekMask_item  , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cmip_WeekMask_item },
+static const ber_choice_t T_problem_choice[] = {
+  {   0, &hf_cmip_general        , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cmip_GeneralProblem },
+  {   1, &hf_cmip_invokeProblem  , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_InvokeProblem },
+  {   2, &hf_cmip_returnResultProblem, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnResultProblem },
+  {   3, &hf_cmip_returnErrorProblem, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnErrorProblem },
+  { 0, NULL, 0, 0, 0, NULL }
 };
 
 static int
-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_) {
-  offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
-                                 WeekMask_set_of, hf_index, ett_cmip_WeekMask);
+dissect_cmip_T_problem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 T_problem_choice, hf_index, ett_cmip_T_problem,
+                                 NULL);
 
   return offset;
 }
 
 
+static const ber_sequence_t Reject_sequence[] = {
+  { &hf_cmip_invokeId       , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_InvokeId },
+  { &hf_cmip_problem        , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_cmip_T_problem },
+  { NULL, 0, 0, 0, NULL }
+};
 
 static int
-dissect_cmip_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_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+dissect_cmip_Reject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 261 "../../asn1/cmip/cmip.cnf"
+  opcode_type=OPCODE_REJECT;
+  col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Reject ");
+
+  offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
+                                   Reject_sequence, hf_index, ett_cmip_Reject);
 
   return offset;
 }
 
 
-static const value_string cmip_RejectProblem_vals[] = {
-  {   0, "general-unrecognizedPDU" },
-  {   1, "general-mistypedPDU" },
-  {   2, "general-badlyStructuredPDU" },
-  {  10, "invoke-duplicateInvocation" },
-  {  11, "invoke-unrecognizedOperation" },
-  {  12, "invoke-mistypedArgument" },
-  {  13, "invoke-resourceLimitation" },
-  {  14, "invoke-releaseInProgress" },
-  {  15, "invoke-unrecognizedLinkedId" },
-  {  16, "invoke-linkedResponseUnexpected" },
-  {  17, "invoke-unexpectedLinkedOperation" },
-  {  20, "returnResult-unrecognizedInvocation" },
-  {  21, "returnResult-resultResponseUnexpected" },
-  {  22, "returnResult-mistypedResult" },
-  {  30, "returnError-unrecognizedInvocation" },
-  {  31, "returnError-errorResponseUnexpected" },
-  {  32, "returnError-unrecognizedError" },
-  {  33, "returnError-unexpectedError" },
-  {  34, "returnError-mistypedParameter" },
+const value_string cmip_ROS_vals[] = {
+  {   1, "invoke" },
+  {   2, "returnResult" },
+  {   3, "returnError" },
+  {   4, "reject" },
   { 0, NULL }
 };
 
+static const ber_choice_t ROS_choice[] = {
+  {   1, &hf_cmip_invoke         , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_cmip_Invoke },
+  {   2, &hf_cmip_returnResult   , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnResult },
+  {   3, &hf_cmip_returnError    , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_cmip_ReturnError },
+  {   4, &hf_cmip_reject         , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_cmip_Reject },
+  { 0, NULL, 0, 0, 0, NULL }
+};
 
-static int
-dissect_cmip_RejectProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
-                                  NULL);
+int
+dissect_cmip_ROS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_choice(actx, tree, tvb, offset,
+                                 ROS_choice, hf_index, ett_cmip_ROS,
+                                 NULL);
 
   return offset;
 }
@@ -4164,6 +4077,11 @@ static void dissect_BaseManagedObjectId_PDU(tvbuff_t *tvb _U_, packet_info *pinf
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_BaseManagedObjectId(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_BaseManagedObjectId_PDU);
 }
+static void dissect_EventTypeId_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_EventTypeId(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_EventTypeId_PDU);
+}
 static void dissect_ObjectClass_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4214,6 +4132,11 @@ static void dissect_AlarmStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_AlarmStatus(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_AlarmStatus_PDU);
 }
+static void dissect_AvailabilityStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_AvailabilityStatus(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_AvailabilityStatus_PDU);
+}
 static void dissect_BackedUpStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4224,6 +4147,16 @@ static void dissect_BackUpDestinationList_PDU(tvbuff_t *tvb _U_, packet_info *pi
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_BackUpDestinationList(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_BackUpDestinationList_PDU);
 }
+static void dissect_BackUpRelationshipObject_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_BackUpRelationshipObject(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_BackUpRelationshipObject_PDU);
+}
+static void dissect_CapacityAlarmThreshold_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_CapacityAlarmThreshold(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_CapacityAlarmThreshold_PDU);
+}
 static void dissect_ConfirmedMode_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4259,6 +4192,16 @@ static void dissect_EventTime_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pro
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_EventTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_EventTime_PDU);
 }
+static void dissect_GroupObjects_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_GroupObjects(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_GroupObjects_PDU);
+}
+static void dissect_IntervalsOfDay_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_IntervalsOfDay(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_IntervalsOfDay_PDU);
+}
 static void dissect_LifecycleState_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4294,6 +4237,11 @@ static void dissect_NameBinding_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_NameBinding(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_NameBinding_PDU);
 }
+static void dissect_NotificationIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_NotificationIdentifier(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_NotificationIdentifier_PDU);
+}
 static void dissect_NumberOfRecords_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4309,6 +4257,16 @@ static void dissect_Packages_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_Packages(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_Packages_PDU);
 }
+static void dissect_PerceivedSeverity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_PerceivedSeverity(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_PerceivedSeverity_PDU);
+}
+static void dissect_PrioritisedObject_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_PrioritisedObject(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_PrioritisedObject_PDU);
+}
 static void dissect_ProbableCause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4324,6 +4282,11 @@ static void dissect_ProposedRepairActions_PDU(tvbuff_t *tvb _U_, packet_info *pi
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_ProposedRepairActions(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_ProposedRepairActions_PDU);
 }
+static void dissect_SecurityAlarmCause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_SecurityAlarmCause(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_SecurityAlarmCause_PDU);
+}
 static void dissect_SecurityAlarmSeverity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4339,6 +4302,16 @@ static void dissect_ServiceProvider_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
   dissect_cmip_ServiceProvider(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_ServiceProvider_PDU);
 }
+static void dissect_ServiceUser_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_ServiceUser(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_ServiceUser_PDU);
+}
+static void dissect_SimpleNameType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+  dissect_cmip_SimpleNameType(FALSE, tvb, 0, &asn1_ctx, tree, hf_cmip_SimpleNameType_PDU);
+}
 static void dissect_SourceIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   asn1_ctx_t asn1_ctx;
   asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
@@ -4407,7 +4380,7 @@ static void dissect_WeekMask_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot
 
 
 /*--- End of included file: packet-cmip-fn.c ---*/
-#line 107 "packet-cmip-template.c"
+#line 94 "../../asn1/cmip/packet-cmip-template.c"
 
 
 
@@ -4416,40 +4389,34 @@ static void dissect_WeekMask_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot
 static void
 dissect_cmip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
 {
-       static struct SESSION_DATA_STRUCTURE* session = NULL;
+       static struct SESSION_DATA_STRUCTURE* session;
        proto_item *item = NULL;
        proto_tree *tree = NULL;
        asn1_ctx_t asn1_ctx;
        asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
 
+       session = (struct SESSION_DATA_STRUCTURE*)pinfo->private_data;
 
        /* do we have spdu type from the session dissector?  */
-       if( !pinfo->private_data ){
-               if(tree){
+       if( !session ){
+               proto_tree_add_text(tree, tvb, 0, -1,
+                       "Internal error:can't get spdu type from session dissector.");
+               return;
+       } else {
+               if(session->spdu_type == 0 ) {
                        proto_tree_add_text(tree, tvb, 0, -1,
-                               "Internal error:can't get spdu type from session dissector.");
+                               "Internal error:wrong spdu type %x from session dissector.",session->spdu_type);
                        return;
                }
-       } else {
-               session  = ( (struct SESSION_DATA_STRUCTURE*)(pinfo->private_data) );
-               if(session->spdu_type == 0 ){
-                       if(tree){
-                               proto_tree_add_text(tree, tvb, 0, -1,
-                                       "Internal error:wrong spdu type %x from session dissector.",session->spdu_type);
-                               return;
-                       }
-               }
        }
 
        if(parent_tree){
-               item = proto_tree_add_item(parent_tree, proto_cmip, tvb, 0, -1, FALSE);
+               item = proto_tree_add_item(parent_tree, proto_cmip, tvb, 0, -1, ENC_NA);
                tree = proto_item_add_subtree(item, ett_cmip);
        }
 
-       if (check_col(pinfo->cinfo, COL_PROTOCOL))
-               col_set_str(pinfo->cinfo, COL_PROTOCOL, "CMIP");
-       if (check_col(pinfo->cinfo, COL_INFO))
-               col_clear(pinfo->cinfo, COL_INFO);
+       col_set_str(pinfo->cinfo, COL_PROTOCOL, "CMIP");
+       col_clear(pinfo->cinfo, COL_INFO);
        switch(session->spdu_type){
                case SES_CONNECTION_REQUEST:
                case SES_CONNECTION_ACCEPT:
@@ -4477,1146 +4444,1142 @@ void proto_register_cmip(void) {
     { &hf_cmip_actionType_OID,
       { "actionType", "cmip.actionType_OID",
         FT_STRING, BASE_NONE, NULL, 0,
-        "actionType", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_eventType_OID,
       { "eventType", "cmip.eventType_OID",
         FT_STRING, BASE_NONE, NULL, 0,
-        "eventType", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_attributeId_OID,
       { "attributeId", "cmip.attributeId_OID",
         FT_STRING, BASE_NONE, NULL, 0,
-        "attributeId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_errorId_OID,
       { "errorId", "cmip.errorId_OID",
         FT_STRING, BASE_NONE, NULL, 0,
-        "errorId", HFILL }},
+        NULL, HFILL }},
    { &hf_DiscriminatorConstruct,
       { "DiscriminatorConstruct", "cmip.DiscriminatorConstruct",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_Destination,
       { "Destination", "cmip.Destination",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_NameBinding,
       { "NameBinding", "cmip.NameBinding",
         FT_STRING, BASE_NONE, NULL, 0,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_ObjectClass,
       { "ObjectClass", "cmip.ObjectClass",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
-        "", HFILL }},
+        NULL, HFILL }},
 
 
 /*--- Included file: packet-cmip-hfarr.c ---*/
-#line 1 "packet-cmip-hfarr.c"
+#line 1 "../../asn1/cmip/packet-cmip-hfarr.c"
     { &hf_cmip_BaseManagedObjectId_PDU,
       { "BaseManagedObjectId", "cmip.BaseManagedObjectId",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.BaseManagedObjectId", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_EventTypeId_PDU,
+      { "EventTypeId", "cmip.EventTypeId",
+        FT_UINT32, BASE_DEC, VALS(cmip_EventTypeId_vals), 0,
+        NULL, HFILL }},
     { &hf_cmip_ObjectClass_PDU,
       { "ObjectClass", "cmip.ObjectClass",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
-        "cmip.ObjectClass", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ActiveDestination_PDU,
       { "ActiveDestination", "cmip.ActiveDestination",
         FT_UINT32, BASE_DEC, VALS(cmip_Destination_vals), 0,
-        "cmip.ActiveDestination", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AdditionalText_PDU,
       { "AdditionalText", "cmip.AdditionalText",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.AdditionalText", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AdditionalInformation_PDU,
       { "AdditionalInformation", "cmip.AdditionalInformation",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.AdditionalInformation", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_Allomorphs_PDU,
       { "Allomorphs", "cmip.Allomorphs",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.Allomorphs", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AdministrativeState_PDU,
       { "AdministrativeState", "cmip.AdministrativeState",
         FT_UINT32, BASE_DEC, VALS(cmip_AdministrativeState_vals), 0,
-        "cmip.AdministrativeState", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeIdentifierList_PDU,
       { "AttributeIdentifierList", "cmip.AttributeIdentifierList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.AttributeIdentifierList", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeList_PDU,
       { "AttributeList", "cmip.AttributeList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.AttributeList", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeValueChangeDefinition_PDU,
       { "AttributeValueChangeDefinition", "cmip.AttributeValueChangeDefinition",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.AttributeValueChangeDefinition", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AlarmStatus_PDU,
       { "AlarmStatus", "cmip.AlarmStatus",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.AlarmStatus", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_AvailabilityStatus_PDU,
+      { "AvailabilityStatus", "cmip.AvailabilityStatus",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_BackedUpStatus_PDU,
       { "BackedUpStatus", "cmip.BackedUpStatus",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.BackedUpStatus", HFILL }},
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_BackUpDestinationList_PDU,
       { "BackUpDestinationList", "cmip.BackUpDestinationList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.BackUpDestinationList", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_BackUpRelationshipObject_PDU,
+      { "BackUpRelationshipObject", "cmip.BackUpRelationshipObject",
+        FT_UINT32, BASE_DEC, VALS(cmip_BackUpRelationshipObject_vals), 0,
+        NULL, HFILL }},
+    { &hf_cmip_CapacityAlarmThreshold_PDU,
+      { "CapacityAlarmThreshold", "cmip.CapacityAlarmThreshold",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_ConfirmedMode_PDU,
       { "ConfirmedMode", "cmip.ConfirmedMode",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.ConfirmedMode", HFILL }},
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_ControlStatus_PDU,
       { "ControlStatus", "cmip.ControlStatus",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.ControlStatus", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_CorrelatedNotifications_PDU,
       { "CorrelatedNotifications", "cmip.CorrelatedNotifications",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.CorrelatedNotifications", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_CurrentLogSize_PDU,
       { "CurrentLogSize", "cmip.CurrentLogSize",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.CurrentLogSize", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_Destination_PDU,
       { "Destination", "cmip.Destination",
         FT_UINT32, BASE_DEC, VALS(cmip_Destination_vals), 0,
-        "cmip.Destination", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_DiscriminatorConstruct_PDU,
       { "DiscriminatorConstruct", "cmip.DiscriminatorConstruct",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISFilter_vals), 0,
-        "cmip.DiscriminatorConstruct", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_EventTime_PDU,
       { "EventTime", "cmip.EventTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.EventTime", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_GroupObjects_PDU,
+      { "GroupObjects", "cmip.GroupObjects",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
+    { &hf_cmip_IntervalsOfDay_PDU,
+      { "IntervalsOfDay", "cmip.IntervalsOfDay",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_LifecycleState_PDU,
       { "LifecycleState", "cmip.LifecycleState",
         FT_UINT32, BASE_DEC, VALS(cmip_LifecycleState_vals), 0,
-        "cmip.LifecycleState", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_LogFullAction_PDU,
       { "LogFullAction", "cmip.LogFullAction",
         FT_UINT32, BASE_DEC, VALS(cmip_LogFullAction_vals), 0,
-        "cmip.LogFullAction", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_LoggingTime_PDU,
       { "LoggingTime", "cmip.LoggingTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.LoggingTime", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_LogRecordId_PDU,
       { "LogRecordId", "cmip.LogRecordId",
         FT_UINT32, BASE_DEC, VALS(cmip_SimpleNameType_vals), 0,
-        "cmip.LogRecordId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_MaxLogSize_PDU,
       { "MaxLogSize", "cmip.MaxLogSize",
         FT_INT32, BASE_DEC, VALS(cmip_MaxLogSize_vals), 0,
-        "cmip.MaxLogSize", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_MonitoredAttributes_PDU,
       { "MonitoredAttributes", "cmip.MonitoredAttributes",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.MonitoredAttributes", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_NameBinding_PDU,
       { "NameBinding", "cmip.NameBinding",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.NameBinding", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_NotificationIdentifier_PDU,
+      { "NotificationIdentifier", "cmip.NotificationIdentifier",
+        FT_INT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_NumberOfRecords_PDU,
       { "NumberOfRecords", "cmip.NumberOfRecords",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.NumberOfRecords", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_OperationalState_PDU,
       { "OperationalState", "cmip.OperationalState",
         FT_UINT32, BASE_DEC, VALS(cmip_OperationalState_vals), 0,
-        "cmip.OperationalState", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_Packages_PDU,
       { "Packages", "cmip.Packages",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.Packages", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_PerceivedSeverity_PDU,
+      { "PerceivedSeverity", "cmip.PerceivedSeverity",
+        FT_UINT32, BASE_DEC, VALS(cmip_PerceivedSeverity_vals), 0,
+        NULL, HFILL }},
+    { &hf_cmip_PrioritisedObject_PDU,
+      { "PrioritisedObject", "cmip.PrioritisedObject",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_ProbableCause_PDU,
       { "ProbableCause", "cmip.ProbableCause",
         FT_UINT32, BASE_DEC, VALS(cmip_ProbableCause_vals), 0,
-        "cmip.ProbableCause", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ProceduralStatus_PDU,
       { "ProceduralStatus", "cmip.ProceduralStatus",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.ProceduralStatus", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ProposedRepairActions_PDU,
       { "ProposedRepairActions", "cmip.ProposedRepairActions",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.ProposedRepairActions", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_SecurityAlarmCause_PDU,
+      { "SecurityAlarmCause", "cmip.SecurityAlarmCause",
+        FT_OID, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_SecurityAlarmSeverity_PDU,
       { "SecurityAlarmSeverity", "cmip.SecurityAlarmSeverity",
         FT_UINT32, BASE_DEC, VALS(cmip_PerceivedSeverity_vals), 0,
-        "cmip.SecurityAlarmSeverity", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SecurityAlarmDetector_PDU,
       { "SecurityAlarmDetector", "cmip.SecurityAlarmDetector",
         FT_UINT32, BASE_DEC, VALS(cmip_SecurityAlarmDetector_vals), 0,
-        "cmip.SecurityAlarmDetector", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ServiceProvider_PDU,
       { "ServiceProvider", "cmip.ServiceProvider",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ServiceProvider", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_ServiceUser_PDU,
+      { "ServiceUser", "cmip.ServiceUser",
+        FT_NONE, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
+    { &hf_cmip_SimpleNameType_PDU,
+      { "SimpleNameType", "cmip.SimpleNameType",
+        FT_UINT32, BASE_DEC, VALS(cmip_SimpleNameType_vals), 0,
+        NULL, HFILL }},
     { &hf_cmip_SourceIndicator_PDU,
       { "SourceIndicator", "cmip.SourceIndicator",
         FT_UINT32, BASE_DEC, VALS(cmip_SourceIndicator_vals), 0,
-        "cmip.SourceIndicator", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SpecificProblems_PDU,
       { "SpecificProblems", "cmip.SpecificProblems",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SpecificProblems", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_StandbyStatus_PDU,
       { "StandbyStatus", "cmip.StandbyStatus",
         FT_INT32, BASE_DEC, VALS(cmip_StandbyStatus_vals), 0,
-        "cmip.StandbyStatus", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_StartTime_PDU,
       { "StartTime", "cmip.StartTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.StartTime", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_StopTime_PDU,
       { "StopTime", "cmip.StopTime",
         FT_UINT32, BASE_DEC, VALS(cmip_StopTime_vals), 0,
-        "cmip.StopTime", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SupportedFeatures_PDU,
       { "SupportedFeatures", "cmip.SupportedFeatures",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SupportedFeatures", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SystemId_PDU,
       { "SystemId", "cmip.SystemId",
         FT_UINT32, BASE_DEC, VALS(cmip_SystemId_vals), 0,
-        "cmip.SystemId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SystemTitle_PDU,
       { "SystemTitle", "cmip.SystemTitle",
         FT_UINT32, BASE_DEC, VALS(cmip_SystemTitle_vals), 0,
-        "cmip.SystemTitle", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ThresholdInfo_PDU,
       { "ThresholdInfo", "cmip.ThresholdInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ThresholdInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_TrendIndication_PDU,
       { "TrendIndication", "cmip.TrendIndication",
         FT_UINT32, BASE_DEC, VALS(cmip_TrendIndication_vals), 0,
-        "cmip.TrendIndication", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_UnknownStatus_PDU,
       { "UnknownStatus", "cmip.UnknownStatus",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.UnknownStatus", HFILL }},
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_UsageState_PDU,
       { "UsageState", "cmip.UsageState",
         FT_UINT32, BASE_DEC, VALS(cmip_UsageState_vals), 0,
-        "cmip.UsageState", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_WeekMask_PDU,
       { "WeekMask", "cmip.WeekMask",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.WeekMask", HFILL }},
+        NULL, HFILL }},
+    { &hf_cmip_PAR_missingAttributeValue_item,
+      { "AttributeId", "cmip.AttributeId",
+        FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
+        NULL, HFILL }},
     { &hf_cmip_managedObjectClass,
       { "managedObjectClass", "cmip.managedObjectClass",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
-        "cmip.ObjectClass", HFILL }},
+        "ObjectClass", HFILL }},
     { &hf_cmip_managedObjectInstance,
       { "managedObjectInstance", "cmip.managedObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_currentTime,
       { "currentTime", "cmip.currentTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GeneralizedTime", HFILL }},
-    { &hf_cmip_actionErrorInfo,
+        "GeneralizedTime", HFILL }},
+    { &hf_cmip_actionErroractionErrorInfo,
       { "actionErrorInfo", "cmip.actionErrorInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionErrorInfo", HFILL }},
-    { &hf_cmip_errorStatus,
+        NULL, HFILL }},
+    { &hf_cmip_actionErrorInfo_errorStatus,
       { "errorStatus", "cmip.errorStatus",
-        FT_UINT32, BASE_DEC, VALS(cmip_T_errorStatus_vals), 0,
-        "cmip.T_errorStatus", HFILL }},
-    { &hf_cmip_errorInfo,
+        FT_UINT32, BASE_DEC, VALS(cmip_T_actionErrorInfo_errorStatus_vals), 0,
+        "T_actionErrorInfo_errorStatus", HFILL }},
+    { &hf_cmip_actionErrorInfo,
       { "errorInfo", "cmip.errorInfo",
-        FT_UINT32, BASE_DEC, VALS(cmip_T_errorInfo_vals), 0,
-        "cmip.T_errorInfo", HFILL }},
+        FT_UINT32, BASE_DEC, VALS(cmip_T_actionErrorInfo_vals), 0,
+        "T_actionErrorInfo", HFILL }},
     { &hf_cmip_actionType,
       { "actionType", "cmip.actionType",
         FT_UINT32, BASE_DEC, VALS(cmip_ActionTypeId_vals), 0,
-        "cmip.ActionTypeId", HFILL }},
+        "ActionTypeId", HFILL }},
     { &hf_cmip_actionArgument,
       { "actionArgument", "cmip.actionArgument",
         FT_UINT32, BASE_DEC, VALS(cmip_NoSuchArgument_vals), 0,
-        "cmip.NoSuchArgument", HFILL }},
+        "NoSuchArgument", HFILL }},
     { &hf_cmip_argumentValue,
       { "argumentValue", "cmip.argumentValue",
         FT_UINT32, BASE_DEC, VALS(cmip_InvalidArgumentValue_vals), 0,
-        "cmip.InvalidArgumentValue", HFILL }},
+        "InvalidArgumentValue", HFILL }},
     { &hf_cmip_actionInfoArg,
       { "actionInfoArg", "cmip.actionInfoArg",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_actionInfoArg", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionReplyInfo,
       { "actionReplyInfo", "cmip.actionReplyInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_actionReplyInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionReply,
       { "actionReply", "cmip.actionReply",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionReply", HFILL }},
-    { &hf_cmip_globalForm,
+        NULL, HFILL }},
+    { &hf_cmip_actionTypeId_globalForm,
       { "globalForm", "cmip.globalForm",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_globalForm", HFILL }},
+        "T_actionTypeId_globalForm", HFILL }},
     { &hf_cmip_localForm,
       { "localForm", "cmip.localForm",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
-    { &hf_cmip_id,
+        "INTEGER", HFILL }},
+    { &hf_cmip_attributeid,
       { "id", "cmip.id",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        "AttributeId", HFILL }},
     { &hf_cmip_value,
       { "value", "cmip.value",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_value", HFILL }},
-    { &hf_cmip_errorStatus_01,
+        "AttributeValue", HFILL }},
+    { &hf_cmip_attributeError_errorStatus,
       { "errorStatus", "cmip.errorStatus",
-        FT_UINT32, BASE_DEC, VALS(cmip_T_errorStatus_01_vals), 0,
-        "cmip.T_errorStatus_01", HFILL }},
+        FT_UINT32, BASE_DEC, VALS(cmip_T_attributeError_errorStatus_vals), 0,
+        "T_attributeError_errorStatus", HFILL }},
     { &hf_cmip_modifyOperator,
       { "modifyOperator", "cmip.modifyOperator",
         FT_INT32, BASE_DEC, VALS(cmip_ModifyOperator_vals), 0,
-        "cmip.ModifyOperator", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_attributeId,
       { "attributeId", "cmip.attributeId",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_attributeValue,
       { "attributeValue", "cmip.attributeValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_attributeValue", HFILL }},
-    { &hf_cmip_globalForm_01,
+        NULL, HFILL }},
+    { &hf_cmip_attributeId_globalForm,
       { "globalForm", "cmip.globalForm",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_globalForm_01", HFILL }},
-    { &hf_cmip_localForm_01,
+        "T_attributeId_globalForm", HFILL }},
+    { &hf_cmip_attributeIdlocalForm,
       { "localForm", "cmip.localForm",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.T_localForm", HFILL }},
-    { &hf_cmip_errorStatus_02,
+        "T_attributeIdlocalForm", HFILL }},
+    { &hf_cmip_attributeIdError_errorStatus,
       { "errorStatus", "cmip.errorStatus",
-        FT_UINT32, BASE_DEC, VALS(cmip_T_errorStatus_02_vals), 0,
-        "cmip.T_errorStatus_02", HFILL }},
-    { &hf_cmip_id_01,
+        FT_UINT32, BASE_DEC, VALS(cmip_T_attributeIdError_errorStatus_vals), 0,
+        "T_attributeIdError_errorStatus", HFILL }},
+    { &hf_cmip_id,
       { "id", "cmip.id",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_id", HFILL }},
-    { &hf_cmip_value_01,
+        NULL, HFILL }},
+    { &hf_cmip_attributeValueAssertionvalue,
       { "value", "cmip.value",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_value_01", HFILL }},
+        "T_attributeValueAssertionvalue", HFILL }},
     { &hf_cmip_baseManagedObjectClass,
       { "baseManagedObjectClass", "cmip.baseManagedObjectClass",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
-        "cmip.ObjectClass", HFILL }},
+        "ObjectClass", HFILL }},
     { &hf_cmip_baseManagedObjectInstance,
       { "baseManagedObjectInstance", "cmip.baseManagedObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_item,
       { "item", "cmip.item",
         FT_UINT32, BASE_DEC, VALS(cmip_FilterItem_vals), 0,
-        "cmip.FilterItem", HFILL }},
+        "FilterItem", HFILL }},
     { &hf_cmip_and,
       { "and", "cmip.and",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_CMISFilter", HFILL }},
+        "SET_OF_CMISFilter", HFILL }},
     { &hf_cmip_and_item,
-      { "Item", "cmip.and_item",
+      { "CMISFilter", "cmip.CMISFilter",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISFilter_vals), 0,
-        "cmip.CMISFilter", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_or,
       { "or", "cmip.or",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_CMISFilter", HFILL }},
+        "SET_OF_CMISFilter", HFILL }},
     { &hf_cmip_or_item,
-      { "Item", "cmip.or_item",
+      { "CMISFilter", "cmip.CMISFilter",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISFilter_vals), 0,
-        "cmip.CMISFilter", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_not,
       { "not", "cmip.not",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISFilter_vals), 0,
-        "cmip.CMISFilter", HFILL }},
+        "CMISFilter", HFILL }},
     { &hf_cmip_scope,
       { "scope", "cmip.scope",
         FT_UINT32, BASE_DEC, VALS(cmip_Scope_vals), 0,
-        "cmip.Scope", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_filter,
       { "filter", "cmip.filter",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISFilter_vals), 0,
-        "cmip.CMISFilter", HFILL }},
+        "CMISFilter", HFILL }},
     { &hf_cmip_sync,
       { "sync", "cmip.sync",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISSync_vals), 0,
-        "cmip.CMISSync", HFILL }},
+        "CMISSync", HFILL }},
     { &hf_cmip_managedOrSuperiorObjectInstance,
       { "managedOrSuperiorObjectInstance", "cmip.managedOrSuperiorObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_T_managedOrSuperiorObjectInstance_vals), 0,
-        "cmip.T_managedOrSuperiorObjectInstance", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_superiorObjectInstance,
       { "superiorObjectInstance", "cmip.superiorObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_accessControl,
       { "accessControl", "cmip.accessControl",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.AccessControl", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_referenceObjectInstance,
       { "referenceObjectInstance", "cmip.referenceObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_attributeList,
       { "attributeList", "cmip.attributeList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_Attribute", HFILL }},
+        "SET_OF_Attribute", HFILL }},
     { &hf_cmip_attributeList_item,
-      { "Item", "cmip.attributeList_item",
+      { "Attribute", "cmip.Attribute",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_deleteErrorInfo,
       { "deleteErrorInfo", "cmip.deleteErrorInfo",
         FT_UINT32, BASE_DEC, VALS(cmip_T_deleteErrorInfo_vals), 0,
-        "cmip.T_deleteErrorInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_eventType,
       { "eventType", "cmip.eventType",
         FT_UINT32, BASE_DEC, VALS(cmip_EventTypeId_vals), 0,
-        "cmip.EventTypeId", HFILL }},
+        "EventTypeId", HFILL }},
     { &hf_cmip_eventReplyInfo,
       { "eventReplyInfo", "cmip.eventReplyInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_eventReplyInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_eventTime,
       { "eventTime", "cmip.eventTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GeneralizedTime", HFILL }},
-    { &hf_cmip_eventInfo,
+        "GeneralizedTime", HFILL }},
+    { &hf_cmip_eventReportArgumenteventInfo,
       { "eventInfo", "cmip.eventInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_eventInfo", HFILL }},
+        "EventReportArgumentEventInfo", HFILL }},
     { &hf_cmip_eventReply,
       { "eventReply", "cmip.eventReply",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.EventReply", HFILL }},
-    { &hf_cmip_globalForm_02,
+        NULL, HFILL }},
+    { &hf_cmip_eventTypeId_globalForm,
       { "globalForm", "cmip.globalForm",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_globalForm_02", HFILL }},
+        "T_eventTypeId_globalForm", HFILL }},
     { &hf_cmip_equality,
       { "equality", "cmip.equality",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_substrings,
       { "substrings", "cmip.substrings",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.T_substrings", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_substrings_item,
-      { "Item", "cmip.substrings_item",
+      { "substrings item", "cmip.substrings_item",
         FT_UINT32, BASE_DEC, VALS(cmip_T_substrings_item_vals), 0,
-        "cmip.T_substrings_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_initialString,
       { "initialString", "cmip.initialString",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_anyString,
       { "anyString", "cmip.anyString",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_finalString,
       { "finalString", "cmip.finalString",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_greaterOrEqual,
       { "greaterOrEqual", "cmip.greaterOrEqual",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_lessOrEqual,
       { "lessOrEqual", "cmip.lessOrEqual",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
-    { &hf_cmip_present,
+        "Attribute", HFILL }},
+    { &hf_cmip_filterItempresent,
       { "present", "cmip.present",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        "AttributeId", HFILL }},
     { &hf_cmip_subsetOf,
       { "subsetOf", "cmip.subsetOf",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_supersetOf,
       { "supersetOf", "cmip.supersetOf",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_nonNullSetIntersection,
       { "nonNullSetIntersection", "cmip.nonNullSetIntersection",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        "Attribute", HFILL }},
     { &hf_cmip_attributeIdError,
       { "attributeIdError", "cmip.attributeIdError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.AttributeIdError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_attribute,
       { "attribute", "cmip.attribute",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_getInfoList,
       { "getInfoList", "cmip.getInfoList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_GetInfoStatus", HFILL }},
+        "SET_OF_GetInfoStatus", HFILL }},
     { &hf_cmip_getInfoList_item,
-      { "Item", "cmip.getInfoList_item",
+      { "GetInfoStatus", "cmip.GetInfoStatus",
         FT_UINT32, BASE_DEC, VALS(cmip_GetInfoStatus_vals), 0,
-        "cmip.GetInfoStatus", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionValue,
       { "actionValue", "cmip.actionValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionInfo", HFILL }},
+        "ActionInfo", HFILL }},
     { &hf_cmip_eventValue,
       { "eventValue", "cmip.eventValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_eventValue", HFILL }},
-    { &hf_cmip_eventInfo_01,
+        NULL, HFILL }},
+    { &hf_cmip_eventInfo,
       { "eventInfo", "cmip.eventInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_eventInfo_01", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_getResult,
       { "getResult", "cmip.getResult",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.GetResult", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_getListError,
       { "getListError", "cmip.getListError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.GetListError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_setResult,
       { "setResult", "cmip.setResult",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.SetResult", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_setListError,
       { "setListError", "cmip.setListError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.SetListError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionResult,
       { "actionResult", "cmip.actionResult",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionResult", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_processingFailure,
       { "processingFailure", "cmip.processingFailure",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ProcessingFailure", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_deleteResult,
       { "deleteResult", "cmip.deleteResult",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.DeleteResult", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionError,
       { "actionError", "cmip.actionError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_deleteError,
       { "deleteError", "cmip.deleteError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.DeleteError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_actionId,
       { "actionId", "cmip.actionId",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_actionId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_eventId,
       { "eventId", "cmip.eventId",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_eventId", HFILL }},
-    { &hf_cmip_globalForm_03,
+        NULL, HFILL }},
+    { &hf_cmip_objectClass_globalForm,
       { "globalForm", "cmip.globalForm",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_globalForm_03", HFILL }},
-    { &hf_cmip_localForm_02,
+        "T_objectClass_globalForm", HFILL }},
+    { &hf_cmip_objectClasslocalForm,
       { "localForm", "cmip.localForm",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.T_localForm_01", HFILL }},
+        "T_objectClasslocalForm", HFILL }},
     { &hf_cmip_distinguishedName,
       { "distinguishedName", "cmip.distinguishedName",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.DistinguishedName", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_nonSpecificForm,
       { "nonSpecificForm", "cmip.nonSpecificForm",
-        FT_BYTES, BASE_HEX, NULL, 0,
-        "cmip.OCTET_STRING", HFILL }},
+        FT_BYTES, BASE_NONE, NULL, 0,
+        "OCTET_STRING", HFILL }},
     { &hf_cmip_localDistinguishedName,
       { "localDistinguishedName", "cmip.localDistinguishedName",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.RDNSequence", HFILL }},
+        "RDNSequence", HFILL }},
     { &hf_cmip_specificErrorInfo,
       { "specificErrorInfo", "cmip.specificErrorInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.SpecificErrorInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_RDNSequence_item,
-      { "Item", "cmip.RDNSequence_item",
+      { "RelativeDistinguishedName", "cmip.RelativeDistinguishedName",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.RelativeDistinguishedName", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_RelativeDistinguishedName_item,
-      { "Item", "cmip.RelativeDistinguishedName_item",
+      { "AttributeValueAssertion", "cmip.AttributeValueAssertion",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.AttributeValueAssertion", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_namedNumbers,
       { "namedNumbers", "cmip.namedNumbers",
         FT_INT32, BASE_DEC, VALS(cmip_T_namedNumbers_vals), 0,
-        "cmip.T_namedNumbers", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_individualLevels,
       { "individualLevels", "cmip.individualLevels",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_baseToNthLevel,
       { "baseToNthLevel", "cmip.baseToNthLevel",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_attributeError,
       { "attributeError", "cmip.attributeError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.AttributeError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_setInfoList,
       { "setInfoList", "cmip.setInfoList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_SetInfoStatus", HFILL }},
+        "SET_OF_SetInfoStatus", HFILL }},
     { &hf_cmip_setInfoList_item,
-      { "Item", "cmip.setInfoList_item",
+      { "SetInfoStatus", "cmip.SetInfoStatus",
         FT_UINT32, BASE_DEC, VALS(cmip_SetInfoStatus_vals), 0,
-        "cmip.SetInfoStatus", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_errorId,
       { "errorId", "cmip.errorId",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_errorId", HFILL }},
-    { &hf_cmip_errorInfo_01,
+        NULL, HFILL }},
+    { &hf_cmip_errorInfo,
       { "errorInfo", "cmip.errorInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_errorInfo_01", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_abortSource,
       { "abortSource", "cmip.abortSource",
         FT_UINT32, BASE_DEC, VALS(cmip_CMIPAbortSource_vals), 0,
-        "cmip.CMIPAbortSource", HFILL }},
+        "CMIPAbortSource", HFILL }},
     { &hf_cmip_userInfo,
       { "userInfo", "cmip.userInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.EXTERNAL", HFILL }},
+        "EXTERNAL", HFILL }},
     { &hf_cmip_protocolVersion,
       { "protocolVersion", "cmip.protocolVersion",
-        FT_BYTES, BASE_HEX, NULL, 0,
-        "cmip.ProtocolVersion", HFILL }},
+        FT_BYTES, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_functionalUnits,
       { "functionalUnits", "cmip.functionalUnits",
-        FT_BYTES, BASE_HEX, NULL, 0,
-        "cmip.FunctionalUnits", HFILL }},
-    { &hf_cmip_accessControl_01,
+        FT_BYTES, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
+    { &hf_cmip_cmipUserInfoaccessControl,
       { "accessControl", "cmip.accessControl",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.EXTERNAL", HFILL }},
+        "EXTERNAL", HFILL }},
     { &hf_cmip_AdditionalInformation_item,
-      { "Item", "cmip.AdditionalInformation_item",
+      { "ManagementExtension", "cmip.ManagementExtension",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ManagementExtension", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_Allomorphs_item,
-      { "Item", "cmip.Allomorphs_item",
+      { "ObjectClass", "cmip.ObjectClass",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectClass_vals), 0,
-        "cmip.ObjectClass", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeIdentifierList_item,
-      { "Item", "cmip.AttributeIdentifierList_item",
+      { "AttributeId", "cmip.AttributeId",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeList_item,
-      { "Item", "cmip.AttributeList_item",
+      { "Attribute", "cmip.Attribute",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AttributeValueChangeDefinition_item,
-      { "Item", "cmip.AttributeValueChangeDefinition_item",
+      { "AttributeValueChangeDefinition item", "cmip.AttributeValueChangeDefinition_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.AttributeValueChangeDefinition_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_oldAttributeValue,
       { "oldAttributeValue", "cmip.oldAttributeValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_oldAttributeValue", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_newAttributeValue,
       { "newAttributeValue", "cmip.newAttributeValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_newAttributeValue", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AlarmStatus_item,
-      { "Item", "cmip.AlarmStatus_item",
+      { "AlarmStatus item", "cmip.AlarmStatus_item",
         FT_INT32, BASE_DEC, VALS(cmip_AlarmStatus_item_vals), 0,
-        "cmip.AlarmStatus_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_AvailabilityStatus_item,
-      { "Item", "cmip.AvailabilityStatus_item",
+      { "AvailabilityStatus item", "cmip.AvailabilityStatus_item",
         FT_INT32, BASE_DEC, VALS(cmip_AvailabilityStatus_item_vals), 0,
-        "cmip.AvailabilityStatus_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_BackUpDestinationList_item,
-      { "Item", "cmip.BackUpDestinationList_item",
+      { "AE-title", "cmip.AE_title",
         FT_UINT32, BASE_DEC, VALS(acse_AE_title_vals), 0,
-        "acse.AE_title", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_objectName,
       { "objectName", "cmip.objectName",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_noObject,
       { "noObject", "cmip.noObject",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NULL", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_CapacityAlarmThreshold_item,
-      { "Item", "cmip.CapacityAlarmThreshold_item",
+      { "CapacityAlarmThreshold item", "cmip.CapacityAlarmThreshold_item",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER_0_100", HFILL }},
+        "INTEGER_0_100", HFILL }},
     { &hf_cmip_ControlStatus_item,
-      { "Item", "cmip.ControlStatus_item",
+      { "ControlStatus item", "cmip.ControlStatus_item",
         FT_INT32, BASE_DEC, VALS(cmip_ControlStatus_item_vals), 0,
-        "cmip.ControlStatus_item", HFILL }},
-    { &hf_cmip_CounterThreshold_item,
-      { "Item", "cmip.CounterThreshold_item",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.CounterThreshold_item", HFILL }},
-    { &hf_cmip_comparisonLevel,
-      { "comparisonLevel", "cmip.comparisonLevel",
-        FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
-    { &hf_cmip_offsetValue,
-      { "offsetValue", "cmip.offsetValue",
-        FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
-    { &hf_cmip_notificationOnOff,
-      { "notificationOnOff", "cmip.notificationOnOff",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.BOOLEAN", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_CorrelatedNotifications_item,
-      { "Item", "cmip.CorrelatedNotifications_item",
+      { "CorrelatedNotifications item", "cmip.CorrelatedNotifications_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.CorrelatedNotifications_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_correlatedNotifications,
       { "correlatedNotifications", "cmip.correlatedNotifications",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_NotificationIdentifier", HFILL }},
+        "SET_OF_NotificationIdentifier", HFILL }},
     { &hf_cmip_correlatedNotifications_item,
-      { "Item", "cmip.correlatedNotifications_item",
+      { "NotificationIdentifier", "cmip.NotificationIdentifier",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.NotificationIdentifier", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_sourceObjectInst,
       { "sourceObjectInst", "cmip.sourceObjectInst",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_single,
       { "single", "cmip.single",
         FT_UINT32, BASE_DEC, VALS(acse_AE_title_vals), 0,
-        "acse.AE_title", HFILL }},
+        "AE_title", HFILL }},
     { &hf_cmip_multiple,
       { "multiple", "cmip.multiple",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_AE_title", HFILL }},
+        "SET_OF_AE_title", HFILL }},
     { &hf_cmip_multiple_item,
-      { "Item", "cmip.multiple_item",
+      { "AE-title", "cmip.AE_title",
         FT_UINT32, BASE_DEC, VALS(acse_AE_title_vals), 0,
-        "acse.AE_title", HFILL }},
-    { &hf_cmip_GaugeThreshold_item,
-      { "Item", "cmip.GaugeThreshold_item",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.GaugeThreshold_item", HFILL }},
-    { &hf_cmip_notifyLow,
-      { "notifyLow", "cmip.notifyLow",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NotifyThreshold", HFILL }},
-    { &hf_cmip_notifyHigh,
-      { "notifyHigh", "cmip.notifyHigh",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NotifyThreshold", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_GroupObjects_item,
-      { "Item", "cmip.GroupObjects_item",
+      { "ObjectInstance", "cmip.ObjectInstance",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_IntervalsOfDay_item,
-      { "Item", "cmip.IntervalsOfDay_item",
+      { "IntervalsOfDay item", "cmip.IntervalsOfDay_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.IntervalsOfDay_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_intervalStart,
       { "intervalStart", "cmip.intervalStart",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Time24", HFILL }},
+        "Time24", HFILL }},
     { &hf_cmip_intervalEnd,
       { "intervalEnd", "cmip.intervalEnd",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Time24", HFILL }},
-    { &hf_cmip_identifier,
+        "Time24", HFILL }},
+    { &hf_cmip_managementExtensionidentifier,
       { "identifier", "cmip.identifier",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_identifier", HFILL }},
+        "T_managementExtensionidentifier", HFILL }},
     { &hf_cmip_significance,
       { "significance", "cmip.significance",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.BOOLEAN", HFILL }},
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
+        "BOOLEAN", HFILL }},
     { &hf_cmip_information,
       { "information", "cmip.information",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_information", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_MonitoredAttributes_item,
-      { "Item", "cmip.MonitoredAttributes_item",
+      { "Attribute", "cmip.Attribute",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Attribute", HFILL }},
-    { &hf_cmip_threshold,
-      { "threshold", "cmip.threshold",
-        FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
-    { &hf_cmip_notifyOnOff,
-      { "notifyOnOff", "cmip.notifyOnOff",
-        FT_BOOLEAN, 8, NULL, 0,
-        "cmip.BOOLEAN", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_integer,
       { "integer", "cmip.integer",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_real,
       { "real", "cmip.real",
         FT_DOUBLE, BASE_NONE, NULL, 0,
-        "cmip.REAL", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_Packages_item,
-      { "Item", "cmip.Packages_item",
+      { "Packages item", "cmip.Packages_item",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_PrioritisedObject_item,
-      { "Item", "cmip.PrioritisedObject_item",
+      { "PrioritisedObject item", "cmip.PrioritisedObject_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.PrioritisedObject_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_object,
       { "object", "cmip.object",
         FT_UINT32, BASE_DEC, VALS(cmip_ObjectInstance_vals), 0,
-        "cmip.ObjectInstance", HFILL }},
+        "ObjectInstance", HFILL }},
     { &hf_cmip_priority,
       { "priority", "cmip.priority",
         FT_INT32, BASE_DEC, VALS(cmip_T_priority_vals), 0,
-        "cmip.T_priority", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_globalValue,
       { "globalValue", "cmip.globalValue",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_localValue,
       { "localValue", "cmip.localValue",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_ProceduralStatus_item,
-      { "Item", "cmip.ProceduralStatus_item",
+      { "ProceduralStatus item", "cmip.ProceduralStatus_item",
         FT_INT32, BASE_DEC, VALS(cmip_ProceduralStatus_item_vals), 0,
-        "cmip.ProceduralStatus_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ProposedRepairActions_item,
-      { "Item", "cmip.ProposedRepairActions_item",
+      { "SpecificIdentifier", "cmip.SpecificIdentifier",
         FT_UINT32, BASE_DEC, VALS(cmip_SpecificIdentifier_vals), 0,
-        "cmip.SpecificIdentifier", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_mechanism,
       { "mechanism", "cmip.mechanism",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_application,
       { "application", "cmip.application",
         FT_UINT32, BASE_DEC, VALS(acse_AE_title_vals), 0,
-        "acse.AE_title", HFILL }},
-    { &hf_cmip_identifier_01,
+        "AE_title", HFILL }},
+    { &hf_cmip_serviceUseridentifier,
       { "identifier", "cmip.identifier",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_identifier_01", HFILL }},
+        "T_serviceUseridentifier", HFILL }},
     { &hf_cmip_details,
       { "details", "cmip.details",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_details", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_number,
       { "number", "cmip.number",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_string,
       { "string", "cmip.string",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GraphicString", HFILL }},
+        "GraphicString", HFILL }},
     { &hf_cmip_oi,
       { "oi", "cmip.oi",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_int,
       { "int", "cmip.int",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_SpecificProblems_item,
-      { "Item", "cmip.SpecificProblems_item",
+      { "SpecificIdentifier", "cmip.SpecificIdentifier",
         FT_UINT32, BASE_DEC, VALS(cmip_SpecificIdentifier_vals), 0,
-        "cmip.SpecificIdentifier", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_specific,
       { "specific", "cmip.specific",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GeneralizedTime", HFILL }},
+        "GeneralizedTime", HFILL }},
     { &hf_cmip_continual,
       { "continual", "cmip.continual",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NULL", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_SupportedFeatures_item,
-      { "Item", "cmip.SupportedFeatures_item",
+      { "SupportedFeatures item", "cmip.SupportedFeatures_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.SupportedFeatures_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_featureIdentifier,
       { "featureIdentifier", "cmip.featureIdentifier",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.T_featureIdentifier", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_featureInfo,
       { "featureInfo", "cmip.featureInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_featureInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_name,
       { "name", "cmip.name",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GraphicString", HFILL }},
+        "GraphicString", HFILL }},
     { &hf_cmip_nothing,
       { "nothing", "cmip.nothing",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NULL", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_oid,
       { "oid", "cmip.oid",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
-    { &hf_cmip_currentTideMark,
-      { "currentTideMark", "cmip.currentTideMark",
-        FT_UINT32, BASE_DEC, VALS(cmip_TideMark_vals), 0,
-        "cmip.TideMark", HFILL }},
-    { &hf_cmip_previousTideMark,
-      { "previousTideMark", "cmip.previousTideMark",
-        FT_UINT32, BASE_DEC, VALS(cmip_TideMark_vals), 0,
-        "cmip.TideMark", HFILL }},
-    { &hf_cmip_resetTime,
-      { "resetTime", "cmip.resetTime",
-        FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GeneralizedTime", HFILL }},
-    { &hf_cmip_maxTideMar,
-      { "maxTideMar", "cmip.maxTideMar",
-        FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
-    { &hf_cmip_minTideMark,
-      { "minTideMark", "cmip.minTideMark",
-        FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_hour,
       { "hour", "cmip.hour",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER_0_23", HFILL }},
+        "INTEGER_0_23", HFILL }},
     { &hf_cmip_minute,
       { "minute", "cmip.minute",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER_0_59", HFILL }},
+        "INTEGER_0_59", HFILL }},
     { &hf_cmip_triggeredThreshold,
       { "triggeredThreshold", "cmip.triggeredThreshold",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        "AttributeId", HFILL }},
     { &hf_cmip_observedValue,
       { "observedValue", "cmip.observedValue",
         FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_thresholdLevel,
       { "thresholdLevel", "cmip.thresholdLevel",
         FT_UINT32, BASE_DEC, VALS(cmip_ThresholdLevelInd_vals), 0,
-        "cmip.ThresholdLevelInd", HFILL }},
+        "ThresholdLevelInd", HFILL }},
     { &hf_cmip_armTime,
       { "armTime", "cmip.armTime",
         FT_STRING, BASE_NONE, NULL, 0,
-        "cmip.GeneralizedTime", HFILL }},
+        "GeneralizedTime", HFILL }},
     { &hf_cmip_up,
       { "up", "cmip.up",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_up", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_high,
       { "high", "cmip.high",
         FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
+        "ObservedValue", HFILL }},
     { &hf_cmip_low,
       { "low", "cmip.low",
         FT_UINT32, BASE_DEC, VALS(cmip_ObservedValue_vals), 0,
-        "cmip.ObservedValue", HFILL }},
+        "ObservedValue", HFILL }},
     { &hf_cmip_down,
       { "down", "cmip.down",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_down", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_WeekMask_item,
-      { "Item", "cmip.WeekMask_item",
+      { "WeekMask item", "cmip.WeekMask_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.WeekMask_item", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_daysOfWeek,
       { "daysOfWeek", "cmip.daysOfWeek",
-        FT_BYTES, BASE_HEX, NULL, 0,
-        "cmip.T_daysOfWeek", HFILL }},
+        FT_BYTES, BASE_NONE, NULL, 0,
+        NULL, HFILL }},
     { &hf_cmip_intervalsOfDay,
       { "intervalsOfDay", "cmip.intervalsOfDay",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.IntervalsOfDay", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_local,
       { "local", "cmip.local",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.T_local", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_global,
       { "global", "cmip.global",
         FT_OID, BASE_NONE, NULL, 0,
-        "cmip.OBJECT_IDENTIFIER", HFILL }},
+        "OBJECT_IDENTIFIER", HFILL }},
     { &hf_cmip_invoke,
       { "invoke", "cmip.invoke",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Invoke", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_returnResult,
       { "returnResult", "cmip.returnResult",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ReturnResult", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_returnError,
       { "returnError", "cmip.returnError",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ReturnError", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_reject,
       { "reject", "cmip.reject",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.Reject", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_invokeId,
       { "invokeId", "cmip.invokeId",
         FT_UINT32, BASE_DEC, VALS(cmip_InvokeId_vals), 0,
-        "cmip.InvokeId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_linkedId,
       { "linkedId", "cmip.linkedId",
         FT_UINT32, BASE_DEC, VALS(cmip_T_linkedId_vals), 0,
-        "cmip.T_linkedId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_linkedIdPresent,
       { "present", "cmip.present",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.T_linkedIdPresent", HFILL }},
+        "T_linkedIdPresent", HFILL }},
     { &hf_cmip_absent,
       { "absent", "cmip.absent",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.NULL", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_opcode,
       { "opcode", "cmip.opcode",
         FT_UINT32, BASE_DEC, VALS(cmip_Code_vals), 0,
-        "cmip.Code", HFILL }},
+        "Code", HFILL }},
     { &hf_cmip_argument,
       { "argument", "cmip.argument",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.InvokeArgument", HFILL }},
+        "InvokeArgument", HFILL }},
     { &hf_cmip_result,
       { "result", "cmip.result",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_result", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_resultArgument,
       { "result", "cmip.result",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ResultArgument", HFILL }},
+        "ResultArgument", HFILL }},
     { &hf_cmip_errcode,
       { "errcode", "cmip.errcode",
         FT_UINT32, BASE_DEC, VALS(cmip_Code_vals), 0,
-        "cmip.Code", HFILL }},
+        "Code", HFILL }},
     { &hf_cmip_parameter,
       { "parameter", "cmip.parameter",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_parameter", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_problem,
       { "problem", "cmip.problem",
         FT_UINT32, BASE_DEC, VALS(cmip_T_problem_vals), 0,
-        "cmip.T_problem", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_general,
       { "general", "cmip.general",
         FT_INT32, BASE_DEC, VALS(cmip_GeneralProblem_vals), 0,
-        "cmip.GeneralProblem", HFILL }},
+        "GeneralProblem", HFILL }},
     { &hf_cmip_invokeProblem,
       { "invoke", "cmip.invoke",
         FT_INT32, BASE_DEC, VALS(cmip_InvokeProblem_vals), 0,
-        "cmip.InvokeProblem", HFILL }},
+        "InvokeProblem", HFILL }},
     { &hf_cmip_returnResultProblem,
       { "returnResult", "cmip.returnResult",
         FT_INT32, BASE_DEC, VALS(cmip_ReturnResultProblem_vals), 0,
-        "cmip.ReturnResultProblem", HFILL }},
+        "ReturnResultProblem", HFILL }},
     { &hf_cmip_returnErrorProblem,
       { "returnError", "cmip.returnError",
         FT_INT32, BASE_DEC, VALS(cmip_ReturnErrorProblem_vals), 0,
-        "cmip.ReturnErrorProblem", HFILL }},
-    { &hf_cmip_present_01,
+        "ReturnErrorProblem", HFILL }},
+    { &hf_cmip_present,
       { "present", "cmip.present",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.INTEGER", HFILL }},
+        "INTEGER", HFILL }},
     { &hf_cmip_synchronization,
       { "synchronization", "cmip.synchronization",
         FT_UINT32, BASE_DEC, VALS(cmip_CMISSync_vals), 0,
-        "cmip.CMISSync", HFILL }},
+        "CMISSync", HFILL }},
     { &hf_cmip_actionInfo,
       { "actionInfo", "cmip.actionInfo",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.ActionInfo", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_attributeIdList,
       { "attributeIdList", "cmip.attributeIdList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.SET_OF_AttributeId", HFILL }},
+        "SET_OF_AttributeId", HFILL }},
     { &hf_cmip_attributeIdList_item,
-      { "Item", "cmip.attributeIdList_item",
+      { "AttributeId", "cmip.AttributeId",
         FT_UINT32, BASE_DEC, VALS(cmip_AttributeId_vals), 0,
-        "cmip.AttributeId", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_modificationList,
       { "modificationList", "cmip.modificationList",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "cmip.T_modificationList", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_modificationList_item,
-      { "Item", "cmip.modificationList_item",
+      { "modificationList item", "cmip.modificationList_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_modificationList_item", HFILL }},
+        "T_modificationList_item", HFILL }},
     { &hf_cmip_attributevalue,
       { "attributeValue", "cmip.attributeValue",
         FT_NONE, BASE_NONE, NULL, 0,
-        "cmip.T_attributevalue", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_InvokeId_present,
       { "InvokeId.present", "cmip.InvokeId_present",
         FT_INT32, BASE_DEC, NULL, 0,
-        "cmip.InvokeId_present", HFILL }},
+        "InvokeId_present", HFILL }},
     { &hf_cmip_FunctionalUnits_multipleObjectSelection,
       { "multipleObjectSelection", "cmip.multipleObjectSelection",
         FT_BOOLEAN, 8, NULL, 0x80,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_FunctionalUnits_filter,
       { "filter", "cmip.filter",
         FT_BOOLEAN, 8, NULL, 0x40,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_FunctionalUnits_multipleReply,
       { "multipleReply", "cmip.multipleReply",
         FT_BOOLEAN, 8, NULL, 0x20,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_FunctionalUnits_extendedService,
       { "extendedService", "cmip.extendedService",
         FT_BOOLEAN, 8, NULL, 0x10,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_FunctionalUnits_cancelGet,
       { "cancelGet", "cmip.cancelGet",
         FT_BOOLEAN, 8, NULL, 0x08,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ProtocolVersion_version1,
       { "version1", "cmip.version1",
         FT_BOOLEAN, 8, NULL, 0x80,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_ProtocolVersion_version2,
       { "version2", "cmip.version2",
         FT_BOOLEAN, 8, NULL, 0x40,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_sunday,
       { "sunday", "cmip.sunday",
         FT_BOOLEAN, 8, NULL, 0x80,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_monday,
       { "monday", "cmip.monday",
         FT_BOOLEAN, 8, NULL, 0x40,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_tuesday,
       { "tuesday", "cmip.tuesday",
         FT_BOOLEAN, 8, NULL, 0x20,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_wednesday,
       { "wednesday", "cmip.wednesday",
         FT_BOOLEAN, 8, NULL, 0x10,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_thursday,
       { "thursday", "cmip.thursday",
         FT_BOOLEAN, 8, NULL, 0x08,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_friday,
       { "friday", "cmip.friday",
         FT_BOOLEAN, 8, NULL, 0x04,
-        "", HFILL }},
+        NULL, HFILL }},
     { &hf_cmip_T_daysOfWeek_saturday,
       { "saturday", "cmip.saturday",
         FT_BOOLEAN, 8, NULL, 0x02,
-        "", HFILL }},
+        NULL, HFILL }},
 
 /*--- End of included file: packet-cmip-hfarr.c ---*/
-#line 207 "packet-cmip-template.c"
+#line 188 "../../asn1/cmip/packet-cmip-template.c"
   };
 
   /* List of subtrees */
@@ -5624,11 +5587,12 @@ void proto_register_cmip(void) {
     &ett_cmip,
 
 /*--- Included file: packet-cmip-ettarr.c ---*/
-#line 1 "packet-cmip-ettarr.c"
+#line 1 "../../asn1/cmip/packet-cmip-ettarr.c"
+    &ett_cmip_PAR_missingAttributeValue,
     &ett_cmip_ActionArgument,
     &ett_cmip_ActionError,
     &ett_cmip_ActionErrorInfo,
-    &ett_cmip_T_errorInfo,
+    &ett_cmip_T_actionErrorInfo,
     &ett_cmip_ActionInfo,
     &ett_cmip_ActionReply,
     &ett_cmip_ActionResult,
@@ -5697,21 +5661,16 @@ void proto_register_cmip(void) {
     &ett_cmip_BackUpRelationshipObject,
     &ett_cmip_CapacityAlarmThreshold,
     &ett_cmip_ControlStatus,
-    &ett_cmip_CounterThreshold,
-    &ett_cmip_CounterThreshold_item,
     &ett_cmip_CorrelatedNotifications,
     &ett_cmip_CorrelatedNotifications_item,
     &ett_cmip_SET_OF_NotificationIdentifier,
     &ett_cmip_Destination,
     &ett_cmip_SET_OF_AE_title,
-    &ett_cmip_GaugeThreshold,
-    &ett_cmip_GaugeThreshold_item,
     &ett_cmip_GroupObjects,
     &ett_cmip_IntervalsOfDay,
     &ett_cmip_IntervalsOfDay_item,
     &ett_cmip_ManagementExtension,
     &ett_cmip_MonitoredAttributes,
-    &ett_cmip_NotifyThreshold,
     &ett_cmip_ObservedValue,
     &ett_cmip_Packages,
     &ett_cmip_PrioritisedObject,
@@ -5729,8 +5688,6 @@ void proto_register_cmip(void) {
     &ett_cmip_SupportedFeatures_item,
     &ett_cmip_SystemId,
     &ett_cmip_SystemTitle,
-    &ett_cmip_TideMarkInfo,
-    &ett_cmip_TideMark,
     &ett_cmip_Time24,
     &ett_cmip_ThresholdInfo,
     &ett_cmip_ThresholdLevelInd,
@@ -5754,7 +5711,7 @@ void proto_register_cmip(void) {
     &ett_cmip_T_modificationList_item,
 
 /*--- End of included file: packet-cmip-ettarr.c ---*/
-#line 213 "packet-cmip-template.c"
+#line 194 "../../asn1/cmip/packet-cmip-template.c"
   };
 
   /* Register protocol */
@@ -5765,8 +5722,10 @@ void proto_register_cmip(void) {
   proto_register_subtree_array(ett, array_length(ett));
 
 /*--- Included file: packet-cmip-dis-tab.c ---*/
-#line 1 "packet-cmip-dis-tab.c"
+#line 1 "../../asn1/cmip/packet-cmip-dis-tab.c"
   register_ber_oid_dissector("2.9.2.21.7.13", dissect_BaseManagedObjectId_PDU, proto_cmip, "BaseManagedObjectId(13)");
+  register_ber_oid_dissector("2.9.3.2.7.1", dissect_SimpleNameType_PDU, proto_cmip, "discriminatorId(1)");
+  register_ber_oid_dissector("2.9.3.2.7.2", dissect_SimpleNameType_PDU, proto_cmip, "logId(2)");
   register_ber_oid_dissector("2.9.3.2.7.3", dissect_LogRecordId_PDU, proto_cmip, "logRecordId(3)");
   register_ber_oid_dissector("2.9.3.2.7.4", dissect_SystemId_PDU, proto_cmip, "systemId(4)");
   register_ber_oid_dissector("2.9.3.2.7.5", dissect_SystemTitle_PDU, proto_cmip, "systemTitle(5)");
@@ -5778,31 +5737,50 @@ void proto_register_cmip(void) {
   register_ber_oid_dissector("2.9.3.2.7.11", dissect_BackedUpStatus_PDU, proto_cmip, "backedUpStatus(11)");
   register_ber_oid_dissector("2.9.3.2.7.12", dissect_CorrelatedNotifications_PDU, proto_cmip, "correlatedNotifications(12)");
   register_ber_oid_dissector("2.9.3.2.7.13", dissect_EventTime_PDU, proto_cmip, "eventTime(13)");
+  register_ber_oid_dissector("2.9.3.2.7.14", dissect_EventTypeId_PDU, proto_cmip, "eventType(14)");
   register_ber_oid_dissector("2.9.3.2.7.15", dissect_MonitoredAttributes_PDU, proto_cmip, "monitoredAttributes(15)");
+  register_ber_oid_dissector("2.9.3.2.7.16", dissect_NotificationIdentifier_PDU, proto_cmip, "notificationIdentifier(16)");
+  register_ber_oid_dissector("2.9.3.2.7.17", dissect_PerceivedSeverity_PDU, proto_cmip, "perceivedSeverity(17)");
   register_ber_oid_dissector("2.9.3.2.7.18", dissect_ProbableCause_PDU, proto_cmip, "probableCause(18)");
   register_ber_oid_dissector("2.9.3.2.7.19", dissect_ProposedRepairActions_PDU, proto_cmip, "proposedRepairActions(19)");
+  register_ber_oid_dissector("2.9.3.2.7.20", dissect_AttributeValueChangeDefinition_PDU, proto_cmip, "relationshipChangeDefinition(20)");
+  register_ber_oid_dissector("2.9.3.2.7.21", dissect_SecurityAlarmCause_PDU, proto_cmip, "securityAlarmCause(21)");
   register_ber_oid_dissector("2.9.3.2.7.22", dissect_SecurityAlarmDetector_PDU, proto_cmip, "securityAlarmDetector(22)");
   register_ber_oid_dissector("2.9.3.2.7.23", dissect_SecurityAlarmSeverity_PDU, proto_cmip, "securityAlarmSeverity(23)");
   register_ber_oid_dissector("2.9.3.2.7.24", dissect_ServiceProvider_PDU, proto_cmip, "serviceProvider(24)");
+  register_ber_oid_dissector("2.9.3.2.7.25", dissect_ServiceUser_PDU, proto_cmip, "serviceUser(25)");
   register_ber_oid_dissector("2.9.3.2.7.26", dissect_SourceIndicator_PDU, proto_cmip, "sourceIndicator(26)");
   register_ber_oid_dissector("2.9.3.2.7.27", dissect_SpecificProblems_PDU, proto_cmip, "specificProblems(27)");
+  register_ber_oid_dissector("2.9.3.2.7.28", dissect_AttributeValueChangeDefinition_PDU, proto_cmip, "stateChangeDefinition(28)");
   register_ber_oid_dissector("2.9.3.2.7.29", dissect_ThresholdInfo_PDU, proto_cmip, "thresholdInfo(29)");
   register_ber_oid_dissector("2.9.3.2.7.30", dissect_TrendIndication_PDU, proto_cmip, "trendIndication(30)");
   register_ber_oid_dissector("2.9.3.2.7.31", dissect_AdministrativeState_PDU, proto_cmip, "administrativeState(31)");
   register_ber_oid_dissector("2.9.3.2.7.32", dissect_AlarmStatus_PDU, proto_cmip, "alarmStatus(32)");
+  register_ber_oid_dissector("2.9.3.2.7.33", dissect_AvailabilityStatus_PDU, proto_cmip, "availabilityStatus(33)");
   register_ber_oid_dissector("2.9.3.2.7.34", dissect_ControlStatus_PDU, proto_cmip, "controlStatus(34)");
   register_ber_oid_dissector("2.9.3.2.7.35", dissect_OperationalState_PDU, proto_cmip, "operationalState(35)");
   register_ber_oid_dissector("2.9.3.2.7.36", dissect_ProceduralStatus_PDU, proto_cmip, "proceduralStatus(36)");
   register_ber_oid_dissector("2.9.3.2.7.37", dissect_StandbyStatus_PDU, proto_cmip, "standbyStatus(37)");
   register_ber_oid_dissector("2.9.3.2.7.38", dissect_UnknownStatus_PDU, proto_cmip, "unknownStatus(38)");
   register_ber_oid_dissector("2.9.3.2.7.39", dissect_UsageState_PDU, proto_cmip, "usageState(39)");
+  register_ber_oid_dissector("2.9.3.2.7.40", dissect_BackUpRelationshipObject_PDU, proto_cmip, "backUpObject(40)");
+  register_ber_oid_dissector("2.9.3.2.7.41", dissect_BackUpRelationshipObject_PDU, proto_cmip, "backedUpObject(41)");
+  register_ber_oid_dissector("2.9.3.2.7.42", dissect_GroupObjects_PDU, proto_cmip, "member(42)");
+  register_ber_oid_dissector("2.9.3.2.7.43", dissect_GroupObjects_PDU, proto_cmip, "owner(43)");
+  register_ber_oid_dissector("2.9.3.2.7.44", dissect_BackUpRelationshipObject_PDU, proto_cmip, "peer(44)");
+  register_ber_oid_dissector("2.9.3.2.7.45", dissect_PrioritisedObject_PDU, proto_cmip, "primary(45)");
+  register_ber_oid_dissector("2.9.3.2.7.46", dissect_PrioritisedObject_PDU, proto_cmip, "providerObject(46)");
+  register_ber_oid_dissector("2.9.3.2.7.47", dissect_PrioritisedObject_PDU, proto_cmip, "secondary(47)");
+  register_ber_oid_dissector("2.9.3.2.7.48", dissect_PrioritisedObject_PDU, proto_cmip, "userObject(48)");
   register_ber_oid_dissector("2.9.3.2.7.49", dissect_ActiveDestination_PDU, proto_cmip, "activeDestination(49)");
   register_ber_oid_dissector("2.9.3.2.7.50", dissect_Allomorphs_PDU, proto_cmip, "allomorphs(50)");
   register_ber_oid_dissector("2.9.3.2.7.51", dissect_BackUpDestinationList_PDU, proto_cmip, "backUpDestinationList(51)");
+  register_ber_oid_dissector("2.9.3.2.7.52", dissect_CapacityAlarmThreshold_PDU, proto_cmip, "capacityAlarmTreshold(52)");
   register_ber_oid_dissector("2.9.3.2.7.53", dissect_ConfirmedMode_PDU, proto_cmip, "confirmedMode(53)");
   register_ber_oid_dissector("2.9.3.2.7.54", dissect_CurrentLogSize_PDU, proto_cmip, "currentLogSize(54)");
   register_ber_oid_dissector("2.9.3.2.7.55", dissect_Destination_PDU, proto_cmip, "destination(55)");
   register_ber_oid_dissector("2.9.3.2.7.56", dissect_DiscriminatorConstruct_PDU, proto_cmip, "discriminatorConstruct(56)");
+  register_ber_oid_dissector("2.9.3.2.7.57", dissect_IntervalsOfDay_PDU, proto_cmip, "intervalsOfDay(57)");
   register_ber_oid_dissector("2.9.3.2.7.58", dissect_LogFullAction_PDU, proto_cmip, "logFullAction(58)");
   register_ber_oid_dissector("2.9.3.2.7.59", dissect_LoggingTime_PDU, proto_cmip, "loggingTime(59)");
   register_ber_oid_dissector("2.9.3.2.7.62", dissect_MaxLogSize_PDU, proto_cmip, "maxLogSize(62)");
@@ -5818,8 +5796,10 @@ void proto_register_cmip(void) {
 
 
 /*--- End of included file: packet-cmip-dis-tab.c ---*/
-#line 222 "packet-cmip-template.c"
-    add_oid_str_name("2.9.3.2.7.1","discriminatorId(1) ");
+#line 203 "../../asn1/cmip/packet-cmip-template.c"
+    oid_add_from_string("discriminatorId(1)","2.9.3.2.7.1");
+
+  attribute_id_dissector_table = register_dissector_table("cmip.attribute_id", "CMIP Attribute Id", FT_UINT32, BASE_DEC);
 
 }
 
@@ -5829,22 +5809,22 @@ void proto_reg_handoff_cmip(void) {
        register_ber_oid_dissector("2.9.0.0.2", dissect_cmip, proto_cmip, "cmip");
        register_ber_oid_dissector("2.9.1.1.4", dissect_cmip, proto_cmip, "joint-iso-itu-t(2) ms(9) cmip(1) cmip-pci(1) abstractSyntax(4)");
 
-       add_oid_str_name("2.9.3.2.3.1","managedObjectClass(3) alarmRecord(1)");  
-       add_oid_str_name("2.9.3.2.3.2","managedObjectClass(3) attributeValueChangeRecord(2)");
-       add_oid_str_name("2.9.3.2.3.3","managedObjectClass(3) discriminator(3)");
-       add_oid_str_name("2.9.3.2.3.4","managedObjectClass(3) eventForwardingDiscriminator(4)");
-       add_oid_str_name("2.9.3.2.3.5","managedObjectClass(3) eventLogRecord(5)");
-       add_oid_str_name("2.9.3.2.3.6","managedObjectClass(3) log(6)");
-       add_oid_str_name("2.9.3.2.3.7","managedObjectClass(3) logRecord(7)");
-       add_oid_str_name("2.9.3.2.3.8","managedObjectClass(3) objectCreationRecord(8)");
-       add_oid_str_name("2.9.3.2.3.9","managedObjectClass(3) objectDeletionRecord(9)");
-       add_oid_str_name("2.9.3.2.3.10","managedObjectClass(3) relationshipChangeRecord(10)");
-       add_oid_str_name("2.9.3.2.3.11","managedObjectClass(3) securityAlarmReportRecord(11)");
-       add_oid_str_name("2.9.3.2.3.12","managedObjectClass(3) stateChangeRecord(12)");
-       add_oid_str_name("2.9.3.2.3.13","managedObjectClass(3) system(13)");
-       add_oid_str_name("2.9.3.2.3.14","managedObjectClass(3) top(14)");
-       add_oid_str_name("2.9.3.2.4.14","administrativeStatePackage(14)");
-       add_oid_str_name("2.9.1.1.4","joint-iso-itu-t(2) ms(9) cmip(1) cmip-pci(1) abstractSyntax(4)");
+       oid_add_from_string("2.9.3.2.3.1","managedObjectClass(3) alarmRecord(1)");
+       oid_add_from_string("2.9.3.2.3.2","managedObjectClass(3) attributeValueChangeRecord(2)");
+       oid_add_from_string("2.9.3.2.3.3","managedObjectClass(3) discriminator(3)");
+       oid_add_from_string("2.9.3.2.3.4","managedObjectClass(3) eventForwardingDiscriminator(4)");
+       oid_add_from_string("2.9.3.2.3.5","managedObjectClass(3) eventLogRecord(5)");
+       oid_add_from_string("2.9.3.2.3.6","managedObjectClass(3) log(6)");
+       oid_add_from_string("2.9.3.2.3.7","managedObjectClass(3) logRecord(7)");
+       oid_add_from_string("2.9.3.2.3.8","managedObjectClass(3) objectCreationRecord(8)");
+       oid_add_from_string("2.9.3.2.3.9","managedObjectClass(3) objectDeletionRecord(9)");
+       oid_add_from_string("2.9.3.2.3.10","managedObjectClass(3) relationshipChangeRecord(10)");
+       oid_add_from_string("2.9.3.2.3.11","managedObjectClass(3) securityAlarmReportRecord(11)");
+       oid_add_from_string("2.9.3.2.3.12","managedObjectClass(3) stateChangeRecord(12)");
+       oid_add_from_string("2.9.3.2.3.13","managedObjectClass(3) system(13)");
+       oid_add_from_string("2.9.3.2.3.14","managedObjectClass(3) top(14)");
+       oid_add_from_string("2.9.3.2.4.14","administrativeStatePackage(14)");
+       oid_add_from_string("2.9.1.1.4","joint-iso-itu-t(2) ms(9) cmip(1) cmip-pci(1) abstractSyntax(4)");
 
 /*#include "packet-cmip-dis-tab.c" */
 }