From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- net-libs/libssh/Manifest | 11 +++ net-libs/libssh/files/libssh-0.5.0-tests.patch | 11 +++ .../libssh-0.7.5-fix-config-buffer-underflow.patch | 25 ++++++ .../files/libssh-0.7.5-fix-config-parsing.patch | 32 +++++++ net-libs/libssh/libssh-0.7.4.ebuild | 99 ++++++++++++++++++++ net-libs/libssh/libssh-0.7.5-r1.ebuild | 100 +++++++++++++++++++++ net-libs/libssh/libssh-9999.ebuild | 89 ++++++++++++++++++ net-libs/libssh/metadata.xml | 17 ++++ 8 files changed, 384 insertions(+) create mode 100644 net-libs/libssh/Manifest create mode 100644 net-libs/libssh/files/libssh-0.5.0-tests.patch create mode 100644 net-libs/libssh/files/libssh-0.7.5-fix-config-buffer-underflow.patch create mode 100644 net-libs/libssh/files/libssh-0.7.5-fix-config-parsing.patch create mode 100644 net-libs/libssh/libssh-0.7.4.ebuild create mode 100644 net-libs/libssh/libssh-0.7.5-r1.ebuild create mode 100644 net-libs/libssh/libssh-9999.ebuild create mode 100644 net-libs/libssh/metadata.xml (limited to 'net-libs/libssh') diff --git a/net-libs/libssh/Manifest b/net-libs/libssh/Manifest new file mode 100644 index 000000000000..826083c73c4c --- /dev/null +++ b/net-libs/libssh/Manifest @@ -0,0 +1,11 @@ +AUX libssh-0.5.0-tests.patch 446 SHA256 d23cf31e1fe6c0e1b1ee31f88a74b1a02386d75ab72063a39fea8c467dfc3383 SHA512 e751ac1c3749ecbd8ee2f960ad09e861763cbdb9bccc7c95ae27ca4768e8c9ae5ab55342151a2799f8f937e63a8729bff6f04cec166bb9830b99f8f690da4825 WHIRLPOOL 55031d07f02fe43f32391ae20e78b5a689df342e96d0feb2a03f674251b743ae502955e9d1e93539ca4f25f2eb151d8d02fb594e509978356c4bae90fcdca695 +AUX libssh-0.7.5-fix-config-buffer-underflow.patch 742 SHA256 cc0e9b3fedd7a31e04eea43a295efdd9df912c666c6a1f83558c20198102a38e SHA512 0e6ed4f39637b5bc3476225b1cbd28891e668609e681b4b55343c37d6a7f0c5be0f71ce684b6a83ab5e5f14cca3206d0752a17cab1138fdf274656ba36a764e5 WHIRLPOOL 44ed9815d57edc8cc5e1fc5483b9e84cfd985b16d8fe7897d32c567e92d5403698431f6e422ca2788db2ecb0c3ebd5a884fe47915250e10b1cbf907441a41e9e +AUX libssh-0.7.5-fix-config-parsing.patch 1076 SHA256 c39bed86f34a377015fb6d6552700a3838c5cae1a4a83b3e859539785aeabdba SHA512 45d21c11ce242d6f2a86fe1fe96ed934a06d0dd54b9e2af6ad873bbec1b0db91cb884879205f42c1006740a4cfc1c16723180f447640e96e8373b39be8828aa5 WHIRLPOOL 707976bf6a9dfbb61dced3b0250afd6af70da50bc3f6a32e30d18b5679b92f769985d0de4a4f0123995a11acb3c71fa2a953a34a046536fe145952db0557ec3a +DIST libssh-0.7.4.tar.xz 351892 SHA256 39e1bec3b3cb452af3b8fd7f59c12c5ef5b9ed64f057c7eb0d1a5cac67ba6c0d SHA512 94b8183e5c83e339303c1a160c92ccff6159471ac7d189ab66cf6d606d2e803fd616519f079aef1577c947d3a14e315332b05ea08e44d0ab550edbcb768dbea7 WHIRLPOOL 6698bdfa7e9720fa9c31f1cf85660eb463c853a24867d643f6df1af932299500606d4d768687e6379c653e815dabb3299dd1098076f76f50b6dd0742f3edb85d +DIST libssh-0.7.5.tar.xz 351632 SHA256 54e86dd5dc20e5367e58f3caab337ce37675f863f80df85b6b1614966a337095 SHA512 6c7f539899caaedf13d66fa2e0fac1a475ecdfe389131abcbdf908bdebc50a0b9e6b0d43e67e52aea85c32f6aa68e46ca2f50695992f82ded83489f445a8e775 WHIRLPOOL 9ecb759a35a0c39f6e472134f6e224c0764c0a909aedb77a379d3d8e9399e200a4421d268e379ded5bd68c51ffaf559c6765f799f55ba120320176def0daae2d +EBUILD libssh-0.7.4.ebuild 2478 SHA256 feffa79f80c74d09247a2b81fb738e85f797882577cf6e1143a0c5d4683f15d7 SHA512 1c7b902fd9dbd2e4826be08c9d326dd3bf858e8ebedfe489ddcef917c888f225742967b93cdf8d647bb42ff4e5938b463e3e7526afd76986b7561399ffb10079 WHIRLPOOL 59b96b6d380a42de55366dd07bccdb457ae9861d1c252b9e8b11fcccfe4bef26a31a8709c5851ed4a8f209a5aac5c76e193ef8d22ebca2e6e287f82d8c35c321 +EBUILD libssh-0.7.5-r1.ebuild 2572 SHA256 6929809e52addad23452c4dff695fe13ac7f8275a7c4ef9111914b8b02752d07 SHA512 6653cd6ca61bea75ab815e219c8a8f4bf03d99a8b25c3d948f3bf6ecd363b0ffded197a57cef7bf392a4dd08069d58992155b5fef38121d9e4eb524459a703f4 WHIRLPOOL c80b2de49d842f7e96f6c0419bf008a5927c420ddd4019c0130b55871e258e5805a1b08f903d6d941c8caa98b69c943154018f5b3c8044e4427f4f4c9b4d0d6f +EBUILD libssh-9999.ebuild 2125 SHA256 c6212bdd8c919f99c111a12e97ca42026abaa5e28f941c3b69236d204f9289f1 SHA512 9dbb0ee5cafac2165d993d204b52d49425a1257ccc27e4c1631c152c97849a03273a4a996b5e03c365c19ebad6130d14d96edad2d086116dc5a01d8bbd79fa01 WHIRLPOOL a85ae2e18e54338ba6b47e9e29bf17489ea069ff89aa65e8d8ae0b4accf50f5f7869937a44a05a2feb9c2092a362bf90f1808881eb62f776e96310a5eb03a547 +MISC ChangeLog 7296 SHA256 daad24ca23c37650554fde2a456ba28597d48b11eff68db6fefc7ff60a775d58 SHA512 1b1b28b822d0f44d4d4046c40b053283130346392b5fde351db35fcd37466dfd6d37d67b5cda5cf0a39cb11d44966b0a9c88871557b03ef0d2aeadf10789afbc WHIRLPOOL f3d34b487d9655829ffd3bfbcd729a7b3b23cb941be00ab1be29bb4fe2f49ccfc6b5daddc8eef42802a7af20de2bc5d4829bd7433985c8311250ae7989488a50 +MISC ChangeLog-2015 19105 SHA256 42955a5b99080071173e9c8d53acb82f27ad05f6a5b512d78900b4a89f26fb8d SHA512 708133f73e692cf1e683bdf384efdb8b56f13f694559f6adffa5e32731309fca9e5b8dafa83c3ed1a8d7f5fef41230157ad7492c44b954b36ea59e1a8be0d84b WHIRLPOOL 30376871e5a4b3928d677914f0dd31a3e4b78170e33d58410b9fb5e8d2f9fe77497c619ce4a9b39e1bd67c0020ac42f383e76a161033a60b8aec0a1036d2aad3 +MISC metadata.xml 648 SHA256 1b832da52b58425c8980cd84016b49a38e3dea3f7926b0f3b1e0972cb50a2817 SHA512 4e99644645a43ccf7c479c6808ecb2dfe9f9aba69518ab1e2a1289732b926d853ff5554c69fff71e4bb572d12af298ebe19ecb1086da2e8675153b5c42faf589 WHIRLPOOL 43b9e77f6b31be512ccc6b052437776b7f7b278a54ca643431b0f07118efb4c5633968ed6f7f4872870a55c9280936ecf88791bc5a0b6a6bcb48fb86eeacfe60 diff --git a/net-libs/libssh/files/libssh-0.5.0-tests.patch b/net-libs/libssh/files/libssh-0.5.0-tests.patch new file mode 100644 index 000000000000..dde770ce5b2a --- /dev/null +++ b/net-libs/libssh/files/libssh-0.5.0-tests.patch @@ -0,0 +1,11 @@ +--- a/tests/unittests/torture_misc.c ++++ b/tests/unittests/torture_misc.c +@@ -195,7 +195,7 @@ + #ifdef _WIN32 + unit_test(torture_path_expand_tilde_win), + #else +- unit_test(torture_path_expand_tilde_unix), ++ //unit_test(torture_path_expand_tilde_unix), + #endif + unit_test_setup_teardown(torture_path_expand_escape, setup, teardown), + unit_test_setup_teardown(torture_path_expand_known_hosts, setup, teardown), diff --git a/net-libs/libssh/files/libssh-0.7.5-fix-config-buffer-underflow.patch b/net-libs/libssh/files/libssh-0.7.5-fix-config-buffer-underflow.patch new file mode 100644 index 000000000000..7ff03263d198 --- /dev/null +++ b/net-libs/libssh/files/libssh-0.7.5-fix-config-buffer-underflow.patch @@ -0,0 +1,25 @@ +From 0cffb88b80b1e8b7e292646b955e9b9ca02315c4 Mon Sep 17 00:00:00 2001 +From: Aris Adamantiadis +Date: Thu, 8 Jun 2017 00:22:02 +0200 +Subject: config: fix buffer underflow with unrecognized opcodes + +--- + src/config.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/config.c b/src/config.c +index 519926e7..6187c90f 100644 +--- a/src/config.c ++++ b/src/config.c +@@ -218,7 +218,7 @@ static int ssh_config_parse_line(ssh_session session, const char *line, + } + + opcode = ssh_config_get_opcode(keyword); +- if (*parsing == 1 && opcode != SOC_HOST) { ++ if (*parsing == 1 && opcode != SOC_HOST && opcode != SOC_UNSUPPORTED) { + if (seen[opcode] != 0) { + return 0; + } +-- +cgit v1.1 + diff --git a/net-libs/libssh/files/libssh-0.7.5-fix-config-parsing.patch b/net-libs/libssh/files/libssh-0.7.5-fix-config-parsing.patch new file mode 100644 index 000000000000..3596cf02105d --- /dev/null +++ b/net-libs/libssh/files/libssh-0.7.5-fix-config-parsing.patch @@ -0,0 +1,32 @@ +From 5333be5988c3789e7011598995f4df90d50d84d0 Mon Sep 17 00:00:00 2001 +From: "Artyom V. Poptsov" +Date: Sun, 4 Jun 2017 11:54:55 +0300 +Subject: config: Bugfix: Don't skip unseen opcodes + +libssh fails to read the configuration from a config file due to a +wrong check in 'ssh_config_parse_line' procedure in 'config.c'; it's +effectively skipping every opcode (and therefore every option) from +the file. The change fixes that behaviour. + +Signed-off-by: Artyom V. Poptsov +Reviewed-by: Andreas Schneider +--- + src/config.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/config.c b/src/config.c +index 6478fc5f..519926e7 100644 +--- a/src/config.c ++++ b/src/config.c +@@ -219,7 +219,7 @@ static int ssh_config_parse_line(ssh_session session, const char *line, + + opcode = ssh_config_get_opcode(keyword); + if (*parsing == 1 && opcode != SOC_HOST) { +- if (seen[opcode] == 0) { ++ if (seen[opcode] != 0) { + return 0; + } + seen[opcode] = 1; +-- +cgit v1.1 + diff --git a/net-libs/libssh/libssh-0.7.4.ebuild b/net-libs/libssh/libssh-0.7.4.ebuild new file mode 100644 index 000000000000..a11813cc768b --- /dev/null +++ b/net-libs/libssh/libssh-0.7.4.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_P=${PN}-${PV/_rc/rc} +inherit eutils cmake-multilib multilib + +DESCRIPTION="Access a working SSH implementation by means of a library" +HOMEPAGE="http://www.libssh.org/" +SRC_URI="https://red.libssh.org/attachments/download/210/${MY_P}.tar.xz -> ${P}.tar.xz" + +LICENSE="LGPL-2.1" +KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux" +SLOT="0/4" # subslot = soname major version +IUSE="debug doc examples gcrypt gssapi libressl pcap +sftp ssh1 server static-libs test zlib" +# Maintainer: check IUSE-defaults at DefineOptions.cmake + +RDEPEND=" + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) + !gcrypt? ( + !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] ) + ) + gcrypt? ( >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}] ) + gssapi? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + doc? ( app-doc/doxygen ) + test? ( >=dev-util/cmocka-0.3.1[${MULTILIB_USEDEP}] ) +" + +DOCS=( AUTHORS README ChangeLog ) + +S=${WORKDIR}/${MY_P} + +PATCHES=( + "${FILESDIR}"/${PN}-0.5.0-tests.patch +) + +src_prepare() { + # just install the examples do not compile them + sed -i \ + -e '/add_subdirectory(examples)/s/^/#DONOTWANT/' \ + CMakeLists.txt || die + + # keyfile torture test is currently broken + sed \ + -e '/torture_keyfiles/d' \ + -i tests/unittests/CMakeLists.txt || die + + cmake-utils_src_prepare +} + +multilib_src_configure() { + local mycmakeargs=( + -DWITH_DEBUG_CALLTRACE="$(usex debug)" + -DWITH_DEBUG_CRYPTO="$(usex debug)" + -DWITH_GCRYPT="$(usex gcrypt)" + -DWITH_GSSAPI="$(usex gssapi)" + -DWITH_NACL=no + -DWITH_PCAP="$(usex pcap)" + -DWITH_SERVER="$(usex server)" + -DWITH_SFTP="$(usex sftp)" + -DWITH_SSH1="$(usex ssh1)" + -DWITH_STATIC_LIB="$(usex static-libs)" + -DWITH_STATIC_LIB="$(usex test)" + -DWITH_TESTING="$(usex test)" + -DWITH_ZLIB="$(usex zlib)" + ) + + cmake-utils_src_configure +} + +multilib_src_compile() { + cmake-utils_src_compile + multilib_is_native_abi && use doc && cmake-utils_src_compile doc +} + +multilib_src_install() { + cmake-utils_src_install + + if multilib_is_native_abi && use doc ; then + docinto html + dodoc -r doc/html/. + fi + + use static-libs || rm -f "${D}"/usr/$(get_libdir)/libssh{,_threads}.a +} + +multilib_src_install_all() { + einstalldocs + + if use examples; then + docinto examples + dodoc examples/*.{c,h,cpp} + fi +} diff --git a/net-libs/libssh/libssh-0.7.5-r1.ebuild b/net-libs/libssh/libssh-0.7.5-r1.ebuild new file mode 100644 index 000000000000..6cf8db76a118 --- /dev/null +++ b/net-libs/libssh/libssh-0.7.5-r1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_P="${PN}-${PV/_rc/rc}" +inherit cmake-multilib + +DESCRIPTION="Access a working SSH implementation by means of a library" +HOMEPAGE="https://www.libssh.org/" +SRC_URI="https://red.libssh.org/attachments/download/218/${MY_P}.tar.xz -> ${P}.tar.xz" + +LICENSE="LGPL-2.1" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +SLOT="0/4" # subslot = soname major version +IUSE="debug doc examples gcrypt gssapi libressl pcap server +sftp ssh1 static-libs test zlib" +# Maintainer: check IUSE-defaults at DefineOptions.cmake + +RDEPEND=" + !gcrypt? ( + !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] ) + ) + gcrypt? ( >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}] ) + gssapi? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen ) + test? ( >=dev-util/cmocka-0.3.1[${MULTILIB_USEDEP}] ) +" + +DOCS=( AUTHORS README ChangeLog ) + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${PN}-0.5.0-tests.patch + "${FILESDIR}"/${P}-fix-config-parsing.patch + "${FILESDIR}"/${P}-fix-config-buffer-underflow.patch +) + +src_prepare() { + cmake-utils_src_prepare + + # just install the examples do not compile them + sed -i \ + -e '/add_subdirectory(examples)/s/^/#DONOTWANT/' \ + CMakeLists.txt || die + + # keyfile torture test is currently broken + sed -i \ + -e '/torture_keyfiles/d' \ + tests/unittests/CMakeLists.txt || die +} + +multilib_src_configure() { + local mycmakeargs=( + -DWITH_DEBUG_CALLTRACE="$(usex debug)" + -DWITH_DEBUG_CRYPTO="$(usex debug)" + -DWITH_GCRYPT="$(usex gcrypt)" + -DWITH_GSSAPI="$(usex gssapi)" + -DWITH_NACL=no + -DWITH_PCAP="$(usex pcap)" + -DWITH_SERVER="$(usex server)" + -DWITH_SFTP="$(usex sftp)" + -DWITH_SSH1="$(usex ssh1)" + -DWITH_STATIC_LIB="$(usex static-libs)" + -DWITH_STATIC_LIB="$(usex test)" + -DWITH_TESTING="$(usex test)" + -DWITH_ZLIB="$(usex zlib)" + ) + + cmake-utils_src_configure +} + +multilib_src_compile() { + cmake-utils_src_compile + multilib_is_native_abi && use doc && cmake-utils_src_compile doc +} + +multilib_src_install() { + cmake-utils_src_install + + if multilib_is_native_abi && use doc ; then + docinto html + dodoc -r doc/html/. + fi + + use static-libs || rm -f "${D}"/usr/$(get_libdir)/libssh{,_threads}.a +} + +multilib_src_install_all() { + einstalldocs + + if use examples; then + docinto examples + dodoc examples/*.{c,h,cpp} + fi +} diff --git a/net-libs/libssh/libssh-9999.ebuild b/net-libs/libssh/libssh-9999.ebuild new file mode 100644 index 000000000000..193f9eb86e6f --- /dev/null +++ b/net-libs/libssh/libssh-9999.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-multilib git-r3 + +DESCRIPTION="Access a working SSH implementation by means of a library" +HOMEPAGE="http://www.libssh.org/" +EGIT_REPO_URI="git://git.libssh.org/projects/libssh.git" + +LICENSE="LGPL-2.1" +KEYWORDS="" +SLOT="0" +IUSE="debug doc examples gcrypt gssapi libressl pcap server +sftp ssh1 static-libs test zlib" +# Maintainer: check IUSE-defaults at DefineOptions.cmake + +RDEPEND=" + !gcrypt? ( + !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] ) + ) + gcrypt? ( >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}] ) + gssapi? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen ) + test? ( >=dev-util/cmocka-0.3.1[${MULTILIB_USEDEP}] ) +" + +DOCS=( AUTHORS README ChangeLog ) + +EGIT_MIN_CLONE_TYPE=single + +src_prepare() { + cmake-utils_src_prepare + + # just install the examples do not compile them + sed -i \ + -e '/add_subdirectory(examples)/s/^/#DONOTWANT/' \ + CMakeLists.txt || die + +} + +multilib_src_configure() { + local mycmakeargs=( + -DWITH_DEBUG_CALLTRACE="$(usex debug)" + -DWITH_DEBUG_CRYPTO="$(usex debug)" + -DWITH_GCRYPT="$(usex gcrypt)" + -DWITH_GSSAPI="$(usex gssapi)" + -DWITH_NACL=no + -DWITH_PCAP="$(usex pcap)" + -DWITH_SERVER="$(usex server)" + -DWITH_SFTP="$(usex sftp)" + -DWITH_SSH1="$(usex ssh1)" + -DWITH_STATIC_LIB="$(usex static-libs)" + -DWITH_STATIC_LIB="$(usex test)" + -DWITH_TESTING="$(usex test)" + -DWITH_ZLIB="$(usex zlib)" + ) + + cmake-utils_src_configure +} + +multilib_src_compile() { + cmake-utils_src_compile + multilib_is_native_abi && use doc && cmake-utils_src_compile doc +} + +multilib_src_install() { + cmake-utils_src_install + + if multilib_is_native_abi && use doc ; then + docinto html + dodoc -r doc/html/. + fi + + use static-libs || rm -f "${D}"/usr/$(get_libdir)/libssh{,_threads}.a +} + +multilib_src_install_all() { + 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 new file mode 100644 index 000000000000..d4993171dff1 --- /dev/null +++ b/net-libs/libssh/metadata.xml @@ -0,0 +1,17 @@ + + + + + kde@gentoo.org + Gentoo KDE Project + + + Prefer dev-libs/libgcrypt over + dev-libs/openssl for encryption + Enable gssapi support + Build with PCAP output support + Build with SFTP support + Build with SSH1 support + Build with SSH server support + + -- cgit v1.2.3