Wireshark 4.7.2
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
mcast_stream.h
Go to the documentation of this file.
1
17
18#ifndef __MCAST_STREAM_H__
19#define __MCAST_STREAM_H__
20
21#include <epan/tap.h>
22
23#ifdef __cplusplus
24extern "C" {
25#endif /* __cplusplus */
26
27#define MAX_SPEED 200000
28
29/* typedefs for sliding window and buffer size */
30
34typedef struct buffer {
36 int32_t first;
37 int32_t last;
38 int32_t burstsize;
39 int32_t topburstsize;
40 int32_t count;
41 int32_t burststatus;
42 int32_t numbursts;
43 int32_t buffusage;
44 int32_t buffstatus;
45 int32_t numbuffalarms;
46 int32_t topbuffusage;
47 double maxbw;
49
50
51/* defines an mcast stream */
52/* XXX - Not all of these seem to be used? */
53
74
79
85
91
104
106extern int32_t mcast_stream_trigger;
107
109extern int32_t mcast_stream_bufferalarm;
110
112extern uint16_t mcast_stream_burstint;
113
115extern int32_t mcast_stream_emptyspeed;
116
118extern int32_t mcast_stream_cumulemptyspeed;
119
120/****************************************************************************/
121/* INTERFACE */
122
136
137
145
152
169tap_packet_status mcaststream_packet(void *tapdata, packet_info *pinfo, epan_dissect_t *edt, const void *data, tap_flags_t flags);
170
171#ifdef __cplusplus
172}
173#endif /* __cplusplus */
174
175#endif /* __MCAST_STREAM_H__ */
struct _address address
Holds a network or link-layer address of any supported type.
struct epan_dissect epan_dissect_t
Opaque type representing a single packet dissection context.
Definition epan.h:62
struct _packet_info packet_info
Represents the metadata and indexing information for a single captured frame.
struct _mcaststream_tapinfo mcaststream_tapinfo_t
Forward declaration of the multicast stream tap info aggregate structure.
Definition mcast_stream.h:78
struct buffer t_buffer
Sliding window buffer tracking per-stream burst and bandwidth statistics.
void(* mcaststream_tap_draw_cb)(mcaststream_tapinfo_t *tapinfo)
Callback invoked to redraw or refresh the multicast stream UI.
Definition mcast_stream.h:90
void mcaststream_reset(mcaststream_tapinfo_t *tapinfo)
Free all accumulated mcast stream tap data.
Definition mcast_stream.c:76
tap_packet_status mcaststream_packet(void *tapdata, packet_info *pinfo, epan_dissect_t *edt, const void *data, tap_flags_t flags)
Tap packet callback for the mcast_streams tap.
void remove_tap_listener_mcast_stream(mcaststream_tapinfo_t *tapinfo)
Remove the mcast_streams tap listener.
Definition mcast_stream.c:283
void(* mcaststream_tap_reset_cb)(mcaststream_tapinfo_t *tapinfo)
Callback invoked to reset all multicast stream tap state.
Definition mcast_stream.h:84
GString * register_tap_listener_mcast_stream(mcaststream_tapinfo_t *tapinfo)
Registers the mcast_streams tap listener (if not already done).
Definition mcast_stream.c:294
struct _mcast_stream_info mcast_stream_info_t
Holds statistics and metadata for a single detected multicast stream.
Holds statistics and metadata for a single detected multicast stream.
Definition mcast_stream.h:57
double apackets
Definition mcast_stream.h:63
double average_bw
Definition mcast_stream.h:65
uint16_t src_port
Definition mcast_stream.h:59
address dest_addr
Definition mcast_stream.h:60
t_buffer element
Definition mcast_stream.h:72
nstime_t start_abs
Definition mcast_stream.h:68
uint16_t dest_port
Definition mcast_stream.h:61
uint64_t total_bytes
Definition mcast_stream.h:64
uint32_t npackets
Definition mcast_stream.h:62
address src_addr
Definition mcast_stream.h:58
uint32_t first_frame_num
Definition mcast_stream.h:67
nstime_t stop_rel
Definition mcast_stream.h:70
nstime_t start_rel
Definition mcast_stream.h:69
Aggregate tap structure holding information about all detected multicast streams.
Definition mcast_stream.h:95
GList * strinfo_list
Definition mcast_stream.h:99
uint32_t npackets
Definition mcast_stream.h:100
mcaststream_tap_draw_cb tap_draw
Definition mcast_stream.h:98
mcaststream_tap_reset_cb tap_reset
Definition mcast_stream.h:97
void * user_data
Definition mcast_stream.h:96
mcast_stream_info_t * allstreams
Definition mcast_stream.h:101
bool is_registered
Definition mcast_stream.h:102
Sliding window buffer tracking per-stream burst and bandwidth statistics.
Definition mcast_stream.h:34
int32_t burstsize
Definition mcast_stream.h:38
int32_t numbuffalarms
Definition mcast_stream.h:45
int32_t buffstatus
Definition mcast_stream.h:44
int32_t buffusage
Definition mcast_stream.h:43
int32_t burststatus
Definition mcast_stream.h:41
int32_t topbuffusage
Definition mcast_stream.h:46
int32_t numbursts
Definition mcast_stream.h:42
int32_t first
Definition mcast_stream.h:36
int32_t count
Definition mcast_stream.h:40
int32_t last
Definition mcast_stream.h:37
nstime_t * buff
Definition mcast_stream.h:35
double maxbw
Definition mcast_stream.h:47
int32_t topburstsize
Definition mcast_stream.h:39
Definition nstime.h:26
tap_packet_status
Definition tap.h:22