diff options
author | Rob Landley | 2006-06-27 18:41:03 +0000 |
---|---|---|
committer | Rob Landley | 2006-06-27 18:41:03 +0000 |
commit | af12cb39d121785ab1537009596341ea8255b4ab (patch) | |
tree | 5ad5cd6dbace830667fc43ad6dbc8d581d14152b /networking/wget.c | |
parent | 22f383e6954eed73781695f52093a6d4a120d475 (diff) | |
download | busybox-af12cb39d121785ab1537009596341ea8255b4ab.zip busybox-af12cb39d121785ab1537009596341ea8255b4ab.tar.gz |
Patch from Geoff Baker to fix bug http://bugs.busybox.net/view.php?id=905 by
changing wget's ftp code not to chdir but to use the complete path each time.
Diffstat (limited to 'networking/wget.c')
-rw-r--r-- | networking/wget.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/networking/wget.c b/networking/wget.c index 6c1aa74..64cdf62 100644 --- a/networking/wget.c +++ b/networking/wget.c @@ -6,27 +6,12 @@ * */ -#include <stdio.h> +#include "busybox.h" #include <errno.h> -#include <stdlib.h> -#include <unistd.h> -#include <ctype.h> -#include <string.h> -#include <strings.h> -#include <unistd.h> #include <signal.h> #include <sys/ioctl.h> - -#include <sys/types.h> -#include <sys/stat.h> -#include <sys/socket.h> -#include <netinet/in.h> -#include <arpa/inet.h> -#include <netdb.h> - #include <getopt.h> -#include "busybox.h" struct host_info { char *host; @@ -458,13 +443,12 @@ read_response: close_delete_and_die("ftp login: %s", buf+4); } - ftpcmd("CDUP", NULL, sfp, buf); ftpcmd("TYPE I", NULL, sfp, buf); /* * Querying file size */ - if (ftpcmd("SIZE /", target.path, sfp, buf) == 213) { + if (ftpcmd("SIZE ", target.path, sfp, buf) == 213) { unsigned long value; if (safe_strtoul(buf+4, &value)) { close_delete_and_die("SIZE value is garbage"); @@ -496,7 +480,7 @@ read_response: filesize -= beg_range; } - if (ftpcmd("RETR /", target.path, sfp, buf) > 150) + if (ftpcmd("RETR ", target.path, sfp, buf) > 150) close_delete_and_die("RETR: %s", buf+4); } |