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.
7 # $Id: netfilter.mk 2411 2005-11-11 03:41:43Z nico $
9 ifneq ($(__inc_netfilter
),1)
26 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_CONNTRACK
,CONFIG_NF_CONNTRACK
, $(P_XT
)nf_conntrack
),))
27 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_CONNTRACK
,CONFIG_NF_CONNTRACK_IPV4
, $(P_V4
)nf_conntrack_ipv4
),))
29 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNBYTES
, $(P_V4
)ipt_connbytes
))
30 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNBYTES
, $(P_XT
)xt_connbytes
))
31 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNMARK
, $(P_V4
)ipt_connmark
))
32 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNMARK
, $(P_XT
)xt_connmark
))
33 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNTRACK
, $(P_V4
)ipt_conntrack
))
34 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNTRACK
, $(P_XT
)xt_conntrack
))
35 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_HELPER
, $(P_V4
)ipt_helper
))
36 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_HELPER
, $(P_XT
)xt_helper
))
37 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_LIMIT
, $(P_V4
)ipt_limit
))
38 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_LIMIT
, $(P_XT
)xt_limit
))
39 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_RECENT
, $(P_V4
)ipt_recent
))
40 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_STATE
, $(P_V4
)ipt_state
))
41 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_STATE
, $(P_XT
)xt_state
))
43 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_TARGET_CONNMARK
, $(P_V4
)ipt_CONNMARK
))
44 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_CONNMARK
, $(P_XT
)xt_CONNMARK
))
45 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_NOTRACK
, $(P_XT
)xt_NOTRACK
))
51 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_RAW
, $(P_V4
)iptable_raw
),))
53 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_CONDITION
, $(P_V4
)ipt_condition
))
54 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_OWNER
, $(P_V4
)ipt_owner
))
55 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PHYSDEV
, $(P_XT
)xt_physdev
))
56 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_PKTTYPE
, $(P_V4
)ipt_pkttype
))
57 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PKTTYPE
, $(P_XT
)xt_pkttype
))
58 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PORTSCAN
, $(P_XT
)xt_portscan
))
59 #$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_MATCH_QUOTA, $(P_V4)ipt_quota))
60 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_QUOTA
, $(P_XT
)xt_quota
))
62 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_TARGET_CHAOS
, $(P_XT
)xt_CHAOS
))
63 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_TARGET_DELUDE
, $(P_XT
)xt_DELUDE
))
64 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_TARGET_LOG
, $(P_V4
)ipt_LOG
))
65 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_TARGET_REJECT
, $(P_V4
)ipt_REJECT
))
66 #$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_TARGET_ROUTE, $(P_V4)ipt_ROUTE))
71 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_IPP2P
, $(P_V4
)ipt_ipp2p
))
72 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_LAYER7
, $(P_V4
)ipt_layer7
))
73 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_STRING
, $(P_V4
)ipt_string
))
74 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_STRING
, $(P_XT
)xt_string
))
79 $(eval
$(call nf_add
,IPT_IMQ
,CONFIG_IP_NF_TARGET_IMQ
, $(P_V4
)ipt_IMQ
))
84 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_DSCP
, $(P_V4
)ipt_dscp
))
85 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, $(P_XT
)xt_dscp
))
86 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, $(P_XT
)xt_DSCP
))
87 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_ECN
, $(P_V4
)ipt_ecn
))
88 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_LENGTH
, $(P_V4
)ipt_length
))
89 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_LENGTH
, $(P_XT
)xt_length
))
90 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MAC
, $(P_V4
)ipt_mac
))
91 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MAC
, $(P_XT
)xt_mac
))
92 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MARK
, $(P_V4
)ipt_mark
))
93 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MARK
, $(P_XT
)xt_mark
))
94 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MULTIPORT
, $(P_V4
)ipt_multiport
))
95 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MULTIPORT
, $(P_XT
)xt_multiport
))
96 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_STATISTIC
, $(P_XT
)xt_statistic
))
97 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TCPMSS
, $(P_V4
)ipt_tcpmss
))
98 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_TCPMSS
, $(P_XT
)xt_tcpmss
))
99 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TIME
, $(P_V4
)ipt_time
))
100 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TOS
, $(P_V4
)ipt_tos
))
101 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TTL
, $(P_V4
)ipt_ttl
))
102 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_UNCLEAN
, $(P_V4
)ipt_unclean
))
104 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_CLASSIFY
, $(P_V4
)ipt_CLASSIFY
))
105 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_CLASSIFY
, $(P_XT
)xt_CLASSIFY
))
106 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_DSCP
, $(P_V4
)ipt_DSCP
))
107 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_ECN
, $(P_V4
)ipt_ECN
))
108 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_MARK
, $(P_V4
)ipt_MARK
))
109 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_MARK
, $(P_XT
)xt_MARK
))
110 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TCPMSS
, $(P_V4
)ipt_TCPMSS
))
111 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_TCPMSS
, $(P_XT
)xt_TCPMSS
))
112 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TTL
, $(P_V4
)ipt_TTL
))
113 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TOS
, $(P_V4
)ipt_TOS
))
118 $(eval
$(call nf_add
,IPT_IPRANGE
,CONFIG_IP_NF_MATCH_IPRANGE
, $(P_V4
)ipt_iprange
))
123 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH_ESP
, $(P_V4
)ipt_ah
$(P_V4
)ipt_esp
))
124 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH
, $(P_V4
)ipt_ah
))
125 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_ESP
, $(P_XT
)xt_esp
))
126 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_POLICY
, $(P_XT
)xt_policy
))
131 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET
, $(P_V4
)ip_set
))
132 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPHASH
, $(P_V4
)ip_set_iphash
))
133 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPMAP
, $(P_V4
)ip_set_ipmap
))
134 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPPORTHASH
, $(P_V4
)ip_set_ipporthash
))
135 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPTREE
, $(P_V4
)ip_set_iptree
))
136 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_MACIPMAP
, $(P_V4
)ip_set_macipmap
))
137 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_NETHASH
, $(P_V4
)ip_set_nethash
))
138 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_PORTMAP
, $(P_V4
)ip_set_portmap
))
140 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_MATCH_SET
, $(P_V4
)ipt_set
))
142 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_TARGET_SET
, $(P_V4
)ipt_SET
))
148 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_NAT
, $(P_V4
)iptable_nat
),))
149 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_NF_NAT
,$(P_V4
)nf_nat
$(P_V4
)iptable_nat
),))
151 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_NAT
, $(P_V4
)ipt_SNAT
$(P_V4
)ipt_DNAT
)))
152 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_NF_NAT
, $(P_V4
)ipt_SNAT
$(P_V4
)ipt_DNAT
)))
155 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_MASQUERADE
, $(P_V4
)ipt_MASQUERADE
))
156 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_MIRROR
, $(P_V4
)ipt_MIRROR
))
157 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_NETMAP
, $(P_V4
)ipt_NETMAP
))
158 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_REDIRECT
, $(P_V4
)ipt_REDIRECT
))
163 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_FTP
, $(P_V4
)ip_conntrack_ftp
))
164 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_NAT_FTP
, $(P_V4
)ip_nat_ftp
))
165 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_CONNTRACK_FTP
, $(P_XT
)nf_conntrack_ftp
))
166 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_NAT_FTP
, $(P_V4
)nf_nat_ftp
))
167 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_IRC
, $(P_V4
)ip_conntrack_irc
))
168 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_NAT_IRC
, $(P_V4
)ip_nat_irc
))
169 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_CONNTRACK_IRC
, $(P_XT
)nf_conntrack_irc
))
170 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_NAT_IRC
, $(P_V4
)nf_nat_irc
))
171 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_TFTP
, $(P_V4
)ip_conntrack_tftp
))
172 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_CONNTRACK_TFTP
, $(P_XT
)nf_conntrack_tftp
))
173 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_NF_NAT_TFTP
, $(P_V4
)nf_nat_tftp
))
178 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_AMANDA
, $(P_V4
)ip_conntrack_amanda
))
179 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CONNTRACK_AMANDA
, $(P_XT
)nf_conntrack_amanda
))
180 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_AMANDA
, $(P_V4
)nf_nat_amanda
))
181 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_CT_PROTO_GRE
, $(P_V4
)ip_conntrack_proto_gre
))
182 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_PROTO_GRE
, $(P_V4
)ip_nat_proto_gre
))
183 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CT_PROTO_GRE
, $(P_XT
)nf_conntrack_proto_gre
))
184 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_PROTO_GRE
, $(P_V4
)nf_nat_proto_gre
))
185 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_H323
, $(P_V4
)ip_conntrack_h323
))
186 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_H323
, $(P_V4
)ip_nat_h323
))
187 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CONNTRACK_H323
, $(P_XT
)nf_conntrack_h323
))
188 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_H323
, $(P_V4
)nf_nat_h323
))
189 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_MMS
, $(P_V4
)ip_conntrack_mms
))
190 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_MMS
, $(P_V4
)ip_nat_mms
))
191 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_PPTP
, $(P_V4
)ip_conntrack_pptp
))
192 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_PPTP
, $(P_V4
)ip_nat_pptp
))
193 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CONNTRACK_PPTP
, $(P_XT
)nf_conntrack_pptp
))
194 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_PPTP
, $(P_V4
)nf_nat_pptp
))
195 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_RTSP
, $(P_V4
)ip_conntrack_rtsp
))
196 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_RTSP
, $(P_V4
)ip_nat_rtsp
))
197 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CONNTRACK_RTSP
, $(P_XT
)nf_conntrack_rtsp
))
198 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_RTSP
, $(P_V4
)nf_nat_rtsp
))
199 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_SIP
, $(P_V4
)ip_conntrack_sip
))
200 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_SIP
, $(P_V4
)ip_nat_sip
))
201 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_CONNTRACK_SIP
, $(P_XT
)nf_conntrack_sip
))
202 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_SIP
, $(P_V4
)nf_nat_sip
))
203 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_SNMP_BASIC
, $(P_V4
)ip_nat_snmp_basic
))
204 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_NF_NAT_SNMP_BASIC
, $(P_V4
)nf_nat_snmp_basic
))
209 $(eval
$(call nf_add
,IPT_QUEUE
,CONFIG_IP_NF_QUEUE
, $(P_V4
)ip_queue
))
214 $(eval
$(call nf_add
,IPT_ULOG
,CONFIG_IP_NF_TARGET_ULOG
, $(P_V4
)ipt_ULOG
))
218 IPT_BUILTIN
:= $(if
$(NF_KMOD
),,$(P_V4
)ipt_standard
)
219 IPT_BUILTIN
+= $(if
$(NF_KMOD
),,$(P_V4
)ipt_icmp
$(P_V4
)ipt_tcp
$(P_V4
)ipt_udp
)
221 IPT_BUILTIN
+= $(IPT_CONNTRACK-y
)
222 IPT_BUILTIN
+= $(IPT_EXTRA-y
)
223 IPT_BUILTIN
+= $(IPT_FILTER-y
)
224 IPT_BUILTIN
+= $(IPT_IMQ-y
)
225 IPT_BUILTIN
+= $(IPT_IPOPT-y
)
226 IPT_BUILTIN
+= $(IPT_IPRANGE-y
)
227 IPT_BUILTIN
+= $(IPT_IPSEC-y
)
228 IPT_BUILTIN
+= $(IPT_IPSET-y
)
229 IPT_BUILTIN
+= $(IPT_NAT-y
)
230 IPT_BUILTIN
+= $(IPT_ULOG-y
)
232 endif # __inc_netfilter