diff options
author | Pavel Emelyanov <xemul@parallels.com> | 2011-12-14 21:45:43 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-12-16 13:48:28 -0500 |
commit | 5f7b0569460b7d8d01ca776430a00505a68b7584 (patch) | |
tree | f67c5033fb1fe17b45e4b45cbbb162428216f37d /include/linux/unix_diag.h | |
parent | f5248b48a64c221dd6157ab9cbee5a36ee45e6ed (diff) |
unix_diag: Unix inode info NLA
Actually, the socket path if it's not anonymous doesn't give
a clue to which file the socket is bound to. Even if the path
is absolute, it can be unlinked and then new socket can be
bound to it.
With this NLA it's possible to check which file a particular
socket is really bound to.
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/unix_diag.h')
-rw-r--r-- | include/linux/unix_diag.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/unix_diag.h b/include/linux/unix_diag.h index cc4df34d4c14..3e53adbe9c7f 100644 --- a/include/linux/unix_diag.h +++ b/include/linux/unix_diag.h | |||
@@ -12,6 +12,7 @@ struct unix_diag_req { | |||
12 | }; | 12 | }; |
13 | 13 | ||
14 | #define UDIAG_SHOW_NAME 0x00000001 /* show name (not path) */ | 14 | #define UDIAG_SHOW_NAME 0x00000001 /* show name (not path) */ |
15 | #define UDIAG_SHOW_VFS 0x00000002 /* show VFS inode info */ | ||
15 | 16 | ||
16 | struct unix_diag_msg { | 17 | struct unix_diag_msg { |
17 | __u8 udiag_family; | 18 | __u8 udiag_family; |
@@ -25,8 +26,14 @@ struct unix_diag_msg { | |||
25 | 26 | ||
26 | enum { | 27 | enum { |
27 | UNIX_DIAG_NAME, | 28 | UNIX_DIAG_NAME, |
29 | UNIX_DIAG_VFS, | ||
28 | 30 | ||
29 | UNIX_DIAG_MAX, | 31 | UNIX_DIAG_MAX, |
30 | }; | 32 | }; |
31 | 33 | ||
34 | struct unix_diag_vfs { | ||
35 | __u32 udiag_vfs_ino; | ||
36 | __u32 udiag_vfs_dev; | ||
37 | }; | ||
38 | |||
32 | #endif | 39 | #endif |