6daab752f76053e3b2a18d53690f6896b9be3cf1
[openwrt/openwrt.git] / package / kernel / linux / modules / netfilter.mk
1
2 #
3 # Copyright (C) 2006-2010 OpenWrt.org
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 NF_MENU:=Netfilter Extensions
10 NF_KMOD:=1
11 include $(INCLUDE_DIR)/netfilter.mk
12
13
14 define KernelPackage/nf-reject
15 SUBMENU:=$(NF_MENU)
16 TITLE:=Netfilter IPv4 reject support
17 KCONFIG:= \
18 CONFIG_NETFILTER=y \
19 CONFIG_NETFILTER_ADVANCED=y \
20 $(KCONFIG_NF_REJECT)
21 FILES:=$(foreach mod,$(NF_REJECT-m),$(LINUX_DIR)/net/$(mod).ko)
22 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_REJECT-m)))
23 endef
24
25 $(eval $(call KernelPackage,nf-reject))
26
27
28 define KernelPackage/nf-reject6
29 SUBMENU:=$(NF_MENU)
30 TITLE:=Netfilter IPv6 reject support
31 KCONFIG:= \
32 CONFIG_NETFILTER=y \
33 CONFIG_NETFILTER_ADVANCED=y \
34 $(KCONFIG_NF_REJECT6)
35 DEPENDS:=@IPV6
36 FILES:=$(foreach mod,$(NF_REJECT6-m),$(LINUX_DIR)/net/$(mod).ko)
37 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_REJECT6-m)))
38 endef
39
40 $(eval $(call KernelPackage,nf-reject6))
41
42
43 define KernelPackage/nf-ipt
44 SUBMENU:=$(NF_MENU)
45 TITLE:=Iptables core
46 KCONFIG:=$(KCONFIG_NF_IPT)
47 FILES:=$(foreach mod,$(NF_IPT-m),$(LINUX_DIR)/net/$(mod).ko)
48 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT-m)))
49 endef
50
51 $(eval $(call KernelPackage,nf-ipt))
52
53
54 define KernelPackage/nf-ipt6
55 SUBMENU:=$(NF_MENU)
56 TITLE:=Ip6tables core
57 KCONFIG:=$(KCONFIG_NF_IPT6)
58 FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko)
59 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m)))
60 DEPENDS:=+kmod-nf-ipt
61 endef
62
63 $(eval $(call KernelPackage,nf-ipt6))
64
65
66
67 define KernelPackage/ipt-core
68 SUBMENU:=$(NF_MENU)
69 TITLE:=Iptables core
70 KCONFIG:=$(KCONFIG_IPT_CORE)
71 FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
72 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m)))
73 DEPENDS:=+kmod-nf-reject +kmod-nf-ipt
74 endef
75
76 define KernelPackage/ipt-core/description
77 Netfilter core kernel modules
78 Includes:
79 - comment
80 - limit
81 - LOG
82 - mac
83 - multiport
84 - REJECT
85 - TCPMSS
86 endef
87
88 $(eval $(call KernelPackage,ipt-core))
89
90
91 define KernelPackage/nf-conntrack
92 SUBMENU:=$(NF_MENU)
93 TITLE:=Netfilter connection tracking
94 KCONFIG:= \
95 CONFIG_NETFILTER=y \
96 CONFIG_NETFILTER_ADVANCED=y \
97 CONFIG_NF_CONNTRACK_MARK=y \
98 CONFIG_NF_CONNTRACK_ZONES=y \
99 $(KCONFIG_NF_CONNTRACK)
100 FILES:=$(foreach mod,$(NF_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
101 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_CONNTRACK-m)))
102 endef
103
104 define KernelPackage/nf-conntrack/install
105 $(INSTALL_DIR) $(1)/etc/sysctl.d
106 $(INSTALL_DATA) ./files/sysctl-nf-conntrack.conf $(1)/etc/sysctl.d/11-nf-conntrack.conf
107 endef
108
109 $(eval $(call KernelPackage,nf-conntrack))
110
111
112 define KernelPackage/nf-conntrack6
113 SUBMENU:=$(NF_MENU)
114 TITLE:=Netfilter IPv6 connection tracking
115 KCONFIG:=$(KCONFIG_NF_CONNTRACK6)
116 DEPENDS:=@IPV6 +kmod-nf-conntrack
117 FILES:=$(foreach mod,$(NF_CONNTRACK6-m),$(LINUX_DIR)/net/$(mod).ko)
118 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_CONNTRACK6-m)))
119 endef
120
121 $(eval $(call KernelPackage,nf-conntrack6))
122
123
124 define KernelPackage/nf-nat
125 SUBMENU:=$(NF_MENU)
126 TITLE:=Netfilter NAT
127 KCONFIG:=$(KCONFIG_NF_NAT)
128 DEPENDS:=+kmod-nf-conntrack
129 FILES:=$(foreach mod,$(NF_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
130 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT-m)))
131 endef
132
133 $(eval $(call KernelPackage,nf-nat))
134
135
136 define KernelPackage/nf-nat6
137 SUBMENU:=$(NF_MENU)
138 TITLE:=Netfilter IPV6-NAT
139 KCONFIG:=$(KCONFIG_NF_NAT6)
140 DEPENDS:=+kmod-nf-conntrack6 +kmod-nf-nat
141 FILES:=$(foreach mod,$(NF_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
142 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT6-m)))
143 endef
144
145 $(eval $(call KernelPackage,nf-nat6))
146
147
148 define KernelPackage/nf-flow
149 SUBMENU:=$(NF_MENU)
150 TITLE:=Netfilter flowtable support
151 KCONFIG:= \
152 CONFIG_NETFILTER_INGRESS=y \
153 CONFIG_NF_FLOW_TABLE \
154 CONFIG_NF_FLOW_TABLE_HW
155 DEPENDS:=+kmod-nf-conntrack @!LINUX_3_18 @!LINUX_4_9
156 FILES:= \
157 $(LINUX_DIR)/net/netfilter/nf_flow_table.ko \
158 $(LINUX_DIR)/net/netfilter/nf_flow_table_hw.ko
159 AUTOLOAD:=$(call AutoProbe,nf_flow_table nf_flow_table_hw)
160 endef
161
162 $(eval $(call KernelPackage,nf-flow))
163
164
165 define AddDepends/ipt
166 SUBMENU:=$(NF_MENU)
167 DEPENDS+= +kmod-ipt-core $(1)
168 endef
169
170
171 define KernelPackage/ipt-conntrack
172 TITLE:=Basic connection tracking modules
173 KCONFIG:=$(KCONFIG_IPT_CONNTRACK)
174 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
175 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK-m)))
176 $(call AddDepends/ipt,+kmod-nf-conntrack)
177 endef
178
179 define KernelPackage/ipt-conntrack/description
180 Netfilter (IPv4) kernel modules for connection tracking
181 Includes:
182 - conntrack
183 - defrag
184 - iptables_raw
185 - NOTRACK
186 - state
187 endef
188
189 $(eval $(call KernelPackage,ipt-conntrack))
190
191
192 define KernelPackage/ipt-conntrack-extra
193 TITLE:=Extra connection tracking modules
194 KCONFIG:=$(KCONFIG_IPT_CONNTRACK_EXTRA)
195 FILES:=$(foreach mod,$(IPT_CONNTRACK_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
196 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK_EXTRA-m)))
197 $(call AddDepends/ipt,+kmod-ipt-conntrack)
198 endef
199
200 define KernelPackage/ipt-conntrack-extra/description
201 Netfilter (IPv4) extra kernel modules for connection tracking
202 Includes:
203 - connbytes
204 - connmark/CONNMARK
205 - conntrack
206 - helper
207 - recent
208 endef
209
210 $(eval $(call KernelPackage,ipt-conntrack-extra))
211
212 define KernelPackage/ipt-conntrack-label
213 TITLE:=Module for handling connection tracking labels
214 KCONFIG:=$(KCONFIG_IPT_CONNTRACK_LABEL)
215 FILES:=$(foreach mod,$(IPT_CONNTRACK_LABEL-m),$(LINUX_DIR)/net/$(mod).ko)
216 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK_LABEL-m)))
217 $(call AddDepends/ipt,+kmod-ipt-conntrack)
218 endef
219
220 define KernelPackage/ipt-conntrack-label/description
221 Netfilter (IPv4) module for handling connection tracking labels
222 Includes:
223 - connlabel
224 endef
225
226 $(eval $(call KernelPackage,ipt-conntrack-label))
227
228 define KernelPackage/ipt-filter
229 TITLE:=Modules for packet content inspection
230 KCONFIG:=$(KCONFIG_IPT_FILTER)
231 FILES:=$(foreach mod,$(IPT_FILTER-m),$(LINUX_DIR)/net/$(mod).ko)
232 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FILTER-m)))
233 $(call AddDepends/ipt,+kmod-lib-textsearch +kmod-ipt-conntrack)
234 endef
235
236 define KernelPackage/ipt-filter/description
237 Netfilter (IPv4) kernel modules for packet content inspection
238 Includes:
239 - string
240 - bpf
241 endef
242
243 $(eval $(call KernelPackage,ipt-filter))
244
245
246 define KernelPackage/ipt-offload
247 TITLE:=Netfilter routing/NAT offload support
248 KCONFIG:=CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD
249 FILES:=$(foreach mod,$(IPT_FLOW-m),$(LINUX_DIR)/net/$(mod).ko)
250 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FLOW-m)))
251 $(call AddDepends/ipt,+kmod-nf-flow)
252 endef
253
254 $(eval $(call KernelPackage,ipt-offload))
255
256
257 define KernelPackage/ipt-ipopt
258 TITLE:=Modules for matching/changing IP packet options
259 KCONFIG:=$(KCONFIG_IPT_IPOPT)
260 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(LINUX_DIR)/net/$(mod).ko)
261 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPOPT-m)))
262 $(call AddDepends/ipt)
263 endef
264
265 define KernelPackage/ipt-ipopt/description
266 Netfilter (IPv4) modules for matching/changing IP packet options
267 Includes:
268 - CLASSIFY
269 - dscp/DSCP
270 - ecn/ECN
271 - hl/HL
272 - length
273 - mark/MARK
274 - statistic
275 - tcpmss
276 - time
277 - ttl/TTL
278 - unclean
279 endef
280
281 $(eval $(call KernelPackage,ipt-ipopt))
282
283
284 define KernelPackage/ipt-ipsec
285 TITLE:=Modules for matching IPSec packets
286 KCONFIG:=$(KCONFIG_IPT_IPSEC)
287 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
288 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPSEC-m)))
289 $(call AddDepends/ipt)
290 endef
291
292 define KernelPackage/ipt-ipsec/description
293 Netfilter (IPv4) modules for matching IPSec packets
294 Includes:
295 - ah
296 - esp
297 - policy
298 endef
299
300 $(eval $(call KernelPackage,ipt-ipsec))
301
302 IPSET_MODULES:= \
303 ipset/ip_set \
304 ipset/ip_set_bitmap_ip \
305 ipset/ip_set_bitmap_ipmac \
306 ipset/ip_set_bitmap_port \
307 ipset/ip_set_hash_ip \
308 ipset/ip_set_hash_ipmark \
309 ipset/ip_set_hash_ipport \
310 ipset/ip_set_hash_ipportip \
311 ipset/ip_set_hash_ipportnet \
312 ipset/ip_set_hash_mac \
313 ipset/ip_set_hash_netportnet \
314 ipset/ip_set_hash_net \
315 ipset/ip_set_hash_netnet \
316 ipset/ip_set_hash_netport \
317 ipset/ip_set_hash_netiface \
318 ipset/ip_set_list_set \
319 xt_set
320
321 define KernelPackage/ipt-ipset
322 SUBMENU:=Netfilter Extensions
323 TITLE:=IPset netfilter modules
324 DEPENDS+= +kmod-ipt-core +kmod-nfnetlink
325 KCONFIG:= \
326 CONFIG_IP_SET \
327 CONFIG_IP_SET_MAX=256 \
328 CONFIG_NETFILTER_XT_SET \
329 CONFIG_IP_SET_BITMAP_IP \
330 CONFIG_IP_SET_BITMAP_IPMAC \
331 CONFIG_IP_SET_BITMAP_PORT \
332 CONFIG_IP_SET_HASH_IP \
333 CONFIG_IP_SET_HASH_IPMARK \
334 CONFIG_IP_SET_HASH_IPPORT \
335 CONFIG_IP_SET_HASH_IPPORTIP \
336 CONFIG_IP_SET_HASH_IPPORTNET \
337 CONFIG_IP_SET_HASH_MAC \
338 CONFIG_IP_SET_HASH_NET \
339 CONFIG_IP_SET_HASH_NETNET \
340 CONFIG_IP_SET_HASH_NETIFACE \
341 CONFIG_IP_SET_HASH_NETPORT \
342 CONFIG_IP_SET_HASH_NETPORTNET \
343 CONFIG_IP_SET_LIST_SET \
344 CONFIG_NET_EMATCH_IPSET=n
345 FILES:=$(foreach mod,$(IPSET_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
346 AUTOLOAD:=$(call AutoLoad,49,$(notdir $(IPSET_MODULES)))
347 endef
348 $(eval $(call KernelPackage,ipt-ipset))
349
350
351 IPVS_MODULES:= \
352 ipvs/ip_vs \
353 ipvs/ip_vs_lc \
354 ipvs/ip_vs_wlc \
355 ipvs/ip_vs_rr \
356 ipvs/ip_vs_wrr \
357 ipvs/ip_vs_lblc \
358 ipvs/ip_vs_lblcr \
359 ipvs/ip_vs_dh \
360 ipvs/ip_vs_sh \
361 ipvs/ip_vs_fo \
362 ipvs/ip_vs_ovf \
363 ipvs/ip_vs_nq \
364 ipvs/ip_vs_sed \
365 xt_ipvs
366
367 define KernelPackage/nf-ipvs
368 SUBMENU:=Netfilter Extensions
369 TITLE:=IP Virtual Server modules
370 DEPENDS:=@IPV6 +kmod-lib-crc32c +kmod-ipt-conntrack +kmod-nf-conntrack
371 KCONFIG:= \
372 CONFIG_IP_VS \
373 CONFIG_IP_VS_IPV6=y \
374 CONFIG_IP_VS_DEBUG=n \
375 CONFIG_IP_VS_PROTO_TCP=y \
376 CONFIG_IP_VS_PROTO_UDP=y \
377 CONFIG_IP_VS_PROTO_AH_ESP=y \
378 CONFIG_IP_VS_PROTO_ESP=y \
379 CONFIG_IP_VS_PROTO_AH=y \
380 CONFIG_IP_VS_PROTO_SCTP=y \
381 CONFIG_IP_VS_TAB_BITS=12 \
382 CONFIG_IP_VS_RR \
383 CONFIG_IP_VS_WRR \
384 CONFIG_IP_VS_LC \
385 CONFIG_IP_VS_WLC \
386 CONFIG_IP_VS_FO \
387 CONFIG_IP_VS_OVF \
388 CONFIG_IP_VS_LBLC \
389 CONFIG_IP_VS_LBLCR \
390 CONFIG_IP_VS_DH \
391 CONFIG_IP_VS_SH \
392 CONFIG_IP_VS_SED \
393 CONFIG_IP_VS_NQ \
394 CONFIG_IP_VS_SH_TAB_BITS=8 \
395 CONFIG_IP_VS_NFCT=y \
396 CONFIG_NETFILTER_XT_MATCH_IPVS
397 FILES:=$(foreach mod,$(IPVS_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
398 $(call AddDepends/ipt,+kmod-ipt-conntrack,+kmod-nf-conntrack)
399 endef
400
401 define KernelPackage/nf-ipvs/description
402 IPVS (IP Virtual Server) implements transport-layer load balancing inside
403 the Linux kernel so called Layer-4 switching.
404 endef
405
406 $(eval $(call KernelPackage,nf-ipvs))
407
408
409 define KernelPackage/nf-ipvs-ftp
410 SUBMENU:=$(NF_MENU)
411 TITLE:=Virtual Server FTP protocol support
412 KCONFIG:=CONFIG_IP_VS_FTP
413 DEPENDS:=kmod-nf-ipvs +kmod-nf-nat +kmod-nf-nathelper
414 FILES:=$(LINUX_DIR)/net/netfilter/ipvs/ip_vs_ftp.ko
415 endef
416
417 define KernelPackage/nf-ipvs-ftp/description
418 In the virtual server via Network Address Translation,
419 the IP address and port number of real servers cannot be sent to
420 clients in ftp connections directly, so FTP protocol helper is
421 required for tracking the connection and mangling it back to that of
422 virtual service.
423 endef
424
425 $(eval $(call KernelPackage,nf-ipvs-ftp))
426
427
428 define KernelPackage/nf-ipvs-sip
429 SUBMENU:=$(NF_MENU)
430 TITLE:=Virtual Server SIP protocol support
431 KCONFIG:=CONFIG_IP_VS_PE_SIP
432 DEPENDS:=kmod-nf-ipvs +kmod-nf-nathelper-extra
433 FILES:=$(LINUX_DIR)/net/netfilter/ipvs/ip_vs_pe_sip.ko
434 endef
435
436 define KernelPackage/nf-ipvs-sip/description
437 Allow persistence based on the SIP Call-ID
438 endef
439
440 $(eval $(call KernelPackage,nf-ipvs-sip))
441
442
443 define KernelPackage/ipt-nat
444 TITLE:=Basic NAT targets
445 KCONFIG:=$(KCONFIG_IPT_NAT)
446 FILES:=$(foreach mod,$(IPT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
447 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT-m)))
448 $(call AddDepends/ipt,+kmod-nf-nat)
449 endef
450
451 define KernelPackage/ipt-nat/description
452 Netfilter (IPv4) kernel modules for basic NAT targets
453 Includes:
454 - MASQUERADE
455 endef
456
457 $(eval $(call KernelPackage,ipt-nat))
458
459
460 define KernelPackage/ipt-raw
461 TITLE:=Netfilter IPv4 raw table support
462 KCONFIG:=CONFIG_IP_NF_RAW
463 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/iptable_raw.ko
464 AUTOLOAD:=$(call AutoProbe,iptable_raw)
465 $(call AddDepends/ipt)
466 endef
467
468 $(eval $(call KernelPackage,ipt-raw))
469
470
471 define KernelPackage/ipt-raw6
472 TITLE:=Netfilter IPv6 raw table support
473 KCONFIG:=CONFIG_IP6_NF_RAW
474 FILES:=$(LINUX_DIR)/net/ipv6/netfilter/ip6table_raw.ko
475 AUTOLOAD:=$(call AutoProbe,ip6table_raw)
476 $(call AddDepends/ipt,+kmod-ip6tables)
477 endef
478
479 $(eval $(call KernelPackage,ipt-raw6))
480
481
482 define KernelPackage/ipt-nat6
483 TITLE:=IPv6 NAT targets
484 KCONFIG:=$(KCONFIG_IPT_NAT6)
485 FILES:=$(foreach mod,$(IPT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
486 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_NAT6-m)))
487 $(call AddDepends/ipt,+kmod-nf-nat6)
488 $(call AddDepends/ipt,+kmod-ipt-conntrack)
489 $(call AddDepends/ipt,+kmod-ipt-nat)
490 $(call AddDepends/ipt,+kmod-ip6tables)
491 endef
492
493 define KernelPackage/ipt-nat6/description
494 Netfilter (IPv6) kernel modules for NAT targets
495 endef
496
497 $(eval $(call KernelPackage,ipt-nat6))
498
499
500 define KernelPackage/ipt-nat-extra
501 TITLE:=Extra NAT targets
502 KCONFIG:=$(KCONFIG_IPT_NAT_EXTRA)
503 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
504 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT_EXTRA-m)))
505 $(call AddDepends/ipt,+kmod-ipt-nat)
506 endef
507
508 define KernelPackage/ipt-nat-extra/description
509 Netfilter (IPv4) kernel modules for extra NAT targets
510 Includes:
511 - NETMAP
512 - REDIRECT
513 endef
514
515 $(eval $(call KernelPackage,ipt-nat-extra))
516
517
518 define KernelPackage/nf-nathelper
519 SUBMENU:=$(NF_MENU)
520 TITLE:=Basic Conntrack and NAT helpers
521 KCONFIG:=$(KCONFIG_NF_NATHELPER)
522 FILES:=$(foreach mod,$(NF_NATHELPER-m),$(LINUX_DIR)/net/$(mod).ko)
523 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER-m)))
524 DEPENDS:=+kmod-nf-nat
525 endef
526
527 define KernelPackage/nf-nathelper/description
528 Default Netfilter (IPv4) Conntrack and NAT helpers
529 Includes:
530 - ftp
531 endef
532
533 $(eval $(call KernelPackage,nf-nathelper))
534
535
536 define KernelPackage/nf-nathelper-extra
537 SUBMENU:=$(NF_MENU)
538 TITLE:=Extra Conntrack and NAT helpers
539 KCONFIG:=$(KCONFIG_NF_NATHELPER_EXTRA)
540 FILES:=$(foreach mod,$(NF_NATHELPER_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
541 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER_EXTRA-m)))
542 DEPENDS:=+kmod-nf-nat +kmod-lib-textsearch +kmod-ipt-raw +LINUX_4_19:kmod-asn1-decoder
543 endef
544
545 define KernelPackage/nf-nathelper-extra/description
546 Extra Netfilter (IPv4) Conntrack and NAT helpers
547 Includes:
548 - amanda
549 - h323
550 - irc
551 - mms
552 - pptp
553 - proto_gre
554 - sip
555 - snmp_basic
556 - tftp
557 - broadcast
558 endef
559
560 $(eval $(call KernelPackage,nf-nathelper-extra))
561
562
563 define KernelPackage/ipt-ulog
564 TITLE:=Module for user-space packet logging
565 KCONFIG:=$(KCONFIG_IPT_ULOG)
566 FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).ko)
567 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_ULOG-m)))
568 $(call AddDepends/ipt)
569 endef
570
571 define KernelPackage/ipt-ulog/description
572 Netfilter (IPv4) module for user-space packet logging
573 Includes:
574 - ULOG
575 endef
576
577 $(eval $(call KernelPackage,ipt-ulog))
578
579
580 define KernelPackage/ipt-nflog
581 TITLE:=Module for user-space packet logging
582 KCONFIG:=$(KCONFIG_IPT_NFLOG)
583 FILES:=$(foreach mod,$(IPT_NFLOG-m),$(LINUX_DIR)/net/$(mod).ko)
584 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFLOG-m)))
585 $(call AddDepends/ipt,+kmod-nfnetlink-log)
586 endef
587
588 define KernelPackage/ipt-nflog/description
589 Netfilter module for user-space packet logging
590 Includes:
591 - NFLOG
592 endef
593
594 $(eval $(call KernelPackage,ipt-nflog))
595
596
597 define KernelPackage/ipt-nfqueue
598 TITLE:=Module for user-space packet queuing
599 KCONFIG:=$(KCONFIG_IPT_NFQUEUE)
600 FILES:=$(foreach mod,$(IPT_NFQUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
601 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFQUEUE-m)))
602 $(call AddDepends/ipt,+kmod-nfnetlink-queue)
603 endef
604
605 define KernelPackage/ipt-nfqueue/description
606 Netfilter module for user-space packet queuing
607 Includes:
608 - NFQUEUE
609 endef
610
611 $(eval $(call KernelPackage,ipt-nfqueue))
612
613
614 define KernelPackage/ipt-debug
615 TITLE:=Module for debugging/development
616 KCONFIG:=$(KCONFIG_IPT_DEBUG)
617 FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko)
618 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m)))
619 $(call AddDepends/ipt,+kmod-ipt-raw +IPV6:kmod-ipt-raw6)
620 endef
621
622 define KernelPackage/ipt-debug/description
623 Netfilter modules for debugging/development of the firewall
624 Includes:
625 - TRACE
626 endef
627
628 $(eval $(call KernelPackage,ipt-debug))
629
630
631 define KernelPackage/ipt-led
632 TITLE:=Module to trigger a LED with a Netfilter rule
633 KCONFIG:=$(KCONFIG_IPT_LED)
634 FILES:=$(foreach mod,$(IPT_LED-m),$(LINUX_DIR)/net/$(mod).ko)
635 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_LED-m)))
636 $(call AddDepends/ipt)
637 endef
638
639 define KernelPackage/ipt-led/description
640 Netfilter target to trigger a LED when a network packet is matched.
641 endef
642
643 $(eval $(call KernelPackage,ipt-led))
644
645 define KernelPackage/ipt-tproxy
646 TITLE:=Transparent proxying support
647 DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables
648 KCONFIG:= \
649 CONFIG_NETFILTER_XT_MATCH_SOCKET \
650 CONFIG_NETFILTER_XT_TARGET_TPROXY
651 FILES:= \
652 $(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
653 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_TPROXY-m)))
654 $(call AddDepends/ipt)
655 endef
656
657 define KernelPackage/ipt-tproxy/description
658 Kernel modules for Transparent Proxying
659 endef
660
661 $(eval $(call KernelPackage,ipt-tproxy))
662
663 define KernelPackage/ipt-tee
664 TITLE:=TEE support
665 DEPENDS:=+kmod-ipt-conntrack
666 KCONFIG:= \
667 CONFIG_NETFILTER_XT_TARGET_TEE
668 FILES:= \
669 $(LINUX_DIR)/net/netfilter/xt_TEE.ko \
670 $(foreach mod,$(IPT_TEE-m),$(LINUX_DIR)/net/$(mod).ko)
671 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_TEE-m)))
672 $(call AddDepends/ipt)
673 endef
674
675 define KernelPackage/ipt-tee/description
676 Kernel modules for TEE
677 endef
678
679 $(eval $(call KernelPackage,ipt-tee))
680
681
682 define KernelPackage/ipt-u32
683 TITLE:=U32 support
684 KCONFIG:= \
685 CONFIG_NETFILTER_XT_MATCH_U32
686 FILES:= \
687 $(LINUX_DIR)/net/netfilter/xt_u32.ko \
688 $(foreach mod,$(IPT_U32-m),$(LINUX_DIR)/net/$(mod).ko)
689 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_U32-m)))
690 $(call AddDepends/ipt)
691 endef
692
693 define KernelPackage/ipt-u32/description
694 Kernel modules for U32
695 endef
696
697 $(eval $(call KernelPackage,ipt-u32))
698
699 define KernelPackage/ipt-checksum
700 TITLE:=CHECKSUM support
701 KCONFIG:= \
702 CONFIG_NETFILTER_XT_TARGET_CHECKSUM
703 FILES:= \
704 $(LINUX_DIR)/net/netfilter/xt_CHECKSUM.ko \
705 $(foreach mod,$(IPT_CHECKSUM-m),$(LINUX_DIR)/net/$(mod).ko)
706 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CHECKSUM-m)))
707 $(call AddDepends/ipt)
708 endef
709
710 define KernelPackage/ipt-checksum/description
711 Kernel modules for CHECKSUM fillin target
712 endef
713
714 $(eval $(call KernelPackage,ipt-checksum))
715
716
717 define KernelPackage/ipt-iprange
718 TITLE:=Module for matching ip ranges
719 KCONFIG:=$(KCONFIG_IPT_IPRANGE)
720 FILES:=$(foreach mod,$(IPT_IPRANGE-m),$(LINUX_DIR)/net/$(mod).ko)
721 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPRANGE-m)))
722 $(call AddDepends/ipt)
723 endef
724
725 define KernelPackage/ipt-iprange/description
726 Netfilter (IPv4) module for matching ip ranges
727 Includes:
728 - iprange
729 endef
730
731 $(eval $(call KernelPackage,ipt-iprange))
732
733 define KernelPackage/ipt-cluster
734 TITLE:=Module for matching cluster
735 KCONFIG:=$(KCONFIG_IPT_CLUSTER)
736 FILES:=$(foreach mod,$(IPT_CLUSTER-m),$(LINUX_DIR)/net/$(mod).ko)
737 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTER-m)))
738 $(call AddDepends/ipt,+kmod-nf-conntrack)
739 endef
740
741 define KernelPackage/ipt-cluster/description
742 Netfilter (IPv4/IPv6) module for matching cluster
743 This option allows you to build work-load-sharing clusters of
744 network servers/stateful firewalls without having a dedicated
745 load-balancing router/server/switch. Basically, this match returns
746 true when the packet must be handled by this cluster node. Thus,
747 all nodes see all packets and this match decides which node handles
748 what packets. The work-load sharing algorithm is based on source
749 address hashing.
750
751 This module is usable for ipv4 and ipv6.
752
753 To use it also enable iptables-mod-cluster
754
755 see `iptables -m cluster --help` for more information.
756 endef
757
758 $(eval $(call KernelPackage,ipt-cluster))
759
760 define KernelPackage/ipt-clusterip
761 TITLE:=Module for CLUSTERIP
762 KCONFIG:=$(KCONFIG_IPT_CLUSTERIP)
763 FILES:=$(foreach mod,$(IPT_CLUSTERIP-m),$(LINUX_DIR)/net/$(mod).ko)
764 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTERIP-m)))
765 $(call AddDepends/ipt,+kmod-nf-conntrack)
766 endef
767
768 define KernelPackage/ipt-clusterip/description
769 Netfilter (IPv4-only) module for CLUSTERIP
770 The CLUSTERIP target allows you to build load-balancing clusters of
771 network servers without having a dedicated load-balancing
772 router/server/switch.
773
774 To use it also enable iptables-mod-clusterip
775
776 see `iptables -j CLUSTERIP --help` for more information.
777 endef
778
779 $(eval $(call KernelPackage,ipt-clusterip))
780
781
782 define KernelPackage/ipt-extra
783 TITLE:=Extra modules
784 KCONFIG:=$(KCONFIG_IPT_EXTRA)
785 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
786 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_EXTRA-m)))
787 $(call AddDepends/ipt)
788 endef
789
790 define KernelPackage/ipt-extra/description
791 Other Netfilter (IPv4) kernel modules
792 Includes:
793 - addrtype
794 - owner
795 - pkttype
796 - quota
797 endef
798
799 $(eval $(call KernelPackage,ipt-extra))
800
801
802 define KernelPackage/ipt-physdev
803 TITLE:=physdev module
804 KCONFIG:=$(KCONFIG_IPT_PHYSDEV)
805 FILES:=$(foreach mod,$(IPT_PHYSDEV-m),$(LINUX_DIR)/net/$(mod).ko)
806 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_PHYSDEV-m)))
807 $(call AddDepends/ipt,+kmod-br-netfilter)
808 endef
809
810 define KernelPackage/ipt-physdev/description
811 The iptables physdev kernel module
812 endef
813
814 $(eval $(call KernelPackage,ipt-physdev))
815
816
817 define KernelPackage/ip6tables
818 SUBMENU:=$(NF_MENU)
819 TITLE:=IPv6 modules
820 DEPENDS:=+kmod-nf-reject6 +kmod-nf-ipt6 +kmod-ipt-core
821 KCONFIG:=$(KCONFIG_IPT_IPV6)
822 FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko)
823 AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m)))
824 endef
825
826 define KernelPackage/ip6tables/description
827 Netfilter IPv6 firewalling support
828 endef
829
830 $(eval $(call KernelPackage,ip6tables))
831
832 define KernelPackage/ip6tables-extra
833 SUBMENU:=$(NF_MENU)
834 TITLE:=Extra IPv6 modules
835 DEPENDS:=+kmod-ip6tables
836 KCONFIG:=$(KCONFIG_IPT_IPV6_EXTRA)
837 FILES:=$(foreach mod,$(IPT_IPV6_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
838 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_IPV6_EXTRA-m)))
839 endef
840
841 define KernelPackage/ip6tables-extra/description
842 Netfilter IPv6 extra header matching modules
843 endef
844
845 $(eval $(call KernelPackage,ip6tables-extra))
846
847 ARP_MODULES = arp_tables arpt_mangle arptable_filter
848 define KernelPackage/arptables
849 SUBMENU:=$(NF_MENU)
850 TITLE:=ARP firewalling modules
851 DEPENDS:=+kmod-ipt-core
852 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/arp*.ko
853 KCONFIG:=CONFIG_IP_NF_ARPTABLES \
854 CONFIG_IP_NF_ARPFILTER \
855 CONFIG_IP_NF_ARP_MANGLE
856 AUTOLOAD:=$(call AutoProbe,$(ARP_MODULES))
857 endef
858
859 define KernelPackage/arptables/description
860 Kernel modules for ARP firewalling
861 endef
862
863 $(eval $(call KernelPackage,arptables))
864
865
866 define KernelPackage/br-netfilter
867 SUBMENU:=$(NF_MENU)
868 TITLE:=Bridge netfilter support modules
869 DEPENDS:=+kmod-ipt-core
870 FILES:=$(LINUX_DIR)/net/bridge/br_netfilter.ko
871 KCONFIG:=CONFIG_BRIDGE_NETFILTER
872 AUTOLOAD:=$(call AutoProbe,br_netfilter)
873 endef
874
875 define KernelPackage/br-netfilter/install
876 $(INSTALL_DIR) $(1)/etc/sysctl.d
877 $(INSTALL_DATA) ./files/sysctl-br-netfilter.conf $(1)/etc/sysctl.d/11-br-netfilter.conf
878 endef
879
880 $(eval $(call KernelPackage,br-netfilter))
881
882
883 define KernelPackage/ebtables
884 SUBMENU:=$(NF_MENU)
885 TITLE:=Bridge firewalling modules
886 DEPENDS:=+kmod-ipt-core
887 FILES:=$(foreach mod,$(EBTABLES-m),$(LINUX_DIR)/net/$(mod).ko)
888 KCONFIG:=$(KCONFIG_EBTABLES)
889 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES-m)))
890 endef
891
892 define KernelPackage/ebtables/description
893 ebtables is a general, extensible frame/packet identification
894 framework. It provides you to do Ethernet
895 filtering/NAT/brouting on the Ethernet bridge.
896 endef
897
898 $(eval $(call KernelPackage,ebtables))
899
900
901 define AddDepends/ebtables
902 SUBMENU:=$(NF_MENU)
903 DEPENDS+= +kmod-ebtables $(1)
904 endef
905
906
907 define KernelPackage/ebtables-ipv4
908 TITLE:=ebtables: IPv4 support
909 FILES:=$(foreach mod,$(EBTABLES_IP4-m),$(LINUX_DIR)/net/$(mod).ko)
910 KCONFIG:=$(KCONFIG_EBTABLES_IP4)
911 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP4-m)))
912 $(call AddDepends/ebtables)
913 endef
914
915 define KernelPackage/ebtables-ipv4/description
916 This option adds the IPv4 support to ebtables, which allows basic
917 IPv4 header field filtering, ARP filtering as well as SNAT, DNAT targets.
918 endef
919
920 $(eval $(call KernelPackage,ebtables-ipv4))
921
922
923 define KernelPackage/ebtables-ipv6
924 TITLE:=ebtables: IPv6 support
925 FILES:=$(foreach mod,$(EBTABLES_IP6-m),$(LINUX_DIR)/net/$(mod).ko)
926 KCONFIG:=$(KCONFIG_EBTABLES_IP6)
927 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP6-m)))
928 $(call AddDepends/ebtables)
929 endef
930
931 define KernelPackage/ebtables-ipv6/description
932 This option adds the IPv6 support to ebtables, which allows basic
933 IPv6 header field filtering and target support.
934 endef
935
936 $(eval $(call KernelPackage,ebtables-ipv6))
937
938
939 define KernelPackage/ebtables-watchers
940 TITLE:=ebtables: watchers support
941 FILES:=$(foreach mod,$(EBTABLES_WATCHERS-m),$(LINUX_DIR)/net/$(mod).ko)
942 KCONFIG:=$(KCONFIG_EBTABLES_WATCHERS)
943 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_WATCHERS-m)))
944 $(call AddDepends/ebtables)
945 endef
946
947 define KernelPackage/ebtables-watchers/description
948 This option adds the log watchers, that you can use in any rule
949 in any ebtables table.
950 endef
951
952 $(eval $(call KernelPackage,ebtables-watchers))
953
954
955 define KernelPackage/nfnetlink
956 SUBMENU:=$(NF_MENU)
957 TITLE:=Netlink-based userspace interface
958 FILES:=$(foreach mod,$(NFNETLINK-m),$(LINUX_DIR)/net/$(mod).ko)
959 KCONFIG:=$(KCONFIG_NFNETLINK)
960 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK-m)))
961 endef
962
963 define KernelPackage/nfnetlink/description
964 Kernel modules support for a netlink-based userspace interface
965 endef
966
967 $(eval $(call KernelPackage,nfnetlink))
968
969
970 define AddDepends/nfnetlink
971 SUBMENU:=$(NF_MENU)
972 DEPENDS+=+kmod-nfnetlink $(1)
973 endef
974
975
976 define KernelPackage/nfnetlink-log
977 TITLE:=Netfilter LOG over NFNETLINK interface
978 FILES:=$(foreach mod,$(NFNETLINK_LOG-m),$(LINUX_DIR)/net/$(mod).ko)
979 KCONFIG:=$(KCONFIG_NFNETLINK_LOG)
980 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_LOG-m)))
981 $(call AddDepends/nfnetlink)
982 endef
983
984 define KernelPackage/nfnetlink-log/description
985 Kernel modules support for logging packets via NFNETLINK
986 Includes:
987 - NFLOG
988 endef
989
990 $(eval $(call KernelPackage,nfnetlink-log))
991
992
993 define KernelPackage/nfnetlink-queue
994 TITLE:=Netfilter QUEUE over NFNETLINK interface
995 FILES:=$(foreach mod,$(NFNETLINK_QUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
996 KCONFIG:=$(KCONFIG_NFNETLINK_QUEUE)
997 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_QUEUE-m)))
998 $(call AddDepends/nfnetlink)
999 endef
1000
1001 define KernelPackage/nfnetlink-queue/description
1002 Kernel modules support for queueing packets via NFNETLINK
1003 Includes:
1004 - NFQUEUE
1005 endef
1006
1007 $(eval $(call KernelPackage,nfnetlink-queue))
1008
1009
1010 define KernelPackage/nf-conntrack-netlink
1011 TITLE:=Connection tracking netlink interface
1012 FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
1013 KCONFIG:=CONFIG_NF_CT_NETLINK CONFIG_NF_CONNTRACK_EVENTS=y
1014 AUTOLOAD:=$(call AutoProbe,nf_conntrack_netlink)
1015 $(call AddDepends/nfnetlink,+kmod-ipt-conntrack)
1016 endef
1017
1018 define KernelPackage/nf-conntrack-netlink/description
1019 Kernel modules support for a netlink-based connection tracking
1020 userspace interface
1021 endef
1022
1023 $(eval $(call KernelPackage,nf-conntrack-netlink))
1024
1025 define KernelPackage/ipt-hashlimit
1026 SUBMENU:=$(NF_MENU)
1027 TITLE:=Netfilter hashlimit match
1028 DEPENDS:=+kmod-ipt-core
1029 KCONFIG:=$(KCONFIG_IPT_HASHLIMIT)
1030 FILES:=$(LINUX_DIR)/net/netfilter/xt_hashlimit.ko
1031 AUTOLOAD:=$(call AutoProbe,xt_hashlimit)
1032 $(call KernelPackage/ipt)
1033 endef
1034
1035 define KernelPackage/ipt-hashlimit/description
1036 Kernel modules support for the hashlimit bucket match module
1037 endef
1038
1039 $(eval $(call KernelPackage,ipt-hashlimit))
1040
1041 define KernelPackage/ipt-rpfilter
1042 SUBMENU:=$(NF_MENU)
1043 TITLE:=Netfilter rpfilter match
1044 DEPENDS:=+kmod-ipt-core
1045 KCONFIG:=$(KCONFIG_IPT_RPFILTER)
1046 FILES:=$(realpath \
1047 $(LINUX_DIR)/net/ipv4/netfilter/ipt_rpfilter.ko \
1048 $(LINUX_DIR)/net/ipv6/netfilter/ip6t_rpfilter.ko)
1049 AUTOLOAD:=$(call AutoProbe,ipt_rpfilter ip6t_rpfilter)
1050 $(call KernelPackage/ipt)
1051 endef
1052
1053 define KernelPackage/ipt-rpfilter/description
1054 Kernel modules support for the Netfilter rpfilter match
1055 endef
1056
1057 $(eval $(call KernelPackage,ipt-rpfilter))
1058
1059
1060 define KernelPackage/nft-core
1061 SUBMENU:=$(NF_MENU)
1062 TITLE:=Netfilter nf_tables support
1063 DEPENDS:=+kmod-nfnetlink +kmod-nf-reject +kmod-nf-reject6 +kmod-nf-conntrack6
1064 FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
1065 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
1066 KCONFIG:= \
1067 CONFIG_NFT_COMPAT=n \
1068 CONFIG_NFT_QUEUE=n \
1069 $(KCONFIG_NFT_CORE)
1070 endef
1071
1072 define KernelPackage/nft-core/description
1073 Kernel module support for nftables
1074 endef
1075
1076 $(eval $(call KernelPackage,nft-core))
1077
1078
1079 define KernelPackage/nft-arp
1080 SUBMENU:=$(NF_MENU)
1081 TITLE:=Netfilter nf_tables ARP table support
1082 DEPENDS:=+kmod-nft-core
1083 FILES:=$(foreach mod,$(NFT_ARP-m),$(LINUX_DIR)/net/$(mod).ko)
1084 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_ARP-m)))
1085 KCONFIG:=$(KCONFIG_NFT_ARP)
1086 endef
1087
1088 $(eval $(call KernelPackage,nft-arp))
1089
1090
1091 define KernelPackage/nft-bridge
1092 SUBMENU:=$(NF_MENU)
1093 TITLE:=Netfilter nf_tables bridge table support
1094 DEPENDS:=+kmod-nft-core
1095 FILES:=$(foreach mod,$(NFT_BRIDGE-m),$(LINUX_DIR)/net/$(mod).ko)
1096 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_BRIDGE-m)))
1097 KCONFIG:= \
1098 CONFIG_NF_LOG_BRIDGE=n \
1099 $(KCONFIG_NFT_BRIDGE)
1100 endef
1101
1102 $(eval $(call KernelPackage,nft-bridge))
1103
1104
1105 define KernelPackage/nft-nat
1106 SUBMENU:=$(NF_MENU)
1107 TITLE:=Netfilter nf_tables NAT support
1108 DEPENDS:=+kmod-nft-core +kmod-nf-nat
1109 FILES:=$(foreach mod,$(NFT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
1110 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m)))
1111 KCONFIG:=$(KCONFIG_NFT_NAT)
1112 endef
1113
1114 $(eval $(call KernelPackage,nft-nat))
1115
1116
1117 define KernelPackage/nft-offload
1118 SUBMENU:=$(NF_MENU)
1119 TITLE:=Netfilter nf_tables routing/NAT offload support
1120 DEPENDS:=+kmod-nf-flow +kmod-nft-nat
1121 KCONFIG:= \
1122 CONFIG_NF_FLOW_TABLE_INET \
1123 CONFIG_NF_FLOW_TABLE_IPV4 \
1124 CONFIG_NF_FLOW_TABLE_IPV6 \
1125 CONFIG_NFT_FLOW_OFFLOAD
1126 FILES:= \
1127 $(LINUX_DIR)/net/netfilter/nf_flow_table_inet.ko \
1128 $(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko \
1129 $(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko \
1130 $(LINUX_DIR)/net/netfilter/nft_flow_offload.ko
1131 AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4 nf_flow_table_ipv6 nft_flow_offload)
1132 endef
1133
1134 $(eval $(call KernelPackage,nft-offload))
1135
1136
1137 define KernelPackage/nft-nat6
1138 SUBMENU:=$(NF_MENU)
1139 TITLE:=Netfilter nf_tables IPv6-NAT support
1140 DEPENDS:=+kmod-nft-nat +kmod-nf-nat6
1141 FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
1142 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
1143 KCONFIG:=$(KCONFIG_NFT_NAT6)
1144 endef
1145
1146 $(eval $(call KernelPackage,nft-nat6))
1147
1148 define KernelPackage/nft-netdev
1149 SUBMENU:=$(NF_MENU)
1150 TITLE:=Netfilter nf_tables netdev support
1151 DEPENDS:=+kmod-nft-core
1152 KCONFIG:= \
1153 CONFIG_NETFILTER_INGRESS=y \
1154 CONFIG_NF_TABLES_NETDEV \
1155 CONFIG_NF_DUP_NETDEV \
1156 CONFIG_NFT_DUP_NETDEV \
1157 CONFIG_NFT_FWD_NETDEV
1158 FILES:= \
1159 $(LINUX_DIR)/net/netfilter/nf_tables_netdev.ko \
1160 $(LINUX_DIR)/net/netfilter/nf_dup_netdev.ko \
1161 $(LINUX_DIR)/net/netfilter/nft_dup_netdev.ko \
1162 $(LINUX_DIR)/net/netfilter/nft_fwd_netdev.ko
1163 AUTOLOAD:=$(call AutoProbe,nf_tables_netdev nf_dup_netdev nft_dup_netdev nft_fwd_netdev)
1164 endef
1165
1166 $(eval $(call KernelPackage,nft-netdev))