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)
25 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNBYTES
, $(P_V4
)ipt_connbytes
))
26 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNBYTES
, $(P_XT
)xt_connbytes
))
27 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNMARK
, $(P_V4
)ipt_connmark
))
28 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNMARK
, $(P_XT
)xt_connmark
))
29 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_CONNTRACK
, $(P_V4
)ipt_conntrack
))
30 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNTRACK
, $(P_XT
)xt_conntrack
))
31 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_HELPER
, $(P_V4
)ipt_helper
))
32 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_HELPER
, $(P_XT
)xt_helper
))
33 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_LIMIT
, $(P_V4
)ipt_limit
))
34 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_LIMIT
, $(P_XT
)xt_limit
))
35 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_RECENT
, $(P_V4
)ipt_recent
))
36 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_MATCH_STATE
, $(P_V4
)ipt_state
))
37 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_STATE
, $(P_XT
)xt_state
))
39 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_IP_NF_TARGET_CONNMARK
, $(P_V4
)ipt_CONNMARK
))
40 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_CONNMARK
, $(P_XT
)xt_CONNMARK
))
41 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_NOTRACK
, $(P_XT
)xt_NOTRACK
))
46 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_RAW
, $(P_V4
)iptable_raw
)))
48 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_CONDITION
, $(P_V4
)ipt_condition
))
49 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_OWNER
, $(P_V4
)ipt_owner
))
50 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PHYSDEV
, $(P_XT
)xt_physdev
))
51 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_MATCH_PKTTYPE
, $(P_V4
)ipt_pkttype
))
52 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PKTTYPE
, $(P_XT
)xt_pkttype
))
53 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PORTSCAN
, $(P_XT
)xt_portscan
))
54 #$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_MATCH_QUOTA, $(P_V4)ipt_quota))
55 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_QUOTA
, $(P_XT
)xt_quota
))
57 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_TARGET_CHAOS
, $(P_XT
)xt_CHAOS
))
58 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_TARGET_DELUDE
, $(P_XT
)xt_DELUDE
))
59 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_TARGET_LOG
, $(P_V4
)ipt_LOG
))
60 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_IP_NF_TARGET_REJECT
, $(P_V4
)ipt_REJECT
))
65 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_IPP2P
, $(P_V4
)ipt_ipp2p
))
66 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_LAYER7
, $(P_V4
)ipt_layer7
))
67 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_IP_NF_MATCH_STRING
, $(P_V4
)ipt_string
))
68 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_STRING
, $(P_XT
)xt_string
))
73 $(eval
$(call nf_add
,IPT_IMQ
,CONFIG_IP_NF_TARGET_IMQ
, $(P_V4
)ipt_IMQ
))
78 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_DSCP
, $(P_V4
)ipt_dscp
))
79 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, $(P_XT
)xt_dscp
))
80 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, $(P_XT
)xt_DSCP
))
81 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_ECN
, $(P_V4
)ipt_ecn
))
82 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_LENGTH
, $(P_V4
)ipt_length
))
83 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_LENGTH
, $(P_XT
)xt_length
))
84 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MAC
, $(P_V4
)ipt_mac
))
85 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MAC
, $(P_XT
)xt_mac
))
86 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MARK
, $(P_V4
)ipt_mark
))
87 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MARK
, $(P_XT
)xt_mark
))
88 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_MULTIPORT
, $(P_V4
)ipt_multiport
))
89 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_MULTIPORT
, $(P_XT
)xt_multiport
))
90 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_STATISTIC
, $(P_XT
)xt_statistic
))
91 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TCPMSS
, $(P_V4
)ipt_tcpmss
))
92 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_TCPMSS
, $(P_XT
)xt_tcpmss
))
93 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TIME
, $(P_V4
)ipt_time
))
94 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TOS
, $(P_V4
)ipt_tos
))
95 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_TTL
, $(P_V4
)ipt_ttl
))
96 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_MATCH_UNCLEAN
, $(P_V4
)ipt_unclean
))
98 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_CLASSIFY
, $(P_V4
)ipt_CLASSIFY
))
99 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_CLASSIFY
, $(P_XT
)xt_CLASSIFY
))
100 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_DSCP
, $(P_V4
)ipt_DSCP
))
101 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_ECN
, $(P_V4
)ipt_ECN
))
102 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_MARK
, $(P_V4
)ipt_MARK
))
103 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_MARK
, $(P_XT
)xt_MARK
))
104 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TCPMSS
, $(P_V4
)ipt_TCPMSS
))
105 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_TCPMSS
, $(P_XT
)xt_TCPMSS
))
106 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TTL
, $(P_V4
)ipt_TTL
))
107 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_TOS
, $(P_V4
)ipt_TOS
))
112 $(eval
$(call nf_add
,IPT_IPRANGE
,CONFIG_IP_NF_MATCH_IPRANGE
, $(P_V4
)ipt_iprange
))
117 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH_ESP
, $(P_V4
)ipt_ah
$(P_V4
)ipt_esp
))
118 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH
, $(P_V4
)ipt_ah
))
119 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_ESP
, $(P_XT
)xt_esp
))
124 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET
, $(P_V4
)ip_set
))
125 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPHASH
, $(P_V4
)ip_set_iphash
))
126 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPMAP
, $(P_V4
)ip_set_ipmap
))
127 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPPORTHASH
, $(P_V4
)ip_set_ipporthash
))
128 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_IPTREE
, $(P_V4
)ip_set_iptree
))
129 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_MACIPMAP
, $(P_V4
)ip_set_macipmap
))
130 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_NETHASH
, $(P_V4
)ip_set_nethash
))
131 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_SET_PORTMAP
, $(P_V4
)ip_set_portmap
))
133 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_MATCH_SET
, $(P_V4
)ipt_set
))
135 $(eval
$(call nf_add
,IPT_IPSET
,CONFIG_IP_NF_TARGET_SET
, $(P_V4
)ipt_SET
))
140 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_NAT
, $(P_V4
)ipt_SNAT
$(P_V4
)ipt_DNAT
)))
141 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_NF_NAT
, $(P_V4
)ipt_SNAT
$(P_V4
)ipt_DNAT
)))
143 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_MASQUERADE
, $(P_V4
)ipt_MASQUERADE
))
144 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_MIRROR
, $(P_V4
)ipt_MIRROR
))
145 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_NETMAP
, $(P_V4
)ipt_NETMAP
))
146 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_TARGET_REDIRECT
, $(P_V4
)ipt_REDIRECT
))
151 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_FTP
, $(P_V4
)ip_conntrack_ftp
))
152 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_NAT_FTP
, $(P_V4
)ip_nat_ftp
))
153 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_IRC
, $(P_V4
)ip_conntrack_irc
))
154 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_NAT_IRC
, $(P_V4
)ip_nat_irc
))
155 $(eval
$(call nf_add
,IPT_NAT_DEFAULT
,CONFIG_IP_NF_TFTP
, $(P_V4
)ip_conntrack_tftp
))
160 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_AMANDA
, $(P_V4
)ip_conntrack_amanda
))
161 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_CT_PROTO_GRE
, $(P_V4
)ip_conntrack_proto_gre
))
162 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_PROTO_GRE
, $(P_V4
)ip_nat_proto_gre
))
163 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_H323
, $(P_V4
)ip_conntrack_h323
))
164 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_H323
, $(P_V4
)ip_nat_h323
))
165 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_MMS
, $(P_V4
)ip_conntrack_mms
))
166 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_MMS
, $(P_V4
)ip_nat_mms
))
167 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_PPTP
, $(P_V4
)ip_conntrack_pptp
))
168 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_PPTP
, $(P_V4
)ip_nat_pptp
))
169 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_RTSP
, $(P_V4
)ip_conntrack_rtsp
))
170 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_RTSP
, $(P_V4
)ip_nat_rtsp
))
171 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_SIP
, $(P_V4
)ip_conntrack_sip
))
172 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_SIP
, $(P_V4
)ip_nat_sip
))
173 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_NAT_SNMP_BASIC
, $(P_V4
)ip_nat_snmp_basic
))
178 $(eval
$(call nf_add
,IPT_QUEUE
,CONFIG_IP_NF_QUEUE
, $(P_V4
)ip_queue
))
183 $(eval
$(call nf_add
,IPT_ULOG
,CONFIG_IP_NF_TARGET_ULOG
, $(P_V4
)ipt_ULOG
))
186 IPT_BUILTIN
:= $(P_V4
)ipt_standard
187 IPT_BUILTIN
+= $(P_V4
)ipt_icmp
$(P_V4
)ipt_tcp
$(P_V4
)ipt_udp
188 IPT_BUILTIN
+= $(IPT_CONNTRACK-y
)
189 IPT_BUILTIN
+= $(IPT_EXTRA-y
)
190 IPT_BUILTIN
+= $(IPT_FILTER-y
)
191 IPT_BUILTIN
+= $(IPT_IMQ-y
)
192 IPT_BUILTIN
+= $(IPT_IPOPT-y
)
193 IPT_BUILTIN
+= $(IPT_IPSEC-y
)
194 IPT_BUILTIN
+= $(IPT_IPSET-y
)
195 IPT_BUILTIN
+= $(IPT_NAT-y
)
196 IPT_BUILTIN
+= $(IPT_ULOG-y
)
198 endif # __inc_netfilter