aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/linux/modules/netsupport.mk
diff options
context:
space:
mode:
authorIlya Lipnitskiy <ilya.lipnitskiy@gmail.com>2021-02-19 08:22:08 -0800
committerDavid Bauer <mail@david-bauer.net>2021-02-26 20:41:01 +0100
commit06351f1bd0455abacb700db5098bb798f66948fc (patch)
tree28b33bfc1c5137e7995aec20ed47de2180890dc3 /package/kernel/linux/modules/netsupport.mk
parent3500fd7938a6d0c0e320295f0aa2fa34b1ebc08d (diff)
downloadupstream-06351f1bd0455abacb700db5098bb798f66948fc.tar.gz
upstream-06351f1bd0455abacb700db5098bb798f66948fc.tar.bz2
upstream-06351f1bd0455abacb700db5098bb798f66948fc.zip
kernel: migrate wireguard into the kernel tree
On Linux 5.4, build WireGuard from backports. Linux 5.10 contains wireguard in-tree. Add in-kernel crypto libraries required by WireGuard along with arch-specific optimizations. Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Diffstat (limited to 'package/kernel/linux/modules/netsupport.mk')
-rw-r--r--package/kernel/linux/modules/netsupport.mk30
1 files changed, 30 insertions, 0 deletions
diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk
index 2c2fe82fa0..13f2283944 100644
--- a/package/kernel/linux/modules/netsupport.mk
+++ b/package/kernel/linux/modules/netsupport.mk
@@ -1250,3 +1250,33 @@ define KernelPackage/netlink-diag/description
endef
$(eval $(call KernelPackage,netlink-diag))
+
+
+define KernelPackage/wireguard
+ SECTION:=kernel
+ CATEGORY:=Kernel modules
+ SUBMENU:=Network Support
+ TITLE:=WireGuard kernel module
+ DEPENDS:= \
+ +kmod-crypto-lib-blake2s \
+ +kmod-crypto-lib-chacha20poly1305 \
+ +kmod-crypto-lib-curve25519 \
+ +kmod-udptunnel4 \
+ +IPV6:kmod-udptunnel6
+ KCONFIG:= \
+ CONFIG_WIREGUARD \
+ CONFIG_WIREGUARD_DEBUG=n
+ FILES:=$(LINUX_DIR)/drivers/net/wireguard/wireguard.ko
+ AUTOLOAD:=$(call AutoProbe,wireguard)
+endef
+
+define KernelPackage/wireguard/description
+ WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes
+ state-of-the-art cryptography. It aims to be faster, simpler, leaner, and
+ more useful than IPSec, while avoiding the massive headache. It intends to
+ be considerably more performant than OpenVPN. WireGuard is designed as a
+ general purpose VPN for running on embedded interfaces and super computers
+ alike, fit for many different circumstances. It uses UDP.
+endef
+
+$(eval $(call KernelPackage,wireguard))