Lukas Ertl
be28a6af38
Fix integer overflow in the file size output when dealing with
...
large files (i.e. DVD images).
Reviewed by: des@
2004-05-19 11:07:30 +00:00
Dag-Erling Smørgrav
3d49384208
Workaround for servers that ignore byte ranges when using chunked
...
encoding.
MFC after: 3 days
2004-04-06 12:24:26 +00:00
Dag-Erling Smørgrav
5476ba5545
Use %zu for size_t, like God intended.
2004-02-18 21:51:02 +00:00
Dag-Erling Smørgrav
eae1afd9a2
Fix printf() format bug in previous commit (size_t != int).
...
Use %ju and an (uintmax_t) cast to print size_t values.
Use %jd and an (intmax_t) cast to print off_t values.
Use off_t variables to hold the difference between two off_t values.
Don't bother with unsigned char where char will do nicely.
2004-02-18 21:37:36 +00:00
Dag-Erling Smørgrav
3f59deafb3
Revamp the statistics code, and switch to a much more compact display
...
format. The old code tried to produce the exact same output as the
pre-libfetch implementation, but I no longer see any value in this.
2004-02-18 15:12:00 +00:00
Dag-Erling Smørgrav
b12d1620fb
Use floating point arithmetic to compute the ETA to avoid integer overflow
...
during slow transfers of large files.
2003-03-11 21:33:43 +00:00
Dag-Erling Smørgrav
29568c0191
Clean up the ETA logic a bit and make sure it works for restarted transfers.
2003-03-11 08:21:51 +00:00
Dag-Erling Smørgrav
32c8cd2915
Slight cleanup of the ETA / BPS code. Avoid a division by zero.
2003-01-23 13:06:13 +00:00
Dag-Erling Smørgrav
13da7d9934
Add -N option to specify a netrc file.
...
Fix handling of -v option.
Don't treat negative offsets as valid positive ones.
Clean up the ETA and transfer rate code. Show transfer rate along with
ETA if the verbose level is higher than 1.
2003-01-22 18:33:39 +00:00
Dag-Erling Smørgrav
3d7c408ce4
Use the URL instead of the output file name when reporting errors relating
...
to the remote document.
PR: 33856
MFC after: 1 week
Approved by: re
2002-11-27 20:52:07 +00:00
Dag-Erling Smørgrav
a6266f245c
Don't set atime / mtime if we don't have an output file, which can happen
...
in certain failure scenarii (mostly DNS trouble).
2002-11-13 16:04:20 +00:00
Bill Fenner
f10d3c5113
Don't divide by zero to calculate the ETA, even if we haven't gotten
...
any data in 30 seconds.
2002-11-12 07:09:43 +00:00
Bill Fenner
05f45e0c2c
Don't exit with success after timeout during authentication.
2002-11-07 22:16:45 +00:00
Dag-Erling Smørgrav
eb87c5a73a
Don't complain about not knowing the remote file size when working in
...
quiet mode.
PR: bin/37079
Submitted by: Nicolas Rachinsky <list@rachinsky.de>
2002-10-27 17:33:08 +00:00
Dag-Erling Smørgrav
97727a7dc1
Whitespace and indentation cleanup.
2002-10-27 15:32:51 +00:00
Dag-Erling Smørgrav
0c6d34af10
Forgot to disable alarms after fetchXGet() in previous commit.
2002-10-27 15:32:06 +00:00
Dag-Erling Smørgrav
dc161d5582
Add an ETA timer that kicks in after 30 seconds.
...
Re-add alarm(2) calls around the calls to fetchStat(3) and fetchXGet(3),
since these calls can still time out on DNS lookups or TCP connect(2).
Remove the alarm(2) calls in the main loop, since all methods properly
handle transfer timeouts (as opposed to connection timeouts).
Set the sigalrm flag if a timeout occurs in the main loop.
Move the signal: label up a little so we still set the atime and mtime
when the transfer times out or is interrupted, so that restarted transfers
will work as expected (as long as the file still exists).
MFC after: 2 weeks
2002-10-27 15:15:13 +00:00
Dag-Erling Smørgrav
dacff75286
s/optarg/s/ (cut'n'paste braino)
...
Spotted by: kris
2002-08-27 10:19:24 +00:00
Dag-Erling Smørgrav
32411a1b6f
Use strtol(3) instead of a home-grown version, and fix a "possibly
...
unitialized variable" warning.
2002-07-28 21:09:25 +00:00
Dag-Erling Smørgrav
d397408818
Usage style sweep: spell "usage" with a small 'u'.
...
Also change one case of blatant __progname abuse (several more remain)
This commit does not touch anything in src/{contrib,crypto,gnu}/.
2002-04-22 13:44:47 +00:00
Bruce Evans
05eb035898
Restored the part of 1.45 that was clobbered in rev.1.46:
...
#include <sys/time.h> instead of depending on namespace pollution in
<sys/stat.h> for the declaration of struct timeval.
2002-03-27 02:23:18 +00:00
Philippe Charnier
15baa31aad
Add FBSDID. Remove unused include. Getopt returns -1 not EOF.
2002-03-26 12:09:49 +00:00
Bruce Evans
469a45700c
#include <sys/time.h> instead of depending on namespace pollution in
...
<sys/stat.h> for the declaration of struct timeval.
Removed unused includes (<time.h> doesn't declare anything of interest;
only <sys/time.h> does).
Sorted includes a bit.
2002-02-25 05:00:39 +00:00
Dag-Erling Smørgrav
8e7cf3debf
If downloading to a temporary file, set the timestamp on the temp file, not
...
on the file we're replacing.
PR: bin/34992
Submitted by: Shunichiro Ariura <syun1rou@blackshell.org>
MFC after: 1 week
2002-02-16 14:02:57 +00:00
Dag-Erling Smørgrav
62f6d0b88e
Set fetchDebug if v_level is 3 or more.
...
PR: bin/32615
MFC after: 1 week
2001-12-09 15:07:26 +00:00
Ian Dowse
650b9e0ed5
Remove an extraneous argument to fprintf that -Wformat noticed.
...
Reviewed by: des
2001-11-10 18:39:54 +00:00
Dag-Erling Smørgrav
f2a871e75b
Remove a debugging warnx() that got committed by mistake.
2001-11-03 01:31:46 +00:00
Dag-Erling Smørgrav
dbcc198301
Don't print running stats unless we're the foreground process.
...
PR: 30764
2001-09-23 22:03:39 +00:00
Mike Barcroft
1c93d61fcc
Add a cast to silence a warning (error because of WARNS=2) on Alpha.
...
Discussed with: des
2001-09-10 17:23:57 +00:00
Dag-Erling Smørgrav
e9dc4f3b74
If the local file does not exist, or is a regular file, and we're not trying
...
to resume a transfer, download the requested document into a temporary file
which we later rename. This avoids leaving half-completed files around in
case of a crash (it'll still leave a half-completed file, but with a hope-
fully non-conflicting name), and should reduce the need for human inter-
vention on ports-building machines.
The temporary file name for "foo/bar" is constructed by invoking mkstemps()
with the pattern "foo/.fetch.XXXXXX.bar"
Requested by: obrien
2001-09-08 15:17:15 +00:00
Dag-Erling Smørgrav
eab5a80417
Remove a blank line that snuck in with the previous commit.
...
Set the default timeout to 120 seconds instead of 0 (no timeout).
2001-08-18 10:48:55 +00:00
Dag-Erling Smørgrav
db695db7f0
Add some comments.
2001-08-17 22:22:45 +00:00
Stefan Eßer
6d64e93980
Include value of command line argument that causes an error message or
...
warning in said message, since fetch may be run from a makefile or script
which does not print the command line.
Approved by: des
2001-07-28 21:34:56 +00:00
Dag-Erling Smørgrav
04d12c9900
If we're writing to stdout, we don't care about the size.
...
Submitted by: wollman
2001-07-17 21:23:43 +00:00
Dag-Erling Smørgrav
91404f38f0
WARNS cleanup + remove an unused macro and an unused function argument.
2001-07-17 21:22:32 +00:00
Dag-Erling Smørgrav
74bd3d7698
Fix an embarassing if-test-reversal bug that broke scheme guessing.
2001-07-08 15:17:26 +00:00
Dag-Erling Smørgrav
1a4a063934
Don't try to print a completion percentage for zero-size files.
...
PR: 27780
Submitted by: Craig Leres <leres@ee.lbl.gov>
2001-06-01 10:24:58 +00:00
Dag-Erling Smørgrav
5ef824ed2b
Damn. Fix typo in previous commit.
2001-05-27 10:46:19 +00:00
Dag-Erling Smørgrav
0d60c7099d
When running on a tty, install an authentication callback.
2001-05-26 19:51:05 +00:00
Dag-Erling Smørgrav
dde0dff6dc
Bring the usage message in synch with reality.
...
PR: bin/26160
2001-03-28 21:01:07 +00:00
Dag-Erling Smørgrav
7c480c6c77
Now that libfetch uses the high port range by default, add a -U option to
...
make it use the low (default) port range instead.
2001-03-24 00:32:11 +00:00
Dag-Erling Smørgrav
cd400b67a4
If SIGINFO is received during the transfer, print a status line similar
...
to the summary shown at the end of the transfer.
Some days, I really hate Unix...
Suggested by: cracauer
2001-03-07 05:33:50 +00:00
Dag-Erling Smørgrav
89a70fbeb3
Warn if the size of the remote file isn't known.
...
If the -R option was specified, don't truncate the local file even if its
mtime is incorrect.
PR: bin/23719
2000-12-22 18:23:19 +00:00
Dag-Erling Smørgrav
64638f67a7
If the URL did not specify a scheme, try to guess it from the host name.
2000-12-13 11:26:27 +00:00
Dag-Erling Smørgrav
30204f9830
If the transfer timed out, but we don't know how large the file is supposed
...
to be, assume it was truncated.
2000-11-30 10:08:22 +00:00
Kris Kennaway
a6f339d266
Format string auditing
2000-11-27 07:35:53 +00:00
Dag-Erling Smørgrav
a0c6ec97c9
Understand the difference between an empty file and a non-existent file.
...
This has been sitting in my tree for ages...
2000-10-19 21:05:59 +00:00
Dag-Erling Smørgrav
74912943bf
Don't try to set the mtime of the output file if it's not a regular file.
...
Pointed out by: cwt
2000-09-02 09:48:34 +00:00
Dag-Erling Smørgrav
e2b41a622b
Don't unlink the target file if it's not a regular file.
2000-08-31 11:24:15 +00:00
Dag-Erling Smørgrav
9516ffa7c0
Restore the old semantics of deleting the output file when interrupted.
...
Some people liked this and some didn't, so POLA won.
2000-07-26 07:28:33 +00:00