2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 NFMENU:=Netfilter Extensions
10 include $(INCLUDE_DIR)/netfilter.mk
12 define KernelPackage/ipt-conntrack
13 TITLE:=Modules for connection tracking
15 Netfilter (IPv4) kernel modules for connection tracking\\\
20 - ipt_connmark/CONNMARK
21 KCONFIG:=$(KCONFIG_IPT_CONNTRACK)
22 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
24 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_CONNTRACK-m)))
26 $(eval $(call KernelPackage,ipt-conntrack))
28 define KernelPackage/ipt-filter
29 TITLE:=Modules for packet content inspection
31 Netfilter (IPv4) kernel modules for packet content inspection \\\
36 KCONFIG:=$(KCONFIG_IPT_FILTER)
37 FILES:=$(foreach mod,$(IPT_FILTER-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
39 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_FILTER-m)))
41 $(eval $(call KernelPackage,ipt-filter))
43 define KernelPackage/ipt-ipopt
44 TITLE:=Modules for matching/changing IP packet options
46 Netfilter (IPv4) modules for matching/changing IP packet options \\\
58 KCONFIG:=$(KCONFIG_IPT_IPOPT)
59 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
61 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPOPT-m)))
63 $(eval $(call KernelPackage,ipt-ipopt))
65 define KernelPackage/ipt-ipsec
66 TITLE:=Modules for matching IPSec packets
68 Netfilter (IPv4) modules for matching IPSec packets \\\
73 KCONFIG:=$(KCONFIG_IPT_IPSEC)
74 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
76 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSEC-m)))
78 $(eval $(call KernelPackage,ipt-ipsec))
80 define KernelPackage/ipt-nat
81 TITLE:=Modules for extra NAT targets
83 Netfilter (IPv4) modules for extra NAT targets \\\
88 KCONFIG:=$(KCONFIG_IPT_NAT)
89 FILES:=$(foreach mod,$(IPT_NAT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
91 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT-m)))
93 $(eval $(call KernelPackage,ipt-nat))
95 define KernelPackage/ipt-nathelper
96 TITLE:=Default Conntrack and NAT helpers
98 Default Netfilter (IPv4) Conntrack and NAT helpers \\\
101 - ip_conntrack_ftp \\\
103 - ip_conntrack_irc \\\
106 KCONFIG:=$(KCONFIG_IPT_NAT_DEFAULT)
107 FILES:=$(foreach mod,$(IPT_NAT_DEFAULT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
109 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_DEFAULT-m)))
111 $(eval $(call KernelPackage,ipt-nathelper))
113 define KernelPackage/ipt-nathelper-extra
114 TITLE:=Extra Conntrack and NAT helpers
116 Extra Netfilter (IPv4) Conntrack and NAT helpers \\\
119 - ip_conntrack_amanda \\\
120 - ip_conntrack_proto_gre \\\
121 - ip_nat_proto_gre \\\
122 - ip_conntrack_pptp \\\
124 - ip_conntrack_sip \\\
127 KCONFIG:=$(KCONFIG_IPT_NAT_EXTRA)
128 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
130 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_EXTRA-m)))
132 $(eval $(call KernelPackage,ipt-nathelper-extra))
134 define KernelPackage/ipt-imq
135 TITLE:=Intermediate Queueing support
137 Kernel support for Intermediate Queueing devices
138 KCONFIG:=CONFIG_IP_NF_TARGET_IMQ
139 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(LINUX_DIR)/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
141 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(LINUX_DIR)/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(LINUX_DIR)/drivers/net/imq.$(LINUX_KMOD_SUFFIX)))))
143 $(eval $(call KernelPackage,ipt-imq))
146 define KernelPackage/ipt-queue
147 TITLE:=Module for user-space packet queueing
149 Netfilter (IPv4) module for user-space packet queueing \\\
153 KCONFIG:=$(KCONFIG_IPT_QUEUE)
154 FILES:=$(foreach mod,$(IPT_QUEUE-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
156 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_QUEUE-m)))
158 $(eval $(call KernelPackage,ipt-queue))
160 define KernelPackage/ipt-ulog
161 TITLE:=Module for user-space packet logging
163 Netfilter (IPv4) module for user-space packet logging \\\
167 KCONFIG:=$(KCONFIG_IPT_ULOG)
168 FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
170 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_ULOG-m)))
172 $(eval $(call KernelPackage,ipt-ulog))
174 define KernelPackage/ipt-iprange
175 TITLE:=Module for matching ip ranges
177 Netfilter (IPv4) module for matching ip ranges \\\
181 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/ipt_iprange.$(LINUX_KMOD_SUFFIX)
183 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPRANGE-m)))
185 $(eval $(call KernelPackage,ipt-iprange))
187 define KernelPackage/ipt-ipset
190 Netfilter kernel modules for ipset
191 KCONFIG:=$(KCONFIG_IPT_IPSET)
192 FILES:=$(foreach mod,$(IPT_IPSET-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
194 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSET-m)))
196 $(eval $(call KernelPackage,ipt-ipset))
199 define KernelPackage/ipt-extra
202 Other Netfilter (IPv4) kernel modules\\\
211 KCONFIG:=$(KCONFIG_IPT_EXTRA)
212 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
214 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_EXTRA-m)))
216 $(eval $(call KernelPackage,ipt-extra))
218 define KernelPackage/ip6tables
221 Netfilter IPv6 firewalling support
222 KCONFIG:=CONFIG_IP6_NF_IPTABLES
223 FILES:=$(LINUX_DIR)/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
225 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(LINUX_DIR)/net/ipv6/netfilter/ip6_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(LINUX_DIR)/net/ipv6/netfilter/ip6table_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(LINUX_DIR)/net/ipv6/netfilter/ip6t_*.$(LINUX_KMOD_SUFFIX)))))
227 $(eval $(call KernelPackage,ip6tables))
230 define KernelPackage/arptables
231 TITLE:=ARP firewalling modules
233 Kernel modules for ARP firewalling
234 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
235 KCONFIG:=CONFIG_IP_NF_ARPTABLES
237 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(LINUX_DIR)/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)))))
239 $(eval $(call KernelPackage,arptables))
242 define KernelPackage/ebtables
243 TITLE:=Bridge firewalling modules
245 Kernel modules for Ethernet Bridge firewalling
247 FILES:=$(LINUX_DIR)/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
248 KCONFIG:=CONFIG_BRIDGE_NF_EBTABLES
250 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,ebtables.ko $(wildcard $(LINUX_DIR)/net/bridge/netfilter/ebtable_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(LINUX_DIR)/net/bridge/netfilter/ebt_*.$(LINUX_KMOD_SUFFIX)))))
252 $(eval $(call KernelPackage,ebtables))