tar v2.0.1 binary distributed on the 'net that claimed to have fixed
an unspecified bug in this version, but neither the sources nor
the originator of that fix are available.
It may be appropriate to completely replace this implementation.
However, judging from the comments at the top of the source file,
the v2.0 changes were based on more v1.31 rather than 1.4. When
this program is updated, these diffs should be evaluated. (Unless,
of course, the current version is tossed in favor of a recent BSD
derivative.)
Here are the comments for the changes from v1.31 to v1.4 that may have
been dropped while moving to v2.0. See the cvs diffs for details:
> v1.4 - Termcap support has been added and tested. Look for a soon to be
> faster version coming soon to a ~/bin directory near you!
>
> v1.32 - uses isatty(x) instead of fstat. more portable (opinion).
> soon to be added, TERMCAP support, won't that be nice?
- use install(1) instead of cp(1) for now, since cp has been
observed to trash files.
- changed installation locations to make use of /gno and /gno-hfs
partitions.
- various changes to reflect which files have been updated
since the last time fudgeinstall was used.
- added an entry for /tmp, since we cannot count on people having
this as a RAM- or other real disk when GNO is started.
- make defaults use "/gno" and "/gno-hfs" as the *real* volume
names, rather than "/s21/dist" and "/s22/dist".
inittab, termcap, tty.config, ttys:
added.
they are:
- changed the makefile
- prototyped functions
- eliminated pathnames.h since all it does is #include <paths.h>
- used gettytab.h for various function declarations
- verified stack usage at 712 bytes
- eliminated dummy gethostname() function. Instead, get it
from libc. This exposes a problem with gethostname.
See PR#59 for details.
- eliminated a dependancy on strftime for the moment by
calling ctime() instead.
- Added GNO-formatted versions of the man pages.
and output files for test case comparison. See README.gno for implementation
notes. NOTE: some test cases in tests/dotests are commented-out because
they depend on pipes working and/or the "sort" utility.
Fix for PR#56 -- there is a kludge to modify the exponent for
a converted value of zero, due to the way that SANE special-
cases it. This kludge was applied for all values that had a
zero exponent; now do it only for the value zero.
The ecvt(), fcvt(), and __dtoa() routines were generally
rewritten to address the problem of printing floating point
numbers (they sometimes came out wrong, especially representations
of zero).
__dtoa was written from the description in the BSD sources (note
that the comment of it being "like ecvt/fcvt other than truncating
trailing zeros") is not quite accurate where it comes to the rve
pointer or the printing of zero values. __dtoa is still expected
to be wrong for any modes other than 2 and 3, however those modes
are not used by anything in libc yet. Fix them when they pop up.
BSD has not ecvt/fcvt routines, so these have been written based
on the man page and observed behavior of the Linux implementation.
There is no gcvt yet.