Fix an obscure option parsing bug.
[oweals/busybox.git] / Changelog
index 3083ae960265d301c333bb6f8da04a34639873bf..416483b117b47a4bbdf769429dd8368893ac6f52 100644 (file)
--- a/Changelog
+++ b/Changelog
-0.44
+0.47pre
+
+       * A bug in syslogd was fixed that allowed it to potentially fork-bomb
+           your system.
+       * chroot can now call the builtin shell - Pavel Roskin <proski@gnu.org>
+       * added 'renice' command, thanks to Dave Cinege <dcinege@psychosis.com>
+       * 'make install' now creates relative symlinks, and added a new
+           'make install-hardlinks' target to (tada) install hardlinks.
+       * syslogd can now log messages to a remote host -- patch thanks
+           to Gyepi Sam <gyepi@praxis-sw.com>
+       * 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>
+       * lsmod now uses the query_module syscall, rather then /proc
+       * Added 'rdate' command from Sterling Huxley <sterling@europa.com>
+       * Added 'wget' command, contributed by Chip Rosenthal <chip@unicom.com>, 
+               <crosenth@covad.com> and Covad Communications
+       * Added 'getopt' from "Alfred M. Szmidt" <ams@trillian.itslinux.org>
+       * Fixed chmod option parsing so things like 'chmod -r /tmp/file'
+           wouldn't work (since it thought -r was an option).  Doh!
+       * Added dos2unix, unix2dos, and unrpm.c thanks to robotti@metconnect.com.
+
+
+
+        -Erik Andersen
+
+
+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 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
+
+
+0.45
+       * Now compiles vs libc5 (which can save lots of space for 
+           embedded systems).
        * Added BB_FEATURE_TRIVIAL_HELP which compiles out most all of the
            help messages (i.e --help).  Saves 17k over a full compile.
-       * Added mktemp, contributed by Daniel Jacobowitz <dan@debian.org>
-       * Added setkeycodes, for those that have wierd keyboard buttons.
        * Added cut and tr from minix, since due to the license change, 
            we can now use minix code.  Minix tr saves 4k. 
+       * insmod now works.  It costs 29k, but imagine an initrd with a 
+           staticly linked busybox containing only insmod and sh, a few /dev 
+           entries, and a kernel module or two...  It doesn't get smaller
+           then this folks (I pity the fool that writes insmod in asm ;-).
+           Many kudos go to Ron Alder <alder@lineo.com> for finishing this off!
        * Added a mini ar archive utility, especially written for BusyBox by 
            Glenn McGrath <bug1@netconnect.com.au>
+       * Added mktemp, contributed by Daniel Jacobowitz <dan@debian.org>
+       * Added setkeycodes, for those that have wierd keyboard buttons.
+       * Added md5sum, uuencode and uudecode -- thanks to Alfred M. Szmidt 
+           <ams@trillian.itslinux.org> for contributing these.
         * Added 'grep -v' option (inverted search) and updated 
            docs accordingly.  -beppu
        * Wrote which
+       * 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 
        * Makefile intelligence updates
        * Changed the way init parses /etc/inittab entries to avoid problems
            with commands that contain colons in them.  Fix thanks to 
-           Pavel Roskin <pavel_roskin@geocities.com>
+           Pavel Roskin <proski@gnu.org>
        * Fixed a warning in utility.c due to char being unsigned on Linux/PPC, 
-           Fix thanks to Pavel Roskin <pavel_roskin@geocities.com>
+           Fix thanks to Pavel Roskin <proski@gnu.org>
        * Made "killall" complain (not error and exit) about processes that it 
-           cannot find by name. Fix thanks to Pavel Roskin <pavel_roskin@geocities.com
+           cannot find by name -- Pavel Roskin <proski@gnu.org
        * Fixed more and ps to have sensible terminal width defaults, thanks 
            to Pavel Roskin.
        * Fixed all fatalError() calls lacking a "\n", thanks to Pavel Roskin.
+       * Fixed a segfault in yes when no args were given -- Pavel Roskin.
+       * Simplified freeramdisk and added argument checking -- Pavel Roskin. 
+       * Fixed segfault caused by "touch -c"
+       * Fixed segfault caused by "rm -f"
+       * Fixed segfault caused by "ln -s -s" and similar abuses. Further fixes
+           and "--" support from Pavel Roskin.
+       * Fixed segfault caused by "cp -a -a" and similar abuses.
+       * Implemented "rm -- <foo>". Implementation fixed by Pavel Roskin.
+       * "which" rewritten to use stat(). Fixes to improve its compatability
+           with traditional implementations -- Pavel Roskin.
+       * "mount" now reports errors from nfsmount() and assumes NFS mount
+           if ':' is present in the device name - Pavel Roskin
+       * Fixed exit status for killall - Pavel Roskin
+       * Fixed 'swapon -a' and 'swapoff -a', which were broken.
+       * Fixed 'mount -a' so it works as expected.
+       * Implemented 'ls -R' (enabled by enabling BB_FEATURE_LS_RECURSIVE)
+       * Implemented "ping -s", fixed error messages and argument parsing -
+           Pavel Roskin
+       * Syslogd will not go to background if "-n" is given. Better help
+           and argument checking -- Pavel Roskin
+       * Fixed a small bug that could cause tar to emit warning messages
+           and not extract the first file in a directory in some cases
+           of nested directories.  Thanks to Kevin Traas <kevin@netmaster.com>
+           for helping track this one down.
        * More doc updates
+       * Fixed grep "Line too long" problem -- John Beppu
+       * Fixed 'grep -q -i B some_file' so it works
+       * math takes input from stdin if no args are given.  -- John Beppu
+       * math was renamed to dc.  Although it deviates from dc's behaviour,
+           this will probably be remedied in the future.  -- John Beppu
 
 
-        -Erik Andersen
+        -Erik Andersen, June 21, 2000
+
 
+0.44
+       Previously, an erronous announcement of BusyBox 0.44 was made, so to 
+       avoid possible confusion, we are skipping straight to 0.45, and calling
+       it good.
+
+        -Erik Andersen
 
 
 0.43
        * Added echo and test (from me).
        * Added usleep contributed by Nicolas Pitre <nico@cam.org>
        * BusyBox's bss size has been majorly reduced (was 384668, is now 28740).
-       * Several fixes from Pavel Roskin <pavel_roskin@geocities.com>:
+       * Several fixes from Pavel Roskin <proski@gnu.org>:
            - When `tail' fails to open a file it now exits.
            - When `syslogd' is given the `-n' option it should still use 
                fork() for running klogd.
            - mv now attempts to do a rename, and will fall back to doing
                a copy only if the rename fails.
            - Syslogd now supports multiple concurrent connections
-       * Several fixes from Pavel Roskin <pavel_roskin@geocities.com>:
+       * Several fixes from Pavel Roskin <proski@gnu.org>:
            - Fixes to sort.  Removed "-g", fixed and added "-r"
            - Fixes to the makefile for handling "strip"
        * An initial telnet implementation was added by 
            Randolph Chung <tausq@debian.org>.
        * cp could, when copying symlinks, change permissions of the
            files pointed to by the symlinks.
-       * Several fixes from Pavel Roskin <pavel_roskin@geocities.com>:
+       * Several fixes from Pavel Roskin <proski@gnu.org>:
            - `chown' with 1 argument displayed the error incorrectly
            - `fdflush', `length' and `printf' crashed if run without arguments
            - `fdflush' tried to flush itself using *argv