Wireshark
2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ui
tap-rtp-analysis.h
Go to the documentation of this file.
1
/* tap-rtp-analysis.h
2
* RTP analysis addition for Wireshark
3
*
4
* Copyright 2003, Alcatel Business Systems
5
* By Lars Ruoff <lars.ruoff@gmx.net>
6
*
7
* based on tap_rtp.c
8
* Copyright 2003, Iskratel, Ltd, Kranj
9
* By Miha Jemec <m.jemec@iskratel.si>
10
*
11
* Wireshark - Network traffic analyzer
12
* By Gerald Combs <gerald@wireshark.org>
13
* Copyright 1998 Gerald Combs
14
*
15
* SPDX-License-Identifier: GPL-2.0-or-later
16
*/
17
18
#ifndef __TAP_RTP_ANALYSIS_H__
19
#define __TAP_RTP_ANALYSIS_H__
20
21
#include <epan/address.h>
22
#include <
epan/packet_info.h
>
23
29
#ifdef __cplusplus
30
extern
"C"
{
31
#endif
/* __cplusplus */
32
33
void
rtp_analysis(
34
address
*ip_src_fwd,
35
guint32 port_src_fwd,
36
address
*ip_dst_fwd,
37
guint32 port_dst_fwd,
38
guint32 ssrc_fwd,
39
address
*ip_src_rev,
40
guint32 port_src_rev,
41
address
*ip_dst_rev,
42
guint32 port_dst_rev,
43
guint32 ssrc_rev
44
);
45
46
/****************************************************************************/
47
/* structure that holds the information about the forward and reversed direction */
48
typedef
struct
_bw_history_item
{
49
double
time;
50
guint32 bytes;
51
}
bw_history_item
;
52
53
#define BUFF_BW 300
54
55
typedef
struct
_tap_rtp_stat_t
{
56
gboolean
first_packet
;
57
/* use (flags & STAT_FLAG_FIRST) instead */
58
/* all of the following fields will be initialized after
59
* rtp_packet_analyse has been called
60
*/
61
address
first_packet_mac_addr
;
62
guint32 flags;
/* see STAT_FLAG-defines below */
63
guint16 seq_num;
64
guint32 timestamp;
65
guint32 first_timestamp;
66
guint32 delta_timestamp;
67
double
bandwidth;
68
bw_history_item
bw_history[BUFF_BW];
69
guint16 bw_start_index;
70
guint16 bw_index;
71
guint32 total_bytes;
72
guint32 clock_rate;
73
double
delta;
74
double
jitter;
75
double
diff;
76
double
skew;
77
double
sumt;
78
double
sumTS;
79
double
sumt2;
80
double
sumtTS;
81
double
time
;
82
double
start_time
;
83
double
lastnominaltime;
84
double
max_delta;
85
double
max_jitter;
86
double
max_skew;
87
double
mean_jitter;
88
guint32 max_nr;
89
guint16 start_seq_nr;
90
guint16 stop_seq_nr;
91
guint32 total_nr;
92
guint32 sequence;
93
gboolean under;
94
gint cycles;
95
guint16 pt;
96
int
reg_pt;
97
guint32 first_packet_num;
98
guint last_payload_len;
99
}
tap_rtp_stat_t
;
100
101
typedef
struct
_tap_rtp_save_data_t
{
102
guint32 timestamp;
103
unsigned
int
payload_type;
104
size_t
payload_len;
105
}
tap_rtp_save_data_t
;
106
107
#define PT_UNDEFINED -1
108
109
/* status flags for the flags parameter in tap_rtp_stat_t */
110
#define STAT_FLAG_FIRST 0x001
111
#define STAT_FLAG_MARKER 0x002
112
#define STAT_FLAG_WRONG_SEQ 0x004
113
#define STAT_FLAG_PT_CHANGE 0x008
114
#define STAT_FLAG_PT_CN 0x010
115
#define STAT_FLAG_FOLLOW_PT_CN 0x020
116
#define STAT_FLAG_REG_PT_CHANGE 0x040
117
#define STAT_FLAG_WRONG_TIMESTAMP 0x080
118
#define STAT_FLAG_PT_T_EVENT 0x100
119
#define STAT_FLAG_DUP_PKT 0x200
120
121
/* forward */
122
struct
_rtp_info
;
123
124
/* function for analysing an RTP packet. Called from rtp_analysis and rtp_streams */
125
extern
void
rtp_packet_analyse(
tap_rtp_stat_t
*statinfo,
126
packet_info
*pinfo,
127
const
struct
_rtp_info
*rtpinfo);
128
129
#ifdef __cplusplus
130
}
131
#endif
/* __cplusplus */
132
133
#endif
/* __TAP_RTP_ANALYSIS_H__ */
134
135
/*
136
* Editor modelines - http://www.wireshark.org/tools/modelines.html
137
*
138
* Local variables:
139
* c-basic-offset: 4
140
* tab-width: 8
141
* indent-tabs-mode: nil
142
* End:
143
*
144
* vi: set shiftwidth=4 tabstop=8 expandtab:
145
* :indentSize=4:tabSize=8:noTabs=true:
146
*/
_tap_rtp_stat_t::start_time
double start_time
Definition:
tap-rtp-analysis.h:82
_tap_rtp_stat_t::first_packet_mac_addr
address first_packet_mac_addr
Definition:
tap-rtp-analysis.h:61
_packet_info
Definition:
packet_info.h:44
_tap_rtp_stat_t
Definition:
tap-rtp-analysis.h:55
_tap_rtp_stat_t::first_packet
gboolean first_packet
Definition:
tap-rtp-analysis.h:56
_tap_rtp_stat_t::time
double time
Definition:
tap-rtp-analysis.h:81
_bw_history_item
Definition:
tap-rtp-analysis.h:48
_rtp_info
Definition:
packet-rtp.h:26
packet_info.h
_tap_rtp_save_data_t
Definition:
tap-rtp-analysis.h:101
_address
Definition:
address.h:47
Generated by
1.8.11