mirror of
https://github.com/curl/curl.git
synced 2024-11-21 01:16:58 +08:00
ssh: add a generic Curl_ssh_version function for SSH backends
Closes #4235
This commit is contained in:
parent
1a7634e484
commit
ea28a6cb2f
16
lib/ssh.h
16
lib/ssh.h
@ -239,12 +239,16 @@ extern const struct Curl_handler Curl_handler_sftp;
|
||||
|
||||
extern const struct Curl_handler Curl_handler_scp;
|
||||
extern const struct Curl_handler Curl_handler_sftp;
|
||||
|
||||
CURLcode Curl_ssh_init(void);
|
||||
void Curl_ssh_cleanup(void);
|
||||
|
||||
#else
|
||||
#define Curl_ssh_cleanup()
|
||||
#endif /* USE_LIBSSH2 */
|
||||
|
||||
#ifdef USE_SSH
|
||||
/* generic SSH backend functions */
|
||||
CURLcode Curl_ssh_init(void);
|
||||
void Curl_ssh_cleanup(void);
|
||||
size_t Curl_ssh_version(char *buffer, size_t buflen);
|
||||
#else
|
||||
/* for non-SSH builds */
|
||||
#define Curl_ssh_cleanup()
|
||||
#endif
|
||||
|
||||
#endif /* HEADER_CURL_SSH_H */
|
||||
|
@ -54,18 +54,6 @@
|
||||
#include <librtmp/rtmp.h>
|
||||
#endif
|
||||
|
||||
#ifdef USE_LIBSSH2
|
||||
#include <libssh2.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_LIBSSH2_VERSION
|
||||
/* get it run-time if possible */
|
||||
#define CURL_LIBSSH2_VERSION libssh2_version(0)
|
||||
#else
|
||||
/* use build-time if run-time not possible */
|
||||
#define CURL_LIBSSH2_VERSION LIBSSH2_VERSION
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_ZLIB_H
|
||||
#include <zlib.h>
|
||||
#ifdef __SYMBIAN32__
|
||||
@ -173,13 +161,12 @@ char *curl_version(void)
|
||||
left -= len;
|
||||
ptr += len;
|
||||
#endif
|
||||
#ifdef USE_LIBSSH2
|
||||
len = msnprintf(ptr, left, " libssh2/%s", CURL_LIBSSH2_VERSION);
|
||||
left -= len;
|
||||
ptr += len;
|
||||
#endif
|
||||
#ifdef USE_LIBSSH
|
||||
len = msnprintf(ptr, left, " libssh/%s", CURL_LIBSSH_VERSION);
|
||||
#ifdef USE_SSH
|
||||
if(left) {
|
||||
*ptr++=' ';
|
||||
left--;
|
||||
}
|
||||
len = Curl_ssh_version(ptr, left);
|
||||
left -= len;
|
||||
ptr += len;
|
||||
#endif
|
||||
@ -458,11 +445,8 @@ curl_version_info_data *curl_version_info(CURLversion stamp)
|
||||
#endif /* _LIBICONV_VERSION */
|
||||
#endif
|
||||
|
||||
#if defined(USE_LIBSSH2)
|
||||
msnprintf(ssh_buffer, sizeof(ssh_buffer), "libssh2/%s", LIBSSH2_VERSION);
|
||||
version_info.libssh_version = ssh_buffer;
|
||||
#elif defined(USE_LIBSSH)
|
||||
msnprintf(ssh_buffer, sizeof(ssh_buffer), "libssh/%s", CURL_LIBSSH_VERSION);
|
||||
#if defined(USE_SSH)
|
||||
Curl_ssh_version(ssh_buffer, sizeof(ssh_buffer));
|
||||
version_info.libssh_version = ssh_buffer;
|
||||
#endif
|
||||
|
||||
|
@ -2739,4 +2739,9 @@ void Curl_ssh_cleanup(void)
|
||||
(void)ssh_finalize();
|
||||
}
|
||||
|
||||
size_t Curl_ssh_version(char *buffer, size_t buflen)
|
||||
{
|
||||
return msnprintf(buffer, buflen, "libssh/%s", CURL_LIBSSH_VERSION);
|
||||
}
|
||||
|
||||
#endif /* USE_LIBSSH */
|
||||
|
@ -3338,5 +3338,9 @@ void Curl_ssh_cleanup(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
size_t Curl_ssh_version(char *buffer, size_t buflen)
|
||||
{
|
||||
return msnprintf(buffer, buflen, "libssh2/%s", LIBSSH2_VERSION);
|
||||
}
|
||||
|
||||
#endif /* USE_LIBSSH2 */
|
||||
|
Loading…
Reference in New Issue
Block a user