aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/ros/ros.cnf
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1/ros/ros.cnf')
-rw-r--r--epan/dissectors/asn1/ros/ros.cnf207
1 files changed, 207 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/ros/ros.cnf b/epan/dissectors/asn1/ros/ros.cnf
new file mode 100644
index 0000000000..8511a8e20b
--- /dev/null
+++ b/epan/dissectors/asn1/ros/ros.cnf
@@ -0,0 +1,207 @@
+#.EXPORTS
+OPERATION
+ERROR
+OPERATION-PACKAGE
+CONTRACT
+InvokeId
+Code
+ROS
+
+#.OMIT_ASSIGNMENT
+Priority
+#.END
+
+#.TYPE_RENAME
+ReturnResult/result/result OperationResult
+
+#.FIELD_RENAME
+Reject/problem/invoke invokeProblem
+ReturnResult/result/result operationResult
+Reject/problem/returnError rejectError
+Reject/problem/returnResult rejectResult
+
+#.FN_PARS OperationCode VAL_PTR = &opcode
+
+#.FN_PARS ErrorCode VAL_PTR = &opcode
+
+#.FN_PARS InvokeId/present VAL_PTR = &invokeid
+
+#.FN_BODY Invoke/argument
+ char *oid;
+ proto_tree* subtree;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ subtree = proto_tree_add_subtree(tree, tvb, offset, -1, ett_ros_invoke_argument, NULL, "invoke argument");
+
+ ros_match_call_response(tvb, actx->pinfo, subtree, invokeid, TRUE);
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_INVOKE | ROS_OP_ARGUMENT);
+ /* now add the opcode */
+ session->ros_op |= opcode;
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ReturnResult/result/result
+ char *oid;
+ proto_tree* subtree;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ subtree = proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_return_result, NULL, "return result");
+
+ ros_match_call_response(tvb, actx->pinfo, subtree, invokeid, FALSE);
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_INVOKE | ROS_OP_RESULT);
+ /* now add the opcode */
+ session->ros_op |= opcode;
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ReturnError/parameter
+ char *oid;
+ proto_tree* subtree;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ subtree = proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_return_result, NULL, "return result");
+
+ ros_match_call_response(tvb, actx->pinfo, subtree, invokeid, FALSE);
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_INVOKE | ROS_OP_ERROR);
+ /* now add the opcode (really the error code) */
+ session->ros_op |= opcode;
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ROS/bind-invoke
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_bind_result, NULL, "bind-invoke");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_BIND | ROS_OP_ARGUMENT);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ROS/bind-result
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_bind_result, NULL, "bind-result");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_BIND | ROS_OP_RESULT);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ROS/bind-error
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_bind_error, NULL, "bind-error");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_BIND | ROS_OP_ERROR);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+
+#.FN_BODY ROS/unbind-invoke
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_unbind_invoke, NULL, "unbind-invoke");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_UNBIND | ROS_OP_ARGUMENT);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+
+#.FN_BODY ROS/unbind-result
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_unbind_result, NULL, "unbind-result");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_UNBIND | ROS_OP_RESULT);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ROS/unbind-error
+ char *oid;
+ struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE *)actx->private_data;
+
+ /* not sure what the length should be - -1 for now */
+ proto_tree_add_subtree(tree, tvb, offset,-1, ett_ros_unbind_error, NULL, "unbind-error");
+
+ if(session && session->pres_ctx_id && (oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id))) {
+ /* this should be ROS! */
+ session->ros_op = (ROS_OP_UNBIND | ROS_OP_ERROR);
+ offset = call_ros_oid_callback(oid, tvb, offset, actx->pinfo, top_tree, session);
+ }
+
+#.FN_BODY ROS/reject
+ col_set_str(actx->pinfo->cinfo, COL_INFO, "Reject");
+ %(DEFAULT_BODY)s
+
+#.FN_PARS GeneralProblem
+ VAL_PTR = &problem
+
+#.FN_BODY GeneralProblem
+ guint32 problem;
+
+ %(DEFAULT_BODY)s
+
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, ros_GeneralProblem_vals, "GeneralProblem(%%d)"));
+
+#.FN_PARS InvokeProblem
+ VAL_PTR = &problem
+
+#.FN_BODY InvokeProblem
+ guint32 problem;
+
+ %(DEFAULT_BODY)s
+
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, ros_InvokeProblem_vals, "InvokeProblem(%%d)"));
+
+#.FN_PARS ReturnResultProblem
+ VAL_PTR = &problem
+
+#.FN_BODY ReturnResultProblem
+ guint32 problem;
+
+ %(DEFAULT_BODY)s
+
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, ros_ReturnResultProblem_vals, "ReturnResultProblem(%%d)"));
+
+#.FN_PARS ReturnErrorProblem
+ VAL_PTR = &problem
+
+#.FN_BODY ReturnErrorProblem
+ guint32 problem;
+
+ %(DEFAULT_BODY)s
+
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, ros_ReturnErrorProblem_vals, "ReturnErrorProblem(%%d)"));
+
+#.END