Merge remote-tracking branch 'lsk/linux-linaro-lsk-v4.4-android' into linux-linaro...
[firefly-linux-kernel-4.4.55.git] / include / uapi / linux / netfilter / xt_socket.h
1 #ifndef _XT_SOCKET_H
2 #define _XT_SOCKET_H
3
4 #include <linux/types.h>
5
6 enum {
7         XT_SOCKET_TRANSPARENT = 1 << 0,
8         XT_SOCKET_NOWILDCARD = 1 << 1,
9         XT_SOCKET_RESTORESKMARK = 1 << 2,
10 };
11
12 struct xt_socket_mtinfo1 {
13         __u8 flags;
14 };
15 #define XT_SOCKET_FLAGS_V1 XT_SOCKET_TRANSPARENT
16
17 struct xt_socket_mtinfo2 {
18         __u8 flags;
19 };
20 #define XT_SOCKET_FLAGS_V2 (XT_SOCKET_TRANSPARENT | XT_SOCKET_NOWILDCARD)
21
22 struct xt_socket_mtinfo3 {
23         __u8 flags;
24 };
25 #define XT_SOCKET_FLAGS_V3 (XT_SOCKET_TRANSPARENT \
26                            | XT_SOCKET_NOWILDCARD \
27                            | XT_SOCKET_RESTORESKMARK)
28
29 struct sock *xt_socket_lookup_slow_v4(struct net *net,
30                                       const struct sk_buff *skb,
31                                       const struct net_device *indev);
32 struct sock *xt_socket_lookup_slow_v6(struct net *net,
33                                       const struct sk_buff *skb,
34                                       const struct net_device *indev);
35
36 #endif /* _XT_SOCKET_H */