Small size optimization from Aaron Lehmann
[oweals/busybox.git] / Changelog
index f747ebe6ca973b2f2d97b628f09a17e1d3271c66..ee8bef926cde0e610543e6ab3e5526b24757a8ed 100644 (file)
--- a/Changelog
+++ b/Changelog
+0.60.0
+
+    Note: 
+
+       For this release I have bumped the version number to 0.60.0.  This
+       reflects the fact that this release is intended to form a new stable
+       BusyBox release series.  If you need to rely on a stable version of
+       BusyBox, you should plan on using the stable 0.60.x series.  If bugs
+       show up then I will release 0.60.1, then 0.60.2, etc...  This is also
+       intended to deal with the fact that the BusyBox build system will be
+       getting a major overhaul for the next release and I don't want that to
+       break products that people are shipping.  To avoid that, the new build
+       system will be released as part of a new BusyBox development series
+       that will have some not-yet-decided-on odd version number.  Once things
+       stabablize and the new build system is working for everyone, then I
+       will release that as a new stable release series. 
+
+    Critical Bugfixes:
+       * Matt Kraai 
+           -- Fixed wget output file opening (wget failed in 0.52).
+           -- Fixed a memory leak in syslogd (found by Adam Slattery).
+       * Vladimir Oleynik, Matt Kraai, Erik Andersen
+           -- several nasty bugs in ash and msh.  msh could not assign
+               any variables and had debug code still enabled.  ash
+               had several compile errors (depending on selected options)
+               and variable assignment problems as well.
+
+    New Applets:
+       * David McCullough <davidm@lineo.com> -- modprobe
+       * Vladimir Oleynik -- traceroute
+       * Erik Andersen -- pidof
+
+    New Scripts:
+       * David Schleef, Erik Andersen, Stuart Hughes -- depmod.pl
+           This is a replacement for the depmod program from the modutils 
+           package, but is fully cross platform and is designed to run on 
+           your host system (not on the target).
+
+    Other Changes:
+       * Erik Andersen 
+           -- fixed busybox.spec so it should now work on redhat systems
+           -- fixed dos2unix and unix2dos so they should work once again
+           -- Adjustments to make busybox more uClinux friendly.  Busybox
+               should now work on uClinux systems without needing and source
+               code changes (applets that won't work on uClinux systems are 
+               now automagicaly disabled).
+           -- various things (cleanups, libc compatibility work, etc, etc)
+       * Jim Gleason <jimg@lineo.com>
+           -- Fixed for sed, where it failed to preserve whether or not the 
+               line was previously altered when running a subst command.
+       * Matt Kraai 
+           -- Made tar read 20 512byte blocks at a time (like GNU tar)
+           -- Allow msh.c assignments with the export and readonly commands.
+           -- Added BB_FEATURE_DEVFS to enable devfs device names.
+           -- Better devfs support
+           -- Don't save/restore vi readonly flag if vi is compiled read-only.
+           -- Reworked rdate option handling (is now smaller).
+           -- Size reduction in ping
+           -- Always write dd counts to stderr
+           -- Allow multiple shells to be enabled
+       * Aaron Lehmann 
+           -- slimmed down md5sum 
+           -- contributed a nice new (hand written, not lex/yacc) Posix math 
+               support for ash, which is once again a full posix shell.
+       * Felix von Leitner <leitner@convergence.de> -- patches to make busybox 
+           work with dietlibc.
+       * David McCullough
+           -- Adjustments to make busybox more uClinux friendly
+       * Glenn McGrath 
+           -- Fixed gzip so when a filename is '-' it will use stdin/stdout
+           -- dpkg rewrite.  Should now be compatable with the real dpkg, 
+               but needs more testing.
+           -- Updates to archiving tools (gunzip/gzip/cpio/ar/etc) 
+           -- Rewrote uuencode, will allow base64 encoding to be used by wget
+       * Vladimir Oleynik 
+           -- Fixed tr to support 'tr a-z A-Z' syntax,
+           -- Many ash corrections, optimizations, and cleanups.
+           -- optimizations for traceroute, md5sum, chown, ping
+           -- cmdedit updates and API change
+           -- Namespace cleanup (i.e. adding 'static' private function calls)
+           -- added "stopped jobs" warning to ash on exit
+       * Adam Slattery
+           -- Fixed ping compile problem
+       * Robert J. Osborne <rj@resourceinternational.com>
+           -- fixed a vi bug with delete and escape sequences on empty files.
+
+
+        -Erik Andersen, 31 July 2001
+
+
+
+0.52
+       
+    Critical Bugfixes:
+       * Glenn McGrath -- Fixed gunzip, zcat when reading from stdin
+       * Marc Karasek and Kanoj (kernel serial.c maintainer) -- fixed init
+           problem on serial consoles with 2.4.3+ kernels.
+       
+    New Applets:
+       * Laurence Anderson -- rpm2cpio applet, this obsoletes rpmunpack 
+           which has now been removed from BusyBox 
+       * Laurence Anderson and Glenn McGrath -- cpio applet, currently 
+           only supports unpacking the ascii cpio format.
+       * Vladimir Oleynik and Erik Andersen -- added ash, the most correct
+           busybox shell.
+       * Larry Doolittle -- hush, small shell designed specifically
+           for busybox.  Quite usable but still a work in progress.
+       * Erik Andersen -- msh, minix shell.  A very small but capable shell
+           that only uses vfork, so it can be used on uClinux systems.
+
+    Other Changes:
+       * Sterling Huxley -- Several bugfixes for the vi applet.
+       * Glenn McGrath -- Restructure unarchiving code to make more code
+           common to the ar, cpio, dpkg, dpkg-deb applets.
+           tar applet has not yet been assimilated...
+       * Matt Kraai -- Rewrote cp, dirname, mkdir, mv, and rm.
+       * Paul J.Y. Lahaie <pjlahaie@linuxcare.com> -- Fixed an endian-ness
+           bug in md5sum (in 0.51, md5sum on big endian machines was broken)
+       * Mark Whitley -- rewrote cut, major updates to grep and sed. 
+       * Erik Andersen -- bunches of insmod fixes.  It should now always 
+           work (no more segfault or missing symbols problems).
+       * Bernhard Kuhn <kuhn@lpr.e-technik.tu-muenchen.de> and Jinux Kim
+           added uClinux/m68k insmod support.
+       * Manuel Novoa III -- rewrote make_human_readable so ls, du, and df
+           should work as expected.  Eliminated use of floats.
+       * Aaron Lehmann <aaronl@vitelus.com> -- Scrubbed gzip.c
+       * Alan Modra <amodra@bigpond.net.au> -- fixed an hard to spot
+           bug breaking gunzip checksum checking.
+       * Gennady Feldman -- Fixed 'syslog -C' 
+       * Gernot Poerner <gp@it-netservice.de> -- Added mount bind support.
+       * Adam Heath <doogie@debian.org>  -- wget arbitrary header support
+       * John Beppu -- updated the automagical doc generator
+       * Zillions of other bugfixes, optimizations, and cleanups.
+
+
+
+        -Erik Andersen, 7 July 2001
+
+
+0.51
+    Critical Bugfixes:
+       * Erik Andersen -- Fixed a bug that could crash the shell in 0.50
+           when pressing <Enter> on an empty line.
+       * Gennady Feldman -- Fixed a bug that could crash the shell in 0.50
+           when performing an 'export' in the shell.
+       * Gennady Feldman -- fixed a syslogd bug where syslogd could cause
+           the init process to block (which can break systems badly).
+
+    New Applets:
+       * Sterling Huxley -- contributed a new vi applet!  This is a very
+           functional vi implementation in Only 22k.
+       * Erik Andersen -- added env applet
+       
+    Other changes:
+       * Erik Andersen -- Split utility.c into libbb, which provides a
+           much cleaner was for us to include shared functionality.
+       * Erik Andersen -- Reorganized how and when busybox includes 
+           syscalls, aiding portability and (in this case) making the
+           busybox work on ia64 systems.
+       * Erik Andersen -- dpkg.c cleanup to use the updated gunzip interface.
+       * Erik Andersen -- Cleanups for libc5, glibc, and uClibc.
+       * Erik Andersen and Matt Kraai -- Cleanups for the human-readable
+           output from ls, du, and df.
+       * Laurence Anderson <laurence@zxmail.com> -- Fixed wget HTTP 1.1
+           support and added chunked encoding so it is now RFC compliant.
+       * John Beppu -- The busybox.pod documentation is now automagically
+           generated from the source code.  This makes it _much_ simpler.  
+           Now to update the docs, just update the usage message...
+       * Dirk Behme <dirk.behme@de.bosch.com> -- Adjusted MIPS insmod 
+           support a bit for Mips RS3.
+       * Christophe Boyanique -- egrep invoked the "init" applet in 0.50!
+       * Larry Doolittle -- Added -Wshadow and fixed a number of shadowed
+           variables
+       * David Douthitt -- fixed 'find -print' 
+       * Gennady Feldman -- fixes for the syslogd circular buffer code 
+       * Jeff Garzik -- a number of structural cleanups, fixes for -Wshadow 
+           bugs, and similar problems.
+       * Matt Kraai -- Added a new 'shutdown' action to busybox init.  Now
+           you can specify arbitrary behavior for 'ctrlaltdel' so now
+           pressing CTL-ALT-DEL can do something else (or nothing).
+       * Andreas Neuhaus <andy@fasta.fh-dortmund.de> -- fix for merging
+           kernel command line environment variables into child environment
+           for init.c
+       * Glenn McGrath -- Fixed problems with dpkg and dpkg-deb applets
+       * Glenn McGrath -- Don't try to automount devfs 
+       * Vladimir Oleynik -- optimizations for more.c
+       * Vladimir Oleynik -- Added locale support to the shell, and fixed
+           locale support in several other places
+       * Vladimir Oleynik -- moved struct applet from busybox.c to applets.c
+       * Vladimir Oleynik -- A size optimization for rdate
+       * Vladimir Oleynik -- Fixed printf applets's locale handling
+       * Vladimir Oleynik -- More cmdedit updates
+       * Vladimir Oleynik -- Fixed `du' applet so it continues running 
+           after permission errors.
+       * Vladimir Oleynik -- Reduced stack usage in recursive_action()
+       * Pierre Peiffer <pierre.peiffer@sxb.bsf.alcatel.fr> -- made
+               find_pid_by_name() cope with swapped out processes.
+       * Jari Ruusu <jari.ruusu@pp.inet.fi> -- updates so that setting
+           D_FILE_OFFSET_BITS=64 now works as expected. 
+       * Anthony Towns <aj@azure.humbug.org.au> -- fixed a bug with 
+           sed address range handling
+       * Dmitry Zakharov <dmit@crp.bank.gov.ua> -- a number of updates
+           to wget: support for ftp downloads, basic HTTP basic auth, handling
+           of http redirects, when attempting to continue an aborted download
+           but server doesn't support restarts then reopen output file in
+           write mode, bugfix: when content-length not given, wget didn't
+           download anything, if -c is not specified, it no longer default to
+           restarting an aborted download. 
+
+
+        -Erik Andersen, 10 April 2001
+
+
+0.50
+       * Erik Andersen -- added ifconfig interface status reporting 
+       * Erik Andersen -- Debian packaging updates
+       * Erik Andersen -- lash environment variable expansion rewritten,
+           with lots of help/fixes/testing from Larry Doolittle.
+       * Erik Andersen -- Fix use of busybox with dmalloc debugging lib
+       * Erik Andersen -- fixed ls behavior for broken or very narrow terminals
+       * Erik Andersen -- stub umount2 and pivot_root if they are not available
+       * Erik Andersen -- libc5 fixes
+       * Erik Andersen -- make init work with devfsd
+       * Erik Andersen -- fixed df for nfs and dos where blksize = 512
+       * Erik Andersen -- Make sure libpwd.a is linked _last_ so it 
+           overrides the system pwd/grp 
+       * Christophe Boyanique -- added an optional egrep alias for grep.
+       * Christophe Boyanique -- added optional 'rm -i' support.
+       * Kenneth Chalmers and Erik Andersen -- fixed ln so it
+           behaves when given no arguments (prints usage) and when
+           given just one arg (tries to make a link in the cwd).
+       * Magnus Damm -- added a tftp applet  
+       * Magnus Damm -- powerpc support for busybox insmod.
+       * David Douthitt -- fixed a build error in df.c when 
+           BB_FEATURE_HUMAN_READABLE was disabled
+       * John Beppu -- wrote autodocifier.pl, which will be used to auto-
+           generate the documentation from the source code, making life
+           much simpler for all.
+       * Magnus Damm <damm@opensource.se> -- Fixed an 'inner scope var
+           masking outer scope var with same name' bug that prevented 
+           the loopback device from being unmounted if mount() failed.
+       * Larry Doolittle -- rewrote ifconfig to make it smaller 
+       * Larry Doolittle and Erik Andersen -- cleanups to pristine source
+       * Larry Doolittle -- many bugfixes resulting from regression testing
+       * Gennady Feldman -- split syslogd.c into syslogd and klogd
+       * Gennady Feldman -- make syslogd single threaded -- no more forking
+       * Jeff Garzik -- getopt-ified rmmod.
+       * Jeff Garzik -- glibc 2.2 warning cleanups
+       * Jeff Garzik -- namespace pollution cleanup (staticified variables).
+       * Erik Gustavsson <cyrano@algonet.se> -- allow env variables set on the
+           kernel command line to be inherited into init and its children.
+       * Erik Habbinga -- fixed an uninitialized substitution delimiter in sed.
+       * Chris Jaeger -- Makefile cleanup to make option setting less error-prone
+       * Chris Jaeger <cjaeger@ensim.com> -- Carefully check NFS_MOUNT_VERSION
+           depending on what kernel is being used.
+       * Quinn Jensen <jensenq@lineo.com> -- MIPS support for busybox insmod.
+       * Evin Robertson -- new pivot_root applet 
+       * Kent Robotti -- usage message cleanups
+       * Kent Robotti -- reworked dos2unix/unix2dos
+       * Evin Robertson and Manuel Novoa III -- reworked how usage messages 
+           are stored to save several k of space.
+       * Matt Kraai -- Keep trying if an NFS mount fails 
+       * Matt Kraai -- fixed insmod so it won't try to insmod directories.
+       * Matt Kraai -- added nc listening support
+       * Matt Kraai and David Douthitt -- reworked fine to support -type, 
+           -perm, -mtime, and other improvements.
+       * Matt Kraai -- added find_applet_by_name and saved some memory thereby
+       * Matt Kraai -- added chomp to reduce redundant code elsewhere
+       * Matt Kraai -- Removed trailing \n chars from error_msg{,_and_die} messages. 
+       * John Lombardo -- fixed OOM in insmod.
+       * Glenn McGrath -- bypass /proc in mount, now uses sysfs. 
+       * Glenn McGrath -- several updates to dpkg and dpkg-deb. 
+       * Manuel Novoa III -- several size optimizations: parse_mode, 
+           process_escape_sequence, format, and get_kernel_revision. 
+       * Manuel Novoa III -- rewrote ifconfig again to make it smaller still 
+       * Manuel Novoa III -- added ifconfig -a, updated interface reporting
+       * Vladimir N. Oleynik -- Fixed a bug where init set PATH incorrectly 
+       * Vladimir N. Oleynik -- cleanups to route, cmdedit, mkdir, 
+           mkfs_minix, mkswap, chmod_chown_chgrp and utility.c
+       * Vladimir N. Oleynik -- many fixes to cmdedit. so tab completion
+           is now working and general editing is much improved, and to
+           improve complex prompt handling.
+       * Vladimir N. Oleynik -- added route status reporting.
+       * Vladimir N. Oleynik -- fixed wget to use xfopen
+       * Vladimir N. Oleynik -- new stty applet 
+       * Vladimir N. Oleynik -- fixed find, it used to stop on perm errors.
+       * Vladimir N. Oleynik -- locale forced to posix for scripts 
+       * Vladimir N. Oleynik -- saved 128 bytes by moving error checking 
+           for several my_* functions into utility.c
+       * Bjorn Wesen -- new ifconfig and route applet (taken from 
+           work done by Axis Communications).
+       * Mark Whitley -- Added a 'How to contribute to Busybox' doc
+           and updated the style guide.
+       * Mark Whitley -- implemented grep -A, -B, and -C
+       * Mark Whitley -- overhauled the test suite.
+
+
+        -Erik Andersen, 15 March 2001
+       
+0.49
+
+       * Matt Kraai -- new sort.c
+       * Matt Kraai -- new tail.c
+       * Glenn McGrath -- new 'dpkg-deb' applet
+       * Glenn McGrath -- new ar code
+       * spoon -- new watchdog applet
+       * Vladimir N. Oleynik <dzo@simtreas.ru> -- fixed cmdedit.c so now 
+           scrolling and tab completion in lash work properly.  Also several
+           byte saving optimizations.
+       * Erik Andersen -- disabled many less commonly used applets by default
+       * Mark Whitley -- more thrashing about to get clean perror_msg usage
+       * Matt Kraai -- new command line munging
+       * Larry Doolittle -- keep some locales from messing up busybox.sh
+       * Matt Kraai -- cleaned up dd and tail with new parse_number routine
+       * Mark Whitley -- remove debugging messages from deallocvt
+       * Matt Kraai and Mark Whitley -- new document "How to Add a New Applet 
+           to BusyBox"
+       * David Douthitt -- fixed "grep -qv" bug
+       * Larry Doolittle -- fixed insmod bug with old kernels
+       * Matt Kraai -- logger remixed to use getopt, selection of stdin made 
+           util-linux compatible
+       * Erik Andersen -- many more internal symbols classified static to 
+           avoid namespace pollution
+       * Matt Kraai -- nc listening support
+       * Erik Andersen -- made sed understand arbitrary regexp delimiters
+       * Matt Kraai et al. -- more tar improvements and bug fixes, now 
+           handles regexp file exclusion
+       * Larry Doolittle -- new script (multibuild.pl) to automate build rule
+           checking
+       * Matt Kraai -- update/cleanup of the docs on how to use init
+       * Erik Andersen -- renamed all sh.c symbols per the style guide, 
+           better if-then-else-fi handling
+       * Erik Andersen -- cleaner division of labor between cmdedit.c and sh.c
+       * Larry Doolittle -- shell data structure cleanup, fixed buglets
+           in read, exec, and piped builtins
+       * Erik Andersen -- md5sum was broken in 0.48.  Now fixed (and doesn't 
+           use getline, shrinking static compiles (since nothing else used it).
+       * ?? -- squashed memory leak in shell prompt handling
+       * Mark Whitley -- Updates to style guide
+       * Mark Whitley -- Big cleanup in utility.c: style guide compliance,
+           de-macro-ifying some variables and functions
+       * Erik Andersen -- ls now honors BB_FEATURE_AUTOWIDTH so it can find
+           the width and height of the console.
+       * Erik Andersen -- insmod now ignores -L and accepts the -o option.
+       * Erik Andersen -- updates so you can now select from the Makefile
+           whether or not to use the system's passwd and group functions.
+           Since most systems use GNU libc, this can save you from having to
+           install the /etc/nsswitch.conf configuration file and the required
+           libnss_* libraries.  Adds 1.5k.  You can now, also, disable this, 
+           causing busybox to use the system's pwd.h and grp.h functions.
+
+
+        -Erik Andersen, 27 January 2001
+
+0.48
+
+       * Glenn McGrath -- tar now supports uncompressing tar files,
+           define BB_FEATURE_TAR_GZIP to use the -z option.
+       * Matt Kraai -- fix all usage of TRUE and FALSE so all apps now
+           return EXIT_SUCCESS or EXIT_FAILURE to the system.
+           Now TRUE and FALSE are set to the C standard where TRUE=1.
+       * me -- Fixed uname problem causing the kernel version to be
+           mis-detected (causing problems with poweroff, init,
+           and other things).  
+       * Alcove, Julien Gaulmin <julien.gaulmin@alcove.fr> and 
+           Nicolas Ferre <nicolas.ferre@alcove.fr> -- insmod support on ARM 
+           and StrongArm, and suport for lsmod on older 2.0.x kernels.
+       * Kent Robotti -- Renamed unrpm to original rpmunpack, so you can use 
+           an included shell script called unrpm as a front end to it.  There's
+           also a shell script called undeb included for debian packages.  
+       * Matt Kraai -- fix an infinite loop with ls -aR
+       * Larry Doolittle -- Shaved off about 100 bytes and 200 bytes heap 
+           from date.c.  Also document the "-d" option in the usage message.
+       * Gennady Feldman -- fixed dd to use blocksize when reading/writing, 
+           (it was reading the whole thing and then writing it out).  Also 
+           updated usage information (was missing conv=notrunc) and added 
+           conv=sync feature.
+       * Larry Doolittle (in collaboration with Matt Kraai) -- allow for a 
+           pristine source directory -- where all the .o files and such are 
+           not placed into the source tree.  Thanks Larry!
+       * Larry Doolittle -- use the applet definitions in applets.h 
+           to autogenerate the applet function and usage prototypes.
+       * Sebastien Huet, Arne Bernin, and Kent Robotti -- Add in tar -X and
+           fixed a bug breaking tar --exclude.  
+       * Jonas Holmberg -- echo option handling made GNU-echo compatible
+       * Aleksey Demidov <asd@ixcelerator.com> -- date option handling made 
+           GNU-date compatible
+       * me -- Progress meter (optional) in wget
+       * Doolittle/me -- programs invoked by full path name take
+           precedence over applets unless BB_FEATURE_SH_BUILTINS_ALWAYS_WIN
+       * Gaute B Strokkenes <gs234@cam.ac.uk> -- applets found using a
+           binary search instead of linear search.  Much faster!
+       * new applets: cmp readlink
+       * Mark Whitley -- Removed advertising clause of Berkeley license
+           according to decision by the Regents of the University of
+           California; included reference
+       * tail's confusing special treatment of single digit options removed;
+           people should use -n instead
+       * Larry Doolittle -- \r handled now in echo and tr
+       * Matt Kraai -- rewrite of uniq
+       * Mark Whitley -- remix of xargs
+       * Jim Gleason <jimg@lineo.com> -- fixed tar so it no longer breaks 
+           hard links.
+       * Matt Kraai -- logger now logs all arguments, not just the first
+       * Gennady Feldman -- syslogd no longer logs to localhost if compiled
+           for remote logging...
+       * Richard June <rjune@ims1.imagestream-is.com> -- support for 'gzip -d'
+       * various artists -- Other good stuff that I forgot to document.
+
+
+        -Erik Andersen, 13 December 2000
+
+0.47
+
+       * A bug in syslogd was fixed that allowed it to potentially fork-bomb
+           your system.  Anyone using 0.46 syslogd should upgrade.
+       * Renamed busybox.defs.h to the more sensible "Config.h"
+       * Improved portability between different libcs.
+       * Many apps ported to use getopt()
+       * Common handling of '--help'
+       * All usage messages centralized.
+       * Added a bunch of new commands:
+           * 'rdate' contributed by Sterling Huxley <sterling@europa.com>
+           * 'wget' contributed by Chip Rosenthal <chip@unicom.com>, 
+                   <crosenth@covad.com> and Covad Communications
+           * 'getopt' from "Alfred M. Szmidt" <ams@trillian.itslinux.org>
+           * dos2unix, unix2dos, reset, and unrpm.c (and lots of help
+               debugging) thanks to Kent Robotti <robotti@metconnect.com>.
+           * 'renice' command, thanks to Dave Cinege <dcinege@psychosis.com>
+           * 'xargs' (written by me)
+           * 'expr' contributed by Edward Betts <edward@debian.org>, based
+               on GNY expr
+       * lsmod now uses the query_module syscall, rather then /proc (me)
+       * syslogd can now log messages to remote hosts -- patch thanks
+           to Gyepi Sam <gyepi@praxis-sw.com>
+       * chroot can now call the builtin shell - Pavel Roskin <proski@gnu.org>
+       * 'make install' now creates relative symlinks, and added a new
+           'make install-hardlinks' target to (tada) install hardlinks.
+       * Rewrite of 'tail' to make it simpler, smaller, and more robust.  
+           It now weighs only 2.25k (3k when full featured).  The code is
+           cleaner too, thanks to Allen Soard <esp-software@mail.hypermart.net>
+       * Add optional ls file sorting, thanks to a patch from 
+           Sterling Huxley <sterling@europa.com>
+       * Fixed chmod option parsing so things like 'chmod -r /tmp/file'
+           now work (previously it thought -r was an option).  Doh!
+       * Fixed tar handling of stdin and stdout
+       * Renamed "internal.h" to the more sensible "busybox.h"
+       * Preliminary support for GNU HURD.
+       * Updated my devps and devmtab kernel patches for the latest 2.2.x
+           kernel, for those wanting to go proc-less.
+       * Tons of other bugfixes.
+
+
+        -Erik Andersen, 25 September 2000
+
+
 0.46
 
+       * Better portability.  Now should compile cleanly with libc5, 
+           GNU libc 2.0 and 2.1, and various Linux kernels including 
+           2.0.x, 2.2.x, and to 2.4.0-test*. (patch for 2.4.x kernels
+           to make /proc/mounts behave included in the kernel-patches dir). 
+       * Fixed a _horrible_ bug where 'tar -tvf' could unlink
+           local files that matched tarball contents!!!  Fix thanks 
+           to Marius Groeger <mgroeger@sysgo.de>
+       * Fixed a nasty bug in tar when could mess up saved symlinks.
+       * Fixed tar creation support when reading from stdin ('tar -cf - . ') 
+           thanks to Daniel Quinlan <quinlan@transmeta.com>
        * Updates to handle Linux 2.4.0 kernels (kludged around the
            "none" entries in /proc/mounts, added a hack to make sysinfo
            work with both old and new kernels).
-       * Fixed a nasty bug in tar when could mess up saved symlinks.
        * Fixed insmod module option parsing for options lacking an '='.
            Fix thanks to Marc Nijdam <marc_nijdam@hp.com>
        * Fixed segfault with 'cut -f 1 -d:' and added 'cut -s' suport.
            Fix thanks to Arne Bernin <arne@matrix.loopback.org>
+       * Several fixes from Marius Groeger <mag@sysgo.de>
+           - Added support for "sh -c command args..."
+           - Fixed globbing, i.e. 'echo * *' and 'echo "******"' now work.
+           - Added shell environment variable substitution 
+           - Added the "read" shell builtin.
+       * Fixed cursor editing in cmdedit.c. The following keyboard sequence 
+           used to create an infinite loop: ls, cursor up, left, down.
+       * Added support for being a login shell, so things like
+           '-su' or '-sh' (stuff where argv[0][0]=='-') will now always 
+           invoke the shell.  Now you can use BusyBox as a login shell.
+       * ls.c now ignores '-g', since some ftp clients like that sort 
+           of thing.  Patch thanks to David Vrabel <dvrabel@arcom.co.uk>
+       * Fix to init.c from Stuart Menefy <Stuart.Menefy@st.com> so that
+           it always sets the controlling terminal before running any programs
+       * Several fixes from Matt Kraai <kraai@alumni.carnegiemellon.edu>
+           - Fixed tr so it recognizes standard escape sequences.  
+               Merged common escape seq. code from tr and echo into utility.c.
+           - Major work in updating/cleaning up the docs, and getting the
+               new SGML based docs into shape.
+           - cleanup of ar.c
+           - BusyBox should now poweroff when asked to do so.
+           - Fixed 'ln -n' and 'ln -s' so they both work properly.
+       * Reorganized signal names in kill.c for better architecture support 
+           -- patch thanks to simon wood <simon@mungewell.uklinux.net>
+       * In 0.43, backspace and delete worked properly, but with 0.45, 
+           it just echoed a ^? for backspace, and ^H for control-h.  This
+           was due to a broken macro in init.c, that is now fixed.
+       * Removed sfdisk from BusyBox.  It was buggy, fat, and we really
+           couldn't maintain it very well, so including it was not really
+           very appropriate.  Those wanting an fdisk are invited to
+           grab a copy from util-linux.
+       * Added 'dumpkmap' to allow people to dump a binary keymap, which can 
+           then be loaded in by 'loadkmap' -- submitted by
+           Arne Bernin <arne@matrix.loopback.org>
+       * Fixed NFS so it supports 2.4.x kernels and NFSv3.
+       * Brand, new versions of grep and sed which use libc regex routines,
+           thanks to Mark Whitley <markw@lineo.com>.  The hand-tooled 
+           "regexp.[ch]" files have been removed. Much help on these from 
+           Matt Kraai as well.
 
-        -Erik Andersen
+
+        -Erik Andersen, 11 July 2000
 
 
 0.45
        * Replaced the telnet implementation with one written by 
            Tomi Ollila <too@iki.fi> It works great and costs 3k.
        * BusyBox sh (lash) now supports being used as a standalone shell.  When
-           BB_FEATURE_STANDALONE_SHELL is defined, all the busybox commands may
+           BB_FEATURE_SH_STANDALONE_SHELL is defined, all the busybox commands may
            be invoked as shell internals.  Best used when compiling staticly 
            (i.e. DOSTATIC=true)
        * BusyBox sh (lash) internals now behave as expected wrt pipes 
        * Major init re-work.  init now supports inittab (slightly different
            but similar to sysvinit), allowing me to get all the policy out of
            init and into the conf file.  It works just fine without inittab
-           being present, but if you dont like the defautl behavior you can
+           being present, but if you dont like the default behavior you can
            now do something about it.  Init is much cleaner as a result.
        * Fixed an bug in syslogd causing it to stop after 20 minutes. -erik
        * Fixed an embarrasing segfault in head -beppu Fixed the embarrasing