![Tomasz Bursztyka](/assets/img/avatar_default.png)
This patch generalizes the NAT expression to support both IPv4 and IPv6 using the existing IPv4/IPv6 NAT infrastructure. This also adds the NAT chain type for IPv6. This patch collapses the following patches that were posted to the netfilter-devel mailing list, from Tomasz: * nf_tables: Change NFTA_NAT_ attributes to better semantic significance * nf_tables: Split IPv4 NAT into NAT expression and IPv4 NAT chain * nf_tables: Add support for IPv6 NAT expression * nf_tables: Add support for IPv6 NAT chain * nf_tables: Fix up build issue on IPv6 NAT support And, from Pablo Neira Ayuso: * fix missing dependencies in nft_chain_nat Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
46 lines
1.6 KiB
Makefile
46 lines
1.6 KiB
Makefile
#
|
|
# Makefile for the netfilter modules on top of IPv6.
|
|
#
|
|
|
|
# Link order matters here.
|
|
obj-$(CONFIG_IP6_NF_IPTABLES) += ip6_tables.o
|
|
obj-$(CONFIG_IP6_NF_FILTER) += ip6table_filter.o
|
|
obj-$(CONFIG_IP6_NF_MANGLE) += ip6table_mangle.o
|
|
obj-$(CONFIG_IP6_NF_RAW) += ip6table_raw.o
|
|
obj-$(CONFIG_IP6_NF_SECURITY) += ip6table_security.o
|
|
obj-$(CONFIG_NF_NAT_IPV6) += ip6table_nat.o
|
|
|
|
# objects for l3 independent conntrack
|
|
nf_conntrack_ipv6-y := nf_conntrack_l3proto_ipv6.o nf_conntrack_proto_icmpv6.o
|
|
|
|
# l3 independent conntrack
|
|
obj-$(CONFIG_NF_CONNTRACK_IPV6) += nf_conntrack_ipv6.o
|
|
|
|
nf_nat_ipv6-y := nf_nat_l3proto_ipv6.o nf_nat_proto_icmpv6.o
|
|
obj-$(CONFIG_NF_NAT_IPV6) += nf_nat_ipv6.o
|
|
|
|
# defrag
|
|
nf_defrag_ipv6-y := nf_defrag_ipv6_hooks.o nf_conntrack_reasm.o
|
|
obj-$(CONFIG_NF_DEFRAG_IPV6) += nf_defrag_ipv6.o
|
|
|
|
# nf_tables
|
|
obj-$(CONFIG_NF_TABLES_IPV6) += nf_tables_ipv6.o
|
|
obj-$(CONFIG_NFT_CHAIN_ROUTE_IPV6) += nft_chain_route_ipv6.o
|
|
obj-$(CONFIG_NFT_CHAIN_NAT_IPV6) += nft_chain_nat_ipv6.o
|
|
|
|
# matches
|
|
obj-$(CONFIG_IP6_NF_MATCH_AH) += ip6t_ah.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_EUI64) += ip6t_eui64.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_FRAG) += ip6t_frag.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_IPV6HEADER) += ip6t_ipv6header.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_MH) += ip6t_mh.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_OPTS) += ip6t_hbh.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_RPFILTER) += ip6t_rpfilter.o
|
|
obj-$(CONFIG_IP6_NF_MATCH_RT) += ip6t_rt.o
|
|
|
|
# targets
|
|
obj-$(CONFIG_IP6_NF_TARGET_MASQUERADE) += ip6t_MASQUERADE.o
|
|
obj-$(CONFIG_IP6_NF_TARGET_NPT) += ip6t_NPT.o
|
|
obj-$(CONFIG_IP6_NF_TARGET_REJECT) += ip6t_REJECT.o
|
|
obj-$(CONFIG_IP6_NF_TARGET_SYNPROXY) += ip6t_SYNPROXY.o
|