commit:     3534ca2e4051f76986b81a757195f956ea0548dc
Author:     Timo Rothenpieler <timo <AT> rothenpieler <DOT> org>
AuthorDate: Mon May  1 16:57:32 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon May 29 22:53:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3534ca2e

net-vpn/ovpn-dco: add openvpn dco kernel module

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 net-vpn/ovpn-dco/Manifest                     |  1 +
 net-vpn/ovpn-dco/metadata.xml                 | 17 +++++++++
 net-vpn/ovpn-dco/ovpn-dco-0.2.20230426.ebuild | 52 +++++++++++++++++++++++++++
 net-vpn/ovpn-dco/ovpn-dco-9999.ebuild         | 52 +++++++++++++++++++++++++++
 4 files changed, 122 insertions(+)

diff --git a/net-vpn/ovpn-dco/Manifest b/net-vpn/ovpn-dco/Manifest
new file mode 100644
index 000000000000..0bf39dfae04a
--- /dev/null
+++ b/net-vpn/ovpn-dco/Manifest
@@ -0,0 +1 @@
+DIST ovpn-dco-0.2.20230426.tar.gz 70341 BLAKE2B 
95d468212a161f13659185d7e96b11afac63a8dd40aaf42a41463927a7f75b1d1ab2388bab5749c0127a07a8bf5d4a5a97626c0d782595f3d0561be4063d931c
 SHA512 
929333fd0668008be77b57b3a0955c260770d91402e02d93a460569b8b17763ebe23eb6159bfefe04fa16fad2672d6a6c76e2f3c2e6b864593bef59ef3cfa29f

diff --git a/net-vpn/ovpn-dco/metadata.xml b/net-vpn/ovpn-dco/metadata.xml
new file mode 100644
index 000000000000..747c7bc21234
--- /dev/null
+++ b/net-vpn/ovpn-dco/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="person">
+    <email>[email protected]</email>
+    <name>William Hubbs</name>
+  </maintainer>
+  <longdescription>This kernel module allows OpenVPN to offload any data plane 
management to the
+linux kernel, thus allowing it to exploit any Linux low level API, while 
avoiding
+expensive and slow payload transfer between kernel space and user 
space.</longdescription>
+  <use>
+    <flag name="debug">Enable debug output in dmesg</flag>
+  </use>
+  <upstream>
+    <remote-id type="github">OpenVPN/ovpn-dco</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/net-vpn/ovpn-dco/ovpn-dco-0.2.20230426.ebuild 
b/net-vpn/ovpn-dco/ovpn-dco-0.2.20230426.ebuild
new file mode 100644
index 000000000000..2bbfd8a0560a
--- /dev/null
+++ b/net-vpn/ovpn-dco/ovpn-dco-0.2.20230426.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-mod
+
+DESCRIPTION="OpenVPN Data Channel Offload in the linux kernel"
+HOMEPAGE="https://github.com/OpenVPN/ovpn-dco";
+
+if [[ ${PV} != 9999 ]]; then
+       
SRC_URI="https://github.com/OpenVPN/${PN}/archive/refs/tags/v${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64"
+else
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/OpenVPN/${PN}.git";
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+MODULE_NAMES="ovpn-dco-v2(updates:.:drivers/net/ovpn-dco)"
+BUILD_TARGETS="all"
+
+pkg_setup() {
+       CONFIG_CHECK="
+               INET
+               NET
+               NET_UDP_TUNNEL
+               DST_CACHE
+               CRYPTO
+               CRYPTO_AES
+               CRYPTO_GCM
+               CRYPTO_CHACHA20POLY1305"
+
+       linux-mod_pkg_setup
+}
+
+src_compile() {
+       BUILD_PARAMS+=" KERNEL_SRC='${KERNEL_DIR}'"
+       [[ ${PV} != 9999 ]] && BUILD_PARAMS+=" REVISION='${PV}'"
+       use debug && BUILD_PARAMS+=" DEBUG=1"
+       linux-mod_src_compile
+}
+
+src_install() {
+       linux-mod_src_install
+
+       insinto /usr/share/${PN}
+       doins -r include
+}

diff --git a/net-vpn/ovpn-dco/ovpn-dco-9999.ebuild 
b/net-vpn/ovpn-dco/ovpn-dco-9999.ebuild
new file mode 100644
index 000000000000..e2affd832c1c
--- /dev/null
+++ b/net-vpn/ovpn-dco/ovpn-dco-9999.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-mod
+
+DESCRIPTION="OpenVPN Data Channel Offload in the linux kernel"
+HOMEPAGE="https://github.com/OpenVPN/ovpn-dco";
+
+if [[ ${PV} != 9999 ]]; then
+       
SRC_URI="https://github.com/OpenVPN/${PN}/archive/refs/tags/v${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+else
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/OpenVPN/${PN}.git";
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+MODULE_NAMES="ovpn-dco-v2(updates:.:drivers/net/ovpn-dco)"
+BUILD_TARGETS="all"
+
+pkg_setup() {
+       CONFIG_CHECK="
+               INET
+               NET
+               NET_UDP_TUNNEL
+               DST_CACHE
+               CRYPTO
+               CRYPTO_AES
+               CRYPTO_GCM
+               CRYPTO_CHACHA20POLY1305"
+
+       linux-mod_pkg_setup
+}
+
+src_compile() {
+       BUILD_PARAMS+=" KERNEL_SRC='${KERNEL_DIR}'"
+       [[ ${PV} != 9999 ]] && BUILD_PARAMS+=" REVISION='${PV}'"
+       use debug && BUILD_PARAMS+=" DEBUG=1"
+       linux-mod_src_compile
+}
+
+src_install() {
+       linux-mod_src_install
+
+       insinto /usr/share/${PN}
+       doins -r include
+}

Reply via email to