sendrecv: split the I/O handling into private handler
Howard Chu brought the bulk work of this patch that properly moves out the sending and recving of data to the parts of the code that are properly responsible for the various ways of doing so. Daniel Stenberg assisted with polishing a few bits and fixed some minor flaws in the original patch. Another upside of this patch is that we now abuse CURLcodes less with the "magic" -1 return codes and instead use CURLE_AGAIN more consistently.
This commit is contained in:
committed by
Daniel Stenberg
parent
cb6647ce1c
commit
d64bd82bdc
20
lib/ssh.h
20
lib/ssh.h
@@ -162,26 +162,6 @@ struct ssh_conn {
|
||||
extern const struct Curl_handler Curl_handler_scp;
|
||||
extern const struct Curl_handler Curl_handler_sftp;
|
||||
|
||||
ssize_t Curl_scp_send(struct connectdata *conn, int sockindex,
|
||||
const void *mem, size_t len);
|
||||
ssize_t Curl_scp_recv(struct connectdata *conn, int sockindex,
|
||||
char *mem, size_t len);
|
||||
|
||||
ssize_t Curl_sftp_send(struct connectdata *conn, int sockindex,
|
||||
const void *mem, size_t len);
|
||||
ssize_t Curl_sftp_recv(struct connectdata *conn, int sockindex,
|
||||
char *mem, size_t len);
|
||||
|
||||
#define Curl_ssh_enabled(conn,prot) (conn->protocol & prot)
|
||||
|
||||
#else /* USE_LIBSSH2 */
|
||||
|
||||
#define Curl_ssh_enabled(x,y) 0
|
||||
#define Curl_scp_send(a,b,c,d) 0
|
||||
#define Curl_sftp_send(a,b,c,d) 0
|
||||
#define Curl_scp_recv(a,b,c,d) 0
|
||||
#define Curl_sftp_recv(a,b,c,d) 0
|
||||
|
||||
#endif /* USE_LIBSSH2 */
|
||||
|
||||
#endif /* HEADER_CURL_SSH_H */
|
||||
|
||||
Reference in New Issue
Block a user