1 # SPDX-License-Identifier: GPL-2.0-only
3 # Copyright (C) 2006-2020 OpenWrt.org
5 ifneq ($(__inc_netfilter
),1)
12 P_EBT
:=bridge
/netfilter
/
18 # 4: version dependency
20 $(if
$(4),ifeq ($$(strip $$(call CompareKernelPatchVer
,$$(KERNEL_PATCHVER
),$(firstword $(4)),$(lastword
$(4)))),1))
23 KCONFIG_
$(1) = $(filter-out $(2),$(KCONFIG_
$(1))) $(2)
30 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_REJECT
,CONFIG_NF_REJECT_IPV4
, $(P_V4
)nf_reject_ipv4
),))
32 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_IPT
,CONFIG_IP_NF_IPTABLES
, $(P_V4
)ip_tables
),))
33 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_IPT
,CONFIG_NETFILTER_XTABLES
, $(P_XT
)x_tables
),))
35 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XTABLES
, $(P_XT
)xt_tcpudp
),))
36 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_CORE
,CONFIG_IP_NF_FILTER
, $(P_V4
)iptable_filter
),))
37 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_CORE
,CONFIG_IP_NF_MANGLE
, $(P_V4
)iptable_mangle
),))
40 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_CORE
,CONFIG_IP_NF_IPTABLES
, xt_standard ipt_icmp xt_tcp xt_udp xt_comment xt_set xt_SET
)))
42 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_LIMIT
, $(P_XT
)xt_limit
))
43 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_MAC
, $(P_XT
)xt_mac
))
44 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_MULTIPORT
, $(P_XT
)xt_multiport
))
45 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_COMMENT
, $(P_XT
)xt_comment
))
48 $(eval
$(call nf_add
,IPT_CLUSTER
,CONFIG_NETFILTER_XT_MATCH_CLUSTER
, $(P_XT
)xt_cluster
))
50 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_TARGET_LOG
, $(P_XT
)xt_LOG
))
51 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_TARGET_LOG
, $(P_XT
)nf_log_common
))
52 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_TARGET_LOG
, $(P_V4
)nf_log_ipv4
))
53 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_TARGET_TCPMSS
, $(P_XT
)xt_TCPMSS
))
54 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_IP_NF_TARGET_REJECT
, $(P_V4
)ipt_REJECT
))
55 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_TIME
, $(P_XT
)xt_time
))
56 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MARK
, $(P_XT
)xt_mark
))
58 # kernel has xt_MARK.ko merged into xt_mark.ko, userspace is still separate
59 # userland: xt_MARK.so
60 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MARK
, $(P_XT
)xt_MARK
)))
66 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_CONNTRACK
, $(P_XT
)nf_conntrack
),))
67 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_DEFRAG_IPV4
, $(P_V4
)nf_defrag_ipv4
),))
69 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_STATE
, $(P_XT
)xt_state
))
70 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_CT
, $(P_XT
)xt_CT
))
71 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNTRACK
, $(P_XT
)xt_conntrack
))
76 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CONNBYTES
, $(P_XT
)xt_connbytes
))
77 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CONNLIMIT
, $(P_XT
)xt_connlimit
))
78 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_CONNCOUNT
, $(P_XT
)nf_conncount
))
79 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_CONNMARK
, $(P_XT
)xt_connmark
))
80 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_HELPER
, $(P_XT
)xt_helper
))
81 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_RECENT
, $(P_XT
)xt_recent
))
83 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_CONNMARK
, $(P_XT
)xt_CONNMARK
)))
87 $(eval
$(call nf_add
,IPT_CONNTRACK_LABEL
,CONFIG_NETFILTER_XT_MATCH_CONNLABEL
, $(P_XT
)xt_connlabel
))
91 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE
, $(if
$(NF_KMOD
),$(P_XT
)xt_addrtype
,$(P_XT
)ipt_addrtype
)))
92 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_OWNER
, $(P_XT
)xt_owner
))
93 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PKTTYPE
, $(P_XT
)xt_pkttype
))
94 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_QUOTA
, $(P_XT
)xt_quota
))
95 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CGROUP
, $(P_XT
)xt_cgroup
))
97 #$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_TARGET_ROUTE, $(P_V4)ipt_ROUTE))
101 $(eval
$(call nf_add
,IPT_PHYSDEV
,CONFIG_NETFILTER_XT_MATCH_PHYSDEV
, $(P_XT
)xt_physdev
))
105 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_STRING
, $(P_XT
)xt_string
))
106 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_BPF
, $(P_XT
)xt_bpf
))
111 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, $(P_XT
)xt_dscp
))
112 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, $(P_XT
)xt_DSCP
))
113 $(eval
$(call nf_add
,IPT_HASHLIMIT
,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT
, $(P_XT
)xt_hashlimit
))
114 $(eval
$(call nf_add
,IPT_RPFILTER
,CONFIG_IP_NF_MATCH_RPFILTER
, $(P_V4
)ipt_rpfilter
))
115 $(eval
$(call nf_add
,IPT_RPFILTER
,CONFIG_IP6_NF_MATCH_RPFILTER
, $(P_V6
)ip6t_rpfilter
))
116 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_LENGTH
, $(P_XT
)xt_length
))
117 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_STATISTIC
, $(P_XT
)xt_statistic
))
118 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_TCPMSS
, $(P_XT
)xt_tcpmss
))
120 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_CLASSIFY
, $(P_XT
)xt_CLASSIFY
))
121 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_ECN
, $(P_V4
)ipt_ECN
))
123 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_ECN
, $(P_XT
)xt_ecn
))
126 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, xt_tos
)))
127 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, xt_TOS
)))
128 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_HL
, ipt_ttl
)))
129 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_HL
, ipt_TTL
)))
131 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_HL
, $(P_XT
)xt_hl
))
132 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_HL
, $(P_XT
)xt_HL
))
135 $(eval
$(call nf_add
,IPT_IPRANGE
,CONFIG_NETFILTER_XT_MATCH_IPRANGE
, $(P_XT
)xt_iprange
))
138 $(eval
$(call nf_add
,IPT_CLUSTERIP
,CONFIG_IP_NF_TARGET_CLUSTERIP
, $(P_V4
)ipt_CLUSTERIP
))
141 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH
, $(P_V4
)ipt_ah
))
142 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_ESP
, $(P_XT
)xt_esp
))
143 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_POLICY
, $(P_XT
)xt_policy
))
145 # flow offload support
146 $(eval
$(call nf_add
,IPT_FLOW
,CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD
, $(P_XT
)xt_FLOWOFFLOAD
))
151 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_REJECT6
,CONFIG_NF_REJECT_IPV6
, $(P_V6
)nf_reject_ipv6
),))
153 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_IPT6
,CONFIG_IP6_NF_IPTABLES
, $(P_V6
)ip6_tables
),))
155 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_DEFRAG_IPV6
, $(P_V6
)nf_defrag_ipv6
),))
157 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_FILTER
, $(P_V6
)ip6table_filter
),))
158 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_MANGLE
, $(P_V6
)ip6table_mangle
),))
159 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_IPV6
,CONFIG_NF_LOG_IPV6
, $(P_V6
)nf_log_ipv6
),))
161 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_IPTABLES
, ip6t_icmp6
)))
164 $(eval
$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_TARGET_REJECT
, $(P_V6
)ip6t_REJECT
))
167 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_IPV6HEADER
, $(P_V6
)ip6t_ipv6header
))
168 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_AH
, $(P_V6
)ip6t_ah
))
169 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_MH
, $(P_V6
)ip6t_mh
))
170 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_EUI64
, $(P_V6
)ip6t_eui64
))
171 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_OPTS
, $(P_V6
)ip6t_hbh
))
172 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_FRAG
, $(P_V6
)ip6t_frag
))
173 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_RT
, $(P_V6
)ip6t_rt
))
178 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_NAT
,CONFIG_NF_NAT
, $(P_XT
)nf_nat
),))
180 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_NAT
, $(P_XT
)xt_nat
),))
181 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_NAT
, $(P_V4
)iptable_nat
),))
182 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_NAT
, $(P_V6
)ip6table_nat
),))
183 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_TARGET_NPT
, $(P_V6
)ip6t_NPT
),))
186 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_NF_NAT
, ipt_SNAT ipt_DNAT
)))
187 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_TARGET_NPT
, ip6t_DNPT ip6t_SNPT
)))
189 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_TARGET_MASQUERADE
, $(P_XT
)xt_MASQUERADE
))
190 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_TARGET_REDIRECT
, $(P_XT
)xt_REDIRECT
))
195 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_TARGET_NETMAP
, $(P_XT
)xt_NETMAP
))
200 $(eval
$(call nf_add
,NF_NATHELPER
,CONFIG_NF_CONNTRACK_FTP
, $(P_XT
)nf_conntrack_ftp
))
201 $(eval
$(call nf_add
,NF_NATHELPER
,CONFIG_NF_NAT_FTP
, $(P_XT
)nf_nat_ftp
))
206 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_BROADCAST
, $(P_XT
)nf_conntrack_broadcast
))
207 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_AMANDA
, $(P_XT
)nf_conntrack_amanda
))
208 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_AMANDA
, $(P_XT
)nf_nat_amanda
))
209 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_H323
, $(P_XT
)nf_conntrack_h323
))
210 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_H323
, $(P_V4
)nf_nat_h323
))
211 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_PPTP
, $(P_XT
)nf_conntrack_pptp
))
212 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_PPTP
, $(P_V4
)nf_nat_pptp
))
213 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_SIP
, $(P_XT
)nf_conntrack_sip
))
214 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_SIP
, $(P_XT
)nf_nat_sip
))
215 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_SNMP
, $(P_XT
)nf_conntrack_snmp
))
216 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_SNMP_BASIC
, $(P_V4
)nf_nat_snmp_basic
))
217 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_TFTP
, $(P_XT
)nf_conntrack_tftp
))
218 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_TFTP
, $(P_XT
)nf_nat_tftp
))
219 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_IRC
, $(P_XT
)nf_conntrack_irc
))
220 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_IRC
, $(P_XT
)nf_nat_irc
))
225 $(eval
$(call nf_add
,IPT_ULOG
,CONFIG_IP_NF_TARGET_ULOG
, $(P_V4
)ipt_ULOG
))
230 $(eval
$(call nf_add
,IPT_NFLOG
,CONFIG_NETFILTER_XT_TARGET_NFLOG
, $(P_XT
)xt_NFLOG
))
235 $(eval
$(call nf_add
,IPT_NFQUEUE
,CONFIG_NETFILTER_XT_TARGET_NFQUEUE
, $(P_XT
)xt_NFQUEUE
))
240 $(eval
$(call nf_add
,IPT_DEBUG
,CONFIG_NETFILTER_XT_TARGET_TRACE
, $(P_XT
)xt_TRACE
))
243 $(eval
$(call nf_add
,NF_SOCKET
,CONFIG_NF_SOCKET_IPV4
, $(P_V4
)nf_socket_ipv4
))
244 $(eval
$(call nf_add
,NF_SOCKET
,CONFIG_NF_SOCKET_IPV6
, $(P_V6
)nf_socket_ipv6
))
245 $(eval
$(call nf_add
,IPT_SOCKET
,CONFIG_NETFILTER_XT_MATCH_SOCKET
, $(P_XT
)xt_socket
))
248 $(eval
$(call nf_add
,NF_TPROXY
,CONFIG_NF_TPROXY_IPV4
, $(P_V4
)nf_tproxy_ipv4
))
249 $(eval
$(call nf_add
,NF_TPROXY
,CONFIG_NF_TPROXY_IPV6
, $(P_V6
)nf_tproxy_ipv6
))
250 $(eval
$(call nf_add
,IPT_TPROXY
,CONFIG_NETFILTER_XT_TARGET_TPROXY
, $(P_XT
)xt_TPROXY
))
253 $(eval
$(call nf_add
,IPT_LED
,CONFIG_NETFILTER_XT_TARGET_LED
, $(P_XT
)xt_LED
))
257 $(eval
$(call nf_add
,IPT_TEE
,CONFIG_NETFILTER_XT_TARGET_TEE
, $(P_XT
)xt_TEE
))
258 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_TEE
,CONFIG_NF_DUP_IPV4
, $(P_V4
)nf_dup_ipv4
),))
259 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_TEE
,CONFIG_NF_DUP_IPV6
, $(P_V6
)nf_dup_ipv6
),))
263 $(eval
$(call nf_add
,IPT_U32
,CONFIG_NETFILTER_XT_MATCH_U32
, $(P_XT
)xt_u32
))
267 $(eval
$(call nf_add
,IPT_CHECKSUM
,CONFIG_NETFILTER_XT_TARGET_CHECKSUM
, $(P_XT
)xt_CHECKSUM
))
272 $(eval
$(call nf_add
,NFNETLINK
,CONFIG_NETFILTER_NETLINK
, $(P_XT
)nfnetlink
))
276 $(eval
$(call nf_add
,NFNETLINK_LOG
,CONFIG_NETFILTER_NETLINK_LOG
, $(P_XT
)nfnetlink_log
))
280 $(eval
$(call nf_add
,NFNETLINK_QUEUE
,CONFIG_NETFILTER_NETLINK_QUEUE
, $(P_XT
)nfnetlink_queue
))
286 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_NF_EBTABLES
, $(P_EBT
)ebtables
),))
289 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_BROUTE
, $(P_EBT
)ebtable_broute
))
290 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_T_FILTER
, $(P_EBT
)ebtable_filter
))
291 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_T_NAT
, $(P_EBT
)ebtable_nat
))
294 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_802_3
, $(P_EBT
)ebt_802_3
))
295 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_AMONG
, $(P_EBT
)ebt_among
))
296 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_ARP
, $(P_EBT
)ebt_arp
))
297 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_IP
, $(P_EBT
)ebt_ip
))
298 $(eval
$(call nf_add
,EBTABLES_IP6
,CONFIG_BRIDGE_EBT_IP6
, $(P_EBT
)ebt_ip6
))
299 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_LIMIT
, $(P_EBT
)ebt_limit
))
300 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_MARK
, $(P_EBT
)ebt_mark_m
))
301 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_PKTTYPE
, $(P_EBT
)ebt_pkttype
))
302 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_STP
, $(P_EBT
)ebt_stp
))
303 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_VLAN
, $(P_EBT
)ebt_vlan
))
306 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_ARPREPLY
, $(P_EBT
)ebt_arpreply
))
307 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_MARK_T
, $(P_EBT
)ebt_mark
))
308 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_DNAT
, $(P_EBT
)ebt_dnat
))
309 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_REDIRECT
, $(P_EBT
)ebt_redirect
))
310 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_SNAT
, $(P_EBT
)ebt_snat
))
313 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_LOG
, $(P_EBT
)ebt_log
))
314 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_ULOG
, $(P_EBT
)ebt_ulog
))
315 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_NFLOG
, $(P_EBT
)ebt_nflog
))
316 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_NFQUEUE
, $(P_EBT
)ebt_nfqueue
))
319 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NF_TABLES
, $(P_XT
)nf_tables
),))
320 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NF_TABLES_SET
, $(P_XT
)nf_tables_set
),))
321 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_COUNTER
, $(P_XT
)nft_counter
),))
322 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_CT
, $(P_XT
)nft_ct
),))
323 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_HASH
, $(P_XT
)nft_hash
),))
324 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_LIMIT
, $(P_XT
)nft_limit
),))
325 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_LOG
, $(P_XT
)nft_log
),))
326 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_META
, $(P_XT
)nft_meta
),))
327 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_NUMGEN
, $(P_XT
)nft_numgen
),))
328 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_OBJREF
, $(P_XT
)nft_objref
),))
329 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_QUOTA
, $(P_XT
)nft_quota
),))
330 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_REDIR
, $(P_XT
)nft_redir
),))
331 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_REJECT
, $(P_XT
)nft_reject
$(P_V4
)nft_reject_ipv4
$(P_V6
)nft_reject_ipv6
),))
332 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_REJECT_INET
, $(P_XT
)nft_reject_inet
),))
334 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NFT_BRIDGE_META
, $(P_EBT
)nft_meta_bridge
),))
335 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NFT_BRIDGE_REJECT
, $(P_EBT
)nft_reject_bridge
),))
336 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NF_CONNTRACK_BRIDGE
, $(P_EBT
)nf_conntrack_bridge
),))
338 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_NAT
, $(P_XT
)nft_nat
),))
339 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_NAT
, $(P_XT
)nft_chain_nat
),))
340 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_REDIR_IPV4
, $(P_V4
)nft_redir_ipv4
),))
341 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_MASQ
, $(P_XT
)nft_masq
),))
342 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_MASQ_IPV4
, $(P_V4
)nft_masq_ipv4
),))
344 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT6
,CONFIG_NFT_REDIR_IPV6
, $(P_V6
)nft_redir_ipv6
),))
345 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT6
,CONFIG_NFT_MASQ_IPV6
, $(P_V6
)nft_masq_ipv6
),))
347 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB
, $(P_XT
)nft_fib
),))
348 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_INET
, $(P_XT
)nft_fib_inet
),))
349 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_IPV4
, $(P_V4
)nft_fib_ipv4
),))
350 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_IPV6
, $(P_V6
)nft_fib_ipv6
),))
352 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_QUEUE
,CONFIG_NFT_QUEUE
, $(P_XT
)nft_queue
),))
354 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_COMPAT
,CONFIG_NFT_COMPAT
, $(P_XT
)nft_compat
),))
357 IPT_BUILTIN
+= $(NF_IPT-y
) $(NF_IPT-m
)
358 IPT_BUILTIN
+= $(IPT_CORE-y
) $(IPT_CORE-m
)
359 IPT_BUILTIN
+= $(NF_CONNTRACK-y
)
360 IPT_BUILTIN
+= $(NF_CONNTRACK6-y
)
361 IPT_BUILTIN
+= $(IPT_CONNTRACK-y
)
362 IPT_BUILTIN
+= $(IPT_CONNTRACK_EXTRA-y
)
363 IPT_BUILTIN
+= $(IPT_EXTRA-y
)
364 IPT_BUILTIN
+= $(IPT_PHYSDEV-y
)
365 IPT_BUILTIN
+= $(IPT_FILTER-y
)
366 IPT_BUILTIN
+= $(IPT_FLOW-y
) $(IPT_FLOW-m
)
367 IPT_BUILTIN
+= $(IPT_IPOPT-y
)
368 IPT_BUILTIN
+= $(IPT_IPRANGE-y
)
369 IPT_BUILTIN
+= $(IPT_CLUSTER-y
)
370 IPT_BUILTIN
+= $(IPT_CLUSTERIP-y
)
371 IPT_BUILTIN
+= $(IPT_IPSEC-y
)
372 IPT_BUILTIN
+= $(IPT_IPV6-y
) $(IPT_IPV6-m
)
373 IPT_BUILTIN
+= $(NF_NAT-y
)
374 IPT_BUILTIN
+= $(NF_NAT6-y
)
375 IPT_BUILTIN
+= $(IPT_NAT-y
)
376 IPT_BUILTIN
+= $(IPT_NAT6-y
)
377 IPT_BUILTIN
+= $(IPT_NAT_EXTRA-y
)
378 IPT_BUILTIN
+= $(NF_NATHELPER-y
)
379 IPT_BUILTIN
+= $(NF_NATHELPER_EXTRA-y
)
380 IPT_BUILTIN
+= $(IPT_ULOG-y
)
381 IPT_BUILTIN
+= $(IPT_TPROXY-y
)
382 IPT_BUILTIN
+= $(NFNETLINK-y
)
383 IPT_BUILTIN
+= $(NFNETLINK_LOG-y
)
384 IPT_BUILTIN
+= $(NFNETLINK_QUEUE-y
)
385 IPT_BUILTIN
+= $(EBTABLES-y
)
386 IPT_BUILTIN
+= $(EBTABLES_IP4-y
)
387 IPT_BUILTIN
+= $(EBTABLES_IP6-y
)
388 IPT_BUILTIN
+= $(EBTABLES_WATCHERS-y
)
390 endif # __inc_netfilter