]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - include/uapi/linux/tcp_metrics.h
UAPI: Unexport linux/blk_types.h
[karo-tx-linux.git] / include / uapi / linux / tcp_metrics.h
1 /* tcp_metrics.h - TCP Metrics Interface */
2
3 #ifndef _LINUX_TCP_METRICS_H
4 #define _LINUX_TCP_METRICS_H
5
6 #include <linux/types.h>
7
8 /* NETLINK_GENERIC related info
9  */
10 #define TCP_METRICS_GENL_NAME           "tcp_metrics"
11 #define TCP_METRICS_GENL_VERSION        0x1
12
13 enum tcp_metric_index {
14         TCP_METRIC_RTT,
15         TCP_METRIC_RTTVAR,
16         TCP_METRIC_SSTHRESH,
17         TCP_METRIC_CWND,
18         TCP_METRIC_REORDERING,
19
20         /* Always last.  */
21         __TCP_METRIC_MAX,
22 };
23
24 #define TCP_METRIC_MAX  (__TCP_METRIC_MAX - 1)
25
26 enum {
27         TCP_METRICS_ATTR_UNSPEC,
28         TCP_METRICS_ATTR_ADDR_IPV4,             /* u32 */
29         TCP_METRICS_ATTR_ADDR_IPV6,             /* binary */
30         TCP_METRICS_ATTR_AGE,                   /* msecs */
31         TCP_METRICS_ATTR_TW_TSVAL,              /* u32, raw, rcv tsval */
32         TCP_METRICS_ATTR_TW_TS_STAMP,           /* s32, sec age */
33         TCP_METRICS_ATTR_VALS,                  /* nested +1, u32 */
34         TCP_METRICS_ATTR_FOPEN_MSS,             /* u16 */
35         TCP_METRICS_ATTR_FOPEN_SYN_DROPS,       /* u16, count of drops */
36         TCP_METRICS_ATTR_FOPEN_SYN_DROP_TS,     /* msecs age */
37         TCP_METRICS_ATTR_FOPEN_COOKIE,          /* binary */
38
39         __TCP_METRICS_ATTR_MAX,
40 };
41
42 #define TCP_METRICS_ATTR_MAX    (__TCP_METRICS_ATTR_MAX - 1)
43
44 enum {
45         TCP_METRICS_CMD_UNSPEC,
46         TCP_METRICS_CMD_GET,
47         TCP_METRICS_CMD_DEL,
48
49         __TCP_METRICS_CMD_MAX,
50 };
51
52 #define TCP_METRICS_CMD_MAX     (__TCP_METRICS_CMD_MAX - 1)
53
54 #endif /* _LINUX_TCP_METRICS_H */