forked from osmocom/wireshark
tvblist: explicitly scope memory
Allocate the root node in the same pool as the list itself, and make that pool explicit so we can pass the pinfo scope instead of using the global packet pool.
This commit is contained in:
parent
530ee0b365
commit
6caf24e966
|
@ -964,7 +964,7 @@ libwireshark.so.0 libwireshark0 #MINVER#
|
||||||
next_tvb_add_string@Base 1.9.1
|
next_tvb_add_string@Base 1.9.1
|
||||||
next_tvb_add_uint@Base 1.9.1
|
next_tvb_add_uint@Base 1.9.1
|
||||||
next_tvb_call@Base 1.9.1
|
next_tvb_call@Base 1.9.1
|
||||||
next_tvb_init@Base 1.9.1
|
next_tvb_list_new@Base 3.5.0
|
||||||
nmas_subverb_enum@Base 2.1.0
|
nmas_subverb_enum@Base 2.1.0
|
||||||
nt_cmd_vals_ext@Base 1.9.1
|
nt_cmd_vals_ext@Base 1.9.1
|
||||||
num_tree_types@Base 1.9.1
|
num_tree_types@Base 1.9.1
|
||||||
|
|
|
@ -385,14 +385,14 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
|
||||||
tvbuff_t *h245_tvb = NULL;
|
tvbuff_t *h245_tvb = NULL;
|
||||||
|
|
||||||
%(DEFAULT_BODY)s
|
%(DEFAULT_BODY)s
|
||||||
next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
next_tvb_add_handle(h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
||||||
#.END
|
#.END
|
||||||
#----------------------------------------------------------------------------------------
|
#----------------------------------------------------------------------------------------
|
||||||
#.FN_BODY H245Control/_item VAL_PTR = &h245_tvb
|
#.FN_BODY H245Control/_item VAL_PTR = &h245_tvb
|
||||||
tvbuff_t *h245_tvb = NULL;
|
tvbuff_t *h245_tvb = NULL;
|
||||||
|
|
||||||
%(DEFAULT_BODY)s
|
%(DEFAULT_BODY)s
|
||||||
next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
next_tvb_add_handle(h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
||||||
#.END
|
#.END
|
||||||
#----------------------------------------------------------------------------------------
|
#----------------------------------------------------------------------------------------
|
||||||
#.FN_HDR H323-UU-PDU/h323-message-body/empty
|
#.FN_HDR H323-UU-PDU/h323-message-body/empty
|
||||||
|
@ -792,7 +792,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
|
||||||
tvbuff_t *next_tvb = NULL;
|
tvbuff_t *next_tvb = NULL;
|
||||||
|
|
||||||
%(DEFAULT_BODY)s
|
%(DEFAULT_BODY)s
|
||||||
next_tvb_add_handle(&tp_list, next_tvb, (h225_tp_in_tree)?tree:NULL, tp_handle);
|
next_tvb_add_handle(tp_list, next_tvb, (h225_tp_in_tree)?tree:NULL, tp_handle);
|
||||||
#.END
|
#.END
|
||||||
|
|
||||||
#--- NonStandardParameter ---------------------------------------------------------------
|
#--- NonStandardParameter ---------------------------------------------------------------
|
||||||
|
|
|
@ -99,8 +99,8 @@ static dissector_handle_t h4501_handle=NULL;
|
||||||
static dissector_handle_t nsp_handle;
|
static dissector_handle_t nsp_handle;
|
||||||
static dissector_handle_t tp_handle;
|
static dissector_handle_t tp_handle;
|
||||||
|
|
||||||
static next_tvb_list_t h245_list;
|
static next_tvb_list_t *h245_list;
|
||||||
static next_tvb_list_t tp_list;
|
static next_tvb_list_t *tp_list;
|
||||||
|
|
||||||
/* Initialize the protocol and registered fields */
|
/* Initialize the protocol and registered fields */
|
||||||
static int h225_tap = -1;
|
static int h225_tap = -1;
|
||||||
|
@ -322,8 +322,8 @@ static void
|
||||||
h225_frame_end(void)
|
h225_frame_end(void)
|
||||||
{
|
{
|
||||||
/* next_tvb pointers are allocated in packet scope, clear it. */
|
/* next_tvb pointers are allocated in packet scope, clear it. */
|
||||||
next_tvb_init(&h245_list);
|
h245_list = NULL;
|
||||||
next_tvb_init(&tp_list);
|
tp_list = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -340,8 +340,8 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
|
||||||
p_add_proto_data(pinfo->pool, pinfo, proto_h225, 0, h225_pi);
|
p_add_proto_data(pinfo->pool, pinfo, proto_h225, 0, h225_pi);
|
||||||
|
|
||||||
register_frame_end_routine(pinfo, h225_frame_end);
|
register_frame_end_routine(pinfo, h225_frame_end);
|
||||||
next_tvb_init(&h245_list);
|
h245_list = next_tvb_list_new(pinfo->pool);
|
||||||
next_tvb_init(&tp_list);
|
tp_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
|
||||||
col_clear(pinfo->cinfo, COL_INFO);
|
col_clear(pinfo->cinfo, COL_INFO);
|
||||||
|
@ -351,13 +351,13 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
|
||||||
|
|
||||||
offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr, NULL);
|
offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr, NULL);
|
||||||
|
|
||||||
if (h245_list.count){
|
if (h245_list->count){
|
||||||
col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
|
col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
|
||||||
col_set_fence(pinfo->cinfo, COL_PROTOCOL);
|
col_set_fence(pinfo->cinfo, COL_PROTOCOL);
|
||||||
}
|
}
|
||||||
|
|
||||||
next_tvb_call(&h245_list, pinfo, tree, h245dg_handle, data_handle);
|
next_tvb_call(h245_list, pinfo, tree, h245dg_handle, data_handle);
|
||||||
next_tvb_call(&tp_list, pinfo, tree, NULL, data_handle);
|
next_tvb_call(tp_list, pinfo, tree, NULL, data_handle);
|
||||||
|
|
||||||
tap_queue_packet(h225_tap, pinfo, h225_pi);
|
tap_queue_packet(h225_tap, pinfo, h225_pi);
|
||||||
|
|
||||||
|
|
|
@ -184,7 +184,7 @@ tvbuff_t *value_tvb=NULL;
|
||||||
static dissector_handle_t snmp_handle;
|
static dissector_handle_t snmp_handle;
|
||||||
static dissector_handle_t data_handle;
|
static dissector_handle_t data_handle;
|
||||||
|
|
||||||
static next_tvb_list_t var_list;
|
static next_tvb_list_t *var_list;
|
||||||
|
|
||||||
static int hf_snmp_response_in = -1;
|
static int hf_snmp_response_in = -1;
|
||||||
static int hf_snmp_response_to = -1;
|
static int hf_snmp_response_to = -1;
|
||||||
|
@ -1134,7 +1134,7 @@ already_added:
|
||||||
if (value_len > 0 && oid_string) {
|
if (value_len > 0 && oid_string) {
|
||||||
tvbuff_t* sub_tvb = tvb_new_subset_length(tvb, value_offset, value_len);
|
tvbuff_t* sub_tvb = tvb_new_subset_length(tvb, value_offset, value_len);
|
||||||
|
|
||||||
next_tvb_add_string(&var_list, sub_tvb, (snmp_var_in_tree) ? pt_value : NULL, value_sub_dissectors_table, oid_string);
|
next_tvb_add_string(var_list, sub_tvb, (snmp_var_in_tree) ? pt_value : NULL, value_sub_dissectors_table, oid_string);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -2071,7 +2071,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
next_tvb_init(&var_list);
|
var_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, proto_get_protocol_short_name(find_protocol_by_id(proto)));
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, proto_get_protocol_short_name(find_protocol_by_id(proto)));
|
||||||
|
|
||||||
|
@ -2108,7 +2108,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||||
next_tvb = tvb_new_subset_remaining(tvb, offset);
|
next_tvb = tvb_new_subset_remaining(tvb, offset);
|
||||||
call_dissector(data_handle, next_tvb, pinfo, tree);
|
call_dissector(data_handle, next_tvb, pinfo, tree);
|
||||||
} else {
|
} else {
|
||||||
next_tvb_call(&var_list, pinfo, tree, NULL, data_handle);
|
next_tvb_call(var_list, pinfo, tree, NULL, data_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
@ -2210,7 +2210,7 @@ dissect_smux(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
|
||||||
proto_tree *smux_tree = NULL;
|
proto_tree *smux_tree = NULL;
|
||||||
proto_item *item = NULL;
|
proto_item *item = NULL;
|
||||||
|
|
||||||
next_tvb_init(&var_list);
|
var_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "SMUX");
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, "SMUX");
|
||||||
|
|
||||||
|
|
|
@ -107,8 +107,8 @@ static dissector_handle_t h4501_handle=NULL;
|
||||||
static dissector_handle_t nsp_handle;
|
static dissector_handle_t nsp_handle;
|
||||||
static dissector_handle_t tp_handle;
|
static dissector_handle_t tp_handle;
|
||||||
|
|
||||||
static next_tvb_list_t h245_list;
|
static next_tvb_list_t *h245_list;
|
||||||
static next_tvb_list_t tp_list;
|
static next_tvb_list_t *tp_list;
|
||||||
|
|
||||||
/* Initialize the protocol and registered fields */
|
/* Initialize the protocol and registered fields */
|
||||||
static int h225_tap = -1;
|
static int h225_tap = -1;
|
||||||
|
@ -4131,7 +4131,7 @@ dissect_h225_ParallelH245Control_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ct
|
||||||
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||||
NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
|
NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
|
||||||
|
|
||||||
next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
next_tvb_add_handle(h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
||||||
|
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
@ -5057,7 +5057,7 @@ dissect_h225_H245Control_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
|
||||||
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||||
NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
|
NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
|
||||||
|
|
||||||
next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
next_tvb_add_handle(h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
|
||||||
|
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
@ -5114,7 +5114,7 @@ dissect_h225_T_messageContent_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
|
||||||
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||||
NO_BOUND, NO_BOUND, FALSE, &next_tvb);
|
NO_BOUND, NO_BOUND, FALSE, &next_tvb);
|
||||||
|
|
||||||
next_tvb_add_handle(&tp_list, next_tvb, (h225_tp_in_tree)?tree:NULL, tp_handle);
|
next_tvb_add_handle(tp_list, next_tvb, (h225_tp_in_tree)?tree:NULL, tp_handle);
|
||||||
|
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
@ -7903,8 +7903,8 @@ static void
|
||||||
h225_frame_end(void)
|
h225_frame_end(void)
|
||||||
{
|
{
|
||||||
/* next_tvb pointers are allocated in packet scope, clear it. */
|
/* next_tvb pointers are allocated in packet scope, clear it. */
|
||||||
next_tvb_init(&h245_list);
|
h245_list = NULL;
|
||||||
next_tvb_init(&tp_list);
|
tp_list = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -7921,8 +7921,8 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
|
||||||
p_add_proto_data(pinfo->pool, pinfo, proto_h225, 0, h225_pi);
|
p_add_proto_data(pinfo->pool, pinfo, proto_h225, 0, h225_pi);
|
||||||
|
|
||||||
register_frame_end_routine(pinfo, h225_frame_end);
|
register_frame_end_routine(pinfo, h225_frame_end);
|
||||||
next_tvb_init(&h245_list);
|
h245_list = next_tvb_list_new(pinfo->pool);
|
||||||
next_tvb_init(&tp_list);
|
tp_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
|
||||||
col_clear(pinfo->cinfo, COL_INFO);
|
col_clear(pinfo->cinfo, COL_INFO);
|
||||||
|
@ -7932,13 +7932,13 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
|
||||||
|
|
||||||
offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr, NULL);
|
offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr, NULL);
|
||||||
|
|
||||||
if (h245_list.count){
|
if (h245_list->count){
|
||||||
col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
|
col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
|
||||||
col_set_fence(pinfo->cinfo, COL_PROTOCOL);
|
col_set_fence(pinfo->cinfo, COL_PROTOCOL);
|
||||||
}
|
}
|
||||||
|
|
||||||
next_tvb_call(&h245_list, pinfo, tree, h245dg_handle, data_handle);
|
next_tvb_call(h245_list, pinfo, tree, h245dg_handle, data_handle);
|
||||||
next_tvb_call(&tp_list, pinfo, tree, NULL, data_handle);
|
next_tvb_call(tp_list, pinfo, tree, NULL, data_handle);
|
||||||
|
|
||||||
tap_queue_packet(h225_tap, pinfo, h225_pi);
|
tap_queue_packet(h225_tap, pinfo, h225_pi);
|
||||||
|
|
||||||
|
|
|
@ -192,7 +192,7 @@ tvbuff_t *value_tvb=NULL;
|
||||||
static dissector_handle_t snmp_handle;
|
static dissector_handle_t snmp_handle;
|
||||||
static dissector_handle_t data_handle;
|
static dissector_handle_t data_handle;
|
||||||
|
|
||||||
static next_tvb_list_t var_list;
|
static next_tvb_list_t *var_list;
|
||||||
|
|
||||||
static int hf_snmp_response_in = -1;
|
static int hf_snmp_response_in = -1;
|
||||||
static int hf_snmp_response_to = -1;
|
static int hf_snmp_response_to = -1;
|
||||||
|
@ -1236,7 +1236,7 @@ already_added:
|
||||||
if (value_len > 0 && oid_string) {
|
if (value_len > 0 && oid_string) {
|
||||||
tvbuff_t* sub_tvb = tvb_new_subset_length(tvb, value_offset, value_len);
|
tvbuff_t* sub_tvb = tvb_new_subset_length(tvb, value_offset, value_len);
|
||||||
|
|
||||||
next_tvb_add_string(&var_list, sub_tvb, (snmp_var_in_tree) ? pt_value : NULL, value_sub_dissectors_table, oid_string);
|
next_tvb_add_string(var_list, sub_tvb, (snmp_var_in_tree) ? pt_value : NULL, value_sub_dissectors_table, oid_string);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -3311,7 +3311,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
next_tvb_init(&var_list);
|
var_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, proto_get_protocol_short_name(find_protocol_by_id(proto)));
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, proto_get_protocol_short_name(find_protocol_by_id(proto)));
|
||||||
|
|
||||||
|
@ -3348,7 +3348,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||||
next_tvb = tvb_new_subset_remaining(tvb, offset);
|
next_tvb = tvb_new_subset_remaining(tvb, offset);
|
||||||
call_dissector(data_handle, next_tvb, pinfo, tree);
|
call_dissector(data_handle, next_tvb, pinfo, tree);
|
||||||
} else {
|
} else {
|
||||||
next_tvb_call(&var_list, pinfo, tree, NULL, data_handle);
|
next_tvb_call(var_list, pinfo, tree, NULL, data_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
@ -3450,7 +3450,7 @@ dissect_smux(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
|
||||||
proto_tree *smux_tree = NULL;
|
proto_tree *smux_tree = NULL;
|
||||||
proto_item *item = NULL;
|
proto_item *item = NULL;
|
||||||
|
|
||||||
next_tvb_init(&var_list);
|
var_list = next_tvb_list_new(pinfo->pool);
|
||||||
|
|
||||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "SMUX");
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, "SMUX");
|
||||||
|
|
||||||
|
|
|
@ -16,16 +16,16 @@
|
||||||
|
|
||||||
#include "next_tvb.h"
|
#include "next_tvb.h"
|
||||||
|
|
||||||
void next_tvb_init(next_tvb_list_t *list) {
|
next_tvb_list_t* next_tvb_list_new(wmem_allocator_t *pool) {
|
||||||
list->first = NULL;
|
next_tvb_list_t *list = wmem_new0(pool, next_tvb_list_t);
|
||||||
list->last = NULL;
|
list->pool = pool;
|
||||||
list->count = 0;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
void next_tvb_add_handle(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_handle_t handle) {
|
void next_tvb_add_handle(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_handle_t handle) {
|
||||||
next_tvb_item_t *item;
|
next_tvb_item_t *item;
|
||||||
|
|
||||||
item = wmem_new(wmem_packet_scope(), next_tvb_item_t);
|
item = wmem_new(list->pool, next_tvb_item_t);
|
||||||
|
|
||||||
item->type = NTVB_HANDLE;
|
item->type = NTVB_HANDLE;
|
||||||
item->handle = handle;
|
item->handle = handle;
|
||||||
|
@ -46,7 +46,7 @@ void next_tvb_add_handle(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree,
|
||||||
void next_tvb_add_uint(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, guint32 uint_val) {
|
void next_tvb_add_uint(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, guint32 uint_val) {
|
||||||
next_tvb_item_t *item;
|
next_tvb_item_t *item;
|
||||||
|
|
||||||
item = wmem_new(wmem_packet_scope(), next_tvb_item_t);
|
item = wmem_new(list->pool, next_tvb_item_t);
|
||||||
|
|
||||||
item->type = NTVB_UINT;
|
item->type = NTVB_UINT;
|
||||||
item->table = table;
|
item->table = table;
|
||||||
|
@ -68,7 +68,7 @@ void next_tvb_add_uint(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, d
|
||||||
void next_tvb_add_string(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, const gchar *string) {
|
void next_tvb_add_string(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, const gchar *string) {
|
||||||
next_tvb_item_t *item;
|
next_tvb_item_t *item;
|
||||||
|
|
||||||
item = wmem_new(wmem_packet_scope(), next_tvb_item_t);
|
item = wmem_new(list->pool, next_tvb_item_t);
|
||||||
|
|
||||||
item->type = NTVB_STRING;
|
item->type = NTVB_STRING;
|
||||||
item->table = table;
|
item->table = table;
|
||||||
|
|
|
@ -44,10 +44,11 @@ typedef struct next_tvb_item {
|
||||||
typedef struct {
|
typedef struct {
|
||||||
next_tvb_item_t *first;
|
next_tvb_item_t *first;
|
||||||
next_tvb_item_t *last;
|
next_tvb_item_t *last;
|
||||||
|
wmem_allocator_t *pool;
|
||||||
int count;
|
int count;
|
||||||
} next_tvb_list_t;
|
} next_tvb_list_t;
|
||||||
|
|
||||||
WS_DLL_PUBLIC void next_tvb_init(next_tvb_list_t *list);
|
WS_DLL_PUBLIC next_tvb_list_t* next_tvb_list_new(wmem_allocator_t *pool);
|
||||||
WS_DLL_PUBLIC void next_tvb_add_handle(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_handle_t handle);
|
WS_DLL_PUBLIC void next_tvb_add_handle(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_handle_t handle);
|
||||||
WS_DLL_PUBLIC void next_tvb_add_uint(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, guint32 uint_val);
|
WS_DLL_PUBLIC void next_tvb_add_uint(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, guint32 uint_val);
|
||||||
WS_DLL_PUBLIC void next_tvb_add_string(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, const gchar *string);
|
WS_DLL_PUBLIC void next_tvb_add_string(next_tvb_list_t *list, tvbuff_t *tvb, proto_tree *tree, dissector_table_t table, const gchar *string);
|
||||||
|
|
Loading…
Reference in New Issue