Commit 7a86740a authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

- James Housley made SFTP uploads use libssh2's non-blocking API (if available)

parent 8e719e3e
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@
                                  Changelog

Daniel S (18 April 2007)
- James Housley made SFTP uploads use libssh2's non-blocking API

- Prevent the internal progress meter from updating more frequently than once
  per second.

+1 −1
Original line number Diff line number Diff line
@@ -41,6 +41,6 @@ New curl mirrors:
This release would not have looked like this without help, code, reports and
advice from friends like these:

 Song Ma, Dan Fandrich, Yang Tse, Jay Austin, Robert Iakobashvil
 Song Ma, Dan Fandrich, Yang Tse, Jay Austin, Robert Iakobashvil, James Housley

        Thanks! (and sorry if I forgot to mention someone)
+7 −4
Original line number Diff line number Diff line
@@ -1018,17 +1018,20 @@ CURLcode Curl_sftp_done(struct connectdata *conn, CURLcode status,
ssize_t Curl_sftp_send(struct connectdata *conn, int sockindex,
                       void *mem, size_t len)
{
  ssize_t nwrite;

  /* libssh2_sftp_write() returns size_t !*/
  ssize_t nwrite;   /* libssh2_sftp_write() returns size_t !*/

#ifdef LIBSSH2SFTP_EAGAIN
  /* we prefer the non-blocking API but that didn't exist previously */
  nwrite = (ssize_t)
    libssh2_sftp_writenb(conn->data->reqdata.proto.ssh->sftp_handle, mem, len);
#else
  nwrite = (ssize_t)
    libssh2_sftp_write(conn->data->reqdata.proto.ssh->sftp_handle, mem, len);
#endif
  (void)sockindex;
  return nwrite;
}


/* The get_pathname() function is being borrowed from OpenSSH sftp.c
   version 4.6p1. */
/*