diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2004-11-21 21:29:10 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2004-11-21 21:29:10 +0000 |
commit | 7bd55170ac24f3a6ca692bf65bc8451e2c09c4b5 (patch) | |
tree | 9530f211cb6f7864b668c5a94c95fe5e21d1d110 /asn1 | |
parent | acc3b28324bd0f773431cd0f53a58cbc5fb0bc0c (diff) | |
download | wireshark-7bd55170ac24f3a6ca692bf65bc8451e2c09c4b5.tar.gz wireshark-7bd55170ac24f3a6ca692bf65bc8451e2c09c4b5.tar.bz2 wireshark-7bd55170ac24f3a6ca692bf65bc8451e2c09c4b5.zip |
update to cmip
add functions m-action and m-action-confirmed
svn path=/trunk/; revision=12564
Diffstat (limited to 'asn1')
-rw-r--r-- | asn1/cmip/CMIP.asn | 29 | ||||
-rw-r--r-- | asn1/cmip/cmip.cnf | 26 | ||||
-rw-r--r-- | asn1/cmip/packet-cmip-template.c | 7 |
3 files changed, 62 insertions, 0 deletions
diff --git a/asn1/cmip/CMIP.asn b/asn1/cmip/CMIP.asn index 95d7fb16b1..2f7fa089d2 100644 --- a/asn1/cmip/CMIP.asn +++ b/asn1/cmip/CMIP.asn @@ -10,6 +10,35 @@ IMPORTS FROM InformationFramework; +ActionReply ::= SEQUENCE { + actionType OBJECT IDENTIFIER, + actionReplyInfo [4] ANY +} + +ActionResult ::= SEQUENCE { + managedObjectClass ObjectClass OPTIONAL, + managedObjectInstance ObjectInstance OPTIONAL, + currentTime [5] IMPLICIT GeneralizedTime OPTIONAL, + actionReply [6] IMPLICIT ActionReply OPTIONAL, + ... +} + +ActionArgument ::= SEQUENCE { + baseManagedObjectClass ObjectClass, + baseManagedObjectInstance ObjectInstance, + accessControl [5] AccessControl OPTIONAL, + synchronization [6] IMPLICIT CMISSync OPTIONAL, + scope [7] Scope OPTIONAL, + filter CMISFilter OPTIONAL, + actionInfo [12] IMPLICIT ActionInfo, + ... +} + +ActionInfo ::= SEQUENCE { + actionType OBJECT IDENTIFIER, + actionInfoArg [4] ANY OPTIONAL +} + ObjectClass ::= CHOICE { ocglobalForm [0] IMPLICIT OBJECT IDENTIFIER, oclocalForm [1] IMPLICIT INTEGER diff --git a/asn1/cmip/cmip.cnf b/asn1/cmip/cmip.cnf index 646cc35c1b..29737f795e 100644 --- a/asn1/cmip/cmip.cnf +++ b/asn1/cmip/cmip.cnf @@ -98,6 +98,12 @@ ROS case 3: /* M-get */ offset = dissect_cmip_GetArgument(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; } break; case OPCODE_RETURN_RESULT: @@ -105,6 +111,11 @@ ROS case 3: /* M-get */ offset = dissect_cmip_GetResult(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; } break; /*XXX add more types here */ @@ -119,6 +130,21 @@ ROS objectclassform = OBJECTCLASS_LOCAL_FORM; offset = dissect_ber_integer_new(implicit_tag, pinfo, tree, tvb, offset, hf_cmip_oclocalForm, NULL); +#.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); + + #.END diff --git a/asn1/cmip/packet-cmip-template.c b/asn1/cmip/packet-cmip-template.c index 5eddcc2af9..f06c8ff1fd 100644 --- a/asn1/cmip/packet-cmip-template.c +++ b/asn1/cmip/packet-cmip-template.c @@ -47,6 +47,7 @@ /* Initialize the protocol and registered fields */ int proto_cmip = -1; +static int hf_cmip_actionType_OID = -1; #include "packet-cmip-hf.c" /* Initialize the subtree pointers */ @@ -66,6 +67,8 @@ static int attributeform; #define ATTRIBUTE_GLOBAL_FORM 1 static char attribute_identifier_id[64]; /*64 chars should be long enough? */ +static char object_identifier_id[64]; /*64 chars should be long enough? */ + static int objectclassform; #define OBJECTCLASS_LOCAL_FORM 0 #define OBJECTCLASS_GLOBAL_FORM 1 @@ -133,6 +136,10 @@ void proto_register_cmip(void) { /* List of fields */ static hf_register_info hf[] = { + { &hf_cmip_actionType_OID, + { "actionType", "cmip.actionType_OID", + FT_STRING, BASE_NONE, NULL, 0, + "actionType", HFILL }}, #include "packet-cmip-hfarr.c" }; |