X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=src%2Fftp.c;h=2e32c1f03d04b45e9f723706d8e8d7ac1567925d;hp=9b6fc8710efc13face668fbbb64686c801ed0fee;hb=4d7c5e087b2bc82c9f503dff003916d1047903ce;hpb=481443d33720d14890871fd2cb3b21d9484a227a diff --git a/src/ftp.c b/src/ftp.c index 9b6fc871..2e32c1f0 100644 --- a/src/ftp.c +++ b/src/ftp.c @@ -1,11 +1,11 @@ /* File Transfer Protocol support. - Copyright (C) 1996-2005 Free Software Foundation, Inc. + Copyright (C) 1996-2006 Free Software Foundation, Inc. This file is part of GNU Wget. GNU Wget is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or +the Free Software Foundation; either version 3 of the License, or (at your option) any later version. GNU Wget is distributed in the hope that it will be useful, @@ -14,8 +14,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Wget; if not, write to the Free Software Foundation, Inc., -51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +along with Wget. If not, see . In addition, as a special exception, the Free Software Foundation gives permission to link the code of its release of Wget with the @@ -37,6 +36,7 @@ so, delete this exception statement from your version. */ #endif #include #include +#include #include "wget.h" #include "utils.h" @@ -967,7 +967,7 @@ Error in server response, closing control connection.\n")); expected_bytes ? expected_bytes - restval : 0, restval, &rd_size, len, &con->dltime, flags); - tms = time_str (NULL); + tms = time_str (time (NULL)); tmrate = retr_rate (rd_size, con->dltime); total_download_time += con->dltime; @@ -1149,7 +1149,7 @@ ftp_loop_internal (struct url *u, struct fileinfo *f, ccon *con) restval = 0; /* Get the current time string. */ - tms = time_str (NULL); + tms = time_str (time (NULL)); /* Print fetch message, if opt.verbose. */ if (opt.verbose) { @@ -1172,7 +1172,7 @@ ftp_loop_internal (struct url *u, struct fileinfo *f, ccon *con) len = 0; err = getftp (u, &len, restval, con); - if (con->csock != -1) + if (con->csock == -1) con->st &= ~DONE_CWD; else con->st |= DONE_CWD; @@ -1213,7 +1213,7 @@ ftp_loop_internal (struct url *u, struct fileinfo *f, ccon *con) /* Not as great. */ abort (); } - tms = time_str (NULL); + tms = time_str (time (NULL)); if (!opt.spider) tmrate = retr_rate (len - restval, con->dltime); @@ -1421,7 +1421,7 @@ ftp_retrieve_list (struct url *u, struct fileinfo *f, ccon *con) tml++; #endif /* Compare file sizes only for servers that tell us correct - values. Assumme sizes being equal for servers that lie + values. Assume sizes being equal for servers that lie about file size. */ cor_val = (con->rs == ST_UNIX || con->rs == ST_WINNT); eq_size = cor_val ? (local_size == f->size) : true; @@ -1773,7 +1773,7 @@ ftp_retrieve_glob (struct url *u, ccon *con, int action) of URL. Inherently, its capabilities are limited on what can be encoded into a URL. */ uerr_t -ftp_loop (struct url *u, int *dt, struct url *proxy) +ftp_loop (struct url *u, int *dt, struct url *proxy, bool recursive, bool glob) { ccon con; /* FTP connection */ uerr_t res; @@ -1791,7 +1791,7 @@ ftp_loop (struct url *u, int *dt, struct url *proxy) /* If the file name is empty, the user probably wants a directory index. We'll provide one, properly HTML-ized. Unless opt.htmlify is 0, of course. :-) */ - if (!*u->file && !opt.recursive) + if (!*u->file && !recursive) { struct fileinfo *f; res = ftp_get_listing (u, &con, &f); @@ -1832,7 +1832,7 @@ ftp_loop (struct url *u, int *dt, struct url *proxy) else { bool ispattern = false; - if (opt.ftp_glob) + if (glob) { /* Treat the URL as a pattern if the file name part of the URL path contains wildcards. (Don't check for u->file @@ -1843,7 +1843,7 @@ ftp_loop (struct url *u, int *dt, struct url *proxy) file_part = u->path; ispattern = has_wildcards_p (file_part); } - if (ispattern || opt.recursive || opt.timestamping) + if (ispattern || recursive || opt.timestamping) { /* ftp_retrieve_glob is a catch-all function that gets called if we need globbing, time-stamping or recursion. Its