1 #ifndef STRACE_LINUX_INET_DIAG_H
2 #define STRACE_LINUX_INET_DIAG_H
4 #define TCPDIAG_GETSOCK 18
5 #define DCCPDIAG_GETSOCK 19
8 struct inet_diag_sockid {
11 uint32_t idiag_src[4];
12 uint32_t idiag_dst[4];
14 uint32_t idiag_cookie[2];
17 /* Request structures */
18 struct inet_diag_req {
20 uint8_t idiag_src_len;
21 uint8_t idiag_dst_len;
23 struct inet_diag_sockid id;
24 uint32_t idiag_states;
28 struct inet_diag_req_v2 {
30 uint8_t sdiag_protocol;
33 uint32_t idiag_states;
34 struct inet_diag_sockid id;
39 INET_DIAG_REQ_BYTECODE,
42 struct inet_diag_bc_op {
58 INET_DIAG_BC_DEV_COND, /* u32 ifindex */
59 INET_DIAG_BC_MARK_COND,
64 struct inet_diag_hostcond {
71 struct inet_diag_markcond {
77 struct inet_diag_msg {
81 uint8_t idiag_retrans;
83 struct inet_diag_sockid id;
85 uint32_t idiag_expires;
86 uint32_t idiag_rqueue;
87 uint32_t idiag_wqueue;
104 INET_DIAG_PROTOCOL, /* response attribute only */
115 struct inet_diag_meminfo {
122 /* INET_DIAG_VEGASINFO */
123 struct tcpvegas_info {
124 uint32_t tcpv_enabled;
125 uint32_t tcpv_rttcnt;
127 uint32_t tcpv_minrtt;
130 /* INET_DIAG_DCTCPINFO */
131 struct tcp_dctcp_info {
132 uint16_t dctcp_enabled;
133 uint16_t dctcp_ce_state;
134 uint32_t dctcp_alpha;
135 uint32_t dctcp_ab_ecn;
136 uint32_t dctcp_ab_tot;
139 /* INET_DIAG_BBRINFO */
140 struct tcp_bbr_info {
143 uint32_t bbr_min_rtt;
144 uint32_t bbr_pacing_gain;
145 uint32_t bbr_cwnd_gain;
148 #endif /* !STRACE_LINUX_INET_DIAG_H */