/* setup list of header fields */
-#if 0
static hf_register_info hf[] = {
+ /* field that indicates the currently ongoing request/reply exchange */
+ {&hf_operationrequest, {"Request_Operation","@protocol_name@.Request_Operation",FT_STRING,BASE_NONE,NULL,0x0,NULL,HFILL}},
/* no fields yet */
};
-#endif
/* setup protocol subtree array */
proto_@dissector_name@ = proto_register_protocol(\"@description@\" , \"@protocol_name@\", \"giop-@dissector_name@\" );
-#if 0
proto_register_field_array(proto_@dissector_name@, hf, array_length(hf));
-#endif
+
proto_register_subtree_array(ett,array_length(ett));
}
template_op_delegate_code = """\
if (strcmp(operation, @sname@_op) == 0
&& (!idlname || strcmp(idlname, \"@interface@\") == 0)) {
+ process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_@sname@(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
* Copyright 1999 - 2006 Gerald Combs
*/
+static int hf_operationrequest = -1;/* Request_Operation field */
+
"""
gboolean stream_is_big_endian; /* big endianess */
proto_tree *tree _U_;
+#define process_RequestOperation(){ \\
+ proto_item *pi; \\
+ if(header->message_type == Reply){ col_append_fstr(pinfo->cinfo, COL_INFO, " op = %s",operation); }; /* fill-up info column */ \\
+ pi=proto_tree_add_string_format_value(ptree,hf_operationrequest,tvb,0,0,operation," %s",operation);PROTO_ITEM_SET_GENERATED(pi); /* fill-up the field */ \\
+ };
stream_is_big_endian = is_big_endian(header); /* get endianess */