1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef __NETLINK_DIAG_H__ 7 #define __NETLINK_DIAG_H__ 8 #include <linux/types.h> 9 struct netlink_diag_req { 10 __u8 sdiag_family; 11 __u8 sdiag_protocol; 12 __u16 pad; 13 __u32 ndiag_ino; 14 __u32 ndiag_show; 15 __u32 ndiag_cookie[2]; 16 }; 17 struct netlink_diag_msg { 18 __u8 ndiag_family; 19 __u8 ndiag_type; 20 __u8 ndiag_protocol; 21 __u8 ndiag_state; 22 __u32 ndiag_portid; 23 __u32 ndiag_dst_portid; 24 __u32 ndiag_dst_group; 25 __u32 ndiag_ino; 26 __u32 ndiag_cookie[2]; 27 }; 28 struct netlink_diag_ring { 29 __u32 ndr_block_size; 30 __u32 ndr_block_nr; 31 __u32 ndr_frame_size; 32 __u32 ndr_frame_nr; 33 }; 34 enum { 35 36 NETLINK_DIAG_MEMINFO, 37 NETLINK_DIAG_GROUPS, 38 NETLINK_DIAG_RX_RING, 39 NETLINK_DIAG_TX_RING, 40 NETLINK_DIAG_FLAGS, 41 __NETLINK_DIAG_MAX, 42 }; 43 #define NETLINK_DIAG_MAX (__NETLINK_DIAG_MAX - 1) 44 #define NDIAG_PROTO_ALL ((__u8) ~0) 45 #define NDIAG_SHOW_MEMINFO 0x00000001 46 #define NDIAG_SHOW_GROUPS 0x00000002 47 #ifndef __KERNEL__ 48 #define NDIAG_SHOW_RING_CFG 0x00000004 49 #endif 50 #define NDIAG_SHOW_FLAGS 0x00000008 51 #define NDIAG_FLAG_CB_RUNNING 0x00000001 52 #define NDIAG_FLAG_PKTINFO 0x00000002 53 #define NDIAG_FLAG_BROADCAST_ERROR 0x00000004 54 #define NDIAG_FLAG_NO_ENOBUFS 0x00000008 55 #define NDIAG_FLAG_LISTEN_ALL_NSID 0x00000010 56 #define NDIAG_FLAG_CAP_ACK 0x00000020 57 #endif 58