reorganize nat helper packages, move ftp and irc nat to a package that is enabled...
[openwrt-10.03/.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 endef
23 $(eval $(call KernelPackage,ipt-conntrack))
24
25 define KernelPackage/ipt-filter
26   TITLE:=Modules for packet content inspection
27   DESCRIPTION:=\
28         Netfilter (IPv4) kernel modules for packet content inspection \\\
29         \\\
30         Includes: \\\
31         - ipt_ipp2p \\\
32         - ipt_layer7
33   FILES:=$(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
34   SUBMENU:=$(NFMENU)
35 endef
36 $(eval $(call KernelPackage,ipt-filter))
37
38 define KernelPackage/ipt-ipopt
39   TITLE:=Modules for matching/changing IP packet options
40   DESCRIPTION:=\
41         Netfilter (IPv4) modules for matching/changing IP packet options \\\
42         \\\
43         Includes: \\\
44         - ipt_dscp/DSCP \\\
45         - ipt_ecn/ECN \\\
46         - ipt_length \\\
47         - ipt_mac \\\
48         - ipt_tos/TOS \\\
49         - ipt_tcpmms \\\
50         - ipt_ttl/TTL \\\
51         - ipt_unclean
52   FILES:=$(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
53   SUBMENU:=$(NFMENU)
54 endef
55 $(eval $(call KernelPackage,ipt-ipopt))
56
57 define KernelPackage/ipt-ipsec
58   TITLE:=Modules for matching IPSec packets
59   DESCRIPTION:=\
60         Netfilter (IPv4) modules for matching IPSec packets \\\
61         \\\
62         Includes: \\\
63         - ipt_ah \\\
64         - ipt_esp
65   FILES:=$(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
66   SUBMENU:=$(NFMENU)
67 endef
68 $(eval $(call KernelPackage,ipt-ipsec))
69
70 define KernelPackage/ipt-nat
71   TITLE:=Modules for extra NAT targets
72   DESCRIPTION:=\
73         Netfilter (IPv4) modules for extra NAT targets \\\
74         \\\
75         Includes: \\\
76         - ipt_REDIRECT \\\
77         - ipt_NETMAP
78   FILES:=$(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
79   SUBMENU:=$(NFMENU)
80 endef
81 $(eval $(call KernelPackage,ipt-nat))
82
83 define KernelPackage/ipt-nathelper
84   TITLE:=Default Conntrack and NAT helpers
85   DEFAULT:=y
86   DESCRIPTION:=\
87         Default Netfilter (IPv4) Conntrack and NAT helpers \\\
88         \\\
89         Includes: \\\
90         - ip_conntrack_ftp \\\
91         - ip_nat_ftp \\\
92         - ip_conntrack_irc \\\
93         - ip_nat_irc \\\
94         - ip_conntrack_tftp
95   FILES:=$(foreach mod,$(IPT_NAT_DEFAULT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
96   SUBMENU:=$(NFMENU)
97 endef
98 $(eval $(call KernelPackage,ipt-nathelper))
99
100 define KernelPackage/ipt-nathelper-extra
101   TITLE:=Extra Conntrack and NAT helpers
102   DESCRIPTION:=\
103         Extra Netfilter (IPv4) Conntrack and NAT helpers \\\
104         \\\
105         Includes: \\\
106         - ip_conntrack_amanda \\\
107         - ip_conntrack_proto_gre \\\
108         - ip_nat_proto_gre \\\
109         - ip_conntrack_pptp \\\
110         - ip_nat_pptp \\\
111         - ip_conntrack_sip \\\
112         - ip_nat_sip \\\
113         - ip_nat_snmp_basic
114   FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
115   SUBMENU:=$(NFMENU)
116 endef
117 $(eval $(call KernelPackage,ipt-nathelper))
118
119 define KernelPackage/ipt-imq
120   TITLE:=Intermediate Queueing support
121   DESCRIPTION:=\
122         Kernel support for Intermediate Queueing devices
123   KCONFIG:=$(CONFIG_IP_NF_TARGET_IMQ)
124   FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
125   SUBMENU:=$(NFMENU)
126 endef
127 $(eval $(call KernelPackage,ipt-imq))
128
129
130 define KernelPackage/ipt-queue
131   TITLE:=Module for user-space packet queueing
132   DESCRIPTION:=\
133         Netfilter (IPv4) module for user-space packet queueing \\\
134         \\\
135         Includes: \\\
136         - ipt_QUEUE
137   FILES:=$(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
138   SUBMENU:=$(NFMENU)
139 endef
140 $(eval $(call KernelPackage,ipt-queue))
141
142 define KernelPackage/ipt-ulog
143   TITLE:=Module for user-space packet logging
144   DESCRIPTION:=\
145         Netfilter (IPv4) module for user-space packet logging \\\
146         \\\
147         Includes: \\\
148         - ipt_ULOG
149   FILES:=$(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
150   SUBMENU:=$(NFMENU)
151 endef
152 $(eval $(call KernelPackage,ipt-ulog))
153
154 define KernelPackage/ipt-extra
155   TITLE:=Extra modules
156   DESCRIPTION:=\
157         Other Netfilter (IPv4) kernel modules\\\
158         Includes: \\\
159         - ipt_limit \\\
160         - ipt_owner \\\
161         - ipt_physdev \\\
162         - ipt_pkttype \\\
163         - ipt_recent
164   FILES:=$(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
165   SUBMENU:=$(NFMENU)
166 endef
167 $(eval $(call KernelPackage,ipt-extra))
168
169 define KernelPackage/ip6tables
170   TITLE:=IPv6 modules
171   DESCRIPTION:=\
172         Netfilter IPv6 firewalling support
173   KCONFIG:=$(CONFIG_IP6_NF_IPTABLES)
174   FILES:=$(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
175   SUBMENU:=$(NFMENU)
176 endef
177 $(eval $(call KernelPackage,ip6tables))
178
179
180 define KernelPackage/arptables
181   TITLE:=ARP firewalling modules
182   DESCRIPTION:=\
183         Kernel modules for ARP firewalling
184   FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
185   KCONFIG:=$(CONFIG_IP_NF_ARPTABLES)
186   SUBMENU:=$(NFMENU)
187 endef
188 $(eval $(call KernelPackage,arptables))
189
190
191 define KernelPackage/ebtables
192   TITLE:=Bridge firewalling modules
193   DESCRIPTION:=\
194         Kernel modules for Ethernet Bridge firewalling
195   FILES:=$(MODULES_DIR)/kernel/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
196   KCONFIG:=$(CONFIG_BRIDGE_NF_EBTABLES)
197   SUBMENU:=$(NFMENU)
198 endef
199 $(eval $(call KernelPackage,ebtables))
200
201