e14cdb8090000aeeba5d20b48f90bc920c3810d5
[openwrt/openwrt.git] / package / kernel / modules / netfilter.mk
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 NFMENU:=Netfilter Extensions
10
11 define KernelPackage/ipt-conntrack
12 TITLE:=Modules for connection tracking
13 DESCRIPTION:=\
14 Netfilter (IPv4) kernel modules for connection tracking\\\
15 \\\
16 Includes: \\\
17 - ipt_conntrack \\\
18 - ipt_helper \\\
19 - ipt_connmark/CONNMARK
20 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
21 SUBMENU:=$(NFMENU)
22 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_CONNTRACK-m)))
23 endef
24 $(eval $(call KernelPackage,ipt-conntrack))
25
26 define KernelPackage/ipt-filter
27 TITLE:=Modules for packet content inspection
28 DESCRIPTION:=\
29 Netfilter (IPv4) kernel modules for packet content inspection \\\
30 \\\
31 Includes: \\\
32 - ipt_ipp2p \\\
33 - ipt_layer7
34 FILES:=$(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
35 SUBMENU:=$(NFMENU)
36 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_FILTER-m)))
37 endef
38 $(eval $(call KernelPackage,ipt-filter))
39
40 define KernelPackage/ipt-ipopt
41 TITLE:=Modules for matching/changing IP packet options
42 DESCRIPTION:=\
43 Netfilter (IPv4) modules for matching/changing IP packet options \\\
44 \\\
45 Includes: \\\
46 - ipt_dscp/DSCP \\\
47 - ipt_ecn/ECN \\\
48 - ipt_length \\\
49 - ipt_mac \\\
50 - ipt_tos/TOS \\\
51 - ipt_tcpmms \\\
52 - ipt_ttl/TTL \\\
53 - ipt_unclean
54 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
55 SUBMENU:=$(NFMENU)
56 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPOPT-m)))
57 endef
58 $(eval $(call KernelPackage,ipt-ipopt))
59
60 define KernelPackage/ipt-ipsec
61 TITLE:=Modules for matching IPSec packets
62 DESCRIPTION:=\
63 Netfilter (IPv4) modules for matching IPSec packets \\\
64 \\\
65 Includes: \\\
66 - ipt_ah \\\
67 - ipt_esp
68 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
69 SUBMENU:=$(NFMENU)
70 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSEC-m)))
71 endef
72 $(eval $(call KernelPackage,ipt-ipsec))
73
74 define KernelPackage/ipt-nat
75 TITLE:=Modules for extra NAT targets
76 DESCRIPTION:=\
77 Netfilter (IPv4) modules for extra NAT targets \\\
78 \\\
79 Includes: \\\
80 - ipt_REDIRECT \\\
81 - ipt_NETMAP
82 FILES:=$(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
83 SUBMENU:=$(NFMENU)
84 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT-m)))
85 endef
86 $(eval $(call KernelPackage,ipt-nat))
87
88 define KernelPackage/ipt-nathelper
89 TITLE:=Default Conntrack and NAT helpers
90 DEFAULT:=y
91 DESCRIPTION:=\
92 Default Netfilter (IPv4) Conntrack and NAT helpers \\\
93 \\\
94 Includes: \\\
95 - ip_conntrack_ftp \\\
96 - ip_nat_ftp \\\
97 - ip_conntrack_irc \\\
98 - ip_nat_irc \\\
99 - ip_conntrack_tftp
100 FILES:=$(foreach mod,$(IPT_NAT_DEFAULT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
101 SUBMENU:=$(NFMENU)
102 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_DEFAULT-m)))
103 endef
104 $(eval $(call KernelPackage,ipt-nathelper))
105
106 define KernelPackage/ipt-nathelper-extra
107 TITLE:=Extra Conntrack and NAT helpers
108 DESCRIPTION:=\
109 Extra Netfilter (IPv4) Conntrack and NAT helpers \\\
110 \\\
111 Includes: \\\
112 - ip_conntrack_amanda \\\
113 - ip_conntrack_proto_gre \\\
114 - ip_nat_proto_gre \\\
115 - ip_conntrack_pptp \\\
116 - ip_nat_pptp \\\
117 - ip_conntrack_sip \\\
118 - ip_nat_sip \\\
119 - ip_nat_snmp_basic
120 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
121 SUBMENU:=$(NFMENU)
122 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_EXTRA-m)))
123 endef
124 $(eval $(call KernelPackage,ipt-nathelper-extra))
125
126 define KernelPackage/ipt-imq
127 TITLE:=Intermediate Queueing support
128 DESCRIPTION:=\
129 Kernel support for Intermediate Queueing devices
130 KCONFIG:=$(CONFIG_IP_NF_TARGET_IMQ)
131 FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
132 SUBMENU:=$(NFMENU)
133 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)))))
134 endef
135 $(eval $(call KernelPackage,ipt-imq))
136
137
138 define KernelPackage/ipt-queue
139 TITLE:=Module for user-space packet queueing
140 DESCRIPTION:=\
141 Netfilter (IPv4) module for user-space packet queueing \\\
142 \\\
143 Includes: \\\
144 - ipt_QUEUE
145 FILES:=$(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
146 SUBMENU:=$(NFMENU)
147 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_QUEUE-m)))
148 endef
149 $(eval $(call KernelPackage,ipt-queue))
150
151 define KernelPackage/ipt-ulog
152 TITLE:=Module for user-space packet logging
153 DESCRIPTION:=\
154 Netfilter (IPv4) module for user-space packet logging \\\
155 \\\
156 Includes: \\\
157 - ipt_ULOG
158 FILES:=$(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
159 SUBMENU:=$(NFMENU)
160 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_ULOG-m)))
161 endef
162 $(eval $(call KernelPackage,ipt-ulog))
163
164 define KernelPackage/ipt-extra
165 TITLE:=Extra modules
166 DESCRIPTION:=\
167 Other Netfilter (IPv4) kernel modules\\\
168 Includes: \\\
169 - ipt_limit \\\
170 - ipt_owner \\\
171 - ipt_physdev \\\
172 - ipt_pkttype \\\
173 - ipt_recent
174 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
175 SUBMENU:=$(NFMENU)
176 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_EXTRA-m)))
177 endef
178 $(eval $(call KernelPackage,ipt-extra))
179
180 define KernelPackage/ip6tables
181 TITLE:=IPv6 modules
182 DESCRIPTION:=\
183 Netfilter IPv6 firewalling support
184 KCONFIG:=$(CONFIG_IP6_NF_IPTABLES)
185 FILES:=$(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
186 SUBMENU:=$(NFMENU)
187 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6table_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6t_*.$(LINUX_KMOD_SUFFIX)))))
188 endef
189 $(eval $(call KernelPackage,ip6tables))
190
191
192 define KernelPackage/arptables
193 TITLE:=ARP firewalling modules
194 DESCRIPTION:=\
195 Kernel modules for ARP firewalling
196 FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
197 KCONFIG:=$(CONFIG_IP_NF_ARPTABLES)
198 SUBMENU:=$(NFMENU)
199 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)))))
200 endef
201 $(eval $(call KernelPackage,arptables))
202
203
204 define KernelPackage/ebtables
205 TITLE:=Bridge firewalling modules
206 DESCRIPTION:=\
207 Kernel modules for Ethernet Bridge firewalling
208 FILES:=$(MODULES_DIR)/kernel/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
209 KCONFIG:=$(CONFIG_BRIDGE_NF_EBTABLES)
210 SUBMENU:=$(NFMENU)
211 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,ebtables.ko $(wildcard $(MODULES_DIR)/kernel/net/bridge/netfilter/ebtable_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/bridge/netfilter/ebt_*.$(LINUX_KMOD_SUFFIX)))))
212 endef
213 $(eval $(call KernelPackage,ebtables))