diff options
author | Xin LI <delphij@FreeBSD.org> | 2015-10-26 22:29:58 +0000 |
---|---|---|
committer | Xin LI <delphij@FreeBSD.org> | 2015-10-26 22:29:58 +0000 |
commit | 354ed042579226e97b87d01c8e3e640b27ba0c27 (patch) | |
tree | 3bebabcae28b38a8f727af446f82a18155701d49 /usr.bin/gzip | |
parent | 3db4ea954e6991956b18a5110b84c77da10962ae (diff) | |
download | src-test-354ed042579226e97b87d01c8e3e640b27ba0c27.tar.gz src-test-354ed042579226e97b87d01c8e3e640b27ba0c27.zip |
In gunzip(1), treat trailing garbage as a warning and not an error. This
allows scripts to distinguish it between real fatal errors, for instance a
CRC mismatch.
Update manual page for the behavior change.
PR: bin/203873
Submitted by: Eugene Grosbein <eugen grosbein net>
MFC after: 2 weeks
Notes
Notes:
svn path=/head/; revision=290024
Diffstat (limited to 'usr.bin/gzip')
-rw-r--r-- | usr.bin/gzip/gzip.1 | 12 | ||||
-rw-r--r-- | usr.bin/gzip/gzip.c | 1 |
2 files changed, 10 insertions, 3 deletions
diff --git a/usr.bin/gzip/gzip.1 b/usr.bin/gzip/gzip.1 index 43d0e728497fc..1693724f21f53 100644 --- a/usr.bin/gzip/gzip.1 +++ b/usr.bin/gzip/gzip.1 @@ -25,7 +25,7 @@ .\" SUCH DAMAGE. .\" .\" $FreeBSD$ -.Dd April 6, 2015 +.Dd October 26, 2015 .Dt GZIP 1 .Os .Sh NAME @@ -136,7 +136,7 @@ option, allowing non-compressed data to pass through unchanged. .It Fl h , -help This option prints a usage summary and exits. .It Fl k , -keep -Keep (don't delete) input files during compression +Keep (do not delete) input files during compression or decompression. .It Fl L , -license This option prints @@ -183,6 +183,12 @@ is set, it is parsed as a white-space separated list of options handled before any options on the command line. Options on the command line will override anything in .Ev GZIP . +.Sh EXIT STATUS +The +.Nm +utility exits 0 on success, +1 on errors, +and 2 if a warning occurs. .Sh SEE ALSO .Xr bzip2 1 , .Xr compress 1 , @@ -220,7 +226,7 @@ with unpack support written by .An Xin LI Aq Mt delphij@FreeBSD.org . .Sh BUGS According to RFC 1952, the recorded file size is stored in a 32-bit -integer, therefore, it can not represent files larger than 4GB. +integer, therefore, it cannot represent files larger than 4GB. This limitation also applies to .Fl l option of diff --git a/usr.bin/gzip/gzip.c b/usr.bin/gzip/gzip.c index 8469c059b745c..81839ae16c81b 100644 --- a/usr.bin/gzip/gzip.c +++ b/usr.bin/gzip/gzip.c @@ -810,6 +810,7 @@ gz_uncompress(int in, int out, char *pre, size_t prelen, off_t *gsizep, if (in_tot > 0) { maybe_warnx("%s: trailing garbage " "ignored", filename); + exit_value = 2; goto stop; } maybe_warnx("input not gziped (MAGIC0)"); |