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
committerHauke Mehrtens <hauke@hauke-m.de>2021-04-10 14:21:32 +0200
commita701d4b8414db2e1fafa676fad232cc9a0bfeaab (patch)
tree18ff31612302873efd42e61a5bb69b9a89bc3d90 /package/kernel/linux/modules/netsupport.mk
parentc0cb86e1d5ed9ab2fdbbe2d66ab612892d22d508 (diff)
downloadupstream-a701d4b8414db2e1fafa676fad232cc9a0bfeaab.tar.gz
upstream-a701d4b8414db2e1fafa676fad232cc9a0bfeaab.tar.bz2
upstream-a701d4b8414db2e1fafa676fad232cc9a0bfeaab.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> (cherry picked from commit 06351f1bd0455abacb700db5098bb798f66948fc) (cherry picked from commit 464451d9ab824c2ed62f7da33f0a965f562714c8)
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))