commit: c503ca9f40199eb1c1d1f934dee98d0ea13b4ff5 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sat Jan 25 12:06:23 2025 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Sat Jan 25 13:23:33 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c503ca9f
net-libs/libssh: drop 0.10.6-r2 Bug: https://bugs.gentoo.org/944731 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> net-libs/libssh/Manifest | 1 - .../libssh-0.10.6-ipv6-hostname-parsing.patch | 135 ------------------- .../libssh-0.10.6-libgcrypt-type-mismatches.patch | 60 --------- net-libs/libssh/libssh-0.10.6-r2.ebuild | 144 --------------------- net-libs/libssh/metadata.xml | 1 - 5 files changed, 341 deletions(-) diff --git a/net-libs/libssh/Manifest b/net-libs/libssh/Manifest index 5623fe267551..90d6e58cd728 100644 --- a/net-libs/libssh/Manifest +++ b/net-libs/libssh/Manifest @@ -1,2 +1 @@ -DIST libssh-0.10.6.tar.xz 561036 BLAKE2B 6ae1c611b685fa8ec5e5fb159f93493edf4d8ae8536300cd9a357daadc28ca2fbd8a64a22157744bc97e2e672b0b84b58e1167d7369fe88306b3581098af9f57 SHA512 40c62d63c44e882999b71552c237d73fc7364313bd00b15a211a34aeff1b73693da441d2c8d4e40108d00fb7480ec7c5b6d472f9c0784b2359a179632ab0d6c1 DIST libssh-0.11.1.tar.xz 621108 BLAKE2B 87079b4eaf66ceb77803b3d854f847b3f3fb6a67ac3bfa756ebcf8f06bf2b313e976044e0a1d81227fb5278fb04bc56f1a82877d14a6ee76bec0c690b14f38a7 SHA512 284d376ad9ea30b0274b4ac754b27d168286dca862ece43ef15ca6d89e66865ad7a6703cc12dd4a8564a60b8449ae9b36e6496fd51d34cc27ac4030f6cf216d6 diff --git a/net-libs/libssh/files/libssh-0.10.6-ipv6-hostname-parsing.patch b/net-libs/libssh/files/libssh-0.10.6-ipv6-hostname-parsing.patch deleted file mode 100644 index 4d62ca5e9459..000000000000 --- a/net-libs/libssh/files/libssh-0.10.6-ipv6-hostname-parsing.patch +++ /dev/null @@ -1,135 +0,0 @@ -From 4f997aee7c7d7ea346b3e8ba505da0b7601ff318 Mon Sep 17 00:00:00 2001 -From: Jakub Jelen <[email protected]> -Date: Fri, 22 Dec 2023 10:32:40 +0100 -Subject: [PATCH] Fix regression in IPv6 addresses in hostname parsing - -Signed-off-by: Jakub Jelen <[email protected]> -Reviewed-by: Andreas Schneider <[email protected]> ---- - include/libssh/config_parser.h | 11 ++++++++--- - src/config.c | 4 ++-- - src/config_parser.c | 16 +++++++++++----- - src/options.c | 10 ++-------- - 4 files changed, 23 insertions(+), 18 deletions(-) - -diff --git a/include/libssh/config_parser.h b/include/libssh/config_parser.h -index a7dd42a2c..ca353432b 100644 ---- a/include/libssh/config_parser.h -+++ b/include/libssh/config_parser.h -@@ -30,6 +30,8 @@ - extern "C" { - #endif - -+#include <stdbool.h> -+ - char *ssh_config_get_cmd(char **str); - - char *ssh_config_get_token(char **str); -@@ -49,14 +51,17 @@ int ssh_config_get_yesno(char **str, int notfound); - * be stored or NULL if we do not care about the result. - * @param[out] port Pointer to the location, where the new port will - * be stored or NULL if we do not care about the result. -+ * @param[in] ignore_port Set to true if the we should not attempt to parse -+ * port number. - * - * @returns SSH_OK if the provided string is in format of SSH URI, - * SSH_ERROR on failure - */ - int ssh_config_parse_uri(const char *tok, -- char **username, -- char **hostname, -- char **port); -+ char **username, -+ char **hostname, -+ char **port, -+ bool ignore_port); - - #ifdef __cplusplus - } -diff --git a/src/config.c b/src/config.c -index 5eedbce96..7135c3b19 100644 ---- a/src/config.c -+++ b/src/config.c -@@ -464,7 +464,7 @@ ssh_config_parse_proxy_jump(ssh_session session, const char *s, bool do_parsing) - } - if (parse_entry) { - /* We actually care only about the first item */ -- rv = ssh_config_parse_uri(cp, &username, &hostname, &port); -+ rv = ssh_config_parse_uri(cp, &username, &hostname, &port, false); - /* The rest of the list needs to be passed on */ - if (endp != NULL) { - next = strdup(endp + 1); -@@ -475,7 +475,7 @@ ssh_config_parse_proxy_jump(ssh_session session, const char *s, bool do_parsing) - } - } else { - /* The rest is just sanity-checked to avoid failures later */ -- rv = ssh_config_parse_uri(cp, NULL, NULL, NULL); -+ rv = ssh_config_parse_uri(cp, NULL, NULL, NULL, false); - } - if (rv != SSH_OK) { - goto out; -diff --git a/src/config_parser.c b/src/config_parser.c -index 9ffc8b8b0..5f30cd3e1 100644 ---- a/src/config_parser.c -+++ b/src/config_parser.c -@@ -162,9 +162,10 @@ int ssh_config_get_yesno(char **str, int notfound) - } - - int ssh_config_parse_uri(const char *tok, -- char **username, -- char **hostname, -- char **port) -+ char **username, -+ char **hostname, -+ char **port, -+ bool ignore_port) - { - char *endp = NULL; - long port_n; -@@ -210,12 +211,17 @@ int ssh_config_parse_uri(const char *tok, - if (endp == NULL) { - goto error; - } -- } else { -- /* Hostnames or aliases expand to the last colon or to the end */ -+ } else if (!ignore_port) { -+ /* Hostnames or aliases expand to the last colon (if port is requested) -+ * or to the end */ - endp = strrchr(tok, ':'); - if (endp == NULL) { - endp = strchr(tok, '\0'); - } -+ } else { -+ /* If no port is requested, expand to the end of line -+ * (to accommodate the IPv6 addresses) */ -+ endp = strchr(tok, '\0'); - } - if (tok == endp) { - /* Zero-length hostnames are not valid */ -diff --git a/src/options.c b/src/options.c -index 2e73be462..676c49e7a 100644 ---- a/src/options.c -+++ b/src/options.c -@@ -634,17 +634,11 @@ int ssh_options_set(ssh_session session, enum ssh_options_e type, - ssh_set_error_invalid(session); - return -1; - } else { -- char *username = NULL, *hostname = NULL, *port = NULL; -- rc = ssh_config_parse_uri(value, &username, &hostname, &port); -+ char *username = NULL, *hostname = NULL; -+ rc = ssh_config_parse_uri(value, &username, &hostname, NULL, true); - if (rc != SSH_OK) { - return -1; - } -- if (port != NULL) { -- SAFE_FREE(username); -- SAFE_FREE(hostname); -- SAFE_FREE(port); -- return -1; -- } - if (username != NULL) { - SAFE_FREE(session->opts.username); - session->opts.username = username; --- -GitLab - diff --git a/net-libs/libssh/files/libssh-0.10.6-libgcrypt-type-mismatches.patch b/net-libs/libssh/files/libssh-0.10.6-libgcrypt-type-mismatches.patch deleted file mode 100644 index 89e6d012240e..000000000000 --- a/net-libs/libssh/files/libssh-0.10.6-libgcrypt-type-mismatches.patch +++ /dev/null @@ -1,60 +0,0 @@ -From c01377081fc60132fd3e256ad56eab6b329f5493 Mon Sep 17 00:00:00 2001 -From: Gerald Combs <[email protected]> -Date: Thu, 1 Jun 2023 12:42:50 -0700 -Subject: [PATCH] libgcrypt.c: Fix type mismatches - -Fix - - /build/libssh-0.10.5/src/libgcrypt.c:903:20: error: incompatible function pointer types initializing 'void (*)(struct ssh_cipher_struct *, void *, void *, size_t)' (aka 'void (*)(struct ssh_cipher_struct *, void *, void *, unsigned long long)') with an expression of type 'void (struct ssh_cipher_struct *, void *, void *, unsigned long)' [-Wincompatible-function-pointer-types] - .encrypt = des3_encrypt, - ^~~~~~~~~~~~ - /build/libssh-0.10.5/src/libgcrypt.c:904:20: error: incompatible function pointer types initializing 'void (*)(struct ssh_cipher_struct *, void *, void *, size_t)' (aka 'void (*)(struct ssh_cipher_struct *, void *, void *, unsigned long long)') with an expression of type 'void (struct ssh_cipher_struct *, void *, void *, unsigned long)' [-Wincompatible-function-pointer-types] - .decrypt = des3_decrypt - ^~~~~~~~~~~~ - -Fixes: #196 - -Signed-off-by: Gerald Combs <[email protected]> -Reviewed-by: Jakub Jelen <[email protected]> -Reviewed-by: Norbert Pocs <[email protected]> ---- - src/libgcrypt.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/libgcrypt.c b/src/libgcrypt.c -index cea20370b..58f510954 100644 ---- a/src/libgcrypt.c -+++ b/src/libgcrypt.c -@@ -198,12 +198,12 @@ static int blowfish_set_key(struct ssh_cipher_struct *cipher, void *key, void *I - } - - static void blowfish_encrypt(struct ssh_cipher_struct *cipher, void *in, -- void *out, unsigned long len) { -+ void *out, size_t len) { - gcry_cipher_encrypt(cipher->key[0], out, len, in, len); - } - - static void blowfish_decrypt(struct ssh_cipher_struct *cipher, void *in, -- void *out, unsigned long len) { -+ void *out, size_t len) { - gcry_cipher_decrypt(cipher->key[0], out, len, in, len); - } - #endif /* WITH_BLOWFISH_CIPHER */ -@@ -469,12 +469,12 @@ static int des3_set_key(struct ssh_cipher_struct *cipher, void *key, void *IV) { - } - - static void des3_encrypt(struct ssh_cipher_struct *cipher, void *in, -- void *out, unsigned long len) { -+ void *out, size_t len) { - gcry_cipher_encrypt(cipher->key[0], out, len, in, len); - } - - static void des3_decrypt(struct ssh_cipher_struct *cipher, void *in, -- void *out, unsigned long len) { -+ void *out, size_t len) { - gcry_cipher_decrypt(cipher->key[0], out, len, in, len); - } - --- -GitLab - diff --git a/net-libs/libssh/libssh-0.10.6-r2.ebuild b/net-libs/libssh/libssh-0.10.6-r2.ebuild deleted file mode 100644 index ff5c0510997d..000000000000 --- a/net-libs/libssh/libssh-0.10.6-r2.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake-multilib - -DESCRIPTION="Access a working SSH implementation by means of a library" -HOMEPAGE="https://www.libssh.org/" - -if [[ ${PV} == *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://git.libssh.org/projects/libssh.git" -else - SRC_URI="https://www.libssh.org/files/$(ver_cut 1-2)/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -fi - -LICENSE="LGPL-2.1" -SLOT="0/4" # subslot = soname major version -IUSE="debug doc examples gcrypt gssapi mbedtls pcap server +sftp static-libs test zlib" -# Maintainer: check IUSE-defaults at DefineOptions.cmake - -REQUIRED_USE="?? ( gcrypt mbedtls )" -RESTRICT="!test? ( test )" - -RDEPEND=" - !gcrypt? ( - !mbedtls? ( - >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] - ) - ) - gcrypt? ( >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}] ) - gssapi? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - mbedtls? ( net-libs/mbedtls:0=[${MULTILIB_USEDEP}] ) - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) -" -DEPEND="${RDEPEND} - test? ( - >=dev-util/cmocka-0.3.1[${MULTILIB_USEDEP}] - elibc_musl? ( sys-libs/argp-standalone ) - ) -" -BDEPEND="doc? ( app-text/doxygen[dot] )" - -DOCS=( AUTHORS CHANGELOG README ) - -PATCHES=( - "${FILESDIR}/${P}-libgcrypt-type-mismatches.patch" # bug 932715 - "${FILESDIR}/${P}-ipv6-hostname-parsing.patch" -) - -src_prepare() { - cmake_src_prepare - - # just install the examples, do not compile them - cmake_comment_add_subdirectory examples - - sed -e "/^check_include_file.*HAVE_VALGRIND_VALGRIND_H/s/^/#DONT /" \ - -i ConfigureChecks.cmake || die - - if use test; then - local skip_tests=( - # keyfile torture test is currently broken - -e "/torture_keyfiles/d" - - # Tries to expand ~ which fails w/ portage homedir - # (torture_path_expand_tilde_unix and torture_config_make_absolute_no_sshdir) - -e "/torture_misc/d" - -e "/torture_config/d" - ) - - # Disable tests that take too long (bug #677006) - if use sparc; then - skip_tests+=( - -e "/torture_threads_pki_rsa/d" - -e "/torture_pki_dsa/d" - ) - fi - - if (( ${#skip_tests[@]} )) ; then - sed -i "${skip_tests[@]}" tests/unittests/CMakeLists.txt || die - fi - - if use elibc_musl; then - sed -e "/SOLARIS/d" \ - -i tests/CMakeLists.txt || die - fi - fi -} - -multilib_src_configure() { - local mycmakeargs=( - -DWITH_NACL=OFF - -DWITH_STACK_PROTECTOR=OFF - -DWITH_STACK_PROTECTOR_STRONG=OFF - -DWITH_DEBUG_CALLTRACE=$(usex debug) - -DWITH_DEBUG_CRYPTO=$(usex debug) - -DWITH_GCRYPT=$(usex gcrypt) - -DWITH_GSSAPI=$(usex gssapi) - -DWITH_MBEDTLS=$(usex mbedtls) - -DWITH_PCAP=$(usex pcap) - -DWITH_SERVER=$(usex server) - -DWITH_SFTP=$(usex sftp) - -DBUILD_STATIC_LIB=$(usex static-libs) - # TODO: try enabling {CLIENT,SERVER}_TESTING - -DUNIT_TESTING=$(usex test) - -DWITH_ZLIB=$(usex zlib) - ) - - multilib_is_native_abi || mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON ) - - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - multilib_is_native_abi && use doc && cmake_src_compile docs -} - -multilib_src_test() { - cmake_src_test --timeout 3000 -} - -multilib_src_install() { - cmake_src_install - multilib_is_native_abi && use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) - - use static-libs && dolib.a src/libssh.a - - # compatibility symlink until all consumers have been updated - # to no longer use libssh_threads.so - dosym libssh.so /usr/$(get_libdir)/libssh_threads.so -} - -multilib_src_install_all() { - use mbedtls && DOCS+=( README.mbedtls ) - einstalldocs - - if use examples; then - docinto examples - dodoc examples/*.{c,h,cpp} - fi -} diff --git a/net-libs/libssh/metadata.xml b/net-libs/libssh/metadata.xml index ef1bf6cb8f62..4107f06edf3d 100644 --- a/net-libs/libssh/metadata.xml +++ b/net-libs/libssh/metadata.xml @@ -6,7 +6,6 @@ <name>Gentoo KDE Project</name> </maintainer> <use> - <flag name="gcrypt">Use <pkg>dev-libs/libgcrypt</pkg> as TLS provider</flag> <flag name="gssapi">Enable gssapi support</flag> <flag name="mbedtls">Use <pkg>net-libs/mbedtls</pkg> as TLS provider</flag> <flag name="pcap">Build with PCAP output support</flag>
