12 #ifndef NETLINK_IDIAGNL_H_
13 #define NETLINK_IDIAGNL_H_
15 #include <netlink/netlink.h>
16 #include <linux/sock_diag.h>
33 #define IDIAG_TCPDIAG_GETSOCK 18
34 #define IDIAG_DCCPDIAG_GETSOCK 19
35 #define IDIAG_GETSOCK_MAX 24
45 IDIAG_SS_ESTABLISHED = 1,
46 IDIAG_SS_SYN_SENT = 2,
47 IDIAG_SS_SYN_RECV = 3,
48 IDIAG_SS_FIN_WAIT1 = 4,
49 IDIAG_SS_FIN_WAIT2 = 5,
50 IDIAG_SS_TIME_WAIT = 6,
52 IDIAG_SS_CLOSE_WAIT = 8,
53 IDIAG_SS_LAST_ACK = 9,
55 IDIAG_SS_CLOSING = 11,
65 #define IDIAG_SS_ALL IDIAGNL_SS_ALL
75 IDIAG_ATTR_MEMINFO = 1,
77 IDIAG_ATTR_VEGASINFO = 3,
80 IDIAG_ATTR_TCLASS = 6,
81 IDIAG_ATTR_SKMEMINFO = 7,
82 IDIAG_ATTR_SHUTDOWN = 8,
88 IDIAG_ATTR_ALL = (1<<IDIAG_ATTR_MAX) - 1,
93 #define IDIAG_SK_MEMINFO_RMEM_ALLOC SK_MEMINFO_RMEM_ALLOC
94 #define IDIAG_SK_MEMINFO_RCVBUF SK_MEMINFO_RCVBUF
95 #define IDIAG_SK_MEMINFO_WMEM_ALLOC SK_MEMINFO_WMEM_ALLOC
96 #define IDIAG_SK_MEMINFO_SNDBUF SK_MEMINFO_SNDBUF
97 #define IDIAG_SK_MEMINFO_FWD_ALLOC SK_MEMINFO_FWD_ALLOC
98 #define IDIAG_SK_MEMINFO_WMEM_QUEUED SK_MEMINFO_WMEM_QUEUED
99 #define IDIAG_SK_MEMINFO_OPTMEM SK_MEMINFO_OPTMEM
100 #define IDIAG_SK_MEMINFO_BACKLOG SK_MEMINFO_BACKLOG
101 #define IDIAG_SK_MEMINFO_VARS SK_MEMINFO_VARS
104 #define IDIAG_TIMER_OFF IDIAGNL_TIMER_OFF
105 #define IDIAG_TIMER_ON IDIAGNL_TIMER_ON
106 #define IDIAG_TIMER_KEEPALIVE IDIAGNL_TIMER_KEEPALIVE
107 #define IDIAG_TIMER_TIMEWAIT IDIAGNL_TIMER_TIMEWAIT
108 #define IDIAG_TIMER_PERSIST IDIAGNL_TIMER_PERSIST
109 #define IDIAG_TIMER_UNKNOWN IDIAGNL_TIMER_UNKNOWN
117 #define IDIAGNL_SS_ALL (((1<<12)-1))
124 IDIAGNL_TIMER_OFF = 0,
125 IDIAGNL_TIMER_ON = 1,
126 IDIAGNL_TIMER_KEEPALIVE = 2,
127 IDIAGNL_TIMER_TIMEWAIT = 3,
128 IDIAGNL_TIMER_PERSIST = 4,
129 IDIAGNL_TIMER_UNKNOWN = 5,
char * idiagnl_exts2str(uint8_t, char *, size_t)
Convert inet diag extension flags to a string.
int idiagnl_str2state(const char *)
Convert inet diag socket state string to int.
int idiagnl_send_simple(struct nl_sock *, int, uint8_t, uint16_t, uint16_t)
Send trivial idiag netlink message.
char * idiagnl_shutdown2str(uint8_t, char *, size_t)
Convert shutdown state to string.
char * idiagnl_attrs2str(int, char *, size_t)
Convert inet diag extension type to a string.
int idiagnl_str2timer(const char *)
Convert inet diag timer string to int.
char * idiagnl_tcpopts2str(uint8_t, char *, size_t)
Convert TCP option attributes to string.
int idiagnl_connect(struct nl_sock *)
Create and connect idiag netlink socket.
char * idiagnl_tcpstate2str(uint8_t, char *, size_t)
Convert inetdiag tcp states to strings.
char * idiagnl_timer2str(int, char *, size_t)
Convert inet diag timer types to strings.
char * idiagnl_state2str(int, char *, size_t)
Convert inet diag socket states to strings.