]>
Commit | Line | Data |
---|---|---|
d366477a PE |
1 | #ifndef __SOCK_DIAG_H__ |
2 | #define __SOCK_DIAG_H__ | |
e7c466e5 | 3 | |
e6fe2371 | 4 | #include <linux/types.h> |
e7c466e5 | 5 | |
e6fe2371 | 6 | #define SOCK_DIAG_BY_FAMILY 20 |
d366477a PE |
7 | |
8 | struct sock_diag_req { | |
9 | __u8 sdiag_family; | |
10 | __u8 sdiag_protocol; | |
11 | }; | |
12 | ||
5d2e5f27 PE |
13 | enum { |
14 | SK_MEMINFO_RMEM_ALLOC, | |
15 | SK_MEMINFO_RCVBUF, | |
16 | SK_MEMINFO_WMEM_ALLOC, | |
17 | SK_MEMINFO_SNDBUF, | |
18 | SK_MEMINFO_FWD_ALLOC, | |
19 | SK_MEMINFO_WMEM_QUEUED, | |
20 | SK_MEMINFO_OPTMEM, | |
d594e987 | 21 | SK_MEMINFO_BACKLOG, |
5d2e5f27 PE |
22 | |
23 | SK_MEMINFO_VARS, | |
24 | }; | |
25 | ||
e6fe2371 PE |
26 | #ifdef __KERNEL__ |
27 | struct sk_buff; | |
28 | struct nlmsghdr; | |
5d2e5f27 | 29 | struct sock; |
e6fe2371 | 30 | |
d366477a PE |
31 | struct sock_diag_handler { |
32 | __u8 family; | |
33 | int (*dump)(struct sk_buff *skb, struct nlmsghdr *nlh); | |
34 | }; | |
35 | ||
8dcf01fc SW |
36 | int sock_diag_register(const struct sock_diag_handler *h); |
37 | void sock_diag_unregister(const struct sock_diag_handler *h); | |
d366477a PE |
38 | |
39 | void sock_diag_register_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh)); | |
40 | void sock_diag_unregister_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh)); | |
41 | ||
f65c1b53 PE |
42 | int sock_diag_check_cookie(void *sk, __u32 *cookie); |
43 | void sock_diag_save_cookie(void *sk, __u32 *cookie); | |
44 | ||
5d2e5f27 PE |
45 | int sock_diag_put_meminfo(struct sock *sk, struct sk_buff *skb, int attr); |
46 | ||
e6fe2371 | 47 | #endif /* KERNEL */ |
d366477a | 48 | #endif |