diff options
author | Aris Adamantiadis <aris@0xbadc0de.be> | 2005-10-04 22:11:19 +0000 |
---|---|---|
committer | Aris Adamantiadis <aris@0xbadc0de.be> | 2005-10-04 22:11:19 +0000 |
commit | 5f7c84f900b81e3bbff55378f8170ddf150daf9c (patch) | |
tree | 2076a6416e087eb5870c2217873ae76e85451f6b /libssh/client.c | |
parent | c0525750fd090bca0f1ab1884cc26ecd227addb7 (diff) | |
download | libssh-5f7c84f900b81e3bbff55378f8170ddf150daf9c.tar.gz libssh-5f7c84f900b81e3bbff55378f8170ddf150daf9c.tar.xz libssh-5f7c84f900b81e3bbff55378f8170ddf150daf9c.zip |
added the gcrypt patch (without gcrypt as default library).
still needs tests.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@38 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'libssh/client.c')
-rw-r--r-- | libssh/client.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libssh/client.c b/libssh/client.c index 42b10414..1ca8952d 100644 --- a/libssh/client.c +++ b/libssh/client.c @@ -26,6 +26,7 @@ MA 02111-1307, USA. */ #include <netdb.h> #include "libssh/priv.h" #include "libssh/ssh2.h" +extern int connections; #define set_status(opt,status) do {\ if (opt->connect_status_function) \ @@ -277,6 +278,12 @@ void ssh_disconnect(SSH_SESSION *session){ } session->alive=0; ssh_cleanup(session); + if (!--connections) +#ifdef HAVE_LIBGCRYPT + gcry_control(GCRYCTL_TERM_SECMEM); +#elif defined HAVE_LIBCRYPTO + EVP_cleanup(); +#endif } const char *ssh_copyright(){ |