freebsd-dev/bin
Bruce Evans d1e00e9390 Improve the handling of large minor numbers:
cpio/copyout.c:
Don't output a file if the major, minor or totality of its rdev would be
truncated.  Print a message about the skipped files to stderr but don't
report the error in the exit status.  cpio's abysmal error handling doesn't
allow continuing after an error, and the rdev checks had to be misplaced
to avoid the problem of returning an error code from routines that return
void.

pax/pax.h:
Use the system macros for major(), minor() and makedev().

pax already checks _all_ output conversions for overflow.  This has the
undesirable effect that failure to convert relatively useless fields
such as st_dev for regular files causes files not to be output.  pax
doesn't report exactly which fields couldn't be converted.

tar/create.c:
Don't output a file if the major or minor its rdev would be truncated.
Print a message about the skipped files to stderr and report the error
in the exit status.

tar/tar.c:
For not immediately fatal errors, exit with status 1, not the error count
(mod 256).

All:
Minor numbers are limited to 21 bits in pax's ustar format and to 18
bits in archives created by gnu tar (gnu tar wastes 3 bits for padding).
pax's and cpio's ustar format is incompatible with gnu tar's ustar
format for other reasons (see cpio/README).
1995-06-26 06:24:48 +00:00
..
cat Added $Id$ 1994-09-24 02:59:15 +00:00
chflags Remove trailing whitespace. 1995-05-30 06:41:30 +00:00
chmod You will find enclosed some changes to make gcc -Wall more happy in 1995-03-19 13:29:28 +00:00
cp Don't unlink the target file if the copy failed. This behaviour isn't 1995-06-14 05:41:27 +00:00
csh Additionly print strerror(errno), when getwd() fails to start 1995-06-18 14:34:48 +00:00
date Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
dd More koshering [ul]case fix, don't use pre-initialized tables at all, 1995-01-17 23:04:29 +00:00
df Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
domainname You will find enclosed some changes to make gcc -Wall more happy in 1995-03-19 13:29:28 +00:00
echo Added $Id$ 1994-09-24 02:59:15 +00:00
ed Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
expr Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
hostname Added $Id$ 1994-09-24 02:59:15 +00:00
kill Allow 0 as a signal number to match the man page. 1995-03-05 21:52:41 +00:00
ln Use lstat() instead of stat() for checking if the final source file exists, 1994-12-06 18:50:44 +00:00
ls Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
mkdir Added $Id$ 1994-09-24 02:59:15 +00:00
mv Added $Id$ 1994-09-24 02:59:15 +00:00
pax Improve the handling of large minor numbers: 1995-06-26 06:24:48 +00:00
ps Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
pwd Added $Id$ 1994-09-24 02:59:15 +00:00
rcp Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
rm Allow root to delete uchg/uappnd files 1995-04-13 13:35:09 +00:00
rmail Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
rmdir Added $Id$ 1994-09-24 02:59:15 +00:00
sh Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
sleep Added $Id$ 1994-09-24 02:59:15 +00:00
stty Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
sync Added $Id$ 1994-09-24 02:59:15 +00:00
test Remove trailing whitespace. 1995-05-30 00:07:29 +00:00
Makefile Added domainname. 1994-09-18 21:25:26 +00:00
Makefile.inc WHOOPS! Put that back! Sorry, wrong Makefile.inc! 1994-08-08 19:30:03 +00:00