diff options
author | Daniel Stenberg <daniel@haxx.se> | 2008-06-20 10:43:32 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2008-06-20 10:43:32 +0000 |
commit | 422fd933f508225d3d95128ba97ae3e38dff53dc (patch) | |
tree | 11a78f4d2d1a98996b8d9b8e3e8abb9316dee802 /lib/sendf.h | |
parent | 2594124825980231ffe024d00a9ac43bcb4c3553 (diff) | |
download | curl-422fd933f508225d3d95128ba97ae3e38dff53dc.tar.gz |
- Hans-Jurgen May pointed out that trying SCP or SFTP over a SOCKS proxy
crashed libcurl. This is now addressed by making sure we use "plain send"
internally when doing the socks handshake instead of the Curl_write()
function which is designed to use the "target" protocol. That's then SCP or
SFTP in this case. I also took the opportunity and cleaned up some ssh-
related #ifdefs in the code for readability.
Diffstat (limited to 'lib/sendf.h')
-rw-r--r-- | lib/sendf.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/sendf.h b/lib/sendf.h index 7ffa4768a..2d507ee23 100644 --- a/lib/sendf.h +++ b/lib/sendf.h @@ -7,7 +7,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -62,12 +62,18 @@ void Curl_read_rewind(struct connectdata *conn, int Curl_read(struct connectdata *conn, curl_socket_t sockfd, char *buf, size_t buffersize, ssize_t *n); -/* internal write-function, does plain socket, SSL and krb4 */ +/* internal write-function, does plain socket, SSL, SCP, SFTP and krb4 */ CURLcode Curl_write(struct connectdata *conn, curl_socket_t sockfd, const void *mem, size_t len, ssize_t *written); +/* internal write-function, does plain sockets ONLY */ +CURLcode Curl_write_plain(struct connectdata *conn, + curl_socket_t sockfd, + const void *mem, size_t len, + ssize_t *written); + /* the function used to output verbose information */ int Curl_debug(struct SessionHandle *handle, curl_infotype type, char *data, size_t size, |