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_TCPMSS
, $(P_XT
)xt_TCPMSS
))
52 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_IP_NF_TARGET_REJECT
, $(P_V4
)ipt_REJECT
))
53 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MATCH_TIME
, $(P_XT
)xt_time
))
54 $(eval
$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MARK
, $(P_XT
)xt_mark
))
56 # kernel has xt_MARK.ko merged into xt_mark.ko, userspace is still separate
57 # userland: xt_MARK.so
58 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_CORE
,CONFIG_NETFILTER_XT_MARK
, $(P_XT
)xt_MARK
)))
64 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_CONNTRACK
, $(P_XT
)nf_conntrack
),))
65 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_DEFRAG_IPV4
, $(P_V4
)nf_defrag_ipv4
),))
67 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_STATE
, $(P_XT
)xt_state
))
68 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_TARGET_CT
, $(P_XT
)xt_CT
))
69 $(eval
$(call nf_add
,IPT_CONNTRACK
,CONFIG_NETFILTER_XT_MATCH_CONNTRACK
, $(P_XT
)xt_conntrack
))
74 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CONNBYTES
, $(P_XT
)xt_connbytes
))
75 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CONNLIMIT
, $(P_XT
)xt_connlimit
))
76 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_CONNCOUNT
, $(P_XT
)nf_conncount
))
77 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_CONNMARK
, $(P_XT
)xt_connmark
))
78 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_HELPER
, $(P_XT
)xt_helper
))
79 $(eval
$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_MATCH_RECENT
, $(P_XT
)xt_recent
))
81 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_CONNTRACK_EXTRA
,CONFIG_NETFILTER_XT_CONNMARK
, $(P_XT
)xt_CONNMARK
)))
85 $(eval
$(call nf_add
,IPT_CONNTRACK_LABEL
,CONFIG_NETFILTER_XT_MATCH_CONNLABEL
, $(P_XT
)xt_connlabel
))
89 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE
, $(if
$(NF_KMOD
),$(P_XT
)xt_addrtype
,$(P_XT
)ipt_addrtype
)))
90 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_OWNER
, $(P_XT
)xt_owner
))
91 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_PKTTYPE
, $(P_XT
)xt_pkttype
))
92 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_QUOTA
, $(P_XT
)xt_quota
))
93 $(eval
$(call nf_add
,IPT_EXTRA
,CONFIG_NETFILTER_XT_MATCH_CGROUP
, $(P_XT
)xt_cgroup
))
95 #$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_TARGET_ROUTE, $(P_V4)ipt_ROUTE))
99 $(eval
$(call nf_add
,IPT_PHYSDEV
,CONFIG_NETFILTER_XT_MATCH_PHYSDEV
, $(P_XT
)xt_physdev
))
103 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_STRING
, $(P_XT
)xt_string
))
104 $(eval
$(call nf_add
,IPT_FILTER
,CONFIG_NETFILTER_XT_MATCH_BPF
, $(P_XT
)xt_bpf
))
109 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, $(P_XT
)xt_dscp
))
110 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, $(P_XT
)xt_DSCP
))
111 $(eval
$(call nf_add
,IPT_HASHLIMIT
,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT
, $(P_XT
)xt_hashlimit
))
112 $(eval
$(call nf_add
,IPT_RPFILTER
,CONFIG_IP_NF_MATCH_RPFILTER
, $(P_V4
)ipt_rpfilter
))
113 $(eval
$(call nf_add
,IPT_RPFILTER
,CONFIG_IP6_NF_MATCH_RPFILTER
, $(P_V6
)ip6t_rpfilter
))
114 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_LENGTH
, $(P_XT
)xt_length
))
115 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_STATISTIC
, $(P_XT
)xt_statistic
))
116 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_TCPMSS
, $(P_XT
)xt_tcpmss
))
118 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_CLASSIFY
, $(P_XT
)xt_CLASSIFY
))
119 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_IP_NF_TARGET_ECN
, $(P_V4
)ipt_ECN
))
121 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_ECN
, $(P_XT
)xt_ecn
))
124 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_DSCP
, xt_tos
)))
125 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_DSCP
, xt_TOS
)))
126 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_HL
, ipt_ttl
)))
127 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_HL
, ipt_TTL
)))
129 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_MATCH_HL
, $(P_XT
)xt_hl
))
130 $(eval
$(call nf_add
,IPT_IPOPT
,CONFIG_NETFILTER_XT_TARGET_HL
, $(P_XT
)xt_HL
))
133 $(eval
$(call nf_add
,IPT_IPRANGE
,CONFIG_NETFILTER_XT_MATCH_IPRANGE
, $(P_XT
)xt_iprange
))
136 $(eval
$(call nf_add
,IPT_CLUSTERIP
,CONFIG_IP_NF_TARGET_CLUSTERIP
, $(P_V4
)ipt_CLUSTERIP
))
139 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_IP_NF_MATCH_AH
, $(P_V4
)ipt_ah
))
140 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_ESP
, $(P_XT
)xt_esp
))
141 $(eval
$(call nf_add
,IPT_IPSEC
,CONFIG_NETFILTER_XT_MATCH_POLICY
, $(P_XT
)xt_policy
))
143 # flow offload support
144 $(eval
$(call nf_add
,IPT_FLOW
,CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD
, $(P_XT
)xt_FLOWOFFLOAD
))
149 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_REJECT6
,CONFIG_NF_REJECT_IPV6
, $(P_V6
)nf_reject_ipv6
),))
151 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_IPT6
,CONFIG_IP6_NF_IPTABLES
, $(P_V6
)ip6_tables
),))
153 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_CONNTRACK
,CONFIG_NF_DEFRAG_IPV6
, $(P_V6
)nf_defrag_ipv6
),))
155 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_FILTER
, $(P_V6
)ip6table_filter
),))
156 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_MANGLE
, $(P_V6
)ip6table_mangle
),))
158 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_IPTABLES
, ip6t_icmp6
)))
161 $(eval
$(call nf_add
,IPT_IPV6
,CONFIG_IP6_NF_TARGET_REJECT
, $(P_V6
)ip6t_REJECT
))
164 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_IPV6HEADER
, $(P_V6
)ip6t_ipv6header
))
165 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_AH
, $(P_V6
)ip6t_ah
))
166 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_MH
, $(P_V6
)ip6t_mh
))
167 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_EUI64
, $(P_V6
)ip6t_eui64
))
168 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_OPTS
, $(P_V6
)ip6t_hbh
))
169 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_FRAG
, $(P_V6
)ip6t_frag
))
170 $(eval
$(call nf_add
,IPT_IPV6_EXTRA
,CONFIG_IP6_NF_MATCH_RT
, $(P_V6
)ip6t_rt
))
174 $(eval
$(call nf_add
,NF_LOG
,CONFIG_NF_LOG_COMMON
, $(P_XT
)nf_log_common
, lt
5.13))
175 $(eval
$(call nf_add
,NF_LOG
,CONFIG_NF_LOG_IPV4
, $(P_V4
)nf_log_ipv4
, lt
5.13))
176 $(eval
$(call nf_add
,NF_LOG
,CONFIG_NF_LOG_SYSLOG
, $(P_XT
)nf_log_syslog
, ge
5.13))
177 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_LOG6
,CONFIG_NF_LOG_IPV6
, $(P_V6
)nf_log_ipv6
,lt
5.13),))
182 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NF_NAT
,CONFIG_NF_NAT
, $(P_XT
)nf_nat
),))
184 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_NAT
, $(P_XT
)xt_nat
),))
185 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT
,CONFIG_IP_NF_NAT
, $(P_V4
)iptable_nat
),))
186 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_NAT
, $(P_V6
)ip6table_nat
),))
187 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_TARGET_NPT
, $(P_V6
)ip6t_NPT
),))
190 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT
,CONFIG_NF_NAT
, ipt_SNAT ipt_DNAT
)))
191 $(eval
$(if
$(NF_KMOD
),,$(call nf_add
,IPT_NAT6
,CONFIG_IP6_NF_TARGET_NPT
, ip6t_DNPT ip6t_SNPT
)))
193 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_TARGET_MASQUERADE
, $(P_XT
)xt_MASQUERADE
))
194 $(eval
$(call nf_add
,IPT_NAT
,CONFIG_NETFILTER_XT_TARGET_REDIRECT
, $(P_XT
)xt_REDIRECT
))
199 $(eval
$(call nf_add
,IPT_NAT_EXTRA
,CONFIG_IP_NF_TARGET_NETMAP
, $(P_XT
)xt_NETMAP
))
204 $(eval
$(call nf_add
,NF_NATHELPER
,CONFIG_NF_CONNTRACK_FTP
, $(P_XT
)nf_conntrack_ftp
))
205 $(eval
$(call nf_add
,NF_NATHELPER
,CONFIG_NF_NAT_FTP
, $(P_XT
)nf_nat_ftp
))
210 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_BROADCAST
, $(P_XT
)nf_conntrack_broadcast
))
211 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_AMANDA
, $(P_XT
)nf_conntrack_amanda
))
212 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_AMANDA
, $(P_XT
)nf_nat_amanda
))
213 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_H323
, $(P_XT
)nf_conntrack_h323
))
214 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_H323
, $(P_V4
)nf_nat_h323
))
215 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_PPTP
, $(P_XT
)nf_conntrack_pptp
))
216 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_PPTP
, $(P_V4
)nf_nat_pptp
))
217 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_SIP
, $(P_XT
)nf_conntrack_sip
))
218 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_SIP
, $(P_XT
)nf_nat_sip
))
219 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_SNMP
, $(P_XT
)nf_conntrack_snmp
))
220 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_SNMP_BASIC
, $(P_V4
)nf_nat_snmp_basic
))
221 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_TFTP
, $(P_XT
)nf_conntrack_tftp
))
222 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_TFTP
, $(P_XT
)nf_nat_tftp
))
223 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_CONNTRACK_IRC
, $(P_XT
)nf_conntrack_irc
))
224 $(eval
$(call nf_add
,NF_NATHELPER_EXTRA
,CONFIG_NF_NAT_IRC
, $(P_XT
)nf_nat_irc
))
229 $(eval
$(call nf_add
,IPT_ULOG
,CONFIG_IP_NF_TARGET_ULOG
, $(P_V4
)ipt_ULOG
))
234 $(eval
$(call nf_add
,IPT_NFLOG
,CONFIG_NETFILTER_XT_TARGET_NFLOG
, $(P_XT
)xt_NFLOG
))
239 $(eval
$(call nf_add
,IPT_NFQUEUE
,CONFIG_NETFILTER_XT_TARGET_NFQUEUE
, $(P_XT
)xt_NFQUEUE
))
244 $(eval
$(call nf_add
,IPT_DEBUG
,CONFIG_NETFILTER_XT_TARGET_TRACE
, $(P_XT
)xt_TRACE
))
247 $(eval
$(call nf_add
,NF_SOCKET
,CONFIG_NF_SOCKET_IPV4
, $(P_V4
)nf_socket_ipv4
))
248 $(eval
$(call nf_add
,NF_SOCKET
,CONFIG_NF_SOCKET_IPV6
, $(P_V6
)nf_socket_ipv6
))
249 $(eval
$(call nf_add
,IPT_SOCKET
,CONFIG_NETFILTER_XT_MATCH_SOCKET
, $(P_XT
)xt_socket
))
252 $(eval
$(call nf_add
,NF_TPROXY
,CONFIG_NF_TPROXY_IPV4
, $(P_V4
)nf_tproxy_ipv4
))
253 $(eval
$(call nf_add
,NF_TPROXY
,CONFIG_NF_TPROXY_IPV6
, $(P_V6
)nf_tproxy_ipv6
))
254 $(eval
$(call nf_add
,IPT_TPROXY
,CONFIG_NETFILTER_XT_TARGET_TPROXY
, $(P_XT
)xt_TPROXY
))
257 $(eval
$(call nf_add
,IPT_LED
,CONFIG_NETFILTER_XT_TARGET_LED
, $(P_XT
)xt_LED
))
261 $(eval
$(call nf_add
,IPT_TEE
,CONFIG_NETFILTER_XT_TARGET_TEE
, $(P_XT
)xt_TEE
))
262 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_TEE
,CONFIG_NF_DUP_IPV4
, $(P_V4
)nf_dup_ipv4
),))
263 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,IPT_TEE
,CONFIG_NF_DUP_IPV6
, $(P_V6
)nf_dup_ipv6
),))
267 $(eval
$(call nf_add
,IPT_U32
,CONFIG_NETFILTER_XT_MATCH_U32
, $(P_XT
)xt_u32
))
271 $(eval
$(call nf_add
,IPT_CHECKSUM
,CONFIG_NETFILTER_XT_TARGET_CHECKSUM
, $(P_XT
)xt_CHECKSUM
))
276 $(eval
$(call nf_add
,NFNETLINK
,CONFIG_NETFILTER_NETLINK
, $(P_XT
)nfnetlink
))
280 $(eval
$(call nf_add
,NFNETLINK_LOG
,CONFIG_NETFILTER_NETLINK_LOG
, $(P_XT
)nfnetlink_log
))
284 $(eval
$(call nf_add
,NFNETLINK_QUEUE
,CONFIG_NETFILTER_NETLINK_QUEUE
, $(P_XT
)nfnetlink_queue
))
290 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_NF_EBTABLES
, $(P_EBT
)ebtables
),))
293 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_BROUTE
, $(P_EBT
)ebtable_broute
))
294 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_T_FILTER
, $(P_EBT
)ebtable_filter
))
295 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_T_NAT
, $(P_EBT
)ebtable_nat
))
298 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_802_3
, $(P_EBT
)ebt_802_3
))
299 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_AMONG
, $(P_EBT
)ebt_among
))
300 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_ARP
, $(P_EBT
)ebt_arp
))
301 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_IP
, $(P_EBT
)ebt_ip
))
302 $(eval
$(call nf_add
,EBTABLES_IP6
,CONFIG_BRIDGE_EBT_IP6
, $(P_EBT
)ebt_ip6
))
303 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_LIMIT
, $(P_EBT
)ebt_limit
))
304 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_MARK
, $(P_EBT
)ebt_mark_m
))
305 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_PKTTYPE
, $(P_EBT
)ebt_pkttype
))
306 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_STP
, $(P_EBT
)ebt_stp
))
307 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_VLAN
, $(P_EBT
)ebt_vlan
))
310 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_ARPREPLY
, $(P_EBT
)ebt_arpreply
))
311 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_MARK_T
, $(P_EBT
)ebt_mark
))
312 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_DNAT
, $(P_EBT
)ebt_dnat
))
313 $(eval
$(call nf_add
,EBTABLES
,CONFIG_BRIDGE_EBT_REDIRECT
, $(P_EBT
)ebt_redirect
))
314 $(eval
$(call nf_add
,EBTABLES_IP4
,CONFIG_BRIDGE_EBT_SNAT
, $(P_EBT
)ebt_snat
))
317 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_LOG
, $(P_EBT
)ebt_log
))
318 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_ULOG
, $(P_EBT
)ebt_ulog
))
319 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_NFLOG
, $(P_EBT
)ebt_nflog
))
320 $(eval
$(call nf_add
,EBTABLES_WATCHERS
,CONFIG_BRIDGE_EBT_NFQUEUE
, $(P_EBT
)ebt_nfqueue
))
323 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NF_TABLES
, $(P_XT
)nf_tables
),))
324 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NF_TABLES_SET
, $(P_XT
)nf_tables_set
),))
325 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_COUNTER
, $(P_XT
)nft_counter
),))
326 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_CT
, $(P_XT
)nft_ct
),))
327 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_HASH
, $(P_XT
)nft_hash
),))
328 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_LIMIT
, $(P_XT
)nft_limit
),))
329 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_LOG
, $(P_XT
)nft_log
),))
330 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_META
, $(P_XT
)nft_meta
),))
331 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_NUMGEN
, $(P_XT
)nft_numgen
),))
332 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_OBJREF
, $(P_XT
)nft_objref
),))
333 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_QUOTA
, $(P_XT
)nft_quota
),))
334 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_REDIR
, $(P_XT
)nft_redir
),))
335 $(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
),))
336 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_CORE
,CONFIG_NFT_REJECT_INET
, $(P_XT
)nft_reject_inet
),))
338 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NFT_BRIDGE_META
, $(P_EBT
)nft_meta_bridge
),))
339 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NFT_BRIDGE_REJECT
, $(P_EBT
)nft_reject_bridge
),))
340 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_BRIDGE
,CONFIG_NF_CONNTRACK_BRIDGE
, $(P_EBT
)nf_conntrack_bridge
),))
342 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_NAT
, $(P_XT
)nft_nat
),))
343 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_NAT
, $(P_XT
)nft_chain_nat
),))
344 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_REDIR_IPV4
, $(P_V4
)nft_redir_ipv4
),))
345 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_MASQ
, $(P_XT
)nft_masq
),))
346 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT
,CONFIG_NFT_MASQ_IPV4
, $(P_V4
)nft_masq_ipv4
),))
348 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT6
,CONFIG_NFT_REDIR_IPV6
, $(P_V6
)nft_redir_ipv6
),))
349 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_NAT6
,CONFIG_NFT_MASQ_IPV6
, $(P_V6
)nft_masq_ipv6
),))
351 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB
, $(P_XT
)nft_fib
),))
352 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_INET
, $(P_XT
)nft_fib_inet
),))
353 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_IPV4
, $(P_V4
)nft_fib_ipv4
),))
354 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_FIB
,CONFIG_NFT_FIB_IPV6
, $(P_V6
)nft_fib_ipv6
),))
356 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_QUEUE
,CONFIG_NFT_QUEUE
, $(P_XT
)nft_queue
),))
358 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_SOCKET
,CONFIG_NFT_SOCKET
, $(P_XT
)nft_socket
),))
360 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_TPROXY
,CONFIG_NFT_TPROXY
, $(P_XT
)nft_tproxy
),))
362 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_COMPAT
,CONFIG_NFT_COMPAT
, $(P_XT
)nft_compat
),))
364 $(eval
$(if
$(NF_KMOD
),$(call nf_add
,NFT_XFRM
,CONFIG_NFT_XFRM
, $(P_XT
)nft_xfrm
),))
367 IPT_BUILTIN
+= $(NF_IPT-y
) $(NF_IPT-m
)
368 IPT_BUILTIN
+= $(IPT_CORE-y
) $(IPT_CORE-m
)
369 IPT_BUILTIN
+= $(NF_CONNTRACK-y
)
370 IPT_BUILTIN
+= $(NF_CONNTRACK6-y
)
371 IPT_BUILTIN
+= $(IPT_CONNTRACK-y
)
372 IPT_BUILTIN
+= $(IPT_CONNTRACK_EXTRA-y
)
373 IPT_BUILTIN
+= $(IPT_EXTRA-y
)
374 IPT_BUILTIN
+= $(IPT_PHYSDEV-y
)
375 IPT_BUILTIN
+= $(IPT_FILTER-y
)
376 IPT_BUILTIN
+= $(IPT_FLOW-y
) $(IPT_FLOW-m
)
377 IPT_BUILTIN
+= $(IPT_IPOPT-y
)
378 IPT_BUILTIN
+= $(IPT_IPRANGE-y
)
379 IPT_BUILTIN
+= $(IPT_CLUSTER-y
)
380 IPT_BUILTIN
+= $(IPT_CLUSTERIP-y
)
381 IPT_BUILTIN
+= $(IPT_IPSEC-y
)
382 IPT_BUILTIN
+= $(IPT_IPV6-y
) $(IPT_IPV6-m
)
383 IPT_BUILTIN
+= $(NF_NAT-y
)
384 IPT_BUILTIN
+= $(NF_NAT6-y
)
385 IPT_BUILTIN
+= $(IPT_NAT-y
)
386 IPT_BUILTIN
+= $(IPT_NAT6-y
)
387 IPT_BUILTIN
+= $(IPT_NAT_EXTRA-y
)
388 IPT_BUILTIN
+= $(NF_NATHELPER-y
)
389 IPT_BUILTIN
+= $(NF_NATHELPER_EXTRA-y
)
390 IPT_BUILTIN
+= $(IPT_ULOG-y
)
391 IPT_BUILTIN
+= $(IPT_TPROXY-y
)
392 IPT_BUILTIN
+= $(NFNETLINK-y
)
393 IPT_BUILTIN
+= $(NFNETLINK_LOG-y
)
394 IPT_BUILTIN
+= $(NFNETLINK_QUEUE-y
)
395 IPT_BUILTIN
+= $(EBTABLES-y
)
396 IPT_BUILTIN
+= $(EBTABLES_IP4-y
)
397 IPT_BUILTIN
+= $(EBTABLES_IP6-y
)
398 IPT_BUILTIN
+= $(EBTABLES_WATCHERS-y
)
400 endif # __inc_netfilter