diff options
Diffstat (limited to 'net-vpn/openconnect')
-rw-r--r-- | net-vpn/openconnect/Manifest | 2 | ||||
-rw-r--r-- | net-vpn/openconnect/openconnect-9.10.ebuild | 163 | ||||
-rw-r--r-- | net-vpn/openconnect/openconnect-9999.ebuild | 18 |
3 files changed, 180 insertions, 3 deletions
diff --git a/net-vpn/openconnect/Manifest b/net-vpn/openconnect/Manifest index a855a2300764..aa92a3417bd2 100644 --- a/net-vpn/openconnect/Manifest +++ b/net-vpn/openconnect/Manifest @@ -1 +1,3 @@ DIST openconnect-9.01.tar.gz 2718526 BLAKE2B e346b30ed8a299bcdd1fc88868d59b4d501c48bc5c02092e92e7ded0cd36e4de6a5b65aae4f6bf8c9aa60cf70f5466b110b64889df8d286016c9a1b4d9f46ff7 SHA512 b7428847a90f8ca9d1f1f61653c1f2486f0a07989f3b7435b746c5e901998194f4ee2b4f9569a548a23bba368bb1e9f273674c0759aac9df30208d2a6a303c34 +DIST openconnect-9.10.tar.gz 2843858 BLAKE2B 03349acaf2420fc1acb4e5787159a7185708e9e2fe8f7e3b54141342da361b304967a27d60ea3b3bede62b9e74718cbcc734c33c36bf49a7ab4ca8ee5d96bbbf SHA512 64d10ad67fccd11d1aaae23a77c6cfd8200bbba0eae21a7d01c604688ec9c35b5f19eeb9a47de14d383780eba64a2f6c06daccd4c1fae6289efdb0dc2fb7c536 +DIST openconnect-9.10.tar.gz.asc 833 BLAKE2B 37ac92d70b415ba4d80c6a9028610e5660eecf7bd826d8ea708c8c59b60ff2fc8dcdc583dbc163ad5929c34b034e44273dc91d966b81397daaa8edda6407f5bc SHA512 4ed8be3a8aa1a0bdedff94910b2de792c93025498f83b50033df9ef25fd0a9dd86ab3011183657b49bbc3c2b70a5acb9605bdfa722e2bb2f2318540d1047f730 diff --git a/net-vpn/openconnect/openconnect-9.10.ebuild b/net-vpn/openconnect/openconnect-9.10.ebuild new file mode 100644 index 000000000000..bda422a32553 --- /dev/null +++ b/net-vpn/openconnect/openconnect-9.10.ebuild @@ -0,0 +1,163 @@ +# Copyright 2011-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_REQ_USE="xml(+)" + +inherit linux-info python-any-r1 + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.com/openconnect/openconnect.git" + inherit git-r3 autotools +else + inherit verify-sig + SRC_URI="https://www.infradead.org/openconnect/download/${P}.tar.gz + verify-sig? ( https://www.infradead.org/openconnect/download/${P}.tar.gz.asc )" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +DESCRIPTION="Free client for Cisco AnyConnect SSL VPN software" +HOMEPAGE="https://www.infradead.org/openconnect/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5" +IUSE="doc +gnutls gssapi libproxy lz4 nls pskc selinux smartcard stoken test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + dev-libs/json-parser:0= + dev-libs/libxml2 + sys-libs/zlib + app-crypt/p11-kit + !gnutls? ( + >=dev-libs/openssl-1.0.1h:0= + dev-libs/libp11 + ) + gnutls? ( + app-crypt/trousers + app-misc/ca-certificates + dev-libs/nettle + >=net-libs/gnutls-3.6.13:0= + dev-libs/libtasn1:0= + app-crypt/tpm2-tss:= + ) + gssapi? ( virtual/krb5 ) + libproxy? ( net-libs/libproxy ) + lz4? ( app-arch/lz4:= ) + nls? ( virtual/libintl ) + pskc? ( sys-auth/oath-toolkit[pskc(+)] ) + smartcard? ( sys-apps/pcsc-lite:0= ) + stoken? ( app-crypt/stoken ) +" +DEPEND="${COMMON_DEPEND} + test? ( + net-libs/socket_wrapper + sys-libs/uid_wrapper + !gnutls? ( dev-libs/openssl:0[weak-ssl-ciphers(-)] ) + ) +" +RDEPEND="${COMMON_DEPEND} + sys-apps/iproute2 + >=net-vpn/vpnc-scripts-20210402-r1 + selinux? ( sec-policy/selinux-vpn ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( ${PYTHON_DEPS} sys-apps/groff ) + nls? ( sys-devel/gettext ) + test? ( net-vpn/ocserv ) +" + +if [[ ${PV} != 9999 ]]; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dwmw2 )" + VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/dwmw2@kernel.org.key" +fi + +CONFIG_CHECK="~TUN" + +pkg_pretend() { + check_extra_config +} + +pkg_setup() { + : +} + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + else + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}/${P}".tar.gz{,.asc} + fi + unpack "${P}.tar.gz" + fi +} + +src_prepare() { + default + if [[ ${PV} == 9999 ]]; then + eautoreconf + fi +} + +src_configure() { + if use doc; then + python_setup + else + export ac_cv_path_PYTHON= + fi + + # Used by tests if userpriv is disabled + addwrite /run/netns + + local myconf=( + --disable-dsa-tests + $(use_enable nls) + --disable-static + $(use_with !gnutls openssl) + $(use_with gnutls) + $(use_with libproxy) + $(use_with lz4) + $(use_with gssapi) + $(use_with pskc libpskc) + $(use_with smartcard libpcsclite) + $(use_with stoken) + --with-vpnc-script="${EPREFIX}/etc/vpnc/vpnc-script" + --without-builtin-json + --without-java + ) + + econf "${myconf[@]}" +} + +src_test() { + local charset + for charset in UTF-8 ISO-8859-2; do + if [[ $(LC_ALL=cs_CZ.${charset} locale charmap 2>/dev/null) != ${charset} ]]; then + # If we don't have valid cs_CZ locale data, auth-nonascii will fail. + # Force a test skip by exiting with status 77. + sed -i -e '2i exit 77' tests/auth-nonascii || die + break + fi + done + addwrite /proc + default +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die + + dodoc "${FILESDIR}"/README.OpenRC + + newconfd "${FILESDIR}"/openconnect.confd openconnect + newinitd "${FILESDIR}"/openconnect.initd openconnect + + insinto /etc/logrotate.d + newins "${FILESDIR}"/openconnect.logrotate openconnect + + keepdir /var/log/openconnect +} diff --git a/net-vpn/openconnect/openconnect-9999.ebuild b/net-vpn/openconnect/openconnect-9999.ebuild index 1128cd29c582..bda422a32553 100644 --- a/net-vpn/openconnect/openconnect-9999.ebuild +++ b/net-vpn/openconnect/openconnect-9999.ebuild @@ -12,8 +12,10 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://gitlab.com/openconnect/openconnect.git" inherit git-r3 autotools else - SRC_URI="ftp://ftp.infradead.org/pub/${PN}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" + inherit verify-sig + SRC_URI="https://www.infradead.org/openconnect/download/${P}.tar.gz + verify-sig? ( https://www.infradead.org/openconnect/download/${P}.tar.gz.asc )" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" fi DESCRIPTION="Free client for Cisco AnyConnect SSL VPN software" @@ -68,6 +70,11 @@ BDEPEND=" test? ( net-vpn/ocserv ) " +if [[ ${PV} != 9999 ]]; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dwmw2 )" + VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/dwmw2@kernel.org.key" +fi + CONFIG_CHECK="~TUN" pkg_pretend() { @@ -81,8 +88,12 @@ pkg_setup() { src_unpack() { if [[ ${PV} == 9999 ]]; then git-r3_src_unpack + else + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}/${P}".tar.gz{,.asc} + fi + unpack "${P}.tar.gz" fi - default } src_prepare() { @@ -132,6 +143,7 @@ src_test() { break fi done + addwrite /proc default } |