Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#ifndef __SOCK_DIAG_H__
2#define __SOCK_DIAG_H__
3
4#include <linux/user_namespace.h>
5#include <uapi/linux/sock_diag.h>
6
7struct sk_buff;
8struct nlmsghdr;
9struct sock;
10
11struct sock_diag_handler {
12 __u8 family;
13 int (*dump)(struct sk_buff *skb, struct nlmsghdr *nlh);
14};
15
16int sock_diag_register(const struct sock_diag_handler *h);
17void sock_diag_unregister(const struct sock_diag_handler *h);
18
19void sock_diag_register_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh));
20void sock_diag_unregister_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh));
21
22int sock_diag_check_cookie(void *sk, __u32 *cookie);
23void sock_diag_save_cookie(void *sk, __u32 *cookie);
24
25int sock_diag_put_meminfo(struct sock *sk, struct sk_buff *skb, int attr);
26int sock_diag_put_filterinfo(struct user_namespace *user_ns, struct sock *sk,
27 struct sk_buff *skb, int attrtype);
28
29#endif