--- a/src/socketlib.c
+++ b/src/socketlib.c
-@@ -390,15 +390,13 @@ int socket_is_data_readable(int s, int t
+@@ -392,17 +392,15 @@ int socket_is_data_readable(int s, int t
wput_socket * socket_timeout_connect(wput_socket * sock, struct sockaddr *remote_addr, size_t size, int timeout) {
int c = 0;
printout(vDEBUG, "initiating timeout connect (%d)\n", timeout);
- socket_set_blocking(sock->fd, 0);
+ socket_set_blocking(sock->fd, 1);
c = connect(sock->fd,remote_addr,size);
- if(errno > 0 && errno != 115 && errno != 36) {
+ /* here was a check also for errno != 36 (FILENAMETOOLONG)
+ * maybe this was EINPROGRESS on another system? */
+ if(errno > 0 && errno != EINPROGRESS) {
- printout(vMORE, "[%s]", strerror(errno));
+ printout(vMORE, "[%d:%s] ", errno, strerror(errno));
return NULL;
--- a/src/wput.c
+++ b/src/wput.c
-@@ -582,8 +582,8 @@ void commandlineoptions(int argc, char *
+@@ -621,8 +621,8 @@ void commandlineoptions(int argc, char *
{"output-file", 1, 0, 'o'},
{"port-mode", 0, 0, 'p'},
{"proxy", 1, 0, 'Y'},
{"quiet", 0, 0, 'q'},
{"random-wait", 0, 0, 0},
{"remove-source-files", 0, 0, 'R'},
-@@ -601,7 +601,9 @@ void commandlineoptions(int argc, char *
- {"version", 0, 0, 'V'}, //35
- {"wait", 1, 0, 'w'},
+@@ -642,7 +642,9 @@ void commandlineoptions(int argc, char *
{"waitretry", 1, 0, 0},
-- {0, 0, 0, 0}
-+ {"proxy_host", 1, 0, 0},
+ {"chmod", 1, 0, 'm'},
+ {"disable-tls", 0, 0, 0},
+- {0, 0, 0, 0} //40
++ {"proxy_host", 1, 0, 0}, //40
+ {"proxy_port", 1, 0, 0},
+ {0, 0, 0, 0}
};
while (1)
{
-@@ -656,6 +658,10 @@ void commandlineoptions(int argc, char *
- opt.basename = optarg; break;
- case 37: //waitretry
+@@ -699,6 +701,10 @@ void commandlineoptions(int argc, char *
opt.retry_interval = atoi(optarg); break;
-+ case 38: //proxy_host
-+ set_option("proxy_host", optarg); break;
-+ case 39: //proxy_port
-+ set_option("proxy_port", optarg); break;
+ case 39: //disable-tls
+ opt.tls = 2; break;
++ case 40: //proxy_host
++ set_option("proxy_host", optarg); break;
++ case 41: //proxy_port
++ set_option("proxy_port", optarg); break;
default:
fprintf(stderr, _("Option %s should not appear here :|\n"), long_options[option_index].name);
}
-@@ -762,8 +768,11 @@ void commandlineoptions(int argc, char *
+@@ -806,8 +812,10 @@ void commandlineoptions(int argc, char *
" -l, --limit-rate=RATE limit upload rate to RATE\n"
" -nd, --no-directories do not create any directories\n"
" -Y, --proxy=http/socks/off set proxy type or turn off\n"
+" --proxy_pass=PASS set the proxy-password to PASS\n"
+" --proxy_port=PORT set the proxy port to PORT\n"
+" --proxy_host=HOST set the proxy host to HOST\n"
-+
"\n"));
fprintf(stderr, _(
"FTP-Options:\n"