fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / include / net / netfilter / ipv4 / nf_conntrack_ipv4.h
1 /*
2  * IPv4 support for nf_conntrack.
3  *
4  * 23 Mar 2004: Yasuyuki Kozakai @ USAGI <yasuyuki.kozakai@toshiba.co.jp>
5  *      - move L3 protocol dependent part from include/linux/netfilter_ipv4/
6  *        ip_conntarck.h
7  */
8
9 #ifndef _NF_CONNTRACK_IPV4_H
10 #define _NF_CONNTRACK_IPV4_H
11
12 #ifdef CONFIG_NF_NAT_NEEDED
13 #include <net/netfilter/nf_nat.h>
14 #include <linux/netfilter/nf_conntrack_pptp.h>
15
16 /* per conntrack: nat application helper private data */
17 union nf_conntrack_nat_help {
18         /* insert nat helper private data here */
19         struct nf_nat_pptp nat_pptp_info;
20 };
21
22 struct nf_conn_nat {
23         struct nf_nat_info info;
24         union nf_conntrack_nat_help help;
25 #if defined(CONFIG_IP_NF_TARGET_MASQUERADE) || \
26         defined(CONFIG_IP_NF_TARGET_MASQUERADE_MODULE)
27         int masq_index;
28 #endif
29 };
30 #endif /* CONFIG_NF_NAT_NEEDED */
31
32 /* Returns new sk_buff, or NULL */
33 struct sk_buff *
34 nf_ct_ipv4_ct_gather_frags(struct sk_buff *skb);
35
36 extern struct nf_conntrack_l4proto nf_conntrack_l4proto_tcp4;
37 extern struct nf_conntrack_l4proto nf_conntrack_l4proto_udp4;
38 extern struct nf_conntrack_l4proto nf_conntrack_l4proto_icmp;
39
40 extern int nf_conntrack_ipv4_compat_init(void);
41 extern void nf_conntrack_ipv4_compat_fini(void);
42
43 #endif /*_NF_CONNTRACK_IPV4_H*/