# cmip.cnf # CMIP conformation file #.IMPORT ../acse/acse-exp.cnf #.MODULE Remote-Operations-Information-Objects cmip.ros Attribute-ASN1Module cmip.x721 #.OMIT_ASSIGNMENT Remote-Operations-Information-Objects Bind Unbind #.END #.NO_EMIT ONLY_VALS LinkedReplyArgument #.TYPE_RENAME Invoke/argument InvokeArgument ReturnResult/result/result ResultArgument Attribute/value AttributeValue EventReportArgument/eventInfo EventReportArgumentEventInfo #.FIELD_RENAME Invoke/linkedId/present linkedIdPresent Reject/problem/invoke invokeProblem Reject/problem/returnError returnErrorProblem Reject/problem/returnResult returnResultProblem ReturnResult/result/result resultArgument SetArgument/modificationList/_item/attributeValue attributevalue ActionTypeId/globalForm actionTypeId_globalForm AttributeId/globalForm attributeId_globalForm EventTypeId/globalForm eventTypeId_globalForm ObjectClass/globalForm objectClass_globalForm ManagementExtension/identifier managementExtensionidentifier ServiceUser/identifier serviceUseridentifier AttributeValueAssertion/value attributeValueAssertionvalue FilterItem/present filterItempresent ObjectClass/localForm objectClasslocalForm AttributeId/localForm attributeIdlocalForm ActionErrorInfo/errorStatus actionErrorInfo-errorStatus AttributeError/errorStatus attributeError-errorStatus AttributeIdError/errorStatus attributeIdError-errorStatus ActionErrorInfo/errorInfo actionErrorInfo # SpecificErrorInfo/errorInfo specificErrorInfo Attribute/id attributeid CMIPUserInfo/accessControl cmipUserInfoaccessControl ActionError/actionErrorInfo actionErroractionErrorInfo EventReportArgument/eventInfo eventReportArgumenteventInfo #.EXPORTS CMIPAbortInfo CMIPUserInfo ROS InvokeIDType ObjectInstance ObjectClass Attribute RDNSequence ProbableCause AdministrativeState AvailabilityStatus AttributeList AdditionalInformation #.TABLE_HDR /* CMIP OPERATIONS */ static const value_string cmip_Opcode_vals[] = { #.TABLE_BODY OPERATION { %(&operationCode)s, "%(_ident)s" }, #.TABLE_FTR { 0, NULL } }; #.END #.TABLE_HDR /* CMIP ERRORS */ static const value_string cmip_error_code_vals[] = { #.TABLE_BODY ERROR { %(&errorCode)s, "%(_ident)s" }, #.TABLE_FTR { 0, NULL } }; #.END # X.721 #.REGISTER BaseManagedObjectId B "2.9.2.21.7.13" "BaseManagedObjectId(13)" # X.721 SimpleNameType B "2.9.3.2.7.1" "discriminatorId(1)" SimpleNameType B "2.9.3.2.7.2" "logId(2)" LogRecordId B "2.9.3.2.7.3" "logRecordId(3)" SystemId B "2.9.3.2.7.4" "systemId(4)" SystemTitle B "2.9.3.2.7.5" "systemTitle(5)" AdditionalInformation B "2.9.3.2.7.6" "additionalInformation(6)" AdditionalText B "2.9.3.2.7.7" "additionalText(7)" AttributeIdentifierList B "2.9.3.2.7.8" "attributeIdentifierList(8)" AttributeList B "2.9.3.2.7.9" "attributeList(9)" AttributeValueChangeDefinition B "2.9.3.2.7.10" "attributeValueChangeDefinition(10)" BackedUpStatus B "2.9.3.2.7.11" "backedUpStatus(11)" CorrelatedNotifications B "2.9.3.2.7.12" "correlatedNotifications(12)" EventTime B "2.9.3.2.7.13" "eventTime(13)" EventTypeId B "2.9.3.2.7.14" "eventType(14)" MonitoredAttributes B "2.9.3.2.7.15" "monitoredAttributes(15)" NotificationIdentifier B "2.9.3.2.7.16" "notificationIdentifier(16)" PerceivedSeverity B "2.9.3.2.7.17" "perceivedSeverity(17)" ProbableCause B "2.9.3.2.7.18" "probableCause(18)" ProposedRepairActions B "2.9.3.2.7.19" "proposedRepairActions(19)" AttributeValueChangeDefinition B "2.9.3.2.7.20" "relationshipChangeDefinition(20)" SecurityAlarmCause B "2.9.3.2.7.21" "securityAlarmCause(21)" SecurityAlarmDetector B "2.9.3.2.7.22" "securityAlarmDetector(22)" SecurityAlarmSeverity B "2.9.3.2.7.23" "securityAlarmSeverity(23)" ServiceProvider B "2.9.3.2.7.24" "serviceProvider(24)" ServiceUser B "2.9.3.2.7.25" "serviceUser(25)" SourceIndicator B "2.9.3.2.7.26" "sourceIndicator(26)" SpecificProblems B "2.9.3.2.7.27" "specificProblems(27)" AttributeValueChangeDefinition B "2.9.3.2.7.28" "stateChangeDefinition(28)" ThresholdInfo B "2.9.3.2.7.29" "thresholdInfo(29)" TrendIndication B "2.9.3.2.7.30" "trendIndication(30)" AdministrativeState B "2.9.3.2.7.31" "administrativeState(31)" AlarmStatus B "2.9.3.2.7.32" "alarmStatus(32)" AvailabilityStatus B "2.9.3.2.7.33" "availabilityStatus(33)" ControlStatus B "2.9.3.2.7.34" "controlStatus(34)" OperationalState B "2.9.3.2.7.35" "operationalState(35)" ProceduralStatus B "2.9.3.2.7.36" "proceduralStatus(36)" StandbyStatus B "2.9.3.2.7.37" "standbyStatus(37)" UnknownStatus B "2.9.3.2.7.38" "unknownStatus(38)" UsageState B "2.9.3.2.7.39" "usageState(39)" BackUpRelationshipObject B "2.9.3.2.7.40" "backUpObject(40)" BackUpRelationshipObject B "2.9.3.2.7.41" "backedUpObject(41)" GroupObjects B "2.9.3.2.7.42" "member(42)" GroupObjects B "2.9.3.2.7.43" "owner(43)" BackUpRelationshipObject B "2.9.3.2.7.44" "peer(44)" PrioritisedObject B "2.9.3.2.7.45" "primary(45)" PrioritisedObject B "2.9.3.2.7.46" "providerObject(46)" PrioritisedObject B "2.9.3.2.7.47" "secondary(47)" PrioritisedObject B "2.9.3.2.7.48" "userObject(48)" ActiveDestination B "2.9.3.2.7.49" "activeDestination(49)" Allomorphs B "2.9.3.2.7.50" "allomorphs(50)" BackUpDestinationList B "2.9.3.2.7.51" "backUpDestinationList(51)" CapacityAlarmThreshold B "2.9.3.2.7.52" "capacityAlarmThreshold(52)" ConfirmedMode B "2.9.3.2.7.53" "confirmedMode(53)" CurrentLogSize B "2.9.3.2.7.54" "currentLogSize(54)" Destination B "2.9.3.2.7.55" "destination(55)" DiscriminatorConstruct B "2.9.3.2.7.56" "discriminatorConstruct(56)" IntervalsOfDay B "2.9.3.2.7.57" "intervalsOfDay(57)" LogFullAction B "2.9.3.2.7.58" "logFullAction(58)" LoggingTime B "2.9.3.2.7.59" "loggingTime(59)" #ObjectClass B "2.9.3.2.7.60" "managedObjectClass(60)" #ObjectInstance B "2.9.3.2.7.61" "managedObjectInstance(61)" MaxLogSize B "2.9.3.2.7.62" "maxLogSize(62)" NameBinding B "2.9.3.2.7.63" "nameBinding(63)" NumberOfRecords B "2.9.3.2.7.64" "numberOfRecords(64)" ObjectClass B "2.9.3.2.7.65" "objectClass(65)" Packages B "2.9.3.2.7.66" "packages(66)" #ObjectInstance B "2.9.3.2.7.66" "schedulerName(67)" StartTime B "2.9.3.2.7.68" "startTime(68)" StopTime B "2.9.3.2.7.69" "stopTime(69)" SupportedFeatures B "2.9.3.2.7.70" "supportedFeatures(70)" WeekMask B "2.9.3.2.7.71" "weekMask(71)" # corruptedPDUsReceivedCounter(72) -- corruptedPDUsReceivedCounter attribute type # incomingConnectionRejectErrorCounter(73) -- incomingConnectionRejectErrorCounte... # incomingConnectionRequestsCounter(74) -- incomingConnectionRequestsCounter attr... # incomingDisconnectCounter(75) -- incomingDisconnectCounter attribute type # ncomingDisconnectErrorCounter(76) -- ncomingDisconnectErrorCounter attribute ty... # incomingProtocolErrorCounter(77) -- incomingProtocolErrorCounter attribute type # octetsReceivedCounter(78) -- octetsReceivedCounter attribute type # octetsRetransmittedErrorCounter(79) -- octetsRetransmittedErrorCounter attribut... # octetsSentCounter(80) -- octetsSentCounter attribute type # outgoingConnectionRejectErrorCounter(81) -- outgoingConnectionRejectErrorCounte... # outgoingConnectionRequestsCounter(82) -- outgoingConnectionRequestsCounter attr... # outgoingDisconnectCounter(83) -- outgoingDisconnectCounter attribute type # outgoingDisconnectErrorCounter(84) -- outgoingDisconnectErrorCounter attribute ... # outgoingProtocolErrorCounter(85) -- outgoingProtocolErrorCounter attribute type # pdusReceivedCounter(86) -- pdusReceivedCounter attribute type (PDU: Protocol Da... # pdusRetransmittedErrorCounter(87) -- pdusRetransmittedErrorCounter attribute ty... # pdusSentCounter(88) -- pdusSentCounter attribute type (PDU: Protocol Data Unit) # corruptedPDUsReceivedThreshold(89) -- corruptedPDUsReceivedThreshold attribute ... # incomingConnectionRejectErrorThreshold(90) -- incomingConnectionRejectErrorThre... # incomingConnectionRequestsThreshold(91) -- incomingConnectionRequestsThreshold ... # incomingDisconnectErrorThreshold(92) -- incomingDisconnectErrorThreshold attrib... # incomingProtocolErrorThreshold(93) -- incomingProtocolErrorThreshold attribute ... # octetsReceivedThreshold(94) -- octetsReceivedThreshold attribute type # octetsRetransmittedThreshold(95) -- octetsRetransmittedThreshold attribute type # octetsSentThreshold(96) -- octetsSentThreshold attribute type # outgoingConnectionRejectErrorThreshold(97) -- outgoingConnectionRejectErrorThre... # outgoingConnectionRequestsThreshold(98) -- outgoingConnectionRequestsThreshold ... # outgoingDisconnectErrorThreshold(99) -- outgoingDisconnectErrorThreshold attrib... # outgoingProtocolErrorThreshold(100) -- outgoingProtocolErrorThreshold attribute... # pdusReceivedThreshold(101) -- pdusReceivedThreshold attribute type (PDU: Protoc... # pdusRetransmittedErrorThreshold(102) -- pdusRetransmittedErrorThreshold attribu... # pdusSentThreshold(103) -- pdusSentThreshold attribute type (PDU: Protocol Data ... LifecycleState B "2.9.3.2.7.115" "lifecycleState(115)" #.OMIT_ASSIGNMENT # Removed as they are giving 'defined but not used' warnings currently. ROSEapdus CounterThreshold GaugeThreshold GaugeThresholdValue LogAvailability NotifyThreshold SchedulingAvailability TideMarkInfo TideMark UnscheduledLogAvailability Priority RejectProblem #.PDU #.FN_HDR CMIPAbortInfo col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ABORT"); #.END #.FN_HDR CMIPUserInfo col_append_str(actx->pinfo->cinfo, COL_INFO, "CMIP-A-ASSOCIATE"); #.END #.FN_BODY CMIPAbortSource VAL_PTR = &value uint32_t value; %(DEFAULT_BODY)s col_append_fstr(actx->pinfo->cinfo, COL_INFO, " AbortSource:%%s", val_to_str(value, cmip_CMIPAbortSource_vals, " Unknown AbortSource:%%d")); #.END #.FN_BODY Code/local VAL_PTR = &opcode %(DEFAULT_BODY)s if(opcode_type== OPCODE_RETURN_ERROR){ col_append_str(actx->pinfo->cinfo, COL_INFO, val_to_str(opcode, cmip_error_code_vals, " Unknown Opcode:%%d")); }else{ col_append_str(actx->pinfo->cinfo, COL_INFO, val_to_str(opcode, cmip_Opcode_vals, " Unknown Opcode:%%d")); } #.END #.FN_HDR Invoke opcode_type=OPCODE_INVOKE; col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Invoke "); #.END #.FN_HDR ReturnResult opcode_type=OPCODE_RETURN_RESULT; col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnResult "); #.END #.FN_HDR ReturnError opcode_type=OPCODE_RETURN_ERROR; col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "ReturnError "); #.END #.FN_HDR Reject opcode_type=OPCODE_REJECT; col_prepend_fstr(actx->pinfo->cinfo, COL_INFO, "Reject "); #.END #.FN_BODY AttributeId/globalForm FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference %(DEFAULT_BODY)s actx->external.direct_ref_present = (actx->external.direct_reference != NULL) ? true : false; #.FN_BODY AttributeId/localForm VAL_PTR = &actx->external.indirect_reference %(DEFAULT_BODY)s actx->external.indirect_ref_present = true; #.FN_BODY Attribute/value if(actx->external.direct_ref_present){ offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, actx->private_data); } else if (actx->external.indirect_ref_present && dissector_try_uint(attribute_id_dissector_table, actx->external.indirect_reference, tvb, actx->pinfo, tree)) { offset=tvb_reported_length (tvb); } else { offset=dissect_unknown_ber(actx->pinfo, tvb, offset, tree); } #.FN_PARS AttributeValueAssertion/id FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference #.FN_FTR AttributeValueAssertion/id actx->external.direct_ref_present = (actx->external.direct_reference != NULL) ? true : false; #.FN_BODY AttributeValueAssertion/value if (actx->external.direct_ref_present) { offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, actx->private_data); } #.FN_BODY Invoke/argument 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; } #.FN_BODY ReturnResult/result/result 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 */ #.FN_BODY ReturnError/parameter 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; } #.FN_PARS ObjectClass/globalForm FN_VARIANT = _str #.FN_PARS ActionTypeId/globalForm FN_VARIANT = _str HF_INDEX = hf_cmip_actionType_OID VAL_PTR = &object_identifier_id #.FN_BODY ActionInfo/actionInfoArg offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_PARS EventTypeId/globalForm FN_VARIANT = _str HF_INDEX = hf_cmip_eventType_OID VAL_PTR = &object_identifier_id #.FN_BODY EventReportArgument/eventInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY EventReply/eventReplyInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY SetArgument/modificationList/_item/attributeValue if(actx->external.direct_ref_present){ offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); } else if (actx->external.indirect_ref_present && dissector_try_uint(attribute_id_dissector_table, actx->external.indirect_reference, tvb, actx->pinfo, tree)) { offset=tvb_reported_length (tvb); } else { offset=dissect_unknown_ber(actx->pinfo, tvb, offset, tree); } #.FN_PARS SpecificErrorInfo/errorId FN_VARIANT = _str HF_INDEX = hf_cmip_errorId_OID VAL_PTR = &object_identifier_id #.FN_BODY SpecificErrorInfo/errorInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY AttributeError/attributeValue offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY InvalidArgumentValue/eventValue/eventInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY ActionReply/actionReplyInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); # X.721 #.FN_PARS ManagementExtension/identifier FN_VARIANT = _str VAL_PTR = &object_identifier_id #.FN_BODY ManagementExtension/information offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY AttributeValueChangeDefinition/_item/oldAttributeValue offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_BODY AttributeValueChangeDefinition/_item/newAttributeValue offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_PARS ServiceUser/identifier FN_VARIANT = _str VAL_PTR = &object_identifier_id #.FN_BODY ServiceUser/details offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FN_PARS SupportedFeatures/_item/featureIdentifier FN_VARIANT = _str VAL_PTR = &object_identifier_id #.FN_BODY SupportedFeatures/_item/featureInfo offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, actx->private_data); #.FIELD_ATTR Attribute/id ABBREV=attributeid FilterItem/present ABBREV=filterItempresent Invoke/linkedId/present ABBREV=linkedIdPresent #.END