net/wput: Make the package working (#4158)
authorOliver Ertl <oliver@ertl-net.net>
Sun, 2 Nov 2008 11:52:12 +0000 (11:52 +0000)
committerOliver Ertl <oliver@ertl-net.net>
Sun, 2 Nov 2008 11:52:12 +0000 (11:52 +0000)
SVN-Revision: 13094

net/wput/patches/100-socketlib.diff [new file with mode: 0644]
net/wput/patches/102-wput.diff [new file with mode: 0644]

diff --git a/net/wput/patches/100-socketlib.diff b/net/wput/patches/100-socketlib.diff
new file mode 100644 (file)
index 0000000..d365c10
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/src/socketlib.c
++++ b/src/socketlib.c
+@@ -390,15 +390,13 @@ 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);
+-#ifdef WIN32
+   /* reset errno before connecting. otherwise connection might "fail" for:
+    * no such file or directory ;) */
+   errno = 0;
+-#endif
+-  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) {
+-      printout(vMORE, "[%s]", strerror(errno));
++      printout(vMORE, "[%d:%s] ", errno, strerror(errno));
+       return NULL;
+   }
+   /* DEBUG if(c == -1) perror("connect"); */
diff --git a/net/wput/patches/102-wput.diff b/net/wput/patches/102-wput.diff
new file mode 100644 (file)
index 0000000..ec8ea27
--- /dev/null
@@ -0,0 +1,49 @@
+--- a/src/wput.c
++++ b/src/wput.c
+@@ -582,8 +582,8 @@ void commandlineoptions(int argc, char *
+               {"output-file", 1, 0, 'o'},     
+               {"port-mode", 0, 0, 'p'},       
+               {"proxy", 1, 0, 'Y'},           
+-              {"proxy-user", 1, 0, 0},
+-              {"proxy-pass", 1, 0, 0},         //20
++              {"proxy_user", 1, 0, 0},
++              {"proxy_pass", 1, 0, 0},         //20
+               {"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'},            
+               {"waitretry", 1, 0, 0},         
+-              {0, 0, 0, 0}                    
++              {"proxy_host", 1, 0, 0},
++              {"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
+                 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;
+             default:
+                 fprintf(stderr, _("Option %s should not appear here :|\n"), long_options[option_index].name);
+             }
+@@ -762,8 +768,11 @@ 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-user=NAME       set the proxy-username to NAME\n"
+-"       --proxy-pass=PASS       set the proxy-password to PASS\n"
++"       --proxy_user=NAME       set the proxy-username to NAME\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"