Commit Graph

43 Commits

Author SHA1 Message Date
ed
af31e8843c More -Wmissing-variable-declarations fixes.
In addition to adding `static' where possible:

- bin/date: Move `retval' into extern.h to make it visible to date.c.
- bin/ed: Move globally used variables into ed.h.
- sbin/camcontrol: Move `verbose' into camcontrol.h and fix shadow warnings.
- usr.bin/calendar: Remove unneeded variables.
- usr.bin/chat: Make `line' local instead of global.
- usr.bin/elfdump: Comment out unneeded function.
- usr.bin/rlogin: Use _Noreturn instead of __dead2.
- usr.bin/tset: Pull `Ospeed' into extern.h.
- usr.sbin/mfiutil: Put global variables in mfiutil.h.
- usr.sbin/pkg: Remove unused `os_corres'.
- usr.sbin/quotaon, usr.sbin/repquota: Remove unused `qfname'.
2012-10-19 14:49:42 +00:00
eadler
d7c9a0e9e9 Fix style nit: don't use leading zero for dates in .Dd
Prompted by:	brueffer
Approved by:	brueffer
MFC after:	3 days
2012-06-05 03:14:39 +00:00
delphij
7f0cb2e0bc According to the NetBSD foundation [1]:
Third parties are encouraged to change the license on any files which have
a 4-clause license contributed to the NetBSD Foundation to a 2-clause
license. We would also encourage you to inform us about these files, so
that we can continue to track the many places in which NetBSD is used.

http://www.netbsd.org/about/redistribution.html#why2clause [1]

Requested by:	joel@
2011-10-16 07:35:26 +00:00
delphij
2ccfd227c9 Incorporate recent changes from NetBSD. Most notable change is the addition
of support of decompressing xz files.

Obtained from:	NetBSD
2011-10-10 06:37:32 +00:00
delphij
b88759ae05 Sync RCS id with NetBSD, this was intentionally omitted from the advisory
in order to reduce patchset size.

MFC after:	3 days
2011-09-28 18:03:53 +00:00
bz
2e8e044c2f Fix handling of corrupt compress(1)ed data. [11:04]
Add missing length checks on unix socket addresses. [11:05]

Approved by:	so (cperciva)
Approved by:	re (kensmith)
Security:	FreeBSD-SA-11:04.compress
Security:	CVE-2011-2895 [11:04]
Security:	FreeBSD-SA-11:05.unix
2011-09-28 08:47:17 +00:00
delphij
7d14923471 Fix a regression introduced with previous changeset: if output is stdout,
do not check for symbolic link.
2011-05-25 18:04:11 +00:00
delphij
c7822ff2b1 Match symbolic link handling behavior with GNU gzip, bzip2 and xz:
When we are operating on a symbolic link pointing to an existing
file, bail out by default, but go ahead if -f is specified.

Submitted by:	arundel
MFC after:	2 weeks
2011-05-23 09:40:21 +00:00
delphij
f71ef98f21 Diff reduction against NetBSD. The most notable change is to zdiff(1) to
handle more file formats including bzip2 and xz.

MFC after:	2 weeks
2011-05-23 09:02:44 +00:00
gjb
56ec4fdcb3 Update manpage to remove CRT reference.
PR:		154441
Submitted by:	Ben Haga (bhaga of absoludicrous com)
Suggestion by:	pluknet
Approved by:	keramida (mentor)
MFC after:	3 days
2011-02-07 22:33:39 +00:00
bcr
391f91aab5 Correct some typos in comments, no functional changes. 2010-10-16 15:24:04 +00:00
delphij
2dd5415ff3 In the past gunzip(1) write()'s after each inflate return. This is
not optimal from a performance standpoint since the write buffer is
not necessarily be filled up when the inflate rountine reached the
end of input buffer and it's not the end of file.

This problem gets uncovered by trying to pipe gunzip -c output to
a GEOM device directly, which enforces the writes be multiple of
sector size.

Sponsored by:	iXsystems, Inc.
Reported by:	jpaetzel
MFC after:	2 weeks
2010-09-23 01:24:33 +00:00
delphij
9a8b3cac78 Check return value of dup(), it could be -1 when the system is running
out of file descriptors for instance.

Found with:	Coverity Prevent(tm)
CID:		6084
MFC after:	1 month
2010-08-19 01:34:00 +00:00
delphij
590c3e4ed7 Several style fixes as prompted by bde@.
While I'm there, loosen the st_nlink check and fix grammar for 1 extra
links.
2010-06-10 20:59:28 +00:00
delphij
6052fb4c47 Follow up revision 208888 with purely ident changes.
MFC after:	1 week
2010-06-07 10:10:44 +00:00
delphij
f640e58a63 Correct a bug in gzip(1): make sure that initialize isb with fstat() on
input file before using it.

PR:		bin/147275
Submitted by:	thomas
MFC after:	1 week
2010-06-07 10:09:40 +00:00
delphij
16ffa87683 Use _exit(2) system call directly instead of using exit(3) in signal
handler, as the latter is not guaranteed to be signal safe, and we
do not really care about flushing the stream during SIGINT.

Suggested by:	Maxim Konovalov <maxim.konovalov gmail com>
MFC after:	13 days
2010-04-27 17:57:04 +00:00
delphij
8c986a2f88 Language improvements to make the BUGS section easier to read.
Reviewed by:	Alexander Best <alexbestms wwu de>
MFC after:	13 days
2010-04-27 17:50:43 +00:00
delphij
6776eaaf24 Add a signal handler for SIGINT which removes output file when necessary.
While I'm there, move unlink_input() slightly down to after closing the
output file, in uncompression path.

MFC after:	2 weeks
2010-04-26 20:05:48 +00:00
delphij
be707c1faf Diff reduction against NetBSD and add myself to AUTHORS section of the
manual page as I wrote the unpack functionality.  No actual executable
code change verified with md5(1).
2010-04-07 22:54:53 +00:00
ed
543b5e901b Change all our own code to use st_*tim instead of st_*timespec.
Also remove some local patches to diff(1) which are now unneeded.
2010-03-28 13:16:08 +00:00
ed
9b380e30d4 Build usr.bin/ with WARNS=6 by default.
Also add some missing $FreeBSD$ to keep svn happy.
2010-01-02 10:27:05 +00:00
delphij
adba2f7336 We should distinguish between a real truncated case and EOF after
BZ_STREAM_END triggered re-init.  Do it by introducing a new flag
to represent the 'cold' case after bzip2 state is reinitialized.

This fixes regression reported on -current@ as well as another one
I found during twiddling with gzip.

Reported by:	swell.k gmail.com
MFC after:	1 week
2009-11-16 22:52:52 +00:00
delphij
07fe7b9c9c Apply a NetBSD fix (revision 1.12) to handle multi-session bzip2 files
as created by pbzip2.

Submitted by:	mrg (NetBSD.org)
MFC after:	1 week
2009-11-09 02:37:02 +00:00
delphij
1eac2402ef Correct a stack underflow in gzip:
- Limit suffix to be no more than 30 bytes long.  This matches GNU
   behavior.
 - Correct usage of memcpy().

Note that this commit only corrects the stack underflow issue, we
still need some other fixes to cover other edges. [1]

Reported by:	Ron Jude <ronj wytheville org>
Discussed with:	Matthew Green (original NetBSD gzip author),
		Eygene Ryabinkin <rea-fbsd codelabs ru> [1]
Approved by:	re (kib)
2009-07-31 08:37:27 +00:00
delphij
a2b16a14df Sync with NetBSD:
- gzip -n does not store timestamp; [1]
 - Reduce diff against NetBSD by moving some casts in our local
   versions.

PR:		bin/134955
Obtained from:	NetBSD
MFC after:	1 month
2009-06-24 21:51:02 +00:00
delphij
bfca5b766d Add support for uncompressing pack(1)'ed files. Pack(1) is a program found
in some commercial Unix systems, which utilizes Huffman minimum redundancy
code tree to compress files.  This implementation supports the "new" pack
format only, just like GNU gzip did.

Thanks for oliver@'s archive set which I can test against, and Mingyan Guo
for providing helpful review of my code.

PR:		bin/109567
MFC after:	1 month
2009-06-21 09:39:43 +00:00
delphij
aed2d90f26 Two fixes for SMALL case when compiling with WARNS=6:
- Reduce scope where return value can be referenced.
 - Add a dummy access to timestamp to silence warning.

Submitted by:	Mingyan Guo <guomingyan gmail com>
2009-06-19 19:28:21 +00:00
cperciva
7417f9fd97 Mark functions as __dead2 in order to help the LLVM static checker
understand which code paths aren't possible.

Reported by:	edwin
2008-08-04 07:36:53 +00:00
delphij
56a762a726 Sync with NetBSD's license changes. 2008-07-23 00:03:36 +00:00
delphij
5a79d28b35 Reflect the fact that we actually have NetBSD revision 1.3. 2008-06-30 23:53:15 +00:00
delphij
44ba243422 Remove clause 3 and 4 of NetBSD license.
Obtained from:	NetBSD
2008-06-30 23:23:31 +00:00
delphij
5cb2efe530 Make it clear that gzcat expects each argument to be separate files.
PR:		docs/123010
Submitted by:	Andrew Wright <andrewhw ieee org>
MFC after:	2 weeks
2008-06-30 17:45:47 +00:00
rwatson
64e94f5fa6 Teach gunzip that .tbz and .tbz2 uncompress to .tar, in a manner similar to
its existing understanding that .tgz uncompresses to .tar.

MFC after:	3 days
PR:		121519
Submitted by:	Ighighi <ighighi at gmail.com>
2008-03-09 13:49:09 +00:00
rwatson
d006593fca When gzipping to a target file, only set the source file flags on the
target file after the timestamp has been set; otherwise setting the
timestamp will fail if the flags don't permit it (i.e., uchg).

MFC after:	1 week
PR:		120208
Submitted by:	Ighighi <ighighi at gmail.com>
2008-03-09 11:16:42 +00:00
yar
969bd2bc47 Fix a few obvious errors in the znew(1) script.
PR:		bin/120249
Submitted by:	Jaakko Heinonen <see the PR for email>
2008-02-09 13:04:01 +00:00
delphij
1f75e6a125 - Simulate GNU gzip(1) behavior where full filename is
being output in verbose mode when doing recursive[1].
 - Use better representation of S:

PR:		bin/114470
Submitted by:	Ighighi <ighighi gmail com> [1]
Approved by:	re (hrs)
2007-07-12 01:17:14 +00:00
delphij
aed2a0bc29 Mention 'k' option of gunzip.
Pointed out by:	ighighi gmail.com
2007-06-06 02:51:54 +00:00
delphij
23ad5197dd Add a '-k' flag which is similar with its bzip2(1) counterpart,
meaning that the user wants the input file to be left intact.

Feature request: Ighighi <ighighi gmail.com>
PR:		 bin/103006
MFC after:	 1 month
2007-05-28 08:20:46 +00:00
delphij
9dd2be0d64 Mention a limitation that was inherted from RFC1952, making
it impossible to obtain correct file size from a file that
is larger than 4GB before compression.

PR:		bin/110329
MFC after:	1 week
2007-03-16 03:50:53 +00:00
simon
47a4a62547 Do not install zgrep, or links to zgrep, since zgrep is provided by
src/gnu/usr.bin/grep.

Reviewed by:	delphij
2007-02-10 13:49:39 +00:00
delphij
2f4ffd4b4f Fix typo.
Obtained from:	DragonFly
2007-01-31 07:13:25 +00:00
delphij
2089860135 Replace the GNU gzip with a slightly modified NetBSD gzip. The
NetBSD version is a feature-to-feature re-implementation of GNU
gzip using the freely-redistributable zlib and this version is
expected to be mostly bug-to-bug compatible with the GNU
implementation.

 - Because this is a piece of mature code and we want to make
   changes so it is added directly rather than importing to
   src/contrib.
 - Connect newly added code to src/usr.bin/ and rescue/rescue
   build.
 - Disconnect the GNU gzip code from build for now, they will
   be eventually removed completely.
 - Provide two new src.conf(5) knobs, WITHOUT_BZIP2_SUPPORT and
   WITHOUT_BZIP2.

Tested by:	kris (full exp-7 pointyhat build)
Approved by:	core (importing a 4-clause BSD licensed file)
Approved by:	re (adding new utility during -HEAD code slush)
2007-01-26 10:19:08 +00:00