netfilter.mk 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. # $Id$
  8. NFMENU:=Netfilter Extensions
  9. define KernelPackage/ipt-conntrack
  10. TITLE:=Modules for connection tracking
  11. DESCRIPTION:=\
  12. Netfilter (IPv4) kernel modules for connection tracking\\\
  13. \\\
  14. Includes: \\\
  15. - ipt_conntrack \\\
  16. - ipt_helper \\\
  17. - ipt_connmark/CONNMARK
  18. FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  19. SUBMENU:=$(NFMENU)
  20. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_CONNTRACK-m)))
  21. endef
  22. $(eval $(call KernelPackage,ipt-conntrack))
  23. define KernelPackage/ipt-filter
  24. TITLE:=Modules for packet content inspection
  25. DESCRIPTION:=\
  26. Netfilter (IPv4) kernel modules for packet content inspection \\\
  27. \\\
  28. Includes: \\\
  29. - ipt_ipp2p \\\
  30. - ipt_layer7
  31. FILES:=$(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  32. SUBMENU:=$(NFMENU)
  33. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_FILTER-m)))
  34. endef
  35. $(eval $(call KernelPackage,ipt-filter))
  36. define KernelPackage/ipt-ipopt
  37. TITLE:=Modules for matching/changing IP packet options
  38. DESCRIPTION:=\
  39. Netfilter (IPv4) modules for matching/changing IP packet options \\\
  40. \\\
  41. Includes: \\\
  42. - ipt_dscp/DSCP \\\
  43. - ipt_ecn/ECN \\\
  44. - ipt_length \\\
  45. - ipt_mac \\\
  46. - ipt_tos/TOS \\\
  47. - ipt_tcpmms \\\
  48. - ipt_ttl/TTL \\\
  49. - ipt_unclean
  50. FILES:=$(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  51. SUBMENU:=$(NFMENU)
  52. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPOPT-m)))
  53. endef
  54. $(eval $(call KernelPackage,ipt-ipopt))
  55. define KernelPackage/ipt-ipsec
  56. TITLE:=Modules for matching IPSec packets
  57. DESCRIPTION:=\
  58. Netfilter (IPv4) modules for matching IPSec packets \\\
  59. \\\
  60. Includes: \\\
  61. - ipt_ah \\\
  62. - ipt_esp
  63. FILES:=$(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  64. SUBMENU:=$(NFMENU)
  65. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_IPSEC-m)))
  66. endef
  67. $(eval $(call KernelPackage,ipt-ipsec))
  68. define KernelPackage/ipt-nat
  69. TITLE:=Modules for extra NAT targets
  70. DESCRIPTION:=\
  71. Netfilter (IPv4) modules for extra NAT targets \\\
  72. \\\
  73. Includes: \\\
  74. - ipt_REDIRECT \\\
  75. - ipt_NETMAP
  76. FILES:=$(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  77. SUBMENU:=$(NFMENU)
  78. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT-m)))
  79. endef
  80. $(eval $(call KernelPackage,ipt-nat))
  81. define KernelPackage/ipt-nathelper
  82. TITLE:=Default Conntrack and NAT helpers
  83. DESCRIPTION:=\
  84. Default Netfilter (IPv4) Conntrack and NAT helpers \\\
  85. \\\
  86. Includes: \\\
  87. - ip_conntrack_ftp \\\
  88. - ip_nat_ftp \\\
  89. - ip_conntrack_irc \\\
  90. - ip_nat_irc \\\
  91. - ip_conntrack_tftp
  92. FILES:=$(foreach mod,$(IPT_NAT_DEFAULT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  93. SUBMENU:=$(NFMENU)
  94. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_DEFAULT-m)))
  95. endef
  96. $(eval $(call KernelPackage,ipt-nathelper))
  97. define KernelPackage/ipt-nathelper-extra
  98. TITLE:=Extra Conntrack and NAT helpers
  99. DESCRIPTION:=\
  100. Extra Netfilter (IPv4) Conntrack and NAT helpers \\\
  101. \\\
  102. Includes: \\\
  103. - ip_conntrack_amanda \\\
  104. - ip_conntrack_proto_gre \\\
  105. - ip_nat_proto_gre \\\
  106. - ip_conntrack_pptp \\\
  107. - ip_nat_pptp \\\
  108. - ip_conntrack_sip \\\
  109. - ip_nat_sip \\\
  110. - ip_nat_snmp_basic
  111. FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  112. SUBMENU:=$(NFMENU)
  113. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_NAT_EXTRA-m)))
  114. endef
  115. $(eval $(call KernelPackage,ipt-nathelper-extra))
  116. define KernelPackage/ipt-imq
  117. TITLE:=Intermediate Queueing support
  118. DESCRIPTION:=\
  119. Kernel support for Intermediate Queueing devices
  120. KCONFIG:=$(CONFIG_IP_NF_TARGET_IMQ)
  121. FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
  122. SUBMENU:=$(NFMENU)
  123. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)))))
  124. endef
  125. $(eval $(call KernelPackage,ipt-imq))
  126. define KernelPackage/ipt-queue
  127. TITLE:=Module for user-space packet queueing
  128. DESCRIPTION:=\
  129. Netfilter (IPv4) module for user-space packet queueing \\\
  130. \\\
  131. Includes: \\\
  132. - ipt_QUEUE
  133. FILES:=$(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  134. SUBMENU:=$(NFMENU)
  135. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_QUEUE-m)))
  136. endef
  137. $(eval $(call KernelPackage,ipt-queue))
  138. define KernelPackage/ipt-ulog
  139. TITLE:=Module for user-space packet logging
  140. DESCRIPTION:=\
  141. Netfilter (IPv4) module for user-space packet logging \\\
  142. \\\
  143. Includes: \\\
  144. - ipt_ULOG
  145. FILES:=$(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  146. SUBMENU:=$(NFMENU)
  147. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_ULOG-m)))
  148. endef
  149. $(eval $(call KernelPackage,ipt-ulog))
  150. define KernelPackage/ipt-extra
  151. TITLE:=Extra modules
  152. DESCRIPTION:=\
  153. Other Netfilter (IPv4) kernel modules\\\
  154. Includes: \\\
  155. - ipt_limit \\\
  156. - ipt_owner \\\
  157. - ipt_physdev \\\
  158. - ipt_pkttype \\\
  159. - ipt_recent
  160. FILES:=$(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
  161. SUBMENU:=$(NFMENU)
  162. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(IPT_EXTRA-m)))
  163. endef
  164. $(eval $(call KernelPackage,ipt-extra))
  165. define KernelPackage/ip6tables
  166. TITLE:=IPv6 modules
  167. DESCRIPTION:=\
  168. Netfilter IPv6 firewalling support
  169. KCONFIG:=$(CONFIG_IP6_NF_IPTABLES)
  170. FILES:=$(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
  171. SUBMENU:=$(NFMENU)
  172. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6table_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip6t_*.$(LINUX_KMOD_SUFFIX)))))
  173. endef
  174. $(eval $(call KernelPackage,ip6tables))
  175. define KernelPackage/arptables
  176. TITLE:=ARP firewalling modules
  177. DESCRIPTION:=\
  178. Kernel modules for ARP firewalling
  179. FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
  180. KCONFIG:=$(CONFIG_IP_NF_ARPTABLES)
  181. SUBMENU:=$(NFMENU)
  182. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,$(wildcard $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)))))
  183. endef
  184. $(eval $(call KernelPackage,arptables))
  185. define KernelPackage/ebtables
  186. TITLE:=Bridge firewalling modules
  187. DESCRIPTION:=\
  188. Kernel modules for Ethernet Bridge firewalling
  189. FILES:=$(MODULES_DIR)/kernel/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
  190. KCONFIG:=$(CONFIG_BRIDGE_NF_EBTABLES)
  191. SUBMENU:=$(NFMENU)
  192. AUTOLOAD:=$(call AutoLoad,40,$(notdir $(patsubst %.ko,%,ebtables.ko $(wildcard $(MODULES_DIR)/kernel/net/bridge/netfilter/ebtable_*.$(LINUX_KMOD_SUFFIX)) $(wildcard $(MODULES_DIR)/kernel/net/bridge/netfilter/ebt_*.$(LINUX_KMOD_SUFFIX)))))
  193. endef
  194. $(eval $(call KernelPackage,ebtables))