d1653b946eb08ac6c31ea9922137688f8ad61d7c
[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_CLASSIFY \\\
47 - ipt_dscp/DSCP \\\
48 - ipt_ecn/ECN \\\
49 - ipt_length \\\
50 - ipt_mac \\\
51 - ipt_tos/TOS \\\
52 - ipt_tcpmms \\\
53 - ipt_ttl/TTL \\\
54 - ipt_unclean
55 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
56 SUBMENU:=$(NFMENU)
57 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPOPT-m)))
58 endef
59 $(eval $(call KernelPackage,ipt-ipopt))
60
61 define KernelPackage/ipt-ipsec
62 TITLE:=Modules for matching IPSec packets
63 DESCRIPTION:=\
64 Netfilter (IPv4) modules for matching IPSec packets \\\
65 \\\
66 Includes: \\\
67 - ipt_ah \\\
68 - ipt_esp
69 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
70 SUBMENU:=$(NFMENU)
71 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSEC-m)))
72 endef
73 $(eval $(call KernelPackage,ipt-ipsec))
74
75 define KernelPackage/ipt-nat
76 TITLE:=Modules for extra NAT targets
77 DESCRIPTION:=\
78 Netfilter (IPv4) modules for extra NAT targets \\\
79 \\\
80 Includes: \\\
81 - ipt_REDIRECT \\\
82 - ipt_NETMAP
83 FILES:=$(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
84 SUBMENU:=$(NFMENU)
85 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT-m)))
86 endef
87 $(eval $(call KernelPackage,ipt-nat))
88
89 define KernelPackage/ipt-nathelper
90 TITLE:=Default Conntrack and NAT helpers
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 - iptable_raw \\\
175 - xt_NOTRACK
176 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
177 SUBMENU:=$(NFMENU)
178 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_EXTRA-m)))
179 endef
180 $(eval $(call KernelPackage,ipt-extra))
181
182 define KernelPackage/ip6tables
183 TITLE:=IPv6 modules
184 DESCRIPTION:=\
185 Netfilter IPv6 firewalling support
186 KCONFIG:=$(CONFIG_IP6_NF_IPTABLES)
187 FILES:=$(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
188 SUBMENU:=$(NFMENU)
189 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)))))
190 endef
191 $(eval $(call KernelPackage,ip6tables))
192
193
194 define KernelPackage/arptables
195 TITLE:=ARP firewalling modules
196 DESCRIPTION:=\
197 Kernel modules for ARP firewalling
198 FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
199 KCONFIG:=$(CONFIG_IP_NF_ARPTABLES)
200 SUBMENU:=$(NFMENU)
201 AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)))))
202 endef
203 $(eval $(call KernelPackage,arptables))
204
205
206 define KernelPackage/ebtables
207 TITLE:=Bridge firewalling modules
208 DESCRIPTION:=\
209 Kernel modules for Ethernet Bridge firewalling
210 FILES:=$(MODULES_DIR)/kernel/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
211 KCONFIG:=$(CONFIG_BRIDGE_NF_EBTABLES)
212 SUBMENU:=$(NFMENU)
213 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)))))
214 endef
215 $(eval $(call KernelPackage,ebtables))