2004-11-14 05:12:49 +00:00
|
|
|
# cmip.cnf
|
|
|
|
# CMIP conformation file
|
|
|
|
|
|
|
|
# $Id: cmip.cnf 12290 2004-10-13 00:21:00Z sahlberg $
|
|
|
|
|
|
|
|
#.MODULE_IMPORT
|
|
|
|
InformationFramework x509if
|
|
|
|
|
2004-11-21 08:22:21 +00:00
|
|
|
#.INCLUDE ../x509if/x509if-exp.cnf
|
2004-11-14 05:12:49 +00:00
|
|
|
|
|
|
|
#.EXPORTS
|
|
|
|
CMIPAbortInfo
|
|
|
|
CMIPUserInfo
|
|
|
|
ROS
|
|
|
|
|
|
|
|
#.NO_EMIT
|
|
|
|
|
|
|
|
#.PDU
|
|
|
|
|
|
|
|
#.TYPE_RENAME
|
|
|
|
|
|
|
|
#.FIELD_RENAME
|
|
|
|
|
|
|
|
#.FN_HDR CMIPAbortInfo
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_append_fstr(pinfo->cinfo, COL_INFO, "CMIP-A-ABORT");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_HDR CMIPUserInfo
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_append_fstr(pinfo->cinfo, COL_INFO, "CMIP-A-ASSOCIATE");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_BODY CMIPAbortSource
|
|
|
|
guint32 value;
|
2004-12-12 01:14:03 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, &value);
|
2004-11-14 05:12:49 +00:00
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_append_fstr(pinfo->cinfo, COL_INFO, " AbortSource:%s", val_to_str(value, CMIPAbortSource_vals, " Unknown AbortSource:%d"));
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_BODY Opcode
|
2004-12-12 01:14:03 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, &opcode);
|
2004-11-14 05:12:49 +00:00
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_prepend_fstr(pinfo->cinfo, COL_INFO, "%s", val_to_str(opcode, Opcode_vals, " Unknown Opcode:%d"));
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_FTR Invoke
|
|
|
|
opcode_type=OPCODE_INVOKE;
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_prepend_fstr(pinfo->cinfo, COL_INFO, "Invoke ");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_FTR ReturnResult
|
|
|
|
opcode_type=OPCODE_RETURN_RESULT;
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_prepend_fstr(pinfo->cinfo, COL_INFO, "ReturnResult ");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_FTR ReturnError
|
|
|
|
opcode_type=OPCODE_RETURN_ERROR;
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_prepend_fstr(pinfo->cinfo, COL_INFO, "ReturnError ");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_FTR Reject
|
|
|
|
opcode_type=OPCODE_REJECT;
|
|
|
|
if(check_col(pinfo->cinfo, COL_INFO)){
|
|
|
|
col_prepend_fstr(pinfo->cinfo, COL_INFO, "Reject ");
|
|
|
|
}
|
|
|
|
#.END
|
|
|
|
|
|
|
|
#.FN_BODY AttributeId/globalForm
|
|
|
|
attributeform = ATTRIBUTE_GLOBAL_FORM;
|
|
|
|
offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_globalForm, attribute_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY AttributeId/localForm
|
|
|
|
attributeform = ATTRIBUTE_LOCAL_FORM;
|
2004-12-12 01:14:03 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_cmip_localForm, NULL);
|
2004-11-14 05:12:49 +00:00
|
|
|
|
|
|
|
#.FN_BODY Attribute/value
|
|
|
|
/*XXX handle local form here */
|
|
|
|
if(attributeform==ATTRIBUTE_GLOBAL_FORM){
|
|
|
|
offset=call_ber_oid_callback(attribute_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
}
|
|
|
|
|
|
|
|
#.FN_BODY Argument
|
|
|
|
switch(opcode_type){
|
|
|
|
case OPCODE_INVOKE:
|
|
|
|
switch(opcode){
|
2004-11-21 23:25:04 +00:00
|
|
|
case 0: /* M-eventreport */
|
|
|
|
offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 1: /* M-eventreport-confirmed */
|
|
|
|
offset = dissect_cmip_EventReportArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 2: /* M-linkedreply */
|
|
|
|
offset = dissect_cmip_LinkedReplyArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-14 05:12:49 +00:00
|
|
|
case 3: /* M-get */
|
|
|
|
offset = dissect_cmip_GetArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-21 23:25:04 +00:00
|
|
|
case 4: /* M-set */
|
|
|
|
offset = dissect_cmip_SetArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 5: /* M-set-confirmed */
|
|
|
|
offset = dissect_cmip_SetArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-21 21:29:10 +00:00
|
|
|
case 6: /* M-action*/
|
2004-12-12 23:33:40 +00:00
|
|
|
offset = dissect_cmip_ActionArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
2004-11-21 21:29:10 +00:00
|
|
|
break;
|
|
|
|
case 7: /* M-action-confirmed*/
|
2004-12-12 23:33:40 +00:00
|
|
|
offset = dissect_cmip_ActionArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
2004-11-21 21:29:10 +00:00
|
|
|
break;
|
2004-11-21 23:25:04 +00:00
|
|
|
case 8: /* M-create*/
|
|
|
|
offset = dissect_cmip_CreateArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 9: /* M-delete*/
|
|
|
|
offset = dissect_cmip_DeleteArgument(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 10: /* M-cancelget */
|
|
|
|
offset = dissect_cmip_InvokeIDType(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-14 05:12:49 +00:00
|
|
|
}
|
|
|
|
break;
|
|
|
|
case OPCODE_RETURN_RESULT:
|
|
|
|
switch(opcode){
|
2004-11-21 23:25:04 +00:00
|
|
|
case 0: /* M-eventreport*/
|
|
|
|
break; /* No return data */
|
|
|
|
case 1: /* M-eventreport-confirmed */
|
|
|
|
offset = dissect_cmip_EventReportResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 2: /* M-linkedreply*/
|
|
|
|
break; /* No return data */
|
2004-11-14 05:12:49 +00:00
|
|
|
case 3: /* M-get */
|
|
|
|
offset = dissect_cmip_GetResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-21 23:25:04 +00:00
|
|
|
case 4: /* M-set */
|
|
|
|
break; /* No return data */
|
|
|
|
case 5: /* M-set-confirmed*/
|
|
|
|
offset = dissect_cmip_SetResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-21 21:29:10 +00:00
|
|
|
case 6: /* M-action*/
|
|
|
|
break; /* No return data */
|
|
|
|
case 7: /* M-action-confirmed*/
|
|
|
|
offset = dissect_cmip_ActionResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
2004-11-21 23:25:04 +00:00
|
|
|
case 8: /* M-create*/
|
|
|
|
offset = dissect_cmip_CreateResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 9: /* M-delete*/
|
|
|
|
offset = dissect_cmip_DeleteResult(FALSE, tvb, offset, pinfo, tree, -1);
|
|
|
|
break;
|
|
|
|
case 10: /* M-cancelget */
|
|
|
|
break; /* doe this one return any data? */
|
2004-11-14 05:12:49 +00:00
|
|
|
}
|
|
|
|
break;
|
|
|
|
/*XXX add more types here */
|
|
|
|
}
|
|
|
|
|
|
|
|
#.FN_BODY ObjectClass/ocglobalForm
|
|
|
|
objectclassform = OBJECTCLASS_GLOBAL_FORM;
|
|
|
|
offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_ocglobalForm, objectclass_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY ObjectClass/oclocalForm
|
|
|
|
objectclassform = OBJECTCLASS_LOCAL_FORM;
|
2004-12-12 01:14:03 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_cmip_oclocalForm, NULL);
|
2004-11-14 05:12:49 +00:00
|
|
|
|
2004-11-21 21:29:10 +00:00
|
|
|
#.FN_BODY ActionInfo/actionType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_actionType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY ActionInfo/actionInfoArg
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
#.FN_BODY ActionReply/actionType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_actionType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY ActionReply/actionReplyInfo
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
2004-11-21 23:25:04 +00:00
|
|
|
#.FN_BODY EventReportArgument/eventType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_eventType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY EventReportArgument/eventInfo
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
|
|
|
|
#.FN_BODY EventReply/eventType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_eventType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY EventReply/eventReplyInfo
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
#.FN_BODY ModificationItem/attributeId
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_attributeId_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY ModificationItem/attributeValue
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
|
|
|
|
#.FN_BODY SpecificErrorInfo/errorId
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_errorId_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY SpecificErrorInfo/errorInfo
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
#.FN_BODY AttributeError/attributeId
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_attributeId_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY AttributeError/attributeValue
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
|
|
|
|
|
|
|
#.FN_BODY ErrorInfo/actionType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_actionType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY NoSuchArgumentAction/actionType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_actionType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY NoSuchArgumentEvent/eventType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_eventType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY InvalidArgumentValueEventValue/eventType
|
|
|
|
offset = dissect_ber_object_identifier(FALSE, pinfo, tree, tvb, offset,
|
|
|
|
hf_cmip_eventType_OID, object_identifier_id);
|
|
|
|
|
|
|
|
#.FN_BODY InvalidArgumentValueEventValue/eventInfo
|
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
|
|
|
|
|
2004-11-21 21:29:10 +00:00
|
|
|
|
2004-11-14 05:12:49 +00:00
|
|
|
#.END
|
|
|
|
|
|
|
|
|