]> git.karo-electronics.de Git - karo-tx-linux.git/blob - include/net/netfilter/nf_socket.h
Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[karo-tx-linux.git] / include / net / netfilter / nf_socket.h
1 #ifndef _NF_SOCK_H_
2 #define _NF_SOCK_H_
3
4 struct net_device;
5 struct sk_buff;
6 struct sock;
7 struct net;
8
9 static inline bool nf_sk_is_transparent(struct sock *sk)
10 {
11         switch (sk->sk_state) {
12         case TCP_TIME_WAIT:
13                 return inet_twsk(sk)->tw_transparent;
14         case TCP_NEW_SYN_RECV:
15                 return inet_rsk(inet_reqsk(sk))->no_srccheck;
16         default:
17                 return inet_sk(sk)->transparent;
18         }
19 }
20
21 struct sock *nf_sk_lookup_slow_v4(struct net *net, const struct sk_buff *skb,
22                                   const struct net_device *indev);
23
24 struct sock *nf_sk_lookup_slow_v6(struct net *net, const struct sk_buff *skb,
25                                   const struct net_device *indev);
26
27 #endif