#include "ws_symbol_export.h"
#include <glib.h>
#include "packet_info.h"
#include "tap.h"
#include "address.h"
#include "wsutil/file_util.h"
Go to the source code of this file.
|
| WS_DLL_PUBLIC void | register_seq_analysis (const char *name, const char *ui_name, const int proto_id, const char *tap_listener, unsigned tap_flags, tap_packet_cb tap_func) |
| | Registers a new sequence analysis.
|
| |
| WS_DLL_PUBLIC const char * | sequence_analysis_get_name (register_analysis_t *analysis) |
| |
| WS_DLL_PUBLIC const char * | sequence_analysis_get_tap_listener_name (register_analysis_t *analysis) |
| |
| WS_DLL_PUBLIC const char * | sequence_analysis_get_ui_name (register_analysis_t *analysis) |
| |
| WS_DLL_PUBLIC tap_packet_cb | sequence_analysis_get_packet_func (register_analysis_t *analysis) |
| |
| WS_DLL_PUBLIC unsigned | sequence_analysis_get_tap_flags (register_analysis_t *analysis) |
| |
| WS_DLL_PUBLIC seq_analysis_item_t * | sequence_analysis_create_sai_with_addresses (packet_info *pinfo, seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_use_color_filter (packet_info *pinfo, seq_analysis_item_t *sai) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_use_col_info_as_label_comment (packet_info *pinfo, seq_analysis_item_t *sai) |
| |
| WS_DLL_PUBLIC register_analysis_t * | sequence_analysis_find_by_name (const char *name) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_table_iterate_tables (wmem_foreach_func func, void *user_data) |
| |
| WS_DLL_PUBLIC seq_analysis_info_t * | sequence_analysis_info_new (void) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_info_free (seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_list_sort (seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_list_free (seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC int | sequence_analysis_get_nodes (seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_free_nodes (seq_analysis_info_t *sainfo) |
| |
| WS_DLL_PUBLIC void | sequence_analysis_dump_to_file (FILE *of, seq_analysis_info_t *sainfo, unsigned first_node) |
| |
Flow sequence analysis
Copied from gtk/graph_analysis.h
Copyright 2004, Verso Technologies Inc. By Alejandro Vaquero aleja.nosp@m.ndro.nosp@m.vaque.nosp@m.ro@y.nosp@m.ahoo..nosp@m.com
based on rtp_analysis.c and io_stat
Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 1998 Gerald Combs
SPDX-License-Identifier: GPL-2.0-or-later
◆ ga_info_ptr_free_cb
| typedef void(* ga_info_ptr_free_cb) (void *info_ptr) |
Callback invoked to release the protocol-specific data pointed to by seq_analysis_item_t::info_ptr.
- Parameters
-
| info_ptr | Pointer to the supplementary data block to be freed. |
◆ register_analysis_t
Structure for information about a registered sequence analysis function
◆ seq_analysis_info_t
defines the graph analysis structure
◆ _ga_info_type
Identifies the type of protocol-specific supplementary data attached to a graph analysis item.
| Enumerator |
|---|
| GA_INFO_TYPE_NONE | No supplementary data; info_ptr is NULL
|
| GA_INFO_TYPE_RTP | Supplementary data is an RTP stream info structure
|
◆ register_seq_analysis()
| WS_DLL_PUBLIC void register_seq_analysis |
( |
const char * |
name, |
|
|
const char * |
ui_name, |
|
|
const int |
proto_id, |
|
|
const char * |
tap_listener, |
|
|
unsigned |
tap_flags, |
|
|
tap_packet_cb |
tap_func |
|
) |
| |
Registers a new sequence analysis.
- Parameters
-
| name | Name of the sequence analysis. |
| ui_name | User interface name of the sequence analysis. |
| proto_id | Protocol ID associated with the sequence analysis. |
| tap_listener | Tap listener for the sequence analysis. |
| tap_flags | Flags for the tap listener. |
| tap_func | Callback function for packet processing. |
◆ sequence_analysis_create_sai_with_addresses()
Helper function to create a sequence analysis item with address fields populated Allocate a seq_analysis_item_t to return and populate the time_str and src_addr and dst_addr members based on seq_analysis_info_t any_addr member
- Parameters
-
| pinfo | packet info |
| sainfo | info determining address type |
- Returns
- sequence analysis tap flags
◆ sequence_analysis_dump_to_file()
| WS_DLL_PUBLIC void sequence_analysis_dump_to_file |
( |
FILE * |
of, |
|
|
seq_analysis_info_t * |
sainfo, |
|
|
unsigned |
first_node |
|
) |
| |
Write an ASCII version of the sequence diagram to a file.
- Parameters
-
| of | File to write. |
| sainfo | Sequence analysis information. |
| first_node | Start drawing at this node. |
◆ sequence_analysis_find_by_name()
Find a registered sequence analysis "protocol" by name
- Parameters
-
| name | Registered sequence analysis to find |
- Returns
- registered sequence analysis, NULL if not found
◆ sequence_analysis_free_nodes()
Free the node address list
- Parameters
-
| sainfo | Sequence analysis information. |
◆ sequence_analysis_get_name()
Helper function to get sequence analysis name
- Parameters
-
| analysis | Registered sequence analysis |
- Returns
- sequence analysis name string
◆ sequence_analysis_get_nodes()
Fill in the node address list
- Parameters
-
| sainfo | Sequence analysis information. |
- Returns
- The number of transaction items (not nodes) processed.
◆ sequence_analysis_get_packet_func()
| WS_DLL_PUBLIC tap_packet_cb sequence_analysis_get_packet_func |
( |
register_analysis_t * |
analysis | ) |
|
Get tap function handler from sequence analysis
- Parameters
-
| analysis | Registered sequence analysis |
- Returns
- tap function handler of sequence analysis
◆ sequence_analysis_get_tap_flags()
Helper function to get tap flags
- Parameters
-
| analysis | Registered sequence analysis |
- Returns
- sequence analysis tap flags
◆ sequence_analysis_get_tap_listener_name()
| WS_DLL_PUBLIC const char * sequence_analysis_get_tap_listener_name |
( |
register_analysis_t * |
analysis | ) |
|
Helper function to get tap listener name
- Parameters
-
| analysis | Registered sequence analysis |
- Returns
- sequence analysis tap listener string
◆ sequence_analysis_get_ui_name()
Helper function to get UI name
- Parameters
-
| analysis | Registered sequence analysis |
- Returns
- sequence analysis UI string
◆ sequence_analysis_info_free()
Free a seq_analysis_info_t struct.
- Parameters
-
| sainfo | A pointer to the seq_analysis_info_t struct to be freed. |
◆ sequence_analysis_info_new()
Create and initialize a seq_analysis_info_t struct
- Returns
- A pointer to a newly allocated seq_analysis_info_t struct.
◆ sequence_analysis_list_free()
Free the segment list
- Parameters
-
| sainfo | Sequence analysis information. |
◆ sequence_analysis_list_sort()
Sort a seq_analysis_info_t struct.
- Parameters
-
| sainfo | A pointer to the seq_analysis_info_t struct to be sorted |
◆ sequence_analysis_table_iterate_tables()
| WS_DLL_PUBLIC void sequence_analysis_table_iterate_tables |
( |
wmem_foreach_func |
func, |
|
|
void * |
user_data |
|
) |
| |
Iterator to walk sequence_analysis tables and execute func
- Parameters
-
| func | action to be performed on all sequence_analysis tables |
| user_data | any data needed to help perform function |
◆ sequence_analysis_use_col_info_as_label_comment()
Helper function to set frame label and comments to use protocol and info column data
- Parameters
-
| pinfo | packet info |
| sai | item to set label and comments |
◆ sequence_analysis_use_color_filter()
Helper function to set colors for analysis the same as Wireshark display
- Parameters
-
| pinfo | packet info |
| sai | item to set color |