mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
libssh2: detect features based on version, not configure checks
... so that non-configure builds get the correct functions too based on the libssh2 version used.
This commit is contained in:
parent
18e1a3022d
commit
9dbbba9976
@ -2332,12 +2332,6 @@ if test X"$OPT_LIBSSH2" != Xno; then
|
|||||||
dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
|
dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
|
||||||
dnl to prevent further configure tests to fail due to this
|
dnl to prevent further configure tests to fail due to this
|
||||||
|
|
||||||
dnl libssh2_version is a post 1.0 addition
|
|
||||||
dnl libssh2_init and libssh2_exit were added in 1.2.5
|
|
||||||
dnl libssh2_scp_send64 was added in 1.2.6
|
|
||||||
dnl libssh2_session_handshake was added in 1.2.8
|
|
||||||
AC_CHECK_FUNCS( libssh2_version libssh2_init libssh2_exit \
|
|
||||||
libssh2_scp_send64 libssh2_session_handshake)
|
|
||||||
if test "x$cross_compiling" != "xyes"; then
|
if test "x$cross_compiling" != "xyes"; then
|
||||||
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2"
|
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2"
|
||||||
export LD_LIBRARY_PATH
|
export LD_LIBRARY_PATH
|
||||||
|
@ -74,6 +74,7 @@
|
|||||||
#include "conncache.h"
|
#include "conncache.h"
|
||||||
#include "multiif.h"
|
#include "multiif.h"
|
||||||
#include "sigpipe.h"
|
#include "sigpipe.h"
|
||||||
|
#include "ssh.h"
|
||||||
|
|
||||||
#define _MPRINTF_REPLACE /* use our functions only */
|
#define _MPRINTF_REPLACE /* use our functions only */
|
||||||
#include <curl/mprintf.h>
|
#include <curl/mprintf.h>
|
||||||
|
@ -99,13 +99,6 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Feature detection based on version numbers to better work with
|
|
||||||
non-configure platforms */
|
|
||||||
#if LIBSSH2_VERSION_NUM >= 0x010206
|
|
||||||
/* libssh2_knownhost_checkp was added in 1.2.6 */
|
|
||||||
#define HAVE_LIBSSH2_KNOWNHOST_CHECKP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef PATH_MAX
|
#ifndef PATH_MAX
|
||||||
#define PATH_MAX 1024 /* just an extra precaution since there are systems that
|
#define PATH_MAX 1024 /* just an extra precaution since there are systems that
|
||||||
have their definition hidden well */
|
have their definition hidden well */
|
||||||
|
30
lib/ssh.h
30
lib/ssh.h
@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@ -158,22 +158,34 @@ struct ssh_conn {
|
|||||||
|
|
||||||
#ifdef USE_LIBSSH2
|
#ifdef USE_LIBSSH2
|
||||||
|
|
||||||
|
/* Feature detection based on version numbers to better work with
|
||||||
|
non-configure platforms */
|
||||||
|
|
||||||
#if !defined(LIBSSH2_VERSION_NUM) || (LIBSSH2_VERSION_NUM < 0x001000)
|
#if !defined(LIBSSH2_VERSION_NUM) || (LIBSSH2_VERSION_NUM < 0x001000)
|
||||||
# error "SCP/SFTP protocols require libssh2 0.16 or later"
|
# error "SCP/SFTP protocols require libssh2 0.16 or later"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(LIBSSH2_VERSION_NUM) && (LIBSSH2_VERSION_NUM >= 0x010000)
|
#if LIBSSH2_VERSION_NUM >= 0x010000
|
||||||
# define HAVE_LIBSSH2_SFTP_SEEK64 1
|
#define HAVE_LIBSSH2_SFTP_SEEK64 1
|
||||||
#else
|
|
||||||
# undef HAVE_LIBSSH2_SFTP_SEEK64
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(LIBSSH2_VERSION_NUM) && (LIBSSH2_VERSION_NUM >= 0x010206)
|
#if LIBSSH2_VERSION_NUM >= 0x010100
|
||||||
# define HAVE_LIBSSH2_SCP_SEND64 1
|
#define HAVE_LIBSSH2_VERSION 1
|
||||||
#else
|
|
||||||
# undef HAVE_LIBSSH2_SCP_SEND64
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if LIBSSH2_VERSION_NUM >= 0x010205
|
||||||
|
#define HAVE_LIBSSH2_INIT 1
|
||||||
|
#define HAVE_LIBSSH2_EXIT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if LIBSSH2_VERSION_NUM >= 0x010206
|
||||||
|
#define HAVE_LIBSSH2_KNOWNHOST_CHECKP 1
|
||||||
|
#define HAVE_LIBSSH2_SCP_SEND64 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if LIBSSH2_VERSION_NUM >= 0x010208
|
||||||
|
#define HAVE_LIBSSH2_SESSION_HANDSHAKE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
extern const struct Curl_handler Curl_handler_scp;
|
extern const struct Curl_handler Curl_handler_scp;
|
||||||
extern const struct Curl_handler Curl_handler_sftp;
|
extern const struct Curl_handler Curl_handler_sftp;
|
||||||
|
Loading…
Reference in New Issue
Block a user