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
14 TITLE:=Modules for connection tracking
16 Netfilter (IPv4) kernel modules for connection tracking\\\
21 - ipt_connmark/CONNMARK
22 KCONFIG:=$(KCONFIG_IPT_CONNTRACK)
23 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
24 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_CONNTRACK-m)))
27 $(eval $(call KernelPackage,ipt-conntrack))
30 define KernelPackage/ipt-filter
32 TITLE:=Modules for packet content inspection
34 Netfilter (IPv4) kernel modules for packet content inspection \\\
39 KCONFIG:=$(KCONFIG_IPT_FILTER)
40 FILES:=$(foreach mod,$(IPT_FILTER-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
41 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_FILTER-m)))
44 $(eval $(call KernelPackage,ipt-filter))
47 define KernelPackage/ipt-ipopt
49 TITLE:=Modules for matching/changing IP packet options
51 Netfilter (IPv4) modules for matching/changing IP packet options \\\
63 KCONFIG:=$(KCONFIG_IPT_IPOPT)
64 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
65 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPOPT-m)))
68 $(eval $(call KernelPackage,ipt-ipopt))
71 define KernelPackage/ipt-ipsec
73 TITLE:=Modules for matching IPSec packets
75 Netfilter (IPv4) modules for matching IPSec packets \\\
80 KCONFIG:=$(KCONFIG_IPT_IPSEC)
81 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
82 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSEC-m)))
85 $(eval $(call KernelPackage,ipt-ipsec))
88 define KernelPackage/ipt-nat
90 TITLE:=Modules for extra NAT targets
92 Netfilter (IPv4) modules for extra NAT targets \\\
97 KCONFIG:=$(KCONFIG_IPT_NAT)
98 FILES:=$(foreach mod,$(IPT_NAT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
99 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT-m)))
102 $(eval $(call KernelPackage,ipt-nat))
105 define KernelPackage/ipt-nathelper
107 TITLE:=Default Conntrack and NAT helpers
109 Default Netfilter (IPv4) Conntrack and NAT helpers \\\
112 - ip_conntrack_ftp \\\
114 - ip_conntrack_irc \\\
117 KCONFIG:=$(KCONFIG_IPT_NAT_DEFAULT)
118 FILES:=$(foreach mod,$(IPT_NAT_DEFAULT-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
119 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_DEFAULT-m)))
122 $(eval $(call KernelPackage,ipt-nathelper))
125 define KernelPackage/ipt-nathelper-extra
127 TITLE:=Extra Conntrack and NAT helpers
129 Extra Netfilter (IPv4) Conntrack and NAT helpers \\\
132 - ip_conntrack_amanda \\\
133 - ip_conntrack_proto_gre \\\
134 - ip_nat_proto_gre \\\
135 - ip_conntrack_pptp \\\
137 - ip_conntrack_sip \\\
140 KCONFIG:=$(KCONFIG_IPT_NAT_EXTRA)
141 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
142 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_EXTRA-m)))
145 $(eval $(call KernelPackage,ipt-nathelper-extra))
148 define KernelPackage/ipt-imq
150 TITLE:=Intermediate Queueing support
152 Kernel support for Intermediate Queueing devices
153 KCONFIG:=CONFIG_IP_NF_TARGET_IMQ
154 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(LINUX_DIR)/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
155 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)))))
158 $(eval $(call KernelPackage,ipt-imq))
161 define KernelPackage/ipt-queue
163 TITLE:=Module for user-space packet queueing
165 Netfilter (IPv4) module for user-space packet queueing \\\
169 KCONFIG:=$(KCONFIG_IPT_QUEUE)
170 FILES:=$(foreach mod,$(IPT_QUEUE-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
171 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_QUEUE-m)))
174 $(eval $(call KernelPackage,ipt-queue))
177 define KernelPackage/ipt-ulog
179 TITLE:=Module for user-space packet logging
181 Netfilter (IPv4) module for user-space packet logging \\\
185 KCONFIG:=$(KCONFIG_IPT_ULOG)
186 FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
187 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_ULOG-m)))
190 $(eval $(call KernelPackage,ipt-ulog))
193 define KernelPackage/ipt-iprange
195 TITLE:=Module for matching ip ranges
197 Netfilter (IPv4) module for matching ip ranges \\\
201 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/ipt_iprange.$(LINUX_KMOD_SUFFIX)
202 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPRANGE-m)))
205 $(eval $(call KernelPackage,ipt-iprange))
208 define KernelPackage/ipt-ipset
212 Netfilter kernel modules for ipset
213 KCONFIG:=$(KCONFIG_IPT_IPSET)
214 FILES:=$(foreach mod,$(IPT_IPSET-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
215 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSET-m)))
218 $(eval $(call KernelPackage,ipt-ipset))
221 define KernelPackage/ipt-extra
225 Other Netfilter (IPv4) kernel modules\\\
234 KCONFIG:=$(KCONFIG_IPT_EXTRA)
235 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(LINUX_DIR)/net/$(mod).$(LINUX_KMOD_SUFFIX))
236 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_EXTRA-m)))
239 $(eval $(call KernelPackage,ipt-extra))
242 define KernelPackage/ip6tables
246 Netfilter IPv6 firewalling support
247 KCONFIG:=CONFIG_IP6_NF_IPTABLES
248 FILES:=$(LINUX_DIR)/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
249 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)))))
252 $(eval $(call KernelPackage,ip6tables))
255 define KernelPackage/arptables
257 TITLE:=ARP firewalling modules
259 Kernel modules for ARP firewalling
260 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
261 KCONFIG:=CONFIG_IP_NF_ARPTABLES
262 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(LINUX_DIR)/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)))))
265 $(eval $(call KernelPackage,arptables))
268 define KernelPackage/ebtables
270 TITLE:=Bridge firewalling modules
272 Kernel modules for Ethernet Bridge firewalling
274 FILES:=$(LINUX_DIR)/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
275 KCONFIG:=CONFIG_BRIDGE_NF_EBTABLES
276 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)))))
279 $(eval $(call KernelPackage,ebtables))