cmip update add all remaining functions Arguments and Results

svn path=/trunk/; revision=12570
This commit is contained in:
Ronnie Sahlberg 2004-11-21 23:25:04 +00:00
parent 6ec445bfe4
commit f833c77dff
4 changed files with 1874 additions and 209 deletions

View File

@ -9,6 +9,223 @@ IMPORTS
DistinguishedName, RDNSequence
FROM InformationFramework;
ModificationItem ::= SEQUENCE {
modifyOperator [2] IMPLICIT ModifyOperator OPTIONAL,
attributeId OBJECT IDENTIFIER,
attributeValue ANY OPTIONAL
}
GetListError ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
getInfoList [6] IMPLICIT SET OF GetInfoStatus,
...
}
ModifyOperator ::= INTEGER {
replace(0), addValues(1), removeValues(2), setToDefault(3)}
GetInfoStatus ::= CHOICE {
attributeIdError [0] IMPLICIT AttributeIdError,
attribute [1] IMPLICIT Attribute
}
AttributeIdError ::= SEQUENCE {
errorStatus ENUMERATED {accessDenied(2), noSuchAttribute(5), ...
},
attributeId AttributeId,
...
}
SetListError ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
setInfoList [6] IMPLICIT SET OF SetInfoStatus,
...
}
ActionError ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
actionErrorInfo [6] ActionErrorInfo,
...
}
ProcessingFailure ::= SEQUENCE {
managedObjectClass ObjectClass,
managedObjectInstance ObjectInstance OPTIONAL,
specificErrorInfo [5] SpecificErrorInfo,
...
}
DeleteError ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
deleteErrorInfo [6] ENUMERATED {accessDenied(2), ...
},
...
}
SetInfoStatus ::= CHOICE {
attributeError [0] IMPLICIT AttributeError,
attribute [1] IMPLICIT Attribute
}
SpecificErrorInfo ::= SEQUENCE {
errorId OBJECT IDENTIFIER,
errorInfo ANY
}
NoSuchArgumentAction ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
actionType OBJECT IDENTIFIER
}
NoSuchArgumentEvent ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
eventType OBJECT IDENTIFIER
}
NoSuchArgument ::= CHOICE {
actionId
[0] IMPLICIT NoSuchArgumentAction,
eventId
[1] IMPLICIT NoSuchArgumentEvent
}
InvalidArgumentValueEventValue ::= SEQUENCE {
eventType OBJECT IDENTIFIER,
eventInfo [8] ANY OPTIONAL
}
InvalidArgumentValue ::= CHOICE {
actionValue [0] IMPLICIT ActionInfo,
eventValue
[1] IMPLICIT InvalidArgumentValueEventValue
}
ErrorInfo ::= CHOICE {
actionType OBJECT IDENTIFIER,
actionArgument [0] NoSuchArgument,
argumentValue [1] InvalidArgumentValue
}
ActionErrorInfo ::= SEQUENCE {
errorStatus
ENUMERATED {accessDenied(2), noSuchAction(9), noSuchArgument(14),
invalidArgumentValue(15), ...
},
errorInfo
ErrorInfo,
...
}
AttributeError ::= SEQUENCE {
errorStatus
ENUMERATED {accessDenied(2), noSuchAttribute(5), invalidAttributeValue(6),
invalidOperation(24), invalidOperator(25), ...
},
modifyOperator [2] IMPLICIT ModifyOperator OPTIONAL, -- present for invalidOperator
-- and invalidOperation
attributeId OBJECT IDENTIFIER,
attributeValue ANY OPTIONAL
-- value is absent for setToDefault
}
SetResult ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
attributeList [6] IMPLICIT SET OF Attribute OPTIONAL,
...
}
SetArgument ::= SEQUENCE {
baseManagedObjectClass ObjectClass,
baseManagedObjectInstance ObjectInstance,
accessControl [5] AccessControl OPTIONAL,
synchronization [6] IMPLICIT CMISSync OPTIONAL,
scope [7] Scope OPTIONAL,
filter CMISFilter OPTIONAL,
modificationList [12] IMPLICIT SET OF ModificationItem,
-- value is absent for setToDefault
...
}
LinkedReplyArgument ::= CHOICE {
getResult [0] IMPLICIT GetResult,
getListError [1] IMPLICIT GetListError,
setResult [2] IMPLICIT SetResult,
setListError [3] IMPLICIT SetListError,
actionResult [4] IMPLICIT ActionResult,
processingFailure [5] IMPLICIT ProcessingFailure,
deleteResult [6] IMPLICIT DeleteResult,
actionError [7] IMPLICIT ActionError,
deleteError [8] IMPLICIT DeleteError
}
EventReply ::= SEQUENCE {
eventType OBJECT IDENTIFIER,
eventReplyInfo [8] ANY OPTIONAL
}
EventReportResult ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
eventReply EventReply OPTIONAL,
...
}
EventReportArgument ::= SEQUENCE {
managedObjectClass ObjectClass,
managedObjectInstance ObjectInstance,
eventTime [5] IMPLICIT GeneralizedTime OPTIONAL,
eventType OBJECT IDENTIFIER,
eventInfo [8] ANY OPTIONAL,
...
}
DeleteArgument ::= SEQUENCE {
baseManagedObjectClass ObjectClass,
baseManagedObjectInstance ObjectInstance,
accessControl [5] AccessControl OPTIONAL,
synchronization [6] IMPLICIT CMISSync OPTIONAL,
scope [7] Scope OPTIONAL,
filter CMISFilter OPTIONAL,
...
}
DeleteResult ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL,
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
...
}
CreateArgument ::= SEQUENCE {
managedObjectClass ObjectClass,
managedOrSuperiorObjectInstance
CHOICE {managedObjectInstance ObjectInstance,
superiorObjectInstance [8] ObjectInstance} OPTIONAL,
accessControl [5] AccessControl OPTIONAL,
referenceObjectInstance [6] ObjectInstance OPTIONAL,
attributeList [7] IMPLICIT SET OF Attribute OPTIONAL,
...
}
CreateResult ::= SEQUENCE {
managedObjectClass ObjectClass OPTIONAL,
managedObjectInstance ObjectInstance OPTIONAL, -- shall be returned if omitted from CreateArgument
currentTime [5] IMPLICIT GeneralizedTime OPTIONAL,
attributeList [6] IMPLICIT SET OF Attribute OPTIONAL,
...
}
ActionReply ::= SEQUENCE {
actionType OBJECT IDENTIFIER,
@ -140,6 +357,8 @@ InvokeLinkedId ::= CHOICE {
absent [1] IMPLICIT NULL
}
InvokeIDType ::= InvokeId
InvokeId ::= CHOICE {
present InvokeID,
absent NULL

View File

@ -95,27 +95,71 @@ ROS
switch(opcode_type){
case OPCODE_INVOKE:
switch(opcode){
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;
case 3: /* M-get */
offset = dissect_cmip_GetArgument(FALSE, tvb, offset, pinfo, tree, -1);
break;
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;
case 6: /* M-action*/
offset = dissect_cmip_ActionInfo(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 7: /* M-action-confirmed*/
offset = dissect_cmip_ActionInfo(FALSE, tvb, offset, pinfo, tree, -1);
break;
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;
}
break;
case OPCODE_RETURN_RESULT:
switch(opcode){
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 */
case 3: /* M-get */
offset = dissect_cmip_GetResult(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 4: /* M-set */
break; /* No return data */
case 5: /* M-set-confirmed*/
offset = dissect_cmip_SetResult(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 6: /* M-action*/
break; /* No return data */
case 7: /* M-action-confirmed*/
offset = dissect_cmip_ActionResult(FALSE, tvb, offset, pinfo, tree, -1);
break;
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? */
}
break;
/*XXX add more types here */
@ -144,6 +188,63 @@ ROS
#.FN_BODY ActionReply/actionReplyInfo
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
#.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);
#.END

View File

@ -48,6 +48,9 @@
/* Initialize the protocol and registered fields */
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;
static int hf_cmip_errorId_OID = -1;
#include "packet-cmip-hf.c"
/* Initialize the subtree pointers */
@ -140,6 +143,18 @@ void proto_register_cmip(void) {
{ "actionType", "cmip.actionType_OID",
FT_STRING, BASE_NONE, NULL, 0,
"actionType", HFILL }},
{ &hf_cmip_eventType_OID,
{ "eventType", "cmip.eventType_OID",
FT_STRING, BASE_NONE, NULL, 0,
"eventType", HFILL }},
{ &hf_cmip_attributeId_OID,
{ "attributeId", "cmip.attributeId_OID",
FT_STRING, BASE_NONE, NULL, 0,
"attributeId", HFILL }},
{ &hf_cmip_errorId_OID,
{ "errorId", "cmip.errorId_OID",
FT_STRING, BASE_NONE, NULL, 0,
"errorId", HFILL }},
#include "packet-cmip-hfarr.c"
};

File diff suppressed because it is too large Load Diff