Commit Graph

89 Commits

Author SHA1 Message Date
he 7ae4fdd283 Instead of placing largish buffers on the stack, use malloc/free.
Fixes compile problem for sun2.
2004-07-16 22:44:01 +00:00
yamt 5e6cd45b9d fix "gzip -lv a.gz" after gzip.c 1.46. 2004-07-12 10:21:11 +00:00
yamt 284b1b2ac6 another warn -> warnx. 2004-07-12 09:58:10 +00:00
mrg 2644272f85 in check_outfile() if the outfile exists and -f was given just delete it.
fixes PR#26251.
2004-07-12 02:50:38 +00:00
yamt bd416872f6 fix descriptor leaks on error. 2004-07-11 22:49:42 +00:00
mrg 668894b1c5 - in gz_uncompress() be sure to do the crc/len recalculation insigned.
fixes PR#26246.
- if crc/len are wrong, be sure to noticed it failed
- in check_suffixes(), be sure not to underrun an array (from yamt)
- don't fail so badly on short header, from and fixes R#26242 (also
  from yamt)
- more underrun avoidance in file_uncompress().  fixes PR#26241.
2004-07-11 14:39:39 +00:00
mrg d44ac40080 check the suffix of the input file ala GNU gzip, and error about it
unless -f is given.  fixes PR#26240
2004-07-11 09:40:51 +00:00
mrg e46324f383 move the crc/len code into their own state's to properly allow the buffer
to be refreshed.  re-fixes regress/usr.bin/gzip/concatenated.
2004-07-11 07:01:03 +00:00
mrg 469c821e42 - check for trunated input.
- check each gzip-part's length against the original and warn if it's
  wrong.  fixes part of PR#26233.
- check the input crc32.  fixes the rest of PR#26233.
2004-07-11 06:20:29 +00:00
mrg 7ed5da7ba5 don't assume Z_STREAM_END means end-of-file. fixes PR#26234. 2004-07-11 05:40:51 +00:00
yamt b6ec63a3cc tailing \n is not needed for vwarn(). 2004-07-10 17:35:59 +00:00
mrg 13e5b34e5b fix "zcat -f" on normal files. fixes PR#26145 2004-07-03 09:39:30 +00:00
mrg 3c372acd10 if there are zero bytes to output, this isn't an error. it's probably
a zero length file.  don't return an error.  this should fix PR#25994.
2004-06-22 12:01:29 +00:00
mrg c6c68fa810 handle_pathname: if it's stdin, return after handling it, rather than
trying to then process "-" as a file afterwards.  fixes PR#25843.
2004-06-07 03:24:01 +00:00
mrg 11153dbc8d - maybe restore the timestamp
- don't create the output file with "-l"

both from geoff wing with a few mods by me.
2004-06-06 12:28:52 +00:00
mrg 9e9fa78434 explicitly lseek() to offset 10 to read the original name. fixes a
latent bug awoken by rev 1.37 (prior versions always left the fd at
this offset purely by chance.)  fixes PR#25824.
2004-06-05 15:47:10 +00:00
mrg 9b954397e0 use "zcat -fq" not just plain "zcat". this lets zgrep work on non
compressed files (as reported by simonb) as well as not printing
random warnings that zgrep isn't ready to handle.
2004-05-25 07:09:09 +00:00
mrg 2d5e05af49 - fix "gzip -t" to not output anything by default. PR#25507
- fix any decompression on corrupted gzip files.  PR#25508
- ask to overwrite files if we have a tty, rather than failing the
  operation.  PR#25509.
- clean up maybe_err()/maybe_warn(): use maybe_err() only for fatal
  errors.  maybe_warn() is for processing errors.  this allows
  "gzip -d file1.gz file2.gz" to decompress file2.gz even if file1.gz
  is corrupted, etc.
- change the internal compressor/decompressor API to return "-1" on
  failure, not 0.  this allows for 0-sized files to be decompressed
  correctly.
2004-05-25 04:34:40 +00:00
agc 5fe88849a1 WARNS=3: add some const poisoning, and sort out local variable
definitions shadowing other variables.

Pass storage for file names into the file_compress and file_uncompress
functions, so that we don't run the risk of leaking memory. Remove a global
variable that's no longer needed.
2004-05-21 12:16:10 +00:00
agc f8dc59869d Fix a reference to stale storage on the stack - malloc the new file
name when gunzip'ing via strdup(3).  Fixes a bug whereby the new
filename would appear as gibberish when verbosely gunzipping.

Fix an off-by-one error when allocating the filename with added suffix,
and properly NUL-terminate the new filename.

It's NULL, not 0, in char * assignments - there are some still to do here.
2004-05-17 18:10:33 +00:00
bouyer 41bff69bbe Always initialise savename. Fix gzip -c core dump on sparc (and probably
others). OK'd by mrg@.
2004-05-06 17:43:57 +00:00
wiz af350435db Remove typeset line, since sh(1) does not support it.
Closes PR 25403 by Jukka Salmi.
2004-05-01 08:22:41 +00:00
mrg 99d2aa3dc3 clean up file descriptor handling. don't lose them... 2004-04-27 13:45:50 +00:00
mrg a9c239e635 - the default compression level in GNU gzip is 6 not 5; copy that default.
- note that -t/-l/-v & bzip2 is not handled the same as gzip in a comment.
2004-04-27 11:26:28 +00:00
jdolecek dd23e5ed48 quote pattern when passing to grep, so that paterns containing
spaces would be handled properly

fixes PR bin/25345 by Arto Selonen
2004-04-27 09:18:16 +00:00
mrg b02eba12c2 crank version. 2004-04-27 02:25:06 +00:00
mrg d6dd48bc60 - fix "gunzip file.gz"
- fix "gzip <lots of files>"

both reported by tron@.
2004-04-27 01:23:35 +00:00
mrg 4db02197fc - properly parse --fast/--best/-1..-9 again. noted by taca@.
- minor clean up.
2004-04-26 03:01:55 +00:00
mrg 1d0e9794a0 significantly rototill. don't use the high-level gzio functions
anymore, use the low-level inflate()/deflate() directly.  this
allows support file-type detection on stdin; now can decompress
.Z and .bz2 files fed to stdin (fixes PR#25192) additionally it
makes -v work with stdin or stdout (fixes PR#25215.)

(with these changes, we no longer need gzopenfull(3) in libz.)

thanks to martin@ for the code gzip.c:gz_uncompress() is based on.
2004-04-25 16:20:33 +00:00
mrg 98445d2478 be sure we don't try to remove an output file we haven't actually created.
(reported by kimmo.)
2004-04-12 14:42:14 +00:00
mrg ff187e728e - completely rewrite print_ratio(). fixes PR#25072 and a few other cases
- print_list() was getting the compressed/uncompressed sizes backwards.
2004-04-07 14:25:43 +00:00
mrg 8a618ce17c remove a chunk more code with -DSMALL and in the process fix -DSMALL
that was broken in the previous commit (by exposing "fflag".)
2004-03-31 15:46:25 +00:00
tron 17ebf9b589 Handle files with link count larger than 1 if "-f" option is used. This
is consistent with the old "gzip" and required by "pkgsrc" to implement
"MANZ" properly.
2004-03-31 15:19:14 +00:00
mrg ff930808e7 backout previous. fix the bug it inspired instead. we will want this
version of the code when doing file-type detection.
2004-03-30 11:43:32 +00:00
mrg 7149a52947 factor out filetype checking code 2004-03-30 11:42:04 +00:00
mrg d4e27c8dfb use off_t instead of ssize_t in a few places.
fix "gzip -l" in -DSMALL (it wasn't doing a stat(2)).
2004-03-30 09:42:58 +00:00
mrg 70da2f0f10 patch from tron@ to convert to using public bz interfaces. simonb says
no reason not to and this fixes PR#24964.
2004-03-30 09:15:07 +00:00
wiz 1612675940 s/compress/gzip/, our compress is not the backend for gzip.
Noted by hubertf.
2004-03-29 09:59:42 +00:00
mrg ed20265f67 shave another 612 bytes off -DSMALL on x86. now x_gzip with -l support
is actually smaller than the older x_gzip without it!
2004-03-28 13:54:44 +00:00
mrg 15fba948a6 still do argv[0] processing -DSMALL, from tsutsui.
pass the smaller list of options to getopt with -DSMALL.
2004-03-28 08:18:14 +00:00
mrg 720263a2ef crank version 2004-03-28 04:13:40 +00:00
mrg d7f0a538e2 remove a bunch more stuff with -DSMALL. now we are about 400 bytes larger
than x_gzip... given we add -l support, time to retire x_gzip/gzip.c.
2004-03-28 04:07:45 +00:00
mrg 57a27c0187 remove another 3KB or so of text/data on i386 with -DSMALL. now only
about 1.1KB larger than the old x_gzip sources, but includes (required
for sysinst) gzip -l support.
2004-03-28 03:47:18 +00:00
tsutsui b6e59003c4 Allow disabling bzip2 (.bz2) and compress (.Z) support
by -DNO_BZIP2_SUPPORT and -DNO_COMPRESS_SUPPORT.
OK'ed by mrg.
2004-03-27 22:33:43 +00:00
mrg 6506e19a17 minor cleanup. 2004-03-06 09:41:36 +00:00
he 2f8028b1b0 Fix mismatched type error in fropen() usage by converting return
type of zread() from ssize_t to int.
2004-02-18 18:29:07 +00:00
wiz 15d66087e7 Mention compress(1) support, and add bzip2(1) and compress(1) to SEE ALSO.
Bump date.
2004-02-18 09:16:27 +00:00
mrg 91d1fa9407 support decompressing "compress"ed files. from rtr@ with a few minor edits
from me.  code in zuncompress liberally borrowed from usr.bin/compress.
2004-02-18 08:19:48 +00:00
mrg 49637d1931 use gzopenfull() 2004-01-29 13:18:58 +00:00
grant 23032f5513 void functions need not call return 2004-01-25 05:19:49 +00:00