Commit | Line | Data |
---|---|---|
5b1158e9 JK |
1 | #ifndef _NF_NAT_CORE_H |
2 | #define _NF_NAT_CORE_H | |
3 | #include <linux/list.h> | |
4 | #include <net/netfilter/nf_conntrack.h> | |
4ba88779 | 5 | #include <net/netfilter/nf_nat.h> |
5b1158e9 JK |
6 | |
7 | /* This header used to share core functionality between the standalone | |
8 | NAT module, and the compatibility layer's use of NAT for masquerading. */ | |
9 | ||
10 | extern unsigned int nf_nat_packet(struct nf_conn *ct, | |
11 | enum ip_conntrack_info ctinfo, | |
12 | unsigned int hooknum, | |
3db05fea | 13 | struct sk_buff *skb); |
5b1158e9 | 14 | |
c7232c99 | 15 | extern int nf_xfrm_me_harder(struct sk_buff *skb, unsigned int family); |
5b1158e9 JK |
16 | |
17 | static inline int nf_nat_initialized(struct nf_conn *ct, | |
18 | enum nf_nat_manip_type manip) | |
19 | { | |
cbc9f2f4 | 20 | if (manip == NF_NAT_MANIP_SRC) |
a7c2f4d7 | 21 | return ct->status & IPS_SRC_NAT_DONE; |
5b1158e9 | 22 | else |
a7c2f4d7 | 23 | return ct->status & IPS_DST_NAT_DONE; |
5b1158e9 | 24 | } |
e6a7d3c0 PNA |
25 | |
26 | struct nlattr; | |
27 | ||
28 | extern int | |
29 | (*nfnetlink_parse_nat_setup_hook)(struct nf_conn *ct, | |
30 | enum nf_nat_manip_type manip, | |
39938324 | 31 | const struct nlattr *attr); |
e6a7d3c0 | 32 | |
5b1158e9 | 33 | #endif /* _NF_NAT_CORE_H */ |