corba dissector generator improvement 

Patch 2 : create a defaulf field hf_operationrequest which provides the requested operation on both the resquest and the reply messages.

From me : 
Regenerate GIOP Plugins

svn path=/trunk/; revision=40038
This commit is contained in:
Alexis La Goutte 2011-11-29 19:36:53 +00:00
parent 557a841313
commit 022a45e0d9
5 changed files with 1027 additions and 20 deletions

View File

@ -15,6 +15,8 @@
* Copyright 1999 - 2006 Gerald Combs
*/
static int hf_operationrequest = -1;/* Request_Operation field */
/*
* This program is free software; you can redistribute it and/or
@ -602,6 +604,11 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
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 */
@ -620,6 +627,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PushConsumer_push_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PushConsumer") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PushConsumer_push(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -627,6 +635,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PushConsumer_disconnect_push_consumer_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PushConsumer") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PushConsumer_disconnect_push_consumer(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -634,6 +643,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PushSupplier_disconnect_push_supplier_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PushSupplier") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PushSupplier_disconnect_push_supplier(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -641,6 +651,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PullSupplier_pull_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PullSupplier") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PullSupplier_pull(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -648,6 +659,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PullSupplier_try_pull_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PullSupplier") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PullSupplier_try_pull(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -655,6 +667,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PullSupplier_disconnect_pull_supplier_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PullSupplier") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PullSupplier_disconnect_pull_supplier(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -662,6 +675,7 @@ static gboolean dissect_coseventcomm(tvbuff_t *tvb, packet_info *pinfo, proto_tr
if (strcmp(operation, CosEventComm_PullConsumer_disconnect_pull_consumer_op) == 0
&& (!idlname || strcmp(idlname, "CosEventComm/PullConsumer") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosEventComm_PullConsumer_disconnect_pull_consumer(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -696,13 +710,13 @@ void proto_register_giop_coseventcomm(void) {
/* 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","COSEVENTCOMM.Request_Operation",FT_STRING,BASE_NONE,NULL,0x0,NULL,HFILL}},
/* no fields yet */
};
#endif
/* setup protocol subtree array */
@ -714,9 +728,8 @@ void proto_register_giop_coseventcomm(void) {
proto_coseventcomm = proto_register_protocol("Coseventcomm Dissector Using GIOP API" , "COSEVENTCOMM", "giop-coseventcomm" );
#if 0
proto_register_field_array(proto_coseventcomm, hf, array_length(hf));
#endif
proto_register_subtree_array(ett,array_length(ett));
}

View File

@ -15,6 +15,8 @@
* Copyright 1999 - 2006 Gerald Combs
*/
static int hf_operationrequest = -1;/* Request_Operation field */
/*
* This program is free software; you can redistribute it and/or
@ -1354,6 +1356,11 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
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 */
@ -1372,6 +1379,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_bind_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_bind(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1379,6 +1387,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_rebind_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_rebind(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1386,6 +1395,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_bind_context_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_bind_context(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1393,6 +1403,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_rebind_context_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_rebind_context(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1400,6 +1411,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_resolve_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_resolve(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1407,6 +1419,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_unbind_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_unbind(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1414,6 +1427,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_new_context_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_new_context(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1421,6 +1435,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_bind_new_context_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_bind_new_context(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1428,6 +1443,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_destroy_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_destroy(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1435,6 +1451,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_NamingContext_list_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/NamingContext") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_NamingContext_list(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1442,6 +1459,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_BindingIterator_next_one_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/BindingIterator") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_BindingIterator_next_one(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1449,6 +1467,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_BindingIterator_next_n_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/BindingIterator") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_BindingIterator_next_n(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1456,6 +1475,7 @@ static gboolean dissect_cosnaming(tvbuff_t *tvb, packet_info *pinfo, proto_tree
if (strcmp(operation, CosNaming_BindingIterator_destroy_op) == 0
&& (!idlname || strcmp(idlname, "CosNaming/BindingIterator") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_CosNaming_BindingIterator_destroy(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -1490,13 +1510,13 @@ void proto_register_giop_cosnaming(void) {
/* 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","COSNAMING.Request_Operation",FT_STRING,BASE_NONE,NULL,0x0,NULL,HFILL}},
/* no fields yet */
};
#endif
/* setup protocol subtree array */
@ -1508,9 +1528,8 @@ void proto_register_giop_cosnaming(void) {
proto_cosnaming = proto_register_protocol("Cosnaming Dissector Using GIOP API" , "COSNAMING", "giop-cosnaming" );
#if 0
proto_register_field_array(proto_cosnaming, hf, array_length(hf));
#endif
proto_register_subtree_array(ett,array_length(ett));
}

File diff suppressed because it is too large Load Diff

View File

@ -15,6 +15,8 @@
* Copyright 1999 - 2006 Gerald Combs
*/
static int hf_operationrequest = -1;/* Request_Operation field */
/*
* This program is free software; you can redistribute it and/or
@ -4060,6 +4062,11 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
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 */
@ -4078,6 +4085,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_command_inout_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_command_inout(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4085,6 +4093,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_get_attribute_config_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_get_attribute_config(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4092,6 +4101,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_set_attribute_config_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_set_attribute_config(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4099,6 +4109,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_read_attributes_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_read_attributes(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4106,6 +4117,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_write_attributes_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_write_attributes(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4113,6 +4125,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_ping_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_ping(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4120,6 +4133,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_black_box_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_black_box(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4127,6 +4141,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_info_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_info(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4134,6 +4149,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_command_list_query_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_command_list_query(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4141,6 +4157,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_command_query_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_command_query(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4148,6 +4165,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_command_inout_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_command_inout_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4155,6 +4173,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_read_attributes_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_read_attributes_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4162,6 +4181,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_get_attribute_config_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_get_attribute_config_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4169,6 +4189,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_command_list_query_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_command_list_query_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4176,6 +4197,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_command_query_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_command_query_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4183,6 +4205,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_command_inout_history_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_command_inout_history_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4190,6 +4213,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_2_read_attribute_history_2_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_2") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_2_read_attribute_history_2(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4197,6 +4221,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_read_attributes_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_read_attributes_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4204,6 +4229,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_write_attributes_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_write_attributes_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4211,6 +4237,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_read_attribute_history_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_read_attribute_history_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4218,6 +4245,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_info_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_info_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4225,6 +4253,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_get_attribute_config_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_get_attribute_config_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4232,6 +4261,7 @@ static gboolean dissect_tango(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ptr
if (strcmp(operation, Tango_Device_3_set_attribute_config_3_op) == 0
&& (!idlname || strcmp(idlname, "Tango/Device_3") == 0)) {
process_RequestOperation(); /* fill-up Request_Operation field & info column */
tree = start_dissecting(tvb, pinfo, ptree, offset);
decode_Tango_Device_3_set_attribute_config_3(tvb, pinfo, tree, offset, header, operation, stream_is_big_endian);
return TRUE;
@ -4296,13 +4326,13 @@ void proto_register_giop_tango(void) {
/* 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","TANGO.Request_Operation",FT_STRING,BASE_NONE,NULL,0x0,NULL,HFILL}},
/* no fields yet */
};
#endif
/* setup protocol subtree array */
@ -4314,9 +4344,8 @@ void proto_register_giop_tango(void) {
proto_tango = proto_register_protocol("Tango Dissector Using GIOP API" , "TANGO", "giop-tango" );
#if 0
proto_register_field_array(proto_tango, hf, array_length(hf));
#endif
proto_register_subtree_array(ett,array_length(ett));
}

View File

@ -1720,13 +1720,13 @@ void proto_register_giop_@dissector_name@(void) {
/* 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 */
@ -1738,9 +1738,8 @@ void proto_register_giop_@dissector_name@(void) {
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));
}
@ -1752,6 +1751,7 @@ void proto_register_giop_@dissector_name@(void) {
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;
@ -2054,6 +2054,8 @@ for (i_@aname@=0; i_@aname@ < @aval@; i_@aname@++) {
* Copyright 1999 - 2006 Gerald Combs
*/
static int hf_operationrequest = -1;/* Request_Operation field */
"""
@ -2145,6 +2147,11 @@ static gboolean dissect_@dissname@(tvbuff_t *tvb, packet_info *pinfo, proto_tree
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 */