]> granicus.if.org Git - curl/commitdiff
ssh: fix build for libssh2 before 1.2.6
authorDaniel Stenberg <daniel@haxx.se>
Sat, 28 May 2016 22:20:14 +0000 (00:20 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 28 May 2016 22:20:14 +0000 (00:20 +0200)
The statvfs functionality was added to libssh2 in that version, so we
switch off that functionality when built with older libraries.

Fixes #831

lib/ssh.c

index 50a72ac6ee42d32c02186f6681297460513ca949..907f646e808768c554f015bfa21fb1b70527f43e 100644 (file)
--- a/lib/ssh.c
+++ b/lib/ssh.c
                          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) {