Wireshark
2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
|
Go to the source code of this file.
Classes | |
struct | _conversation_hash_t |
struct | _conversation_key_t |
struct | host_key_t |
struct | _ct_dissector_info |
struct | _hostlist_dissector_info |
struct | _conversation_item_t |
struct | _hostlist_talker_t |
Macros | |
#define | CONV_FILTER_INVALID "INVALID" |
#define | HOSTLIST_TAP_PREFIX "endpoints" |
Typedefs | |
typedef struct _conversation_hash_t | conv_hash_t |
typedef struct _conversation_key_t | conv_key_t |
typedef const char *(* | conv_get_filter_type) (struct _conversation_item_t *item, conv_filter_type_e filter) |
typedef struct _ct_dissector_info | ct_dissector_info_t |
typedef const char *(* | host_get_filter_type) (struct _hostlist_talker_t *item, conv_filter_type_e filter_type) |
typedef struct _hostlist_dissector_info | hostlist_dissector_info_t |
typedef void(* | conv_gui_init_cb) (struct register_ct *ct, const char *filter) |
typedef void(* | host_gui_init_cb) (struct register_ct *host, const char *filter) |
typedef struct register_ct | register_ct_t |
typedef struct _conversation_item_t | conv_item_t |
typedef struct _hostlist_talker_t | hostlist_talker_t |
Functions | |
WS_DLL_PUBLIC void | register_conversation_table (const int proto_id, gboolean hide_ports, tap_packet_cb conv_packet_func, tap_packet_cb hostlist_func) |
WS_DLL_PUBLIC gboolean | get_conversation_hide_ports (register_ct_t *ct) |
WS_DLL_PUBLIC int | get_conversation_proto_id (register_ct_t *ct) |
WS_DLL_PUBLIC tap_packet_cb | get_conversation_packet_func (register_ct_t *ct) |
WS_DLL_PUBLIC tap_packet_cb | get_hostlist_packet_func (register_ct_t *ct) |
WS_DLL_PUBLIC register_ct_t * | get_conversation_by_proto_id (int proto_id) |
WS_DLL_PUBLIC void | conversation_table_set_gui_info (conv_gui_init_cb init_cb) |
WS_DLL_PUBLIC void | hostlist_table_set_gui_info (host_gui_init_cb init_cb) |
WS_DLL_PUBLIC void | conversation_table_iterate_tables (wmem_foreach_func func, void *user_data) |
WS_DLL_PUBLIC guint | conversation_table_get_num (void) |
WS_DLL_PUBLIC void | reset_conversation_table_data (conv_hash_t *ch) |
WS_DLL_PUBLIC void | reset_hostlist_table_data (conv_hash_t *ch) |
WS_DLL_PUBLIC void | dissector_conversation_init (const char *opt_arg, void *userdata) |
WS_DLL_PUBLIC void | dissector_hostlist_init (const char *opt_arg, void *userdata) |
WS_DLL_PUBLIC char * | get_conversation_address (wmem_allocator_t *allocator, address *addr, gboolean resolve_names) |
WS_DLL_PUBLIC char * | get_conversation_port (wmem_allocator_t *allocator, guint32 port, endpoint_type etype, gboolean resolve_names) |
WS_DLL_PUBLIC char * | get_conversation_filter (conv_item_t *conv_item, conv_direction_e direction) |
WS_DLL_PUBLIC char * | get_hostlist_filter (hostlist_talker_t *host) |
WS_DLL_PUBLIC void | add_conversation_table_data (conv_hash_t *ch, const address *src, const address *dst, guint32 src_port, guint32 dst_port, int num_frames, int num_bytes, nstime_t *ts, nstime_t *abs_ts, ct_dissector_info_t *ct_info, endpoint_type etype) |
WS_DLL_PUBLIC void | add_conversation_table_data_with_conv_id (conv_hash_t *ch, const address *src, const address *dst, guint32 src_port, guint32 dst_port, conv_id_t conv_id, int num_frames, int num_bytes, nstime_t *ts, nstime_t *abs_ts, ct_dissector_info_t *ct_info, endpoint_type etype) |
WS_DLL_PUBLIC void | add_hostlist_table_data (conv_hash_t *ch, const address *addr, guint32 port, gboolean sender, int num_frames, int num_bytes, hostlist_dissector_info_t *host_info, endpoint_type etype) |
Conversation definitions.
typedef struct _conversation_hash_t conv_hash_t |
Conversation hash + value storage Hash table keys are conv_key_t. Hash table values are indexes into conv_array.
typedef struct _conversation_item_t conv_item_t |
Conversation information
typedef struct _conversation_key_t conv_key_t |
Key for hash lookups
typedef struct _hostlist_talker_t hostlist_talker_t |
Hostlist information
typedef struct register_ct register_ct_t |
Structure for information about a registered conversation
WS_DLL_PUBLIC void add_conversation_table_data | ( | conv_hash_t * | ch, |
const address * | src, | ||
const address * | dst, | ||
guint32 | src_port, | ||
guint32 | dst_port, | ||
int | num_frames, | ||
int | num_bytes, | ||
nstime_t * | ts, | ||
nstime_t * | abs_ts, | ||
ct_dissector_info_t * | ct_info, | ||
endpoint_type | etype | ||
) |
Add some data to the conversation table.
ch | the table to add the data to |
src | source address |
dst | destination address |
src_port | source port |
dst_port | destination port |
num_frames | number of packets |
num_bytes | number of bytes |
ts | timestamp |
abs_ts | absolute timestamp |
ct_info | callback handlers from the dissector |
etype | the port type (e.g. PT_TCP) |
WS_DLL_PUBLIC void add_conversation_table_data_with_conv_id | ( | conv_hash_t * | ch, |
const address * | src, | ||
const address * | dst, | ||
guint32 | src_port, | ||
guint32 | dst_port, | ||
conv_id_t | conv_id, | ||
int | num_frames, | ||
int | num_bytes, | ||
nstime_t * | ts, | ||
nstime_t * | abs_ts, | ||
ct_dissector_info_t * | ct_info, | ||
endpoint_type | etype | ||
) |
Add some data to the conversation table, passing a value to be used in addition to the address and port quadruple to uniquely identify the conversation.
ch | the table to add the data to |
src | source address |
dst | destination address |
src_port | source port |
dst_port | destination port |
num_frames | number of packets |
num_bytes | number of bytes |
ts | timestamp |
abs_ts | absolute timestamp |
ct_info | callback handlers from the dissector |
etype | the port type (e.g. PT_TCP) |
conv_id | a value to help differentiate the conversation in case the address and port quadruple is not sufficiently unique |
WS_DLL_PUBLIC void add_hostlist_table_data | ( | conv_hash_t * | ch, |
const address * | addr, | ||
guint32 | port, | ||
gboolean | sender, | ||
int | num_frames, | ||
int | num_bytes, | ||
hostlist_dissector_info_t * | host_info, | ||
endpoint_type | etype | ||
) |
Add some data to the table.
ch | the table hash to add the data to |
addr | address |
port | port |
sender | TRUE, if this is a sender |
num_frames | number of packets |
num_bytes | number of bytes |
host_info | conversation information provided by dissector |
etype | the port type (e.g. PT_TCP) |
WS_DLL_PUBLIC guint conversation_table_get_num | ( | void | ) |
Total number of converation tables
WS_DLL_PUBLIC void conversation_table_iterate_tables | ( | wmem_foreach_func | func, |
void * | user_data | ||
) |
Iterator to walk converation tables and execute func
func | action to be performed on all converation tables |
user_data | any data needed to help perform function |
WS_DLL_PUBLIC void conversation_table_set_gui_info | ( | conv_gui_init_cb | init_cb | ) |
Register "initialization function" used by the GUI to create conversation table display in GUI
init_cb | callback function that will be called when converation table "display is instantiated in GUI |
WS_DLL_PUBLIC void dissector_conversation_init | ( | const char * | opt_arg, |
void * | userdata | ||
) |
Initialize dissector conversation for stats and (possibly) GUI.
opt_arg | filter string to compare with dissector |
userdata | register_ct_t* for dissector conversation |
WS_DLL_PUBLIC void dissector_hostlist_init | ( | const char * | opt_arg, |
void * | userdata | ||
) |
Initialize dissector hostlist for stats and (possibly) GUI.
opt_arg | filter string to compare with dissector |
userdata | register_ct_t* for dissector conversation |
WS_DLL_PUBLIC char* get_conversation_address | ( | wmem_allocator_t * | allocator, |
address * | addr, | ||
gboolean | resolve_names | ||
) |
Get the string representation of an address.
allocator | The wmem allocator to use when allocating the string |
addr | The address. |
resolve_names | Enable name resolution. |
WS_DLL_PUBLIC register_ct_t* get_conversation_by_proto_id | ( | int | proto_id | ) |
get conversation from protocol ID
proto_id | protocol ID |
WS_DLL_PUBLIC char* get_conversation_filter | ( | conv_item_t * | conv_item, |
conv_direction_e | direction | ||
) |
Get a display filter for the given conversation and direction.
conv_item | The conversation. |
direction | The desired direction. |
WS_DLL_PUBLIC gboolean get_conversation_hide_ports | ( | register_ct_t * | ct | ) |
Should port columns be hidden?
ct | Registered conversation |
WS_DLL_PUBLIC tap_packet_cb get_conversation_packet_func | ( | register_ct_t * | ct | ) |
Get tap function handler from conversation
ct | Registered conversation |
WS_DLL_PUBLIC char* get_conversation_port | ( | wmem_allocator_t * | allocator, |
guint32 | port, | ||
endpoint_type | etype, | ||
gboolean | resolve_names | ||
) |
Get the string representation of a port.
allocator | The wmem allocator to use when allocating the string |
port | The port number. |
etype | The endpoint type. |
resolve_names | Enable name resolution. |
WS_DLL_PUBLIC int get_conversation_proto_id | ( | register_ct_t * | ct | ) |
Get protocol ID from conversation
ct | Registered conversation |
WS_DLL_PUBLIC char* get_hostlist_filter | ( | hostlist_talker_t * | host | ) |
Get a display filter for the given hostlist.
host | The hostlist. |
WS_DLL_PUBLIC tap_packet_cb get_hostlist_packet_func | ( | register_ct_t * | ct | ) |
Get tap function handler from hostlist
ct | Registered conversation |
WS_DLL_PUBLIC void hostlist_table_set_gui_info | ( | host_gui_init_cb | init_cb | ) |
Register "initialization function" used by the GUI to create hostlist table display in GUI
init_cb | callback function that will be called when hostlist "display" is instantiated in GUI |
WS_DLL_PUBLIC void register_conversation_table | ( | const int | proto_id, |
gboolean | hide_ports, | ||
tap_packet_cb | conv_packet_func, | ||
tap_packet_cb | hostlist_func | ||
) |
Register the conversation table for the conversation and endpoint windows.
proto_id | is the protocol with conversation |
hide_ports | hide the port columns |
conv_packet_func | the registered conversation tap name |
hostlist_func | the registered hostlist tap name |
WS_DLL_PUBLIC void reset_conversation_table_data | ( | conv_hash_t * | ch | ) |
Remove all entries from the conversation table.
ch | the table to reset |
WS_DLL_PUBLIC void reset_hostlist_table_data | ( | conv_hash_t * | ch | ) |
Remove all entries from the hostlist table.
ch | the table to reset |