From: Daniel Stenberg Date: Tue, 6 Feb 2007 15:41:19 +0000 (+0000) Subject: read SFTP with the non-blocking API X-Git-Tag: curl-7_16_2~359 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=028a9d67856ad36aeae3919791d15780dafb397f;p=thirdparty%2Fcurl.git read SFTP with the non-blocking API --- diff --git a/lib/ssh.c b/lib/ssh.c index 375447a8b8..fafbd44c69 100644 --- a/lib/ssh.c +++ b/lib/ssh.c @@ -974,12 +974,18 @@ ssize_t Curl_sftp_recv(struct connectdata *conn, int sockindex, char *mem, size_t len) { ssize_t nread; + (void)sockindex; /* libssh2_sftp_read() returns size_t !*/ +#ifdef LIBSSH2SFTP_EAGAIN + /* we prefer the non-blocking API but that didn't exist previously */ + nread = (ssize_t) + libssh2_sftp_readnb(conn->data->reqdata.proto.ssh->sftp_handle, mem, len); +#else nread = (ssize_t) libssh2_sftp_read(conn->data->reqdata.proto.ssh->sftp_handle, mem, len); - (void)sockindex; +#endif return nread; }