62 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2#ifndef __UNIX_DIAG_H__3#define __UNIX_DIAG_H__4 5#include <linux/types.h>6 7struct unix_diag_req {8 __u8 sdiag_family;9 __u8 sdiag_protocol;10 __u16 pad;11 __u32 udiag_states;12 __u32 udiag_ino;13 __u32 udiag_show;14 __u32 udiag_cookie[2];15};16 17#define UDIAG_SHOW_NAME 0x00000001 /* show name (not path) */18#define UDIAG_SHOW_VFS 0x00000002 /* show VFS inode info */19#define UDIAG_SHOW_PEER 0x00000004 /* show peer socket info */20#define UDIAG_SHOW_ICONS 0x00000008 /* show pending connections */21#define UDIAG_SHOW_RQLEN 0x00000010 /* show skb receive queue len */22#define UDIAG_SHOW_MEMINFO 0x00000020 /* show memory info of a socket */23#define UDIAG_SHOW_UID 0x00000040 /* show socket's UID */24 25struct unix_diag_msg {26 __u8 udiag_family;27 __u8 udiag_type;28 __u8 udiag_state;29 __u8 pad;30 31 __u32 udiag_ino;32 __u32 udiag_cookie[2];33};34 35enum {36 /* UNIX_DIAG_NONE, standard nl API requires this attribute! */37 UNIX_DIAG_NAME,38 UNIX_DIAG_VFS,39 UNIX_DIAG_PEER,40 UNIX_DIAG_ICONS,41 UNIX_DIAG_RQLEN,42 UNIX_DIAG_MEMINFO,43 UNIX_DIAG_SHUTDOWN,44 UNIX_DIAG_UID,45 46 __UNIX_DIAG_MAX,47};48 49#define UNIX_DIAG_MAX (__UNIX_DIAG_MAX - 1)50 51struct unix_diag_vfs {52 __u32 udiag_vfs_ino;53 __u32 udiag_vfs_dev;54};55 56struct unix_diag_rqlen {57 __u32 udiag_rqueue;58 __u32 udiag_wqueue;59};60 61#endif62