Dag-Erling Smørgrav
45b22b2a87
While I'm at it, break a line that was too long, remove a pointless diagnostic
...
and adjust the verbosity level of another.
2000-07-17 22:44:00 +00:00
Dag-Erling Smørgrav
c0b0d54e10
Document the fact that -r and -m are mutually exclusive.
2000-07-17 21:51:48 +00:00
Dag-Erling Smørgrav
e9a039c2cb
Rearrange / rewrite large portions of fetch() to take advantage of new
...
libfetch features (fetchRestartCalls, fetchXGet()).
Since it doesn't make much sense to have m_flag and r_flag set at the same
time, and it can actually cause trouble in some cases, die if they're both
set.
Set the SA_RESETHAND flag for SIGINT so that when we've caught one, we can
kill ourselves with a second SIGINT (thus notifying our parent of our tragic
fate) instead of just exiting.
These changes fix several problems that would show up when fetching ports,
as well as speeding up HTTP transfers quite a bit (at least for relatively
small files).
Most of these changes were prompted by an interaction problem with an HTTP
server called SWS-1.0, which exhibited two bugs, the first of which prevented
fetch from working around the second (the first was not sending content-type
in reply to HEAD requests, the second was sending garbage after the end of
the requested file).
2000-07-17 21:49:01 +00:00
Dag-Erling Smørgrav
78394463ee
Better signal handling.
...
Submitted by: green
2000-07-16 00:47:00 +00:00
Dag-Erling Smørgrav
b3c141fd2e
Fix a bug in the stats display that showed up when resuming aborted transfers.
...
Submitted by: green
2000-07-13 08:37:39 +00:00
Dag-Erling Smørgrav
49e62d8f8e
Rework the stats code for the nth time. Much cleaner now.
...
Always display the completion percentage if stderr is a tty.
Drop the char-by-char transfer mode, it was based on an incorrect assumption
regarding the semantics of fread().
Finally (I hope) straighten out the business of setting the mtime, as well as
when to remove the output file and when not to.
Thanks are owed to the many who have provided nearly instantaneous and
highly constructive feedback and suggestions about these matters.
2000-07-12 20:53:07 +00:00
Dag-Erling Smørgrav
ef50a72c92
Now that the HTTP code supports timeouts, we don't need to use alarm()
...
around the call to fetchStat().
Catch SIGINT, and rework the signal handling so it doesn't skimp on the
cleanup after a timeout or interrupt. Also, don't just bail out after a
timeout; there may be more files to fetch.
2000-07-12 11:02:01 +00:00
Dag-Erling Smørgrav
aa4b3574a8
Rework the stats code to avoid code duplication.
...
Fix a bug where the stats code would print the expected size instead of the
number of bytes received.
Fix the reading code so it'll support partial reads.
2000-07-12 08:29:52 +00:00
Dag-Erling Smørgrav
ec850e74c0
Don't segfault if given an invalid URL (doh!)
...
Submitted by: green
2000-07-09 10:14:22 +00:00
Dag-Erling Smørgrav
0b474bc608
Clarify the meaning of -m and -n (thanks to bde).
2000-07-08 09:34:53 +00:00
Dag-Erling Smørgrav
bb11a878ea
Straighten out the behvaiour of -m and -n (thanks to bde).
...
Check that stderr, not stdout, is a tty (thanks to green).
2000-07-08 09:34:33 +00:00
Dag-Erling Smørgrav
114c3c1ab8
Add MIT copyright
2000-07-05 12:04:31 +00:00
Dag-Erling Smørgrav
047843dd61
Note that the -h, -c and -f options are deprecated, and remove note that
...
incorrectly stated that they were not implemented.
Document the -d option.
2000-06-29 10:35:24 +00:00
Dag-Erling Smørgrav
a8369cd91b
Implement the -c option
2000-06-29 10:32:56 +00:00
Dag-Erling Smørgrav
df6f33d182
Don't forget to delete the output file if the request fails.
...
Don't delete the output file if -r was specified.
2000-06-29 08:39:29 +00:00
Dag-Erling Smørgrav
b39628e763
New libfetch-based fetch.
2000-06-28 16:55:15 +00:00
Jake Burkholder
e39756439c
Back out the previous change to the queue(3) interface.
...
It was not discussed and should probably not happen.
Requested by: msmith and others
2000-05-26 02:09:24 +00:00
Jake Burkholder
740a1973a6
Change the way that the queue(3) structures are declared; don't assume that
...
the type argument to *_HEAD and *_ENTRY is a struct.
Suggested by: phk
Reviewed by: phk
Approved by: mdodd
2000-05-23 20:41:01 +00:00
Martin Cracauer
301cba219f
Print a warning and exit with != 0 when at least one downloaded file
...
is shorter than previously announced by the server.
Tested by asami.
Approved by: jkh
2000-03-08 13:02:11 +00:00
Sheldon Hearn
87faa07bec
Remove single-space hard sentence breaks. These degrade the quality
...
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.
2000-03-01 12:20:22 +00:00
Brian Feldman
d6a8296aed
Add the -F option. This is for forcing restarts with -r by inhibiting
...
transmission of the If-Range HTTP header field.
1999-10-23 15:22:53 +00:00
Peter Wemm
c3aac50f28
$Id$ -> $FreeBSD$
1999-08-28 01:08:13 +00:00
Brian Feldman
90331af0d2
"transfered" -> "transferred"
...
Reviewed by: dict(1)
1999-07-02 08:57:06 +00:00
Brian Feldman
378949dbca
This fixes the problem of cancelling an FTP transfer resulting in
...
a bogus error ("parsing URI".) I also fixed an inconsistency in
another fs_status.
1999-06-21 02:38:16 +00:00
John-Mark Gurney
85020e14f0
make md5 checksums actually work instead of simply calculating the length
...
of an empty buffer... the output file wasn't readable... also warn that
we can't checksum on stdout and print out the base64 encoded version of the
md5 checksum...
Site to actually return md5 digest: web.golux.com
Verified that fetch was broken: Ken Coar <Ken.Coar@Golux.Com>
1999-05-18 19:37:37 +00:00
Garrett Wollman
c7ede78e51
Restore \n at end of usage message.
...
Complained-about-by: charnier
1999-03-08 19:16:14 +00:00
Alexander Langer
c5e72606a7
Improve error message wording when attempting to link to a non-existent
...
file on the local host.
PR: 10042
Submitted by: Chris Costello <phoenix@calldei.com>
1999-03-02 04:14:33 +00:00
Garrett Wollman
189da04438
Deal with broken Web sites which return 302 responses rather than 404
...
and an error document when the requested resource does not exist. Grrr.
Requested by: asami
1999-02-23 18:51:13 +00:00
Bill Fenner
d17bf266c4
Remove the FTP_PASSIVE_MODE "fix"; libftpio handles this.
1999-02-05 01:01:17 +00:00
Bill Fenner
054672c795
Warn about collapsing multiple slashes into 1 in ftp URL's.
...
Look at the FTP_PASSIVE_MODE environment variable like the man page says.
PR: bin/9464
Submitted by: John A. Shue <John.Shue@symmetron.com>
Add references to RFC's 1790, 959, 850.
PR: doc/6564
1999-02-03 20:43:29 +00:00
Bill Fenner
93eb50393d
Don't try to parse a colon in a URL as a port
...
(e.g. http://www.host.name/foo:bar )
PR: bin/5072
Submitted by: Takeshi WATANABE <watanabe@komadori.planet.kobe-u.ac.jp>
1999-02-03 20:24:53 +00:00
Garrett Wollman
9caa4ddf6b
Fix logic error in RFC 850 kluge.
1999-01-15 17:10:31 +00:00
Garrett Wollman
c146843096
For RFC 850 dates received in HTTP responses, implement the century pivot
...
described in RFC 2068. Include a reference to same in the manual page.
1999-01-15 16:56:22 +00:00
Martin Cracauer
b451f4524e
Add -s option, just report size of file that would be fetched.
...
Reviewed by: -current list
1998-12-08 13:00:49 +00:00
Dag-Erling Smørgrav
9f63f2aa1c
main.c:
...
Fix usage string. Fix getopt() string. Fix ordering of compatibility options.
fetch.1:
Fix synopsis. Fix ordering of T and t options. Fix minor grammar nit.
1998-11-08 23:18:48 +00:00
Bill Fenner
60a53b7d32
If we know the content-length, only read that number of bytes from
...
the server. There exists a broken server which sends a few extra
garbage bytes in response to HTTP/1.1 requests.
1998-10-26 02:39:21 +00:00
Jordan K. Hubbard
0637c2cccd
Add -S flag; this is benign since fetch's behavior is unchanged if you
...
don't use it. That's why I'm bringing it in during our "code slush"
Submitted by: Stefan Esser <se@mi.uni-koeln.de>
1998-09-20 00:01:26 +00:00
Dag-Erling Smørgrav
82e3dde754
DTRT for file: URLs when output file is "-".
...
PR: bin/7203
1998-09-17 00:15:15 +00:00
Stefan Eßer
cc522880b4
Fix proxy authorization code:
...
- failed to use authorization parameters passed in the environment, if
/dev/tty could not be opened (i.e. if running from cron)
- mixed use of /dev/tty and stdin for prompt and reading of the result
1998-07-12 09:07:36 +00:00
Garrett Wollman
cffe96c903
Fix my last change: the .Fx macro doesn't do anything useful without an
...
argument, so use `.Tn FreeBSD' instead.
1998-05-09 21:39:49 +00:00
Garrett Wollman
eeed58d824
Documentation fix: delete references to T/TCP as they are not relevant
...
to the case in question. (Said case being quite clearly defined by
the basic TCP specification, RFC 792.)
1998-05-09 20:50:37 +00:00
Dag-Erling Smørgrav
49778f39ac
Arrggghhhh... forgot to strip the / after outputting %2f
1998-05-09 08:56:07 +00:00
Dag-Erling Smørgrav
757c6582c1
Map a leading / in -c argument to %2f instead of dropping it silently.
...
PR: bin/6558
1998-05-09 08:41:23 +00:00
Bill Fenner
5e92200712
Describe absolute paths in FTP URL's. This patch has been sitting
...
around uncommitted for 2 months =(
1998-05-09 07:33:09 +00:00
Philippe Charnier
306005e78c
.Sh AUTHOR -> .Sh AUTHORS. Use .An/.Aq.
1998-03-23 07:48:45 +00:00
John Birrell
5362bb64c5
gcc wants to see long long variables passed to %q printf formats, so
...
cast to that instead of quad_t.
1998-02-20 05:11:42 +00:00
John Birrell
2ffc763234
time() needs a pointer to a time_t, but tv_sec in a timeval is a
...
long (yuk). So give time() what it wants and let the compiler
promote the variable when it is assigned to tv_sec.
1998-02-20 05:08:53 +00:00
Bill Fenner
18d1eb6776
Suggest using "-b" or "-t" if the connection is reset (typical symptom
...
of broken TCP stack).
1997-11-22 01:00:42 +00:00
John Polstra
a5bd62c599
Add missing arguments detected by "-Wformat".
1997-11-18 03:27:34 +00:00
David E. O'Brien
e3f8c97942
style-police got me. :-)
...
Also fixed some "didn't make the most sense" problems.
Submitted by: bde
1997-11-12 04:39:33 +00:00