Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nfnetlink_queue.h
Go to the documentation of this file.
1 #ifndef _NET_NFNL_QUEUE_H_
2 #define _NET_NFNL_QUEUE_H_
3 
4 #include <linux/netfilter/nf_conntrack_common.h>
5 
6 struct nf_conn;
7 
8 #ifdef CONFIG_NETFILTER_NETLINK_QUEUE_CT
9 struct nf_conn *nfqnl_ct_get(struct sk_buff *entskb, size_t *size,
10  enum ip_conntrack_info *ctinfo);
11 struct nf_conn *nfqnl_ct_parse(const struct sk_buff *skb,
12  const struct nlattr *attr,
13  enum ip_conntrack_info *ctinfo);
14 int nfqnl_ct_put(struct sk_buff *skb, struct nf_conn *ct,
15  enum ip_conntrack_info ctinfo);
16 void nfqnl_ct_seq_adjust(struct sk_buff *skb, struct nf_conn *ct,
17  enum ip_conntrack_info ctinfo, int diff);
18 #else
19 inline struct nf_conn *
20 nfqnl_ct_get(struct sk_buff *entskb, size_t *size, enum ip_conntrack_info *ctinfo)
21 {
22  return NULL;
23 }
24 
25 inline struct nf_conn *nfqnl_ct_parse(const struct sk_buff *skb,
26  const struct nlattr *attr,
27  enum ip_conntrack_info *ctinfo)
28 {
29  return NULL;
30 }
31 
32 inline int
33 nfqnl_ct_put(struct sk_buff *skb, struct nf_conn *ct, enum ip_conntrack_info ctinfo)
34 {
35  return 0;
36 }
37 
38 inline void nfqnl_ct_seq_adjust(struct sk_buff *skb, struct nf_conn *ct,
39  enum ip_conntrack_info ctinfo, int diff)
40 {
41 }
42 #endif /* NF_CONNTRACK */
43 #endif