summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2014-01-09 07:56:13 +0000
committerLars Wendler <polynomial-c@gentoo.org>2014-01-09 07:56:13 +0000
commit1549a637c3e1ae9579ae36ef9dbb120d176d6882 (patch)
tree2ec3d43614feaaf5b27b70737687f90e3486c331 /net-libs/libssh
parentFix homepage (diff)
downloadhistorical-1549a637c3e1ae9579ae36ef9dbb120d176d6882.tar.gz
historical-1549a637c3e1ae9579ae36ef9dbb120d176d6882.tar.bz2
historical-1549a637c3e1ae9579ae36ef9dbb120d176d6882.zip
Reintroduced gcrypt USE flag. Added kerberos USE flag to control gssapi feature. Removed old
Package-Manager: portage-2.2.8/cvs/Linux x86_64 Manifest-Sign-Key: 0x981CA6FC
Diffstat (limited to 'net-libs/libssh')
-rw-r--r--net-libs/libssh/ChangeLog11
-rw-r--r--net-libs/libssh/Manifest38
-rw-r--r--net-libs/libssh/files/libssh-0.6.0-libgcrypt-1.6.0.patch80
-rw-r--r--net-libs/libssh/files/libssh-0.6.0_rc3-memleak_fix.patch20
-rw-r--r--net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch37
-rw-r--r--net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch94
-rw-r--r--net-libs/libssh/libssh-0.6.0.ebuild12
-rw-r--r--net-libs/libssh/libssh-0.6.0_rc3-r1.ebuild83
-rw-r--r--net-libs/libssh/metadata.xml2
9 files changed, 117 insertions, 260 deletions
diff --git a/net-libs/libssh/ChangeLog b/net-libs/libssh/ChangeLog
index ebfc3cb39e3d..bb35f034add9 100644
--- a/net-libs/libssh/ChangeLog
+++ b/net-libs/libssh/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for net-libs/libssh
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/libssh/ChangeLog,v 1.96 2014/01/08 12:29:58 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/libssh/ChangeLog,v 1.97 2014/01/09 07:56:12 polynomial-c Exp $
+
+ 09 Jan 2014; Lars Wendler <polynomial-c@gentoo.org>
+ -libssh-0.6.0_rc3-r1.ebuild, libssh-0.6.0.ebuild,
+ +files/libssh-0.6.0-libgcrypt-1.6.0.patch,
+ -files/libssh-0.6.0_rc3-memleak_fix.patch,
+ -files/libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch,
+ -files/libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch, metadata.xml:
+ Reintroduced gcrypt USE flag. Added kerberos USE flag to control gssapi
+ feature. Removed old.
*libssh-0.6.0 (08 Jan 2014)
diff --git a/net-libs/libssh/Manifest b/net-libs/libssh/Manifest
index e90208c90ee8..15f3131a5b08 100644
--- a/net-libs/libssh/Manifest
+++ b/net-libs/libssh/Manifest
@@ -3,32 +3,28 @@ Hash: SHA256
AUX libssh-0.5.0-no-pdf-doc.patch 1195 SHA256 116f436073bb6eed8ec776828efcba399852019483a10da2691b3d350570c793 SHA512 739230d6bde39ffc09d054cfe54d5182aa2ccafaae50d8e9f803321de5c295b9eff653cd51d22b6112db39538f4f02d0231c9fdbab76afe7258d9d4ec4004e34 WHIRLPOOL e540d0e1ecb5f5122572b99982780a19559d69ce147ec41e6d70e78504d2297ff03381eec898a53ae61ba65178da4b93bbfd486cbd486543ec5126da86eb75e5
AUX libssh-0.5.0-tests.patch 473 SHA256 aa57848a7e67fe4e62bad6ade2dbeb45c616b03f9d38594ac90deba893c649c1 SHA512 28c1675db83cfbb8534c8108ad7c6a535bf2c168907c1e73c84cd04f4912e9101f68543cba301302f4cda8b30d1b71a72275ccbe811da98db4667b0eebe468c3 WHIRLPOOL 5c89e7cd0e2d9cefb1f87f70347b7ddebd381e1967bc20352bc01d607f84d2afcb69af42f80f1f64fa5cf87c73237e62e8b4b129b6ae95158679a5e972cb9070
-AUX libssh-0.6.0_rc3-memleak_fix.patch 588 SHA256 0e9173a09b58eb191291f2ba1827d03c3a46d0a51e394bc9b79ef589079eb5b8 SHA512 377579e5c3a1f80ee0a7e1982534e216c2d301187504d3499a69f87faf691227747d629d7929341a482986a79ad5775fb6230f6910f7d19c5ceb85b471203aaf WHIRLPOOL c70bb3e60b28f9a31f185270b70766baee1b8e1d1a914541db4b1399b38299d72c0b6b2610d8697a84d395df3767a2890b60c89e1f5a68b3d2fee9555e13b5ec
-AUX libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch 1221 SHA256 1834bdccae2af486189c76685758c5fe167625bf32756634016d740a46a93fbb SHA512 139723d5a5277400eec1682c81949249921b59bf01812dd81146b5bd1a1e9ed1d8fb0c41f79c69dd28d94c7ba1cea24fe7af69a8bb801af11a2ebea519792ada WHIRLPOOL e3a5e87f17878b0a6bab47d0cfe72547285859efb9cb9fb775736d118f5dfa14e3868df713bd7ee7fb82803767a6e7257f060c74f663ef16105f4f7caa9b5816
-AUX libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch 3051 SHA256 d5da6985934bc3e242c08093739b6480d80085ed700a4f7a9edc2e4c4ab80af2 SHA512 c21533faa983ffe0b4c795a667ed7a1028e02c7b8b8195b1e2a12551159c40519cd1185bd50e06a494a07452aeda1f744c4efa565c97da488a3bad0a77615725 WHIRLPOOL 88f256f92898e15fb8630e4e9c53269918161278a9ab269458b289763b7887341715aaf0fc90210f7ecfa1b6d906f64c9f98a087fc860fb561945fa127b105ae
+AUX libssh-0.6.0-libgcrypt-1.6.0.patch 2735 SHA256 4317125383e02b6e19d935ba7f61e5f124f8bab4155ce4ec5bd773476c415d33 SHA512 d3e576cdf0aea4267d8da83fb62bc70e4e3fe35719e15dcc5aca1b01e60651f3c52f7733d42f8a8d75c562291a587f887a9931868e453347b36ae530d9606214 WHIRLPOOL 3f720d2d9c4d82a21a56a1722b63f7ffe974cc6a11a236e235fed2ba9a46f2b7e364b3919293e6ec74fcdd50de5eab407d78c75895d3155526bf4761013a99d0
DIST libssh-0.5.5.tar.gz 321583 SHA256 c0df0f05fc812dbe26fd4118bec0776aa9e892c0719590f3971130489c6b8e9d SHA512 114a8d078b9530fe37f12c769283213ceacdd8cbf0c1c3e64e09c07d38b3886bc8c9a78816562ab1bc44c55c604fcc4ed85cdb2a8203962c9331f9d10977e802 WHIRLPOOL c12f543b5613641cd52a29f57e540a2ed0aa91e538172755966d440f0e0905e48c9c4ff3f263dcdfe8f3e925045856650e2f5ededc232be4bdd731853646764b
DIST libssh-0.6.0.tar.xz 275664 SHA256 4c6de7caa23debbe4639f83fa2ff411924643e65356d6af048daa31e4a1a2f71 SHA512 6680e351b22ce6629047929dfcb7ac02dd7c332af5995191dcb72037ef727bc8c9394760517f79a58f8f7e489c29581fc41f6c7bc08c187ef5cb6091b66ab6a7 WHIRLPOOL ec64381cd80300945cba5a64f057dca8cd7a983f5fac8a06138aee2b6451f6e8619aed97e98487cbe860d488458139faab467155924ae2d55f8e58db88eb4a66
-DIST libssh-0.6.0_rc3.tar.gz 395230 SHA256 1293d9817090d16cd9ecf9e91baa1ca21d1158fbeaa3ab840f7cf44490bb58df SHA512 606d2869963dbfe62fb20a32e14ccb759add3f8f42340521509e2badd650d41c3d47aae6ffd34e7fc3dc67987e60ddc812dedca1121b75db1158ae72668a44d9 WHIRLPOOL c2d8004f30eec08a337a0551879d681677ffad03f2c31e9292ce7bcad2432e7059ab1d9834e941cdce25f73cbb108f60ee8eda13bb6be7275c858b5f32a5c066
EBUILD libssh-0.5.5.ebuild 1964 SHA256 8569c65bd9318df61e07214610282683d84b5e8008db9b2fddeaecefcf45ebc5 SHA512 b47dc0400d4a4c32c015d33bc74af1537e2de7436c0f874e1bedeb2e32c3e0f38ea382dae6e933bf805ca9a8c48f2ef18a6b13e97ced3c981560549219f92548 WHIRLPOOL 761b931385c04d208b3233070e038ae620e37befee96ef11d2ba7780d3662cfdaf699346cb77c3be784d53ff402452aa05c06c92c3b89f2218e29fe368424549
-EBUILD libssh-0.6.0.ebuild 1974 SHA256 52dfd25484a09d07b0451964d150f9cdf9f79deb100b4d70790ad978f8b215bf SHA512 93fd401b82ee97e1f6c57723ce302e60467c87cb7c1b10a8904a022d1762c3a7a0b8fed385f35350811c3440471f8b69ac47a90fd90576c803634acb2d064461 WHIRLPOOL 469edae3b7ff26eaa99f01cfcac1aaa833c207508262718c3524d31d1f9b0c377275ccd98c01d1026b8c4757104e3e146540505bcad85df87a37d0c63ed69ff3
-EBUILD libssh-0.6.0_rc3-r1.ebuild 2117 SHA256 6af48f7b7317b6dc1cadfd73fa9a7019671d1e5c4d71154cd5f5504953d6d298 SHA512 2976eee15eba81d1b79a0618f83aad96c9ff300dd90ea2414a53631d22b1bd99e4da0d0619f8b9e7739fbd2ced314252b9e2bab0fcf8a2be0742e73ffe2b3cb2 WHIRLPOOL 9e3de4d921d5c9da7c21854cf6dcd0a9eefecc7ba10a3f3249a3ed9cbdd94e128bafa2469f62beae51189733d2841a1cc52de850986c053a3f315bd9b88265be
+EBUILD libssh-0.6.0.ebuild 2173 SHA256 4455c2787d6b98d348ca8e0f1364d76c29e46e0b081b8d98dea75177d953186c SHA512 ec3280c9a7b3158cbe49fd81516fbe680fc72342923cade603964e9dbf623ab929337562f02e086dd6379e5724fff51e2e377b6cc3e64268aaa8ac3030e8ebbf WHIRLPOOL c93e8b33db9be82bf85c48482a2524f813115023ea66d615610d89f0b02b19ef992df55a10d1c64d473c2a384a67cfa2d67f7dcee98b63e4507e4a5ccbe8709c
EBUILD libssh-9999.ebuild 1408 SHA256 0c6951113be348bd94871f9946a2a924efab3d2a921168b443f5064cce2a2181 SHA512 3881a094ae36af978d5eba1555b510cf0b528ade1fbd09f804629a256aa1dcc0fbc05f8deb3b3b82f9666b2355c710f1dae343b521b06bd37e25fec956483adf WHIRLPOOL 54ea3f9ad28272feb953536ac42648ffba471fde3d3a00f8f4dd5ed87665b644f72cfb3f6b677ccf934a28b48f2de85a31d229b0e8ef6163dc06ee60043735af
-MISC ChangeLog 13290 SHA256 f30a5fce1d8f5d2c9f30dfae7b38d47243cc5e54d130a01aca503eccb206536e SHA512 f13383aed3c39117b9b5db5d530984a2d59b9ab771ee561ea4677808c92cc392b3db8081bbca8c1849265df43709df6a44981889bfac519720a14530c5f6dbf6 WHIRLPOOL 43670b8903073b9bebdc5bf38a91b456367af1b05135e1c19b8e184868296be34d9136e678e00d097f4595d6d358b31ad5e4d2052a73754063a7948aebe8b1e4
-MISC metadata.xml 501 SHA256 f8d91b2c3830a72ff30a8dbd6f2e6911cf049c80015b5e315cb9f999e945c3c1 SHA512 1110ec6fb2ea256b38f182cd14de9a5b518d1af9d27f16782ac25154d6aff24e5c1c57217f8922db1dcdfaa336e586d56aa0c5cd06e7f485197d9e9eacd7f787 WHIRLPOOL 4b01a6f4014597e495953f0c95703cb56c23c1a1d546245aea640ddaa1e3013b88fbee348502ef86c8ac729bf12064230c4dd5786362007262bd35cceaf97312
+MISC ChangeLog 13711 SHA256 a259d3f7b47636335dd38c1ece35b83af84686d445308c9269f8a2bed3eedc87 SHA512 1f88f477442a152c5f751b737fbd10e6cd95c879fcd298c2149b174a8f2eda68fc79eb283948b8c861630de27770730534432178b2ad5c8819ae11368bf64346 WHIRLPOOL 6d12e3d8cc5b54b6478189fd4e16dc8f0b666648408e7e975cc0f26b4adbfb9c0a576a4bc5fe98fa7f27d943bde9e20b116d11c13d952d11b7818d3745e8dfe5
+MISC metadata.xml 619 SHA256 ef7f4dd8dd2f49858dd18a07cd5ad6ed24a3d611981826384fc9377e3213cff0 SHA512 c41a2ad1ce2338d4af05cfcaac8be57bb18fa691b06b3cf29d36e9ef4476bfa854fde088720fb74d3b8616b15ed32f5eaf3899c4c5b65a47446f86370bebbf8b WHIRLPOOL 71b7b65f71cefcd91243f27f4efa55075744fa7139c567cec00c09faf8285817daa0630b6bdd07c6c7bbe6a8970e6b355e9671ed9ca3fdb2a48fc5df6b630011
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQIcBAEBCAAGBQJSzUTHAAoJEPiazRVxLXTFrk8P/1T408uEeqlzmxIyqW5sDgRN
-rpBsRrEnLyJhesUWjXTFHlLHwhDQLP9fiafCHAVu+Gp1+Dvr/KD+Htf15p5V++ur
-8SAADuPlyFjJtgph+S274a4Vuy6P6P1HwfdcvG6p3bvqaAI0hzH51TnectHxajoU
-nxCNz2CxUcLj4epumdWiVBF5uMPnfKKMjOsXKvmqz6MxD51+cr2BDU20tV0OcjOv
-et5qrvp+JUKk9E5rBqvkQHgmvN1KCYKhGpYLKRc6CEzECiKLYVEviHOFFKaTRx9q
-/zmRjqNxJmn9xPJ1rIbdos8p+EeyPnDaSPKN25fi+etMNbvMS7r4lkiriIk3c//B
-z5UvxrBl/bHZUkRue3G/gqD0P/uw6zVaBoedSnZWq9yO95/9q/U0na126OZBqT7+
-OmE7yAfT/5wmSwYx/eo6RW1nCwcnuUboW6bbF1YmEHt/hRf4pUja01SqEzao3A6T
-iJe+bRUCKPtld8IyLftHWqdL4bjXzY9kOsApuh186e3F/wTx7FgzlvzMJQBgVl5E
-0Ap/Jp5coxdfnItAUvqDkGEzinkWI6KsOdlAEt17n8f4rBONneMOv8k2YkVHR2ky
-aUaDT4AM3JG7/Is9GgFo25mLVd9Y+21rztQtuDkNVBBLP3RCkp9S9MDg1CR6EgdO
-vUxBlvZBWwI72GGKqhtq
-=2Vby
+iQIcBAEBCAAGBQJSzlYdAAoJEPiazRVxLXTF/zEP/iUBN3GGxTIWmV9y9MOYDWeK
+kGw1812WQi+xSJo3UE/v+T3lzPjL7ePtDLfJE1z/kK8yxkFEVzBtzMRy4mYizCmr
+aAObGJh+kH0VrzVURBF5ANKFQrymiGDDHvvw80bAIeIUwQqVD+5Wq9utRG7dxVnq
+tyD8fFut0JqkKsS0mNch6FjAhK/mrQCH0ul/L2zyA/MKtaqovQBUO5Bi7vOnXfFk
+i6HWSPDWHUgUx9i9ZQEraQOgI1P1XOg7Obe1yPsm8fiQy9G1r/PkOygMZ9WWavhr
+8ntomojOYSUaMFDk21mVQeUNNi5o1WUzDTVb6vAfMgtw2Dm44+qYtHD2+rn2etFX
+s44/wd+HDkvX4IkDXR1edQnV1Npq3szzumcw95LQNUiQcoBvdHWSZBa9WqKOMjd5
+Od4/4MtrVM1NvvgoHSlmVkQ2R92hqT2se2WmTGPefbfpJEq+ZTN1KqAXJvxXmJNK
+P5lgn13nvsGRf0q8cVRJJjyFPC4CPvUYVt1C5GDE6HTqctVFSIceW1MGwT+ujBoO
+VwDVgRojZToKP7cZVNc3kbKzIlGMRPkcqvtgaSp9XTE30LVixG7SJpgyRXJf1mWO
+vbfNIzGKpfiDYgMOwunBLvyJanPYgW81UcI6+G8hcjr3Zxt0ojb2hWm2ASda2B0L
+Xwp7t0SqZo5rJeqJumk0
+=7KzK
-----END PGP SIGNATURE-----
diff --git a/net-libs/libssh/files/libssh-0.6.0-libgcrypt-1.6.0.patch b/net-libs/libssh/files/libssh-0.6.0-libgcrypt-1.6.0.patch
new file mode 100644
index 000000000000..cfa11c18dc79
--- /dev/null
+++ b/net-libs/libssh/files/libssh-0.6.0-libgcrypt-1.6.0.patch
@@ -0,0 +1,80 @@
+From 57ef959aa3e785658d68c91a7e7ba78cc5dc75f6 Mon Sep 17 00:00:00 2001
+From: Aris Adamantiadis <aris@0xbadc0de.be>
+Date: Wed, 08 Jan 2014 15:58:49 +0000
+Subject: threads: support libgcrypt 1.6 hack
+
+Not 100% satisfied of this patch, but the way libgcrypt handles
+threading in 1.6 is not compatible with custom handlers. The
+new code basicaly uses pthreads in every case. This will probably
+not work on windows.
+---
+diff --git a/doc/threading.dox b/doc/threading.dox
+index a11c82f..95eee6b 100644
+--- a/doc/threading.dox
++++ b/doc/threading.dox
+@@ -61,5 +61,6 @@ implement the following methods :
+ - mutex_destroy
+ - thread_id
+
++libgcrypt 1.6 and bigger backend does not support custom callback. Using anything else than pthreads (ssh_threads_get_pthread()) here will fail.
+ Good luck !
+ */
+diff --git a/include/libssh/callbacks.h b/include/libssh/callbacks.h
+index a841f2e..9aa8bab 100644
+--- a/include/libssh/callbacks.h
++++ b/include/libssh/callbacks.h
+@@ -801,6 +801,8 @@ struct ssh_threads_callbacks_struct {
+ *
+ * @see ssh_threads_callbacks_struct
+ * @see SSH_THREADS_PTHREAD
++ * @bug libgcrypt 1.6 and bigger backend does not support custom callback.
++ * Using anything else than pthreads here will fail.
+ */
+ LIBSSH_API int ssh_threads_set_callbacks(struct ssh_threads_callbacks_struct
+ *cb);
+diff --git a/src/threads.c b/src/threads.c
+index 107c65d..7f3a304 100644
+--- a/src/threads.c
++++ b/src/threads.c
+@@ -59,8 +59,28 @@ struct ssh_threads_callbacks_struct *ssh_threads_get_noop(void) {
+ static struct ssh_threads_callbacks_struct *user_callbacks =&ssh_threads_noop;
+
+ #ifdef HAVE_LIBGCRYPT
++#if (GCRYPT_VERSION_NUMBER >= 0x010600)
++/* libgcrypt >= 1.6 does not support custom callbacks */
++GCRY_THREAD_OPTION_PTHREAD_IMPL;
+
+-/* Libgcrypt specific way of handling thread callbacks */
++static int libgcrypt_thread_init(void){
++ if(user_callbacks == NULL)
++ return SSH_ERROR;
++ if(user_callbacks == &ssh_threads_noop)
++ return SSH_OK;
++ if (strcmp(user_callbacks->type, "threads_pthread") == 0){
++ gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);
++ return SSH_OK;
++ } else {
++ /* not supported */
++ SSH_LOG(SSH_LOG_WARN, "Custom thread handlers not supported with libgcrypt >=1.6, using pthreads");
++ gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);
++ return SSH_OK;
++ }
++}
++
++#else
++/* Libgcrypt < 1.6 specific way of handling thread callbacks */
+
+ static struct gcry_thread_cbs gcrypt_threads_callbacks;
+
+@@ -79,7 +99,8 @@ static int libgcrypt_thread_init(void){
+ gcry_control(GCRYCTL_SET_THREAD_CBS, &gcrypt_threads_callbacks);
+ return SSH_OK;
+ }
+-#else
++#endif /* GCRYPT_VERSION_NUMBER */
++#else /* HAVE_LIBGCRYPT */
+
+ /* Libcrypto specific stuff */
+
+--
+cgit v0.9.1
diff --git a/net-libs/libssh/files/libssh-0.6.0_rc3-memleak_fix.patch b/net-libs/libssh/files/libssh-0.6.0_rc3-memleak_fix.patch
deleted file mode 100644
index 46ce6925134d..000000000000
--- a/net-libs/libssh/files/libssh-0.6.0_rc3-memleak_fix.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From f3e37000632cb380516bdb9d26fba4dc4e41d6f7 Mon Sep 17 00:00:00 2001
-From: Andreas Schneider <asn@cryptomilk.org>
-Date: Sun, 05 Jan 2014 22:05:13 +0000
-Subject: session: Fix a possible memory leak.
-
----
-diff --git a/src/session.c b/src/session.c
-index 171779c..3a607d0 100644
---- a/src/session.c
-+++ b/src/session.c
-@@ -255,6 +255,7 @@ void ssh_free(ssh_session session) {
- ssh_list_free(session->opts.identity);
- }
-
-+ SAFE_FREE(session->auth_auto_state);
- SAFE_FREE(session->serverbanner);
- SAFE_FREE(session->clientbanner);
- SAFE_FREE(session->banner);
---
-cgit v0.9.1
diff --git a/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch b/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch
deleted file mode 100644
index 8b4c7aeab589..000000000000
--- a/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-1.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 8f162e3b13aa85aaa1257b775e1dc5d103f45570 Mon Sep 17 00:00:00 2001
-From: Andreas Schneider <asn@cryptomilk.org>
-Date: Sun, 22 Dec 2013 21:08:45 +0000
-Subject: poll: Correctly free ssh_event_fd_wrapper.
-
-This is allocated by ssh_event_add_fd.
----
-(limited to 'src/poll.c')
-
-diff --git a/src/poll.c b/src/poll.c
-index 2fce52a..4d92e3f 100644
---- a/src/poll.c
-+++ b/src/poll.c
-@@ -852,12 +852,18 @@ int ssh_event_remove_fd(ssh_event event, socket_t fd) {
- for (i = 0; i < used; i++) {
- if(fd == event->ctx->pollfds[i].fd) {
- ssh_poll_handle p = event->ctx->pollptrs[i];
-- struct ssh_event_fd_wrapper *pw = p->cb_data;
-+ if (p->cb == ssh_event_fd_wrapper_callback) {
-+ struct ssh_event_fd_wrapper *pw = p->cb_data;
-+ SAFE_FREE(pw);
-+ }
-
-- ssh_poll_ctx_remove(event->ctx, p);
-- free(pw);
-+ /*
-+ * The free function calls ssh_poll_ctx_remove() and decrements
-+ * event->ctx->polls_used.
-+ */
- ssh_poll_free(p);
- rc = SSH_OK;
-+
- /* restart the loop */
- used = event->ctx->polls_used;
- i = 0;
---
-cgit v0.9.1
diff --git a/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch b/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch
deleted file mode 100644
index b38955eff7d5..000000000000
--- a/net-libs/libssh/files/libssh-0.6.0_rc3-x2goclient_crash_fix-2.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From 41fe03e0d61b14bc41ad658cf2d582802237323a Mon Sep 17 00:00:00 2001
-From: Aris Adamantiadis <aris@0xbadc0de.be>
-Date: Sun, 05 Jan 2014 21:33:45 +0000
-Subject: poll: fix poll_handles ownerships
-
----
-diff --git a/src/poll.c b/src/poll.c
-index 4d92e3f..f79e165 100644
---- a/src/poll.c
-+++ b/src/poll.c
-@@ -64,6 +64,7 @@
-
- struct ssh_poll_handle_struct {
- ssh_poll_ctx ctx;
-+ ssh_session session;
- union {
- socket_t fd;
- size_t idx;
-@@ -790,6 +791,10 @@ int ssh_event_add_session(ssh_event event, ssh_session session) {
- p = session->default_poll_ctx->pollptrs[i];
- ssh_poll_ctx_remove(session->default_poll_ctx, p);
- ssh_poll_ctx_add(event->ctx, p);
-+ /* associate the pollhandler with a session so we can put it back
-+ * at ssh_event_free()
-+ */
-+ p->session = session;
- }
- #ifdef WITH_SERVER
- iterator = ssh_list_get_iterator(event->sessions);
-@@ -852,6 +857,10 @@ int ssh_event_remove_fd(ssh_event event, socket_t fd) {
- for (i = 0; i < used; i++) {
- if(fd == event->ctx->pollfds[i].fd) {
- ssh_poll_handle p = event->ctx->pollptrs[i];
-+ if (p->session != NULL){
-+ /* we cannot free that handle, it's owned by its session */
-+ continue;
-+ }
- if (p->cb == ssh_event_fd_wrapper_callback) {
- struct ssh_event_fd_wrapper *pw = p->cb_data;
- SAFE_FREE(pw);
-@@ -886,7 +895,6 @@ int ssh_event_remove_session(ssh_event event, ssh_session session) {
- ssh_poll_handle p;
- register size_t i, used;
- int rc = SSH_ERROR;
-- socket_t session_fd;
- #ifdef WITH_SERVER
- struct ssh_iterator *iterator;
- #endif
-@@ -895,14 +903,15 @@ int ssh_event_remove_session(ssh_event event, ssh_session session) {
- return SSH_ERROR;
- }
-
-- session_fd = ssh_get_fd(session);
- used = event->ctx->polls_used;
- for(i = 0; i < used; i++) {
-- if(session_fd == event->ctx->pollfds[i].fd) {
-- p = event->ctx->pollptrs[i];
-+ p = event->ctx->pollptrs[i];
-+ if(p->session == session){
- ssh_poll_ctx_remove(event->ctx, p);
-+ p->session = NULL;
- ssh_poll_ctx_add(session->default_poll_ctx, p);
- rc = SSH_OK;
-+ used = 0;
- }
- }
- #ifdef WITH_SERVER
-@@ -929,10 +938,23 @@ int ssh_event_remove_session(ssh_event event, ssh_session session) {
- *
- */
- void ssh_event_free(ssh_event event) {
-- if(event == NULL) {
-+ int used, i;
-+ ssh_poll_handle p;
-+ if(event == NULL) {
- return;
- }
- if(event->ctx != NULL) {
-+ used = event->ctx->polls_used;
-+ for(i = 0; i < used; i++) {
-+ p = event->ctx->pollptrs[i];
-+ if(p->session != NULL){
-+ ssh_poll_ctx_remove(event->ctx, p);
-+ ssh_poll_ctx_add(p->session->default_poll_ctx, p);
-+ p->session = NULL;
-+ used = 0;
-+ }
-+ }
-+
- ssh_poll_ctx_free(event->ctx);
- }
- #ifdef WITH_SERVER
---
-cgit v0.9.1
diff --git a/net-libs/libssh/libssh-0.6.0.ebuild b/net-libs/libssh/libssh-0.6.0.ebuild
index 377ba76a9cd7..97545d3a6be9 100644
--- a/net-libs/libssh/libssh-0.6.0.ebuild
+++ b/net-libs/libssh/libssh-0.6.0.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/libssh/libssh-0.6.0.ebuild,v 1.1 2014/01/08 12:29:58 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/libssh/libssh-0.6.0.ebuild,v 1.2 2014/01/09 07:56:12 polynomial-c Exp $
EAPI=5
@@ -14,12 +14,14 @@ SRC_URI="https://red.libssh.org/attachments/download/71/${MY_P}.tar.xz -> ${P}.t
LICENSE="LGPL-2.1"
KEYWORDS="~amd64 ~arm ~hppa ~x86 ~amd64-linux ~x86-linux"
SLOT="0/4" # subslot = soname major version
-IUSE="debug doc examples pcap +sftp ssh1 server static-libs test zlib"
+IUSE="debug doc examples gcrypt kerberos pcap +sftp ssh1 server static-libs test zlib"
# Maintainer: check IUSE-defaults at DefineOptions.cmake
RDEPEND="
zlib? ( >=sys-libs/zlib-1.2 )
- >=dev-libs/openssl-0.9.8
+ !gcrypt? ( >=dev-libs/openssl-0.9.8 )
+ gcrypt? ( >=dev-libs/libgcrypt-1.5 )
+ kerberos? ( virtual/krb5 )
"
DEPEND="${RDEPEND}
doc? ( app-doc/doxygen )
@@ -32,6 +34,7 @@ S=${WORKDIR}/${MY_P}
PATCHES=(
"${FILESDIR}/${PN}-0.5.0-tests.patch"
+ "${FILESDIR}/${PN}-0.6.0-libgcrypt-1.6.0.patch"
)
src_prepare() {
@@ -47,6 +50,8 @@ src_configure() {
local mycmakeargs=(
$(cmake-utils_use_with debug DEBUG_CALLTRACE)
$(cmake-utils_use_with debug DEBUG_CRYPTO)
+ $(cmake-utils_use_with gcrypt)
+ $(cmake-utils_use_with kerberos gssapi)
$(cmake-utils_use_with pcap)
$(cmake-utils_use_with server)
$(cmake-utils_use_with sftp)
@@ -55,7 +60,6 @@ src_configure() {
$(cmake-utils_use_with test STATIC_LIB)
$(cmake-utils_use_with test TESTING)
$(cmake-utils_use_with zlib)
- -DWITH_GCRYPT=OFF
)
cmake-utils_src_configure
diff --git a/net-libs/libssh/libssh-0.6.0_rc3-r1.ebuild b/net-libs/libssh/libssh-0.6.0_rc3-r1.ebuild
deleted file mode 100644
index a7a300a171bc..000000000000
--- a/net-libs/libssh/libssh-0.6.0_rc3-r1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/libssh/libssh-0.6.0_rc3-r1.ebuild,v 1.1 2014/01/06 13:35:00 polynomial-c Exp $
-
-EAPI=5
-
-MY_P=${PN}-${PV/_rc/rc}
-inherit eutils cmake-utils 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/68/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-KEYWORDS="~amd64 ~arm ~hppa ~x86 ~amd64-linux ~x86-linux"
-SLOT="0/4" # subslot = soname major version
-IUSE="debug doc examples pcap +sftp ssh1 server static-libs test zlib"
-# Maintainer: check IUSE-defaults at DefineOptions.cmake
-
-RDEPEND="
- zlib? ( >=sys-libs/zlib-1.2 )
- >=dev-libs/openssl-0.9.8
-"
-DEPEND="${RDEPEND}
- doc? ( app-doc/doxygen )
- test? ( dev-util/cmocka )
-"
-
-DOCS=( AUTHORS README ChangeLog )
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}/${PN}-0.5.0-tests.patch"
- "${FILESDIR}/${P}-x2goclient_crash_fix-1.patch"
- "${FILESDIR}/${P}-x2goclient_crash_fix-2.patch"
- "${FILESDIR}/${P}-memleak_fix.patch"
-)
-
-src_prepare() {
- # just install the examples do not compile them
- sed -i \
- -e '/add_subdirectory(examples)/s/^/#DONOTWANT/' \
- CMakeLists.txt || die
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- $(cmake-utils_use_with debug DEBUG_CALLTRACE)
- $(cmake-utils_use_with debug DEBUG_CRYPTO)
- $(cmake-utils_use_with pcap)
- $(cmake-utils_use_with server)
- $(cmake-utils_use_with sftp)
- $(cmake-utils_use_with ssh1)
- $(cmake-utils_use_with static-libs STATIC_LIB)
- $(cmake-utils_use_with test STATIC_LIB)
- $(cmake-utils_use_with test TESTING)
- $(cmake-utils_use_with zlib)
- -DWITH_GCRYPT=OFF
- )
-
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile
- use doc && cmake-utils_src_compile doc
-}
-
-src_install() {
- cmake-utils_src_install
-
- use doc && dohtml -r "${CMAKE_BUILD_DIR}"/doc/html/*
-
- use static-libs || rm -f "${D}"/usr/$(get_libdir)/libssh{,_threads}.a
-
- 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 1b2d5d48a323..c2c255c6361d 100644
--- a/net-libs/libssh/metadata.xml
+++ b/net-libs/libssh/metadata.xml
@@ -5,6 +5,8 @@
<herd>kde</herd>
<longdescription>access a working SSH implementation by means of a library</longdescription>
<use>
+ <flag name='gcrypt'>Prefer <pkg>dev-libs/libgcrypt</pkg> over
+ <pkg>dev-libs/openssl</pkg> for encryption</flag>
<flag name='pcap'>Build with PCAP output support</flag>
<flag name='sftp'>Build with SFTP support</flag>
<flag name='ssh1'>Build with SSH1 support</flag>