ssh: fix build for libssh2 before 1.2.6

The statvfs functionality was added to libssh2 in that version, so we
switch off that functionality when built with older libraries.

Fixes #831
This commit is contained in:
Daniel Stenberg 2016-05-29 00:20:14 +02:00
Родитель b15a17c702
Коммит e51798d002
1 изменённых файлов: 9 добавлений и 1 удалений

Просмотреть файл

@ -102,6 +102,11 @@
have their definition hidden well */
#endif
#if LIBSSH2_VERSION_NUM >= x010206
/* libssh2_sftp_statvfs and friends were added in 1.2.6 */
#define HAS_STATVFS_SUPPORT 1
#endif
#define sftp_libssh2_last_error(s) curlx_ultosi(libssh2_sftp_last_error(s))
#define sftp_libssh2_realpath(s,p,t,m) \
@ -1365,10 +1370,12 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
state(conn, SSH_SFTP_QUOTE_UNLINK);
break;
}
#ifdef HAS_STATVFS_SUPPORT
else if(curl_strnequal(cmd, "statvfs ", 8)) {
state(conn, SSH_SFTP_QUOTE_STATVFS);
break;
}
#endif
failf(data, "Unknown SFTP command");
Curl_safefree(sshc->quote_path1);
@ -1619,6 +1626,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
state(conn, SSH_SFTP_NEXT_QUOTE);
break;
#ifdef HAS_STATVFS_SUPPORT
case SSH_SFTP_QUOTE_STATVFS:
{
LIBSSH2_SFTP_STATVFS statvfs;
@ -1670,7 +1678,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
state(conn, SSH_SFTP_NEXT_QUOTE);
break;
}
#endif
case SSH_SFTP_GETINFO:
{
if(data->set.get_filetime) {