1 #ifndef STRACE_LINUX_UNIX_DIAG_H
2 #define STRACE_LINUX_UNIX_DIAG_H
3 
4 struct unix_diag_req {
5 	uint8_t	 sdiag_family;
6 	uint8_t	 sdiag_protocol;
7 	uint16_t pad;
8 	uint32_t udiag_states;
9 	uint32_t udiag_ino;
10 	uint32_t udiag_show;
11 	uint32_t udiag_cookie[2];
12 };
13 
14 #define UDIAG_SHOW_NAME		0x01
15 #define UDIAG_SHOW_VFS		0x02
16 #define UDIAG_SHOW_PEER		0x04
17 #define UDIAG_SHOW_ICONS	0x08
18 #define UDIAG_SHOW_RQLEN	0x10
19 #define UDIAG_SHOW_MEMINFO	0x20
20 
21 struct unix_diag_msg {
22 	uint8_t	 udiag_family;
23 	uint8_t	 udiag_type;
24 	uint8_t	 udiag_state;
25 	uint8_t	 pad;
26 	uint32_t udiag_ino;
27 	uint32_t udiag_cookie[2];
28 };
29 
30 enum {
31 	UNIX_DIAG_NAME,
32 	UNIX_DIAG_VFS,
33 	UNIX_DIAG_PEER,
34 	UNIX_DIAG_ICONS,
35 	UNIX_DIAG_RQLEN,
36 	UNIX_DIAG_MEMINFO,
37 	UNIX_DIAG_SHUTDOWN,
38 };
39 
40 struct unix_diag_vfs {
41 	uint32_t udiag_vfs_ino;
42 	uint32_t udiag_vfs_dev;
43 };
44 
45 struct unix_diag_rqlen {
46 	uint32_t udiag_rqueue;
47 	uint32_t udiag_wqueue;
48 };
49 
50 #endif /* !STRACE_LINUX_UNIX_DIAG_H */
51