blob: aff88ba9139121445bfca2169e3f39b71f354fa6 [file] [log] [blame]
Pablo Neira Ayuso7c622342012-06-19 02:10:57 +02001#ifndef _NET_NFNL_QUEUE_H_
2#define _NET_NFNL_QUEUE_H_
3
4#include <linux/netfilter/nf_conntrack_common.h>
5
6struct nf_conn;
7
Pablo Neira Ayuso674147e2012-06-19 05:25:46 +02008#ifdef CONFIG_NETFILTER_NETLINK_QUEUE_CT
Pablo Neira Ayuso7c622342012-06-19 02:10:57 +02009struct nf_conn *nfqnl_ct_get(struct sk_buff *entskb, size_t *size,
10 enum ip_conntrack_info *ctinfo);
11struct nf_conn *nfqnl_ct_parse(const struct sk_buff *skb,
12 const struct nlattr *attr,
13 enum ip_conntrack_info *ctinfo);
14int nfqnl_ct_put(struct sk_buff *skb, struct nf_conn *ct,
15 enum ip_conntrack_info ctinfo);
16void nfqnl_ct_seq_adjust(struct sk_buff *skb, struct nf_conn *ct,
17 enum ip_conntrack_info ctinfo, int diff);
Pablo Neira Ayusobd077932013-08-07 18:13:20 +020018int nfqnl_attach_expect(struct nf_conn *ct, const struct nlattr *attr,
19 u32 portid, u32 report);
Pablo Neira Ayuso7c622342012-06-19 02:10:57 +020020#else
21inline struct nf_conn *
22nfqnl_ct_get(struct sk_buff *entskb, size_t *size, enum ip_conntrack_info *ctinfo)
23{
24 return NULL;
25}
26
27inline struct nf_conn *nfqnl_ct_parse(const struct sk_buff *skb,
28 const struct nlattr *attr,
29 enum ip_conntrack_info *ctinfo)
30{
31 return NULL;
32}
33
34inline int
35nfqnl_ct_put(struct sk_buff *skb, struct nf_conn *ct, enum ip_conntrack_info ctinfo)
36{
37 return 0;
38}
39
40inline void nfqnl_ct_seq_adjust(struct sk_buff *skb, struct nf_conn *ct,
41 enum ip_conntrack_info ctinfo, int diff)
42{
43}
Pablo Neira Ayusobd077932013-08-07 18:13:20 +020044
45inline int nfqnl_attach_expect(struct nf_conn *ct, const struct nlattr *attr,
46 u32 portid, u32 report)
47{
48 return 0;
49}
Pablo Neira Ayuso7c622342012-06-19 02:10:57 +020050#endif /* NF_CONNTRACK */
51#endif