kernel: remove obsolete kernel version switches
[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
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:=$(KCONFIG_IPT_FLOW)
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_IPMAC \
334 CONFIG_IP_SET_HASH_IPMARK \
335 CONFIG_IP_SET_HASH_IPPORT \
336 CONFIG_IP_SET_HASH_IPPORTIP \
337 CONFIG_IP_SET_HASH_IPPORTNET \
338 CONFIG_IP_SET_HASH_MAC \
339 CONFIG_IP_SET_HASH_NET \
340 CONFIG_IP_SET_HASH_NETNET \
341 CONFIG_IP_SET_HASH_NETIFACE \
342 CONFIG_IP_SET_HASH_NETPORT \
343 CONFIG_IP_SET_HASH_NETPORTNET \
344 CONFIG_IP_SET_LIST_SET \
345 CONFIG_NET_EMATCH_IPSET=n
346 FILES:=$(foreach mod,$(IPSET_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
347 AUTOLOAD:=$(call AutoLoad,49,$(notdir $(IPSET_MODULES)))
348 endef
349 $(eval $(call KernelPackage,ipt-ipset))
350
351
352 IPVS_MODULES:= \
353 ipvs/ip_vs \
354 ipvs/ip_vs_lc \
355 ipvs/ip_vs_wlc \
356 ipvs/ip_vs_rr \
357 ipvs/ip_vs_wrr \
358 ipvs/ip_vs_lblc \
359 ipvs/ip_vs_lblcr \
360 ipvs/ip_vs_dh \
361 ipvs/ip_vs_sh \
362 ipvs/ip_vs_fo \
363 ipvs/ip_vs_ovf \
364 ipvs/ip_vs_nq \
365 ipvs/ip_vs_sed \
366 xt_ipvs
367
368 define KernelPackage/nf-ipvs
369 SUBMENU:=Netfilter Extensions
370 TITLE:=IP Virtual Server modules
371 DEPENDS:=@IPV6 +kmod-lib-crc32c +kmod-ipt-conntrack +kmod-nf-conntrack +LINUX_4_14:kmod-nf-conntrack6
372 KCONFIG:= \
373 CONFIG_IP_VS \
374 CONFIG_IP_VS_IPV6=y \
375 CONFIG_IP_VS_DEBUG=n \
376 CONFIG_IP_VS_PROTO_TCP=y \
377 CONFIG_IP_VS_PROTO_UDP=y \
378 CONFIG_IP_VS_PROTO_AH_ESP=y \
379 CONFIG_IP_VS_PROTO_ESP=y \
380 CONFIG_IP_VS_PROTO_AH=y \
381 CONFIG_IP_VS_PROTO_SCTP=y \
382 CONFIG_IP_VS_TAB_BITS=12 \
383 CONFIG_IP_VS_RR \
384 CONFIG_IP_VS_WRR \
385 CONFIG_IP_VS_LC \
386 CONFIG_IP_VS_WLC \
387 CONFIG_IP_VS_FO \
388 CONFIG_IP_VS_OVF \
389 CONFIG_IP_VS_LBLC \
390 CONFIG_IP_VS_LBLCR \
391 CONFIG_IP_VS_DH \
392 CONFIG_IP_VS_SH \
393 CONFIG_IP_VS_SED \
394 CONFIG_IP_VS_NQ \
395 CONFIG_IP_VS_SH_TAB_BITS=8 \
396 CONFIG_IP_VS_NFCT=y \
397 CONFIG_NETFILTER_XT_MATCH_IPVS
398 FILES:=$(foreach mod,$(IPVS_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
399 $(call AddDepends/ipt,+kmod-ipt-conntrack,+kmod-nf-conntrack)
400 endef
401
402 define KernelPackage/nf-ipvs/description
403 IPVS (IP Virtual Server) implements transport-layer load balancing inside
404 the Linux kernel so called Layer-4 switching.
405 endef
406
407 $(eval $(call KernelPackage,nf-ipvs))
408
409
410 define KernelPackage/nf-ipvs-ftp
411 SUBMENU:=$(NF_MENU)
412 TITLE:=Virtual Server FTP protocol support
413 KCONFIG:=CONFIG_IP_VS_FTP
414 DEPENDS:=kmod-nf-ipvs +kmod-nf-nat +kmod-nf-nathelper
415 FILES:=$(LINUX_DIR)/net/netfilter/ipvs/ip_vs_ftp.ko
416 endef
417
418 define KernelPackage/nf-ipvs-ftp/description
419 In the virtual server via Network Address Translation,
420 the IP address and port number of real servers cannot be sent to
421 clients in ftp connections directly, so FTP protocol helper is
422 required for tracking the connection and mangling it back to that of
423 virtual service.
424 endef
425
426 $(eval $(call KernelPackage,nf-ipvs-ftp))
427
428
429 define KernelPackage/nf-ipvs-sip
430 SUBMENU:=$(NF_MENU)
431 TITLE:=Virtual Server SIP protocol support
432 KCONFIG:=CONFIG_IP_VS_PE_SIP
433 DEPENDS:=kmod-nf-ipvs +kmod-nf-nathelper-extra
434 FILES:=$(LINUX_DIR)/net/netfilter/ipvs/ip_vs_pe_sip.ko
435 endef
436
437 define KernelPackage/nf-ipvs-sip/description
438 Allow persistence based on the SIP Call-ID
439 endef
440
441 $(eval $(call KernelPackage,nf-ipvs-sip))
442
443
444 define KernelPackage/ipt-nat
445 TITLE:=Basic NAT targets
446 KCONFIG:=$(KCONFIG_IPT_NAT)
447 FILES:=$(foreach mod,$(IPT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
448 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT-m)))
449 $(call AddDepends/ipt,+kmod-nf-nat)
450 endef
451
452 define KernelPackage/ipt-nat/description
453 Netfilter (IPv4) kernel modules for basic NAT targets
454 Includes:
455 - MASQUERADE
456 endef
457
458 $(eval $(call KernelPackage,ipt-nat))
459
460
461 define KernelPackage/ipt-raw
462 TITLE:=Netfilter IPv4 raw table support
463 KCONFIG:=CONFIG_IP_NF_RAW
464 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/iptable_raw.ko
465 AUTOLOAD:=$(call AutoProbe,iptable_raw)
466 $(call AddDepends/ipt)
467 endef
468
469 $(eval $(call KernelPackage,ipt-raw))
470
471
472 define KernelPackage/ipt-raw6
473 TITLE:=Netfilter IPv6 raw table support
474 KCONFIG:=CONFIG_IP6_NF_RAW
475 FILES:=$(LINUX_DIR)/net/ipv6/netfilter/ip6table_raw.ko
476 AUTOLOAD:=$(call AutoProbe,ip6table_raw)
477 $(call AddDepends/ipt,+kmod-ip6tables)
478 endef
479
480 $(eval $(call KernelPackage,ipt-raw6))
481
482
483 define KernelPackage/ipt-nat6
484 TITLE:=IPv6 NAT targets
485 KCONFIG:=$(KCONFIG_IPT_NAT6)
486 FILES:=$(foreach mod,$(IPT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
487 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_NAT6-m)))
488 $(call AddDepends/ipt,+kmod-nf-nat6)
489 $(call AddDepends/ipt,+kmod-ipt-conntrack)
490 $(call AddDepends/ipt,+kmod-ipt-nat)
491 $(call AddDepends/ipt,+kmod-ip6tables)
492 endef
493
494 define KernelPackage/ipt-nat6/description
495 Netfilter (IPv6) kernel modules for NAT targets
496 endef
497
498 $(eval $(call KernelPackage,ipt-nat6))
499
500
501 define KernelPackage/ipt-nat-extra
502 TITLE:=Extra NAT targets
503 KCONFIG:=$(KCONFIG_IPT_NAT_EXTRA)
504 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
505 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT_EXTRA-m)))
506 $(call AddDepends/ipt,+kmod-ipt-nat)
507 endef
508
509 define KernelPackage/ipt-nat-extra/description
510 Netfilter (IPv4) kernel modules for extra NAT targets
511 Includes:
512 - NETMAP
513 - REDIRECT
514 endef
515
516 $(eval $(call KernelPackage,ipt-nat-extra))
517
518
519 define KernelPackage/nf-nathelper
520 SUBMENU:=$(NF_MENU)
521 TITLE:=Basic Conntrack and NAT helpers
522 KCONFIG:=$(KCONFIG_NF_NATHELPER)
523 FILES:=$(foreach mod,$(NF_NATHELPER-m),$(LINUX_DIR)/net/$(mod).ko)
524 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER-m)))
525 DEPENDS:=+kmod-nf-nat
526 endef
527
528 define KernelPackage/nf-nathelper/description
529 Default Netfilter (IPv4) Conntrack and NAT helpers
530 Includes:
531 - ftp
532 endef
533
534 $(eval $(call KernelPackage,nf-nathelper))
535
536
537 define KernelPackage/nf-nathelper-extra
538 SUBMENU:=$(NF_MENU)
539 TITLE:=Extra Conntrack and NAT helpers
540 KCONFIG:=$(KCONFIG_NF_NATHELPER_EXTRA)
541 FILES:=$(foreach mod,$(NF_NATHELPER_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
542 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER_EXTRA-m)))
543 DEPENDS:=+kmod-nf-nat +kmod-lib-textsearch +kmod-ipt-raw +LINUX_4_19:kmod-asn1-decoder
544 endef
545
546 define KernelPackage/nf-nathelper-extra/description
547 Extra Netfilter (IPv4) Conntrack and NAT helpers
548 Includes:
549 - amanda
550 - h323
551 - irc
552 - mms
553 - pptp
554 - proto_gre
555 - sip
556 - snmp_basic
557 - tftp
558 - broadcast
559 endef
560
561 $(eval $(call KernelPackage,nf-nathelper-extra))
562
563
564 define KernelPackage/ipt-ulog
565 TITLE:=Module for user-space packet logging
566 KCONFIG:=$(KCONFIG_IPT_ULOG)
567 FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).ko)
568 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_ULOG-m)))
569 $(call AddDepends/ipt)
570 endef
571
572 define KernelPackage/ipt-ulog/description
573 Netfilter (IPv4) module for user-space packet logging
574 Includes:
575 - ULOG
576 endef
577
578 $(eval $(call KernelPackage,ipt-ulog))
579
580
581 define KernelPackage/ipt-nflog
582 TITLE:=Module for user-space packet logging
583 KCONFIG:=$(KCONFIG_IPT_NFLOG)
584 FILES:=$(foreach mod,$(IPT_NFLOG-m),$(LINUX_DIR)/net/$(mod).ko)
585 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFLOG-m)))
586 $(call AddDepends/ipt,+kmod-nfnetlink-log)
587 endef
588
589 define KernelPackage/ipt-nflog/description
590 Netfilter module for user-space packet logging
591 Includes:
592 - NFLOG
593 endef
594
595 $(eval $(call KernelPackage,ipt-nflog))
596
597
598 define KernelPackage/ipt-nfqueue
599 TITLE:=Module for user-space packet queuing
600 KCONFIG:=$(KCONFIG_IPT_NFQUEUE)
601 FILES:=$(foreach mod,$(IPT_NFQUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
602 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFQUEUE-m)))
603 $(call AddDepends/ipt,+kmod-nfnetlink-queue)
604 endef
605
606 define KernelPackage/ipt-nfqueue/description
607 Netfilter module for user-space packet queuing
608 Includes:
609 - NFQUEUE
610 endef
611
612 $(eval $(call KernelPackage,ipt-nfqueue))
613
614
615 define KernelPackage/ipt-debug
616 TITLE:=Module for debugging/development
617 KCONFIG:=$(KCONFIG_IPT_DEBUG)
618 FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko)
619 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m)))
620 $(call AddDepends/ipt,+kmod-ipt-raw +IPV6:kmod-ipt-raw6)
621 endef
622
623 define KernelPackage/ipt-debug/description
624 Netfilter modules for debugging/development of the firewall
625 Includes:
626 - TRACE
627 endef
628
629 $(eval $(call KernelPackage,ipt-debug))
630
631
632 define KernelPackage/ipt-led
633 TITLE:=Module to trigger a LED with a Netfilter rule
634 KCONFIG:=$(KCONFIG_IPT_LED)
635 FILES:=$(foreach mod,$(IPT_LED-m),$(LINUX_DIR)/net/$(mod).ko)
636 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_LED-m)))
637 $(call AddDepends/ipt)
638 endef
639
640 define KernelPackage/ipt-led/description
641 Netfilter target to trigger a LED when a network packet is matched.
642 endef
643
644 $(eval $(call KernelPackage,ipt-led))
645
646 define KernelPackage/ipt-tproxy
647 TITLE:=Transparent proxying support
648 DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables
649 KCONFIG:=$(KCONFIG_IPT_TPROXY)
650 FILES:=$(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
651 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_TPROXY-m)))
652 $(call AddDepends/ipt)
653 endef
654
655 define KernelPackage/ipt-tproxy/description
656 Kernel modules for Transparent Proxying
657 endef
658
659 $(eval $(call KernelPackage,ipt-tproxy))
660
661 define KernelPackage/ipt-tee
662 TITLE:=TEE support
663 DEPENDS:=+kmod-ipt-conntrack
664 KCONFIG:=$(KCONFIG_IPT_TEE)
665 FILES:=$(foreach mod,$(IPT_TEE-m),$(LINUX_DIR)/net/$(mod).ko)
666 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_TEE-m)))
667 $(call AddDepends/ipt)
668 endef
669
670 define KernelPackage/ipt-tee/description
671 Kernel modules for TEE
672 endef
673
674 $(eval $(call KernelPackage,ipt-tee))
675
676
677 define KernelPackage/ipt-u32
678 TITLE:=U32 support
679 KCONFIG:=$(KCONFIG_IPT_U32)
680 FILES:=$(foreach mod,$(IPT_U32-m),$(LINUX_DIR)/net/$(mod).ko)
681 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_U32-m)))
682 $(call AddDepends/ipt)
683 endef
684
685 define KernelPackage/ipt-u32/description
686 Kernel modules for U32
687 endef
688
689 $(eval $(call KernelPackage,ipt-u32))
690
691 define KernelPackage/ipt-checksum
692 TITLE:=CHECKSUM support
693 KCONFIG:=$(KCONFIG_IPT_CHECKSUM)
694 FILES:=$(foreach mod,$(IPT_CHECKSUM-m),$(LINUX_DIR)/net/$(mod).ko)
695 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CHECKSUM-m)))
696 $(call AddDepends/ipt)
697 endef
698
699 define KernelPackage/ipt-checksum/description
700 Kernel modules for CHECKSUM fillin target
701 endef
702
703 $(eval $(call KernelPackage,ipt-checksum))
704
705
706 define KernelPackage/ipt-iprange
707 TITLE:=Module for matching ip ranges
708 KCONFIG:=$(KCONFIG_IPT_IPRANGE)
709 FILES:=$(foreach mod,$(IPT_IPRANGE-m),$(LINUX_DIR)/net/$(mod).ko)
710 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPRANGE-m)))
711 $(call AddDepends/ipt)
712 endef
713
714 define KernelPackage/ipt-iprange/description
715 Netfilter (IPv4) module for matching ip ranges
716 Includes:
717 - iprange
718 endef
719
720 $(eval $(call KernelPackage,ipt-iprange))
721
722 define KernelPackage/ipt-cluster
723 TITLE:=Module for matching cluster
724 KCONFIG:=$(KCONFIG_IPT_CLUSTER)
725 FILES:=$(foreach mod,$(IPT_CLUSTER-m),$(LINUX_DIR)/net/$(mod).ko)
726 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTER-m)))
727 $(call AddDepends/ipt,+kmod-nf-conntrack)
728 endef
729
730 define KernelPackage/ipt-cluster/description
731 Netfilter (IPv4/IPv6) module for matching cluster
732 This option allows you to build work-load-sharing clusters of
733 network servers/stateful firewalls without having a dedicated
734 load-balancing router/server/switch. Basically, this match returns
735 true when the packet must be handled by this cluster node. Thus,
736 all nodes see all packets and this match decides which node handles
737 what packets. The work-load sharing algorithm is based on source
738 address hashing.
739
740 This module is usable for ipv4 and ipv6.
741
742 To use it also enable iptables-mod-cluster
743
744 see `iptables -m cluster --help` for more information.
745 endef
746
747 $(eval $(call KernelPackage,ipt-cluster))
748
749 define KernelPackage/ipt-clusterip
750 TITLE:=Module for CLUSTERIP
751 KCONFIG:=$(KCONFIG_IPT_CLUSTERIP)
752 FILES:=$(foreach mod,$(IPT_CLUSTERIP-m),$(LINUX_DIR)/net/$(mod).ko)
753 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTERIP-m)))
754 $(call AddDepends/ipt,+kmod-nf-conntrack)
755 endef
756
757 define KernelPackage/ipt-clusterip/description
758 Netfilter (IPv4-only) module for CLUSTERIP
759 The CLUSTERIP target allows you to build load-balancing clusters of
760 network servers without having a dedicated load-balancing
761 router/server/switch.
762
763 To use it also enable iptables-mod-clusterip
764
765 see `iptables -j CLUSTERIP --help` for more information.
766 endef
767
768 $(eval $(call KernelPackage,ipt-clusterip))
769
770
771 define KernelPackage/ipt-extra
772 TITLE:=Extra modules
773 KCONFIG:=$(KCONFIG_IPT_EXTRA)
774 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
775 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_EXTRA-m)))
776 $(call AddDepends/ipt)
777 endef
778
779 define KernelPackage/ipt-extra/description
780 Other Netfilter (IPv4) kernel modules
781 Includes:
782 - addrtype
783 - owner
784 - pkttype
785 - quota
786 endef
787
788 $(eval $(call KernelPackage,ipt-extra))
789
790
791 define KernelPackage/ipt-physdev
792 TITLE:=physdev module
793 KCONFIG:=$(KCONFIG_IPT_PHYSDEV)
794 FILES:=$(foreach mod,$(IPT_PHYSDEV-m),$(LINUX_DIR)/net/$(mod).ko)
795 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_PHYSDEV-m)))
796 $(call AddDepends/ipt,+kmod-br-netfilter)
797 endef
798
799 define KernelPackage/ipt-physdev/description
800 The iptables physdev kernel module
801 endef
802
803 $(eval $(call KernelPackage,ipt-physdev))
804
805
806 define KernelPackage/ip6tables
807 SUBMENU:=$(NF_MENU)
808 TITLE:=IPv6 modules
809 DEPENDS:=+kmod-nf-reject6 +kmod-nf-ipt6 +kmod-ipt-core
810 KCONFIG:=$(KCONFIG_IPT_IPV6)
811 FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko)
812 AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m)))
813 endef
814
815 define KernelPackage/ip6tables/description
816 Netfilter IPv6 firewalling support
817 endef
818
819 $(eval $(call KernelPackage,ip6tables))
820
821 define KernelPackage/ip6tables-extra
822 SUBMENU:=$(NF_MENU)
823 TITLE:=Extra IPv6 modules
824 DEPENDS:=+kmod-ip6tables
825 KCONFIG:=$(KCONFIG_IPT_IPV6_EXTRA)
826 FILES:=$(foreach mod,$(IPT_IPV6_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
827 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_IPV6_EXTRA-m)))
828 endef
829
830 define KernelPackage/ip6tables-extra/description
831 Netfilter IPv6 extra header matching modules
832 endef
833
834 $(eval $(call KernelPackage,ip6tables-extra))
835
836 ARP_MODULES = arp_tables arpt_mangle arptable_filter
837 define KernelPackage/arptables
838 SUBMENU:=$(NF_MENU)
839 TITLE:=ARP firewalling modules
840 DEPENDS:=+kmod-ipt-core
841 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/arp*.ko
842 KCONFIG:=CONFIG_IP_NF_ARPTABLES \
843 CONFIG_IP_NF_ARPFILTER \
844 CONFIG_IP_NF_ARP_MANGLE
845 AUTOLOAD:=$(call AutoProbe,$(ARP_MODULES))
846 endef
847
848 define KernelPackage/arptables/description
849 Kernel modules for ARP firewalling
850 endef
851
852 $(eval $(call KernelPackage,arptables))
853
854
855 define KernelPackage/br-netfilter
856 SUBMENU:=$(NF_MENU)
857 TITLE:=Bridge netfilter support modules
858 DEPENDS:=+kmod-ipt-core
859 FILES:=$(LINUX_DIR)/net/bridge/br_netfilter.ko
860 KCONFIG:=CONFIG_BRIDGE_NETFILTER
861 AUTOLOAD:=$(call AutoProbe,br_netfilter)
862 endef
863
864 define KernelPackage/br-netfilter/install
865 $(INSTALL_DIR) $(1)/etc/sysctl.d
866 $(INSTALL_DATA) ./files/sysctl-br-netfilter.conf $(1)/etc/sysctl.d/11-br-netfilter.conf
867 endef
868
869 $(eval $(call KernelPackage,br-netfilter))
870
871
872 define KernelPackage/ebtables
873 SUBMENU:=$(NF_MENU)
874 TITLE:=Bridge firewalling modules
875 DEPENDS:=+kmod-ipt-core
876 FILES:=$(foreach mod,$(EBTABLES-m),$(LINUX_DIR)/net/$(mod).ko)
877 KCONFIG:=$(KCONFIG_EBTABLES)
878 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES-m)))
879 endef
880
881 define KernelPackage/ebtables/description
882 ebtables is a general, extensible frame/packet identification
883 framework. It provides you to do Ethernet
884 filtering/NAT/brouting on the Ethernet bridge.
885 endef
886
887 $(eval $(call KernelPackage,ebtables))
888
889
890 define AddDepends/ebtables
891 SUBMENU:=$(NF_MENU)
892 DEPENDS+= +kmod-ebtables $(1)
893 endef
894
895
896 define KernelPackage/ebtables-ipv4
897 TITLE:=ebtables: IPv4 support
898 FILES:=$(foreach mod,$(EBTABLES_IP4-m),$(LINUX_DIR)/net/$(mod).ko)
899 KCONFIG:=$(KCONFIG_EBTABLES_IP4)
900 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP4-m)))
901 $(call AddDepends/ebtables)
902 endef
903
904 define KernelPackage/ebtables-ipv4/description
905 This option adds the IPv4 support to ebtables, which allows basic
906 IPv4 header field filtering, ARP filtering as well as SNAT, DNAT targets.
907 endef
908
909 $(eval $(call KernelPackage,ebtables-ipv4))
910
911
912 define KernelPackage/ebtables-ipv6
913 TITLE:=ebtables: IPv6 support
914 FILES:=$(foreach mod,$(EBTABLES_IP6-m),$(LINUX_DIR)/net/$(mod).ko)
915 KCONFIG:=$(KCONFIG_EBTABLES_IP6)
916 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP6-m)))
917 $(call AddDepends/ebtables)
918 endef
919
920 define KernelPackage/ebtables-ipv6/description
921 This option adds the IPv6 support to ebtables, which allows basic
922 IPv6 header field filtering and target support.
923 endef
924
925 $(eval $(call KernelPackage,ebtables-ipv6))
926
927
928 define KernelPackage/ebtables-watchers
929 TITLE:=ebtables: watchers support
930 FILES:=$(foreach mod,$(EBTABLES_WATCHERS-m),$(LINUX_DIR)/net/$(mod).ko)
931 KCONFIG:=$(KCONFIG_EBTABLES_WATCHERS)
932 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_WATCHERS-m)))
933 $(call AddDepends/ebtables)
934 endef
935
936 define KernelPackage/ebtables-watchers/description
937 This option adds the log watchers, that you can use in any rule
938 in any ebtables table.
939 endef
940
941 $(eval $(call KernelPackage,ebtables-watchers))
942
943
944 define KernelPackage/nfnetlink
945 SUBMENU:=$(NF_MENU)
946 TITLE:=Netlink-based userspace interface
947 FILES:=$(foreach mod,$(NFNETLINK-m),$(LINUX_DIR)/net/$(mod).ko)
948 KCONFIG:=$(KCONFIG_NFNETLINK)
949 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK-m)))
950 endef
951
952 define KernelPackage/nfnetlink/description
953 Kernel modules support for a netlink-based userspace interface
954 endef
955
956 $(eval $(call KernelPackage,nfnetlink))
957
958
959 define AddDepends/nfnetlink
960 SUBMENU:=$(NF_MENU)
961 DEPENDS+=+kmod-nfnetlink $(1)
962 endef
963
964
965 define KernelPackage/nfnetlink-log
966 TITLE:=Netfilter LOG over NFNETLINK interface
967 FILES:=$(foreach mod,$(NFNETLINK_LOG-m),$(LINUX_DIR)/net/$(mod).ko)
968 KCONFIG:=$(KCONFIG_NFNETLINK_LOG)
969 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_LOG-m)))
970 $(call AddDepends/nfnetlink)
971 endef
972
973 define KernelPackage/nfnetlink-log/description
974 Kernel modules support for logging packets via NFNETLINK
975 Includes:
976 - NFLOG
977 endef
978
979 $(eval $(call KernelPackage,nfnetlink-log))
980
981
982 define KernelPackage/nfnetlink-queue
983 TITLE:=Netfilter QUEUE over NFNETLINK interface
984 FILES:=$(foreach mod,$(NFNETLINK_QUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
985 KCONFIG:=$(KCONFIG_NFNETLINK_QUEUE)
986 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_QUEUE-m)))
987 $(call AddDepends/nfnetlink)
988 endef
989
990 define KernelPackage/nfnetlink-queue/description
991 Kernel modules support for queueing packets via NFNETLINK
992 Includes:
993 - NFQUEUE
994 endef
995
996 $(eval $(call KernelPackage,nfnetlink-queue))
997
998
999 define KernelPackage/nf-conntrack-netlink
1000 TITLE:=Connection tracking netlink interface
1001 FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
1002 KCONFIG:=CONFIG_NF_CT_NETLINK CONFIG_NF_CONNTRACK_EVENTS=y
1003 AUTOLOAD:=$(call AutoProbe,nf_conntrack_netlink)
1004 $(call AddDepends/nfnetlink,+kmod-ipt-conntrack)
1005 endef
1006
1007 define KernelPackage/nf-conntrack-netlink/description
1008 Kernel modules support for a netlink-based connection tracking
1009 userspace interface
1010 endef
1011
1012 $(eval $(call KernelPackage,nf-conntrack-netlink))
1013
1014 define KernelPackage/ipt-hashlimit
1015 SUBMENU:=$(NF_MENU)
1016 TITLE:=Netfilter hashlimit match
1017 DEPENDS:=+kmod-ipt-core
1018 KCONFIG:=$(KCONFIG_IPT_HASHLIMIT)
1019 FILES:=$(LINUX_DIR)/net/netfilter/xt_hashlimit.ko
1020 AUTOLOAD:=$(call AutoProbe,xt_hashlimit)
1021 $(call KernelPackage/ipt)
1022 endef
1023
1024 define KernelPackage/ipt-hashlimit/description
1025 Kernel modules support for the hashlimit bucket match module
1026 endef
1027
1028 $(eval $(call KernelPackage,ipt-hashlimit))
1029
1030 define KernelPackage/ipt-rpfilter
1031 SUBMENU:=$(NF_MENU)
1032 TITLE:=Netfilter rpfilter match
1033 DEPENDS:=+kmod-ipt-core
1034 KCONFIG:=$(KCONFIG_IPT_RPFILTER)
1035 FILES:=$(realpath \
1036 $(LINUX_DIR)/net/ipv4/netfilter/ipt_rpfilter.ko \
1037 $(LINUX_DIR)/net/ipv6/netfilter/ip6t_rpfilter.ko)
1038 AUTOLOAD:=$(call AutoProbe,ipt_rpfilter ip6t_rpfilter)
1039 $(call KernelPackage/ipt)
1040 endef
1041
1042 define KernelPackage/ipt-rpfilter/description
1043 Kernel modules support for the Netfilter rpfilter match
1044 endef
1045
1046 $(eval $(call KernelPackage,ipt-rpfilter))
1047
1048
1049 define KernelPackage/nft-core
1050 SUBMENU:=$(NF_MENU)
1051 TITLE:=Netfilter nf_tables support
1052 DEPENDS:=+kmod-nfnetlink +kmod-nf-reject +kmod-nf-reject6 +kmod-nf-conntrack6
1053 FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
1054 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
1055 KCONFIG:= \
1056 CONFIG_NFT_COMPAT=n \
1057 CONFIG_NFT_QUEUE=n \
1058 $(KCONFIG_NFT_CORE)
1059 endef
1060
1061 define KernelPackage/nft-core/description
1062 Kernel module support for nftables
1063 endef
1064
1065 $(eval $(call KernelPackage,nft-core))
1066
1067
1068 define KernelPackage/nft-arp
1069 SUBMENU:=$(NF_MENU)
1070 TITLE:=Netfilter nf_tables ARP table support
1071 DEPENDS:=+kmod-nft-core
1072 FILES:=$(foreach mod,$(NFT_ARP-m),$(LINUX_DIR)/net/$(mod).ko)
1073 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_ARP-m)))
1074 KCONFIG:=$(KCONFIG_NFT_ARP)
1075 endef
1076
1077 $(eval $(call KernelPackage,nft-arp))
1078
1079
1080 define KernelPackage/nft-bridge
1081 SUBMENU:=$(NF_MENU)
1082 TITLE:=Netfilter nf_tables bridge table support
1083 DEPENDS:=+kmod-nft-core
1084 FILES:=$(foreach mod,$(NFT_BRIDGE-m),$(LINUX_DIR)/net/$(mod).ko)
1085 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_BRIDGE-m)))
1086 KCONFIG:= \
1087 CONFIG_NF_LOG_BRIDGE=n \
1088 $(KCONFIG_NFT_BRIDGE)
1089 endef
1090
1091 $(eval $(call KernelPackage,nft-bridge))
1092
1093
1094 define KernelPackage/nft-nat
1095 SUBMENU:=$(NF_MENU)
1096 TITLE:=Netfilter nf_tables NAT support
1097 DEPENDS:=+kmod-nft-core +kmod-nf-nat
1098 FILES:=$(foreach mod,$(NFT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
1099 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m)))
1100 KCONFIG:=$(KCONFIG_NFT_NAT)
1101 endef
1102
1103 $(eval $(call KernelPackage,nft-nat))
1104
1105
1106 define KernelPackage/nft-offload
1107 SUBMENU:=$(NF_MENU)
1108 TITLE:=Netfilter nf_tables routing/NAT offload support
1109 DEPENDS:=+kmod-nf-flow +kmod-nft-nat
1110 KCONFIG:= \
1111 CONFIG_NF_FLOW_TABLE_INET \
1112 CONFIG_NF_FLOW_TABLE_IPV4 \
1113 CONFIG_NF_FLOW_TABLE_IPV6 \
1114 CONFIG_NFT_FLOW_OFFLOAD
1115 FILES:= \
1116 $(LINUX_DIR)/net/netfilter/nf_flow_table_inet.ko \
1117 $(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko \
1118 $(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko \
1119 $(LINUX_DIR)/net/netfilter/nft_flow_offload.ko
1120 AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4 nf_flow_table_ipv6 nft_flow_offload)
1121 endef
1122
1123 $(eval $(call KernelPackage,nft-offload))
1124
1125
1126 define KernelPackage/nft-nat6
1127 SUBMENU:=$(NF_MENU)
1128 TITLE:=Netfilter nf_tables IPv6-NAT support
1129 DEPENDS:=+kmod-nft-nat +kmod-nf-nat6
1130 FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
1131 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
1132 KCONFIG:=$(KCONFIG_NFT_NAT6)
1133 endef
1134
1135 $(eval $(call KernelPackage,nft-nat6))
1136
1137 define KernelPackage/nft-netdev
1138 SUBMENU:=$(NF_MENU)
1139 TITLE:=Netfilter nf_tables netdev support
1140 DEPENDS:=+kmod-nft-core
1141 KCONFIG:= \
1142 CONFIG_NETFILTER_INGRESS=y \
1143 CONFIG_NF_TABLES_NETDEV \
1144 CONFIG_NF_DUP_NETDEV \
1145 CONFIG_NFT_DUP_NETDEV \
1146 CONFIG_NFT_FWD_NETDEV
1147 FILES:= \
1148 $(LINUX_DIR)/net/netfilter/nf_tables_netdev.ko@lt4.17 \
1149 $(LINUX_DIR)/net/netfilter/nf_dup_netdev.ko \
1150 $(LINUX_DIR)/net/netfilter/nft_dup_netdev.ko \
1151 $(LINUX_DIR)/net/netfilter/nft_fwd_netdev.ko
1152 AUTOLOAD:=$(call AutoProbe,nf_tables_netdev nf_dup_netdev nft_dup_netdev nft_fwd_netdev)
1153 endef
1154
1155 $(eval $(call KernelPackage,nft-netdev))
1156
1157
1158 define KernelPackage/nft-fib
1159 SUBMENU:=$(NF_MENU)
1160 TITLE:=Netfilter nf_tables fib support
1161 DEPENDS:=+kmod-nft-core
1162 FILES:=$(foreach mod,$(NFT_FIB-m),$(LINUX_DIR)/net/$(mod).ko)
1163 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_FIB-m)))
1164 KCONFIG:=$(KCONFIG_NFT_FIB)
1165 endef
1166
1167 $(eval $(call KernelPackage,nft-fib))