3 # Copyright (C) 2006-2010 OpenWrt.org
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 NF_MENU:=Netfilter Extensions
11 include $(INCLUDE_DIR)/netfilter.mk
14 define KernelPackage/nf-ipt
19 CONFIG_NETFILTER_ADVANCED=y \
21 FILES:=$(foreach mod,$(NF_IPT-m),$(LINUX_DIR)/net/$(mod).ko)
22 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT-m)))
25 $(eval $(call KernelPackage,nf-ipt))
28 define KernelPackage/nf-ipt6
31 KCONFIG:=$(KCONFIG_NF_IPT6)
32 FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko)
33 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m)))
34 DEPENDS:=+kmod-nf-ipt +kmod-nf-conntrack6
37 $(eval $(call KernelPackage,nf-ipt6))
41 define KernelPackage/ipt-core
44 KCONFIG:=$(KCONFIG_IPT_CORE)
45 FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
46 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m)))
50 define KernelPackage/ipt-core/description
51 Netfilter core kernel modules
62 $(eval $(call KernelPackage,ipt-core))
65 define KernelPackage/nf-conntrack
67 TITLE:=Netfilter connection tracking
70 CONFIG_NETFILTER_ADVANCED=y \
71 $(KCONFIG_NF_CONNTRACK)
72 FILES:=$(foreach mod,$(NF_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
73 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_CONNTRACK-m)))
76 $(eval $(call KernelPackage,nf-conntrack))
79 define KernelPackage/nf-conntrack6
81 TITLE:=Netfilter IPv6 connection tracking
82 KCONFIG:=$(KCONFIG_NF_CONNTRACK6)
83 DEPENDS:=+kmod-ipv6 +kmod-nf-conntrack
84 FILES:=$(foreach mod,$(NF_CONNTRACK6-m),$(LINUX_DIR)/net/$(mod).ko)
85 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_CONNTRACK6-m)))
88 $(eval $(call KernelPackage,nf-conntrack6))
91 define KernelPackage/nf-nat
94 KCONFIG:=$(KCONFIG_NF_NAT)
95 DEPENDS:=+kmod-nf-conntrack +kmod-nf-ipt
96 FILES:=$(foreach mod,$(NF_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
97 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT-m)))
100 $(eval $(call KernelPackage,nf-nat))
103 define KernelPackage/nf-nat6
105 TITLE:=Netfilter IPV6-NAT
106 KCONFIG:=$(KCONFIG_NF_NAT6)
107 DEPENDS:=+kmod-nf-conntrack6 +kmod-nf-ipt6 +kmod-nf-nat
108 FILES:=$(foreach mod,$(NF_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
109 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT6-m)))
112 $(eval $(call KernelPackage,nf-nat6))
115 define AddDepends/ipt
117 DEPENDS+= +kmod-ipt-core $(1)
121 define KernelPackage/ipt-conntrack
122 TITLE:=Basic connection tracking modules
123 KCONFIG:=$(KCONFIG_IPT_CONNTRACK)
124 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
125 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK-m)))
126 $(call AddDepends/ipt,+kmod-nf-conntrack)
129 define KernelPackage/ipt-conntrack/description
130 Netfilter (IPv4) kernel modules for connection tracking
139 $(eval $(call KernelPackage,ipt-conntrack))
142 define KernelPackage/ipt-conntrack-extra
143 TITLE:=Extra connection tracking modules
144 KCONFIG:=$(KCONFIG_IPT_CONNTRACK_EXTRA)
145 FILES:=$(foreach mod,$(IPT_CONNTRACK_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
146 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK_EXTRA-m)))
147 $(call AddDepends/ipt,+kmod-ipt-conntrack)
150 define KernelPackage/ipt-conntrack-extra/description
151 Netfilter (IPv4) extra kernel modules for connection tracking
160 $(eval $(call KernelPackage,ipt-conntrack-extra))
163 define KernelPackage/ipt-filter
164 TITLE:=Modules for packet content inspection
165 KCONFIG:=$(KCONFIG_IPT_FILTER)
166 FILES:=$(foreach mod,$(IPT_FILTER-m),$(LINUX_DIR)/net/$(mod).ko)
167 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FILTER-m)))
168 $(call AddDepends/ipt,+kmod-lib-textsearch +kmod-ipt-conntrack)
171 define KernelPackage/ipt-filter/description
172 Netfilter (IPv4) kernel modules for packet content inspection
178 $(eval $(call KernelPackage,ipt-filter))
181 define KernelPackage/ipt-ipopt
182 TITLE:=Modules for matching/changing IP packet options
183 KCONFIG:=$(KCONFIG_IPT_IPOPT)
184 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(LINUX_DIR)/net/$(mod).ko)
185 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPOPT-m)))
186 $(call AddDepends/ipt)
189 define KernelPackage/ipt-ipopt/description
190 Netfilter (IPv4) modules for matching/changing IP packet options
205 $(eval $(call KernelPackage,ipt-ipopt))
208 define KernelPackage/ipt-ipsec
209 TITLE:=Modules for matching IPSec packets
210 KCONFIG:=$(KCONFIG_IPT_IPSEC)
211 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
212 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPSEC-m)))
213 $(call AddDepends/ipt)
216 define KernelPackage/ipt-ipsec/description
217 Netfilter (IPv4) modules for matching IPSec packets
224 $(eval $(call KernelPackage,ipt-ipsec))
227 define KernelPackage/ipt-nat
228 TITLE:=Basic NAT targets
229 KCONFIG:=$(KCONFIG_IPT_NAT)
230 FILES:=$(foreach mod,$(IPT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
231 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT-m)))
232 $(call AddDepends/ipt,+kmod-nf-nat)
235 define KernelPackage/ipt-nat/description
236 Netfilter (IPv4) kernel modules for basic NAT targets
241 $(eval $(call KernelPackage,ipt-nat))
244 define KernelPackage/ipt-nat6
245 TITLE:=IPv6 NAT targets
246 KCONFIG:=$(KCONFIG_IPT_NAT6)
247 FILES:=$(foreach mod,$(IPT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
248 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_NAT6-m)))
249 $(call AddDepends/ipt,+kmod-ipt-conntrack)
250 $(call AddDepends/ipt,+kmod-ipt-nat)
251 $(call AddDepends/ipt,+kmod-ip6tables)
254 define KernelPackage/ipt-nat6/description
255 Netfilter (IPv6) kernel modules for NAT targets
258 $(eval $(call KernelPackage,ipt-nat6))
261 define KernelPackage/ipt-nat-extra
262 TITLE:=Extra NAT targets
263 KCONFIG:=$(KCONFIG_IPT_NAT_EXTRA)
264 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
265 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NAT_EXTRA-m)))
266 $(call AddDepends/ipt,+kmod-ipt-nat)
269 define KernelPackage/ipt-nat-extra/description
270 Netfilter (IPv4) kernel modules for extra NAT targets
276 $(eval $(call KernelPackage,ipt-nat-extra))
279 define KernelPackage/nf-nathelper
281 TITLE:=Basic Conntrack and NAT helpers
282 KCONFIG:=$(KCONFIG_NF_NATHELPER)
283 FILES:=$(foreach mod,$(NF_NATHELPER-m),$(LINUX_DIR)/net/$(mod).ko)
284 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER-m)))
285 DEPENDS:=+kmod-nf-nat
288 define KernelPackage/nf-nathelper/description
289 Default Netfilter (IPv4) Conntrack and NAT helpers
296 $(eval $(call KernelPackage,nf-nathelper))
299 define KernelPackage/nf-nathelper-extra
301 TITLE:=Extra Conntrack and NAT helpers
302 KCONFIG:=$(KCONFIG_NF_NATHELPER_EXTRA)
303 FILES:=$(foreach mod,$(NF_NATHELPER_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
304 AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER_EXTRA-m)))
305 DEPENDS:=+kmod-nf-nat +kmod-lib-textsearch
308 define KernelPackage/nf-nathelper-extra/description
309 Extra Netfilter (IPv4) Conntrack and NAT helpers
321 $(eval $(call KernelPackage,nf-nathelper-extra))
324 define KernelPackage/ipt-queue
325 TITLE:=Module for user-space packet queueing
326 KCONFIG:=$(KCONFIG_IPT_QUEUE)
328 FILES:=$(foreach mod,$(IPT_QUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
329 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_QUEUE-m)))
330 $(call AddDepends/ipt)
333 define KernelPackage/ipt-queue/description
334 Netfilter (IPv4) module for user-space packet queueing
339 $(eval $(call KernelPackage,ipt-queue))
342 define KernelPackage/ipt-ulog
343 TITLE:=Module for user-space packet logging
344 KCONFIG:=$(KCONFIG_IPT_ULOG)
345 FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).ko)
346 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_ULOG-m)))
347 $(call AddDepends/ipt)
350 define KernelPackage/ipt-ulog/description
351 Netfilter (IPv4) module for user-space packet logging
356 $(eval $(call KernelPackage,ipt-ulog))
359 define KernelPackage/ipt-nflog
360 TITLE:=Module for user-space packet logging
361 KCONFIG:=$(KCONFIG_IPT_NFLOG)
362 FILES:=$(foreach mod,$(IPT_NFLOG-m),$(LINUX_DIR)/net/$(mod).ko)
363 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFLOG-m)))
364 $(call AddDepends/ipt,+kmod-nfnetlink-log)
367 define KernelPackage/ipt-nflog/description
368 Netfilter module for user-space packet logging
373 $(eval $(call KernelPackage,ipt-nflog))
376 define KernelPackage/ipt-nfqueue
377 TITLE:=Module for user-space packet queuing
378 KCONFIG:=$(KCONFIG_IPT_NFQUEUE)
379 FILES:=$(foreach mod,$(IPT_NFQUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
380 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_NFQUEUE-m)))
381 $(call AddDepends/ipt,+kmod-nfnetlink-queue)
384 define KernelPackage/ipt-nfqueue/description
385 Netfilter module for user-space packet queuing
390 $(eval $(call KernelPackage,ipt-nfqueue))
393 define KernelPackage/ipt-debug
394 TITLE:=Module for debugging/development
395 KCONFIG:=$(KCONFIG_IPT_DEBUG)
397 FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko)
398 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m)))
399 $(call AddDepends/ipt)
402 define KernelPackage/ipt-debug/description
403 Netfilter modules for debugging/development of the firewall
408 $(eval $(call KernelPackage,ipt-debug))
411 define KernelPackage/ipt-led
412 TITLE:=Module to trigger a LED with a Netfilter rule
413 KCONFIG:=$(KCONFIG_IPT_LED)
414 FILES:=$(foreach mod,$(IPT_LED-m),$(LINUX_DIR)/net/$(mod).ko)
415 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_LED-m)))
416 $(call AddDepends/ipt)
419 define KernelPackage/ipt-led/description
420 Netfilter target to trigger a LED when a network packet is matched.
423 $(eval $(call KernelPackage,ipt-led))
425 define KernelPackage/ipt-tproxy
426 TITLE:=Transparent proxying support
427 DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-ipv6 +IPV6:kmod-ip6tables
429 CONFIG_NETFILTER_TPROXY \
430 CONFIG_NETFILTER_XT_MATCH_SOCKET \
431 CONFIG_NETFILTER_XT_TARGET_TPROXY
433 $(if $(call kernel_patchver_lt,3.12),$(LINUX_DIR)/net/netfilter/nf_tproxy_core.ko) \
434 $(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
435 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tproxy_core $(IPT_TPROXY-m)))
436 $(call AddDepends/ipt)
439 define KernelPackage/ipt-tproxy/description
440 Kernel modules for Transparent Proxying
443 $(eval $(call KernelPackage,ipt-tproxy))
445 define KernelPackage/ipt-tee
447 DEPENDS:=+kmod-ipt-conntrack +IPV6:kmod-ipv6
449 CONFIG_NETFILTER_XT_TARGET_TEE
451 $(LINUX_DIR)/net/netfilter/xt_TEE.ko \
452 $(foreach mod,$(IPT_TEE-m),$(LINUX_DIR)/net/$(mod).ko)
453 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_TEE-m)))
454 $(call AddDepends/ipt)
457 define KernelPackage/ipt-tee/description
458 Kernel modules for TEE
461 $(eval $(call KernelPackage,ipt-tee))
464 define KernelPackage/ipt-u32
467 CONFIG_NETFILTER_XT_MATCH_U32
469 $(LINUX_DIR)/net/netfilter/xt_u32.ko \
470 $(foreach mod,$(IPT_U32-m),$(LINUX_DIR)/net/$(mod).ko)
471 AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_U32-m)))
472 $(call AddDepends/ipt)
475 define KernelPackage/ipt-u32/description
476 Kernel modules for U32
479 $(eval $(call KernelPackage,ipt-u32))
482 define KernelPackage/ipt-iprange
483 TITLE:=Module for matching ip ranges
484 KCONFIG:=$(KCONFIG_IPT_IPRANGE)
485 FILES:=$(foreach mod,$(IPT_IPRANGE-m),$(LINUX_DIR)/net/$(mod).ko)
486 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_IPRANGE-m)))
487 $(call AddDepends/ipt)
490 define KernelPackage/ipt-iprange/description
491 Netfilter (IPv4) module for matching ip ranges
496 $(eval $(call KernelPackage,ipt-iprange))
499 define KernelPackage/ipt-extra
501 KCONFIG:=$(KCONFIG_IPT_EXTRA)
502 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
503 AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_EXTRA-m)))
504 $(call AddDepends/ipt)
507 define KernelPackage/ipt-extra/description
508 Other Netfilter (IPv4) kernel modules
512 - physdev (if bridge support was enabled in kernel)
517 $(eval $(call KernelPackage,ipt-extra))
520 define KernelPackage/ip6tables
523 DEPENDS:=+kmod-nf-ipt6 +kmod-ipt-core +kmod-ipt-conntrack
524 KCONFIG:=$(KCONFIG_IPT_IPV6)
525 FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko)
526 AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m)))
529 define KernelPackage/ip6tables/description
530 Netfilter IPv6 firewalling support
533 $(eval $(call KernelPackage,ip6tables))
535 define KernelPackage/ip6tables-extra
537 TITLE:=Extra IPv6 modules
538 DEPENDS:=+kmod-ip6tables
539 KCONFIG:=$(KCONFIG_IPT_IPV6_EXTRA)
540 FILES:=$(foreach mod,$(IPT_IPV6_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
541 AUTOLOAD:=$(call AutoLoad,43,$(notdir $(IPT_IPV6_EXTRA-m)))
544 define KernelPackage/ip6tables-extra/description
545 Netfilter IPv6 extra header matching modules
548 $(eval $(call KernelPackage,ip6tables-extra))
550 ARP_MODULES = arp_tables arpt_mangle arptable_filter
551 define KernelPackage/arptables
553 TITLE:=ARP firewalling modules
554 DEPENDS:=+kmod-ipt-core
555 FILES:=$(LINUX_DIR)/net/ipv4/netfilter/arp*.ko
556 KCONFIG:=CONFIG_IP_NF_ARPTABLES \
557 CONFIG_IP_NF_ARPFILTER \
558 CONFIG_IP_NF_ARP_MANGLE
559 AUTOLOAD:=$(call AutoProbe,$(ARP_MODULES))
562 define KernelPackage/arptables/description
563 Kernel modules for ARP firewalling
566 $(eval $(call KernelPackage,arptables))
569 define KernelPackage/ebtables
571 TITLE:=Bridge firewalling modules
572 DEPENDS:=+kmod-ipt-core +kmod-bridge
573 FILES:=$(foreach mod,$(EBTABLES-m),$(LINUX_DIR)/net/$(mod).ko)
574 KCONFIG:=CONFIG_BRIDGE_NETFILTER=y \
576 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES-m)))
579 define KernelPackage/ebtables/description
580 ebtables is a general, extensible frame/packet identification
581 framework. It provides you to do Ethernet
582 filtering/NAT/brouting on the Ethernet bridge.
585 $(eval $(call KernelPackage,ebtables))
588 define AddDepends/ebtables
590 DEPENDS+=kmod-ebtables $(1)
594 define KernelPackage/ebtables-ipv4
595 TITLE:=ebtables: IPv4 support
596 FILES:=$(foreach mod,$(EBTABLES_IP4-m),$(LINUX_DIR)/net/$(mod).ko)
597 KCONFIG:=$(KCONFIG_EBTABLES_IP4)
598 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP4-m)))
599 $(call AddDepends/ebtables)
602 define KernelPackage/ebtables-ipv4/description
603 This option adds the IPv4 support to ebtables, which allows basic
604 IPv4 header field filtering, ARP filtering as well as SNAT, DNAT targets.
607 $(eval $(call KernelPackage,ebtables-ipv4))
610 define KernelPackage/ebtables-ipv6
611 TITLE:=ebtables: IPv6 support
612 FILES:=$(foreach mod,$(EBTABLES_IP6-m),$(LINUX_DIR)/net/$(mod).ko)
613 KCONFIG:=$(KCONFIG_EBTABLES_IP6)
614 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_IP6-m)))
615 $(call AddDepends/ebtables)
618 define KernelPackage/ebtables-ipv6/description
619 This option adds the IPv6 support to ebtables, which allows basic
620 IPv6 header field filtering and target support.
623 $(eval $(call KernelPackage,ebtables-ipv6))
626 define KernelPackage/ebtables-watchers
627 TITLE:=ebtables: watchers support
628 FILES:=$(foreach mod,$(EBTABLES_WATCHERS-m),$(LINUX_DIR)/net/$(mod).ko)
629 KCONFIG:=$(KCONFIG_EBTABLES_WATCHERS)
630 AUTOLOAD:=$(call AutoProbe,$(notdir $(EBTABLES_WATCHERS-m)))
631 $(call AddDepends/ebtables)
634 define KernelPackage/ebtables-watchers/description
635 This option adds the log watchers, that you can use in any rule
636 in any ebtables table.
639 $(eval $(call KernelPackage,ebtables-watchers))
642 define KernelPackage/nfnetlink
644 TITLE:=Netlink-based userspace interface
645 FILES:=$(foreach mod,$(NFNETLINK-m),$(LINUX_DIR)/net/$(mod).ko)
646 KCONFIG:=$(KCONFIG_NFNETLINK)
647 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK-m)))
650 define KernelPackage/nfnetlink/description
651 Kernel modules support for a netlink-based userspace interface
654 $(eval $(call KernelPackage,nfnetlink))
657 define AddDepends/nfnetlink
659 DEPENDS+=+kmod-nfnetlink $(1)
663 define KernelPackage/nfnetlink-log
664 TITLE:=Netfilter LOG over NFNETLINK interface
665 FILES:=$(foreach mod,$(NFNETLINK_LOG-m),$(LINUX_DIR)/net/$(mod).ko)
666 KCONFIG:=$(KCONFIG_NFNETLINK_LOG)
667 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_LOG-m)))
668 $(call AddDepends/nfnetlink)
671 define KernelPackage/nfnetlink-log/description
672 Kernel modules support for logging packets via NFNETLINK
677 $(eval $(call KernelPackage,nfnetlink-log))
680 define KernelPackage/nfnetlink-queue
681 TITLE:=Netfilter QUEUE over NFNETLINK interface
682 FILES:=$(foreach mod,$(NFNETLINK_QUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
683 KCONFIG:=$(KCONFIG_NFNETLINK_QUEUE)
684 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFNETLINK_QUEUE-m)))
685 $(call AddDepends/nfnetlink)
688 define KernelPackage/nfnetlink-queue/description
689 Kernel modules support for queueing packets via NFNETLINK
694 $(eval $(call KernelPackage,nfnetlink-queue))
697 define KernelPackage/nf-conntrack-netlink
698 TITLE:=Connection tracking netlink interface
699 FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
700 KCONFIG:=CONFIG_NF_CT_NETLINK
701 AUTOLOAD:=$(call AutoProbe,nf_conntrack_netlink)
702 $(call AddDepends/nfnetlink,+kmod-ipt-conntrack)
705 define KernelPackage/nf-conntrack-netlink/description
706 Kernel modules support for a netlink-based connection tracking
710 $(eval $(call KernelPackage,nf-conntrack-netlink))
712 define KernelPackage/ipt-hashlimit
714 TITLE:=Netfilter hashlimit match
715 DEPENDS:=+kmod-ipt-core
716 KCONFIG:=$(KCONFIG_IPT_HASHLIMIT)
717 FILES:=$(LINUX_DIR)/net/netfilter/xt_hashlimit.ko
718 AUTOLOAD:=$(call AutoProbe,xt_hashlimit)
719 $(call KernelPackage/ipt)
722 define KernelPackage/ipt-hashlimit/description
723 Kernel modules support for the hashlimit bucket match module
726 $(eval $(call KernelPackage,ipt-hashlimit))
729 define KernelPackage/nft-core
731 TITLE:=Netfilter nf_tables support
732 DEPENDS:=+kmod-nfnetlink +kmod-nf-conntrack6
733 FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
734 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
737 CONFIG_NETFILTER_ADVANCED=y \
738 CONFIG_NFT_COMPAT=n \
740 CONFIG_NF_TABLES_ARP=n \
741 CONFIG_NF_TABLES_BRIDGE=n \
745 define KernelPackage/nft-core/description
746 Kernel module support for nftables
749 $(eval $(call KernelPackage,nft-core))
752 define KernelPackage/nft-nat
754 TITLE:=Netfilter nf_tables NAT support
755 DEPENDS:=+kmod-nft-core +kmod-nf-nat
756 FILES:=$(foreach mod,$(NFT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
757 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m)))
758 KCONFIG:=$(KCONFIG_NFT_NAT)
761 $(eval $(call KernelPackage,nft-nat))
764 define KernelPackage/nft-nat6
766 TITLE:=Netfilter nf_tables IPv6-NAT support
767 DEPENDS:=+kmod-nft-core +kmod-nf-nat6
768 FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
769 AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
770 KCONFIG:=$(KCONFIG_NFT_NAT6)
773 $(eval $(call KernelPackage,nft-nat6))