]> granicus.if.org Git - curl/commitdiff
libssh: corrected use of sftp_statvfs() in SSH_SFTP_QUOTE_STATVFS
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 3 Dec 2017 11:05:45 +0000 (12:05 +0100)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 3 Dec 2017 11:35:44 +0000 (12:35 +0100)
The previous code was incorrectly following the libssh2 error detection
for libssh2_sftp_statvfs, which is not correct for libssh's sftp_statvfs.

Fixes #2142

Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
lib/ssh-libssh.c

index d138959f3c8ec958dd25b51b89ed6957d9ef1b77..1277324bfa3e30bbc92bc53845cc3b7f3484bb5a 100644 (file)
@@ -989,15 +989,13 @@ static CURLcode myssh_statemach_act(struct connectdata *conn, bool *block)
       sftp_statvfs_t statvfs;
 
       statvfs = sftp_statvfs(sshc->sftp_session, sshc->quote_path1);
-      if(statvfs != 0 && !sshc->acceptfail) {
+      if(!statvfs && !sshc->acceptfail) {
         Curl_safefree(sshc->quote_path1);
         failf(data, "statvfs command failed: %s",
               ssh_get_error(sshc->ssh_session));
         state(conn, SSH_SFTP_CLOSE);
         sshc->nextstate = SSH_NO_STATE;
         sshc->actualcode = CURLE_QUOTE_ERROR;
-        if(statvfs)
-          sftp_statvfs_free(statvfs);
         break;
       }
       else {