5cbdd712f5
quickly run out. Also disable init's SIGHUP handler during shutdown. -Erik
395 lines
19 KiB
Plaintext
395 lines
19 KiB
Plaintext
0.42
|
|
* Made tar creation support in busybox tar optional.
|
|
* You no longer _have_ to put a "-" in front of tar options.
|
|
* Tar could inadvertently change permissions and ownership on
|
|
certain directories pointed to by symlinks.
|
|
* Made grep and grep -h do the right thing wrt printing
|
|
the file name (it failed to print files names in many cases).
|
|
* Fix a namespace aliasing problem wereby if du was built in, the
|
|
symlink for both du and dutmp would be installed, or then rm was
|
|
built in, the symlinks for both rm and rmmod would be installed.
|
|
* Added a closelog() to init.c after loging -- fix thanks to
|
|
Taketoshi Sano <kgh12351@nifty.ne.jp>
|
|
* Rewrote and simplified logger. Added the "-t" option, and made it
|
|
behave itself a bit better.
|
|
* Optional support contributed by Ben Collins <bcollins@debian.org>
|
|
for the kernel init chroot patch by Werner Almesberger, which
|
|
allows init to chroot to a new device, and umount the old one.
|
|
* Fixed bug that wouldn't let one chown a symlink -- it would
|
|
always dereference before. -beppu
|
|
* Fixed a bug where init could have reference already freed memory.
|
|
Found and fixed by Taketoshi Sano <kgh12351@nifty.ne.jp>
|
|
* Several contributions from Friedrich Vedder <fwv@myrtle.lahn.de>
|
|
* added (and documented) "-n" option for head -
|
|
* Cleanup for a number of usage messages -- also
|
|
contributed Friedrich Vedder <fwv@myrtle.lahn.de>
|
|
* Cosmetic fix to busybox.c (Don't print a comma at the
|
|
end of line if there are no more application names).
|
|
* Fixed a stupid bug in "head" option handling ("head -n" would segfault).
|
|
* Moved commonly used functions "xmalloc()" and "exit()"
|
|
to utility.c (with proper #ifdef's).
|
|
* Created a tiny tail implementation, removing -c, -q, -v, and making
|
|
tail -f work only with a single file. This reduced tail
|
|
from 6k to 2.4k. The bigger/more featured tail can still be
|
|
had by disabling BB_FEATURE_SIMPLE_TAIL in dusybox.defs.h
|
|
* Ping now falls back to doing the right thing if /etc/protocols
|
|
turns up missing.
|
|
* Fixed mount and umount. Previously they could leak loop device
|
|
allocations, causing the system to quickly run out. Fix for umount
|
|
by Ben Collins <bcollins@debian.org>, and mount was fixed by me.
|
|
|
|
|
|
-Erik Andersen
|
|
|
|
0.41
|
|
* New Apps: wc, hostid, logname, tty, whoami, yes -- all contributed
|
|
by Edward Betts <edward@debian.org>
|
|
* Fixed a bug in both cp and mv preventing 'cp foo/README bar'
|
|
type commands (file in a directory to another directory)
|
|
from working.
|
|
* Fixed a logger bug that caused garbage to be written to the syslog
|
|
(unless you used busybox syslog, which hid the bug). Thanks
|
|
to Alex Holden <alex@linuxhacker.org> for the fix.
|
|
* /bin/true and /bin/false were echoing a blank line when run. Now fixed.
|
|
* mkdir -p would print an error when asked to mkdir an existing dir
|
|
with no interveining subdirectories.
|
|
* Fixed "syslogd -O" so that it works.
|
|
* Added -o loop option for mount, and support in umount for loop
|
|
devices. Support is toggled by MOUNT_LOOP feature -- Ben Collins
|
|
<bcollins@debian.org>
|
|
* Several fixes from Marco Pantaleoni <panta@prosa.it>
|
|
* compile in fullWrite() not only if BB_TAR is defined, but also
|
|
if BB_CP or BB_MV are (fullWrite() is referenced by copyFile())
|
|
* add some compiler optimizations to further reduce executable size
|
|
(as a side note, on my machines the largest code is generated by
|
|
gcc 2.95.2 with -Os ! The smallest by plain gcc 2.7.2.3 with -O2
|
|
-m386 ...)
|
|
* Compile no longer fails if busybox.def.h defines BB_FEATURE_LINUXRC
|
|
but not BB_INIT. (init_main used to be referenced, but not compiled)
|
|
* Fixed a bug in setting TERM for serial console support. TERM now
|
|
defaults to "ansi" for serial consoles.
|
|
* Fixed a bug in handling the CONSOLE env. variable for serial consoles.
|
|
|
|
-Erik Andersen, Jan 15, 2000
|
|
|
|
0.40
|
|
* New Apps: sort, uniq. -beppu
|
|
* New Apps: lsmod, rmmod -erik
|
|
* New Apps: fbset contributed by Randolph Chung <tausq@debian.org>.
|
|
* New App:: loadacm contributed by Peter Novodvorsky <petya@logic.ru>
|
|
for loading application character maps for Unicode fonts.
|
|
* 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
|
|
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 failure of 'logger -p'. -erik
|
|
* Added the -s option to du -beppu
|
|
* Re-worked the source tree a bit so it will compile under glibc 2.0.7
|
|
with the 2.0.x Linux kernel.
|
|
* Added 'grep -q' thanks to a patch from "Konstantin Boldyshev"
|
|
<konst@voshod.com>.
|
|
* Grep -i previously failed on UPPER CASE patterns due to a silly
|
|
regexp implementation bug that is now fixed.
|
|
* Fixed a bug where tar would set, and then clear SGID and SUID bits.
|
|
* Fixed a bug where tar would not set the user and group on device
|
|
special files.
|
|
* Fixed a bug where tar would not restore the time to files.
|
|
* Fixed a major security problem with tar -- it changed ownership
|
|
of any file pointed to by a symlink to 777 (like say libc....)
|
|
Ouch!!!
|
|
* cp and mv were very broken when moving directories. I have rewritten
|
|
them so they should now work as expected.
|
|
* sed now supports addresses (numeric or regexp, with negation) and
|
|
has an append command, thanks to Marco Pantaleoni <panta@prosa.it>
|
|
* Fixed dmesg. It wasn't parsing its options (-n or -s) properly.
|
|
* Some cosmetic fixes to ls output formatting to make it behave more
|
|
like GNU ls.
|
|
* Fixed a stupid segfault in kill.
|
|
* Several fixes from Friedrich Vedder <fwv@myrtle.lahn.de>:
|
|
- Added gunzip -t, removed gunzip.c dead code,
|
|
- fixed several typos
|
|
- Glibc 2.0.7 and libc5 compile fixes
|
|
* Fixed a bug where 'mknod --help' would segfault.
|
|
|
|
|
|
-Erik Andersen, Jan 07, 2000
|
|
|
|
0.39
|
|
* New Apps: ping, hostname, and mkfifo contributed by Randolph Chung
|
|
<tausq@debian.org>. 3 items off the TODO list!
|
|
* I wrote free (just calls "cat /proc/meminfo").
|
|
* Added tail, based on tail from GNU textutils-1.19, but adjusted
|
|
to suit my evil purposes. Costs 6k. I'll make it smaller sometime.
|
|
* on reboot, init called 'umount -a -n', which caused errors
|
|
when BB_MTAB was not enabled. Changed to 'umount -a',
|
|
which does the right thing.
|
|
* init will now try to run /sbin/getty if it is present (for easy
|
|
integration with the about-to-be-released tinylogin.)
|
|
* kill now behaves itself properly, added 'kill -l' to list signals
|
|
* 'ls -l' was failing on long directories, since my_getid was leaking
|
|
one file descriptor per file. Oops.
|
|
* Fixed rebooting from init. I'd accidently left some debugging code in
|
|
which blocked reboots.
|
|
* Fixed reboot, halt (and added poweroff) such that they handle it when
|
|
init is not at PID 1 (like when running in an initrd).
|
|
* Added a prelinary du implementation. Some parameter parsing
|
|
stuff still needs to be added. -beppu (John Beppu <beppu@lineo.com>)
|
|
* Implemented tee. -beppu
|
|
* Implemented head. -beppu
|
|
|
|
-Erik Andersen, Dec 10, 1999
|
|
|
|
0.38
|
|
* Fixed a segfault in 'umount -a' when a badly formed /etc/fstab
|
|
file existed.
|
|
* df will not exit on error, but will stat all mounted filesystems.
|
|
* Fixed tar so uid/gid/permissions on extracted tarballs will be correct.
|
|
* Fixed find -name so it properly uses shell wildcard patterns
|
|
(i.e. `*', `?', and `[]') instead of regular expressions, which
|
|
was causing some confusing and unexpected behavior.
|
|
* Added klogd to syslogd, so now the log will contain both system and
|
|
kernel messages.
|
|
* syslogd now creates the /dev/log socket to make sure it is there, and
|
|
is actually a socket with the right permissions.
|
|
* I've taken a first step to making busybox not need the /proc
|
|
filesystem. Most apps don't need it. Those that _require_ it,
|
|
will complain if you enable them when you disable
|
|
BB_FEATURE_USE_PROCFS.
|
|
|
|
-Erik Andersen, Dec 5, 1999
|
|
|
|
0.37
|
|
* Wrote a micro syslogd, and a logger util (to log things to the syslog
|
|
from the command line or scripts) With both compiled in, costs 4k.
|
|
* Fixed 'make install' so symlinks are installed in their proper locations.
|
|
* Changed the build system slightly so that features can now be enabled
|
|
or disabled from the busybox.defs.h header file, without trying to
|
|
compile in a source file named after that featue (unless that file exists).
|
|
* Several options are now moved into busybox.defs.h
|
|
* Now 'rm -R' and 'rm -r' both work.
|
|
* dd now properly handles input beyond 1 block from stdin.
|
|
* Fixed a bug where tar unpacked everything a directories. Moved some code
|
|
from createPath into mkdir where it belonged, thereby making tar work properly.
|
|
* Fixed an off-by-one bug in cat. Given a list of file it wouldn't cat out the
|
|
last file in the list.
|
|
* Fixed 'ls -ln' so numeric group/uid are presented properly, and fixed 'ls -l'
|
|
so when uid/gid is not in /etc/{passwd,group} the numeric group/uid are
|
|
presented properly.
|
|
* Also added a TODO.
|
|
|
|
|
|
-Erik Andersen, Nov 25, 1999
|
|
|
|
0.36
|
|
* fixed dd so it properly defaults to stdin and stdout when no
|
|
if= and of= are set (fix thanks to Eric Delaunay).
|
|
* Don't try to close the file descriptor of a pipein tar. (fix also from
|
|
Eric Delaunay).
|
|
* Made createPath be quiet (again thanks to Eric Delaunay).
|
|
* If BB_CONSOLE_CMD_IF_RC_SCRIPT_EXITS is defined, then whatever
|
|
command you define it as will be run if the init script exits.
|
|
* Updated install.sh to make it more robust (thanks to Adam Di Carlo)
|
|
* NFS support added to mount by Eric Delaunay. It costs 10k when compiled
|
|
in, but that is still a big win for those that use NFS.
|
|
* Made 'rm -f' be silent for non-existant files (thanks to Eric Delaunay).
|
|
* changed zcat.c to gunzip.c. It now obeys the principle of least surprise
|
|
and acts as god intended gunzip and zcat to act. They answer --help and
|
|
obey the '-c' flag.
|
|
* Fixed a bug in mv which caused it to not move files when the destination
|
|
was a directory.
|
|
* Fixed a decimal-instead-of-octal bug causing mkdir to make directories
|
|
with very wrong permissions.
|
|
* chmod would overwrite file permissions instead of modifying them.
|
|
Now it properly modifies permissions.
|
|
* Init now sends warnings destined for the console to /dev/console to ensure
|
|
they show up on whatever the active console it. Otherwise important
|
|
messages (for example that the system is rebooting) were not seen when
|
|
switched to a different VT.
|
|
|
|
-Erik Andersen, Nov 17, 1999
|
|
|
|
0.35
|
|
* gzip now obeys the principle of least surprise and acts like god intended
|
|
(i.e. it accepts a file name, answers --help, and obeys the '-c' flag
|
|
and only then outputs to stdout).
|
|
* Fixed more.c to compile autowidth on sparc and set initial winsize
|
|
to 0,0 in case the TIOCGWINSZ ioctl fails. Fix thanks to Eric Delaunay.
|
|
* Fixed tar so it now works as expected (it had TRUE/FALSE backwards)
|
|
* tar now accepts --help
|
|
* chmod, chown, and chgrp usage now works
|
|
* General usage (i.e. --help) cleanups for most apps
|
|
* umount now parses options correctly
|
|
* tar can now unpack tarballs containing device special files,
|
|
sockets, and fifos (though it can't pack them up) thanks
|
|
to Matt Porter. Creating archives containing these is still
|
|
left to the interested student.
|
|
* fixed up the license in more.c to properly point to Bruce Perens.
|
|
|
|
-Erik Andersen, Nov 11, 1999
|
|
|
|
0.34
|
|
* ls -l now displays link names outside the current directory,
|
|
Patch thanks to Eric Delaunay
|
|
* init now properly handles sparc serial consoles and does a
|
|
better job of finding the real console device rather than using
|
|
/dev/console which doesn't support job control. Patch also
|
|
thanks to Eric Delaunay.
|
|
* more started to read from stdin after the last file was finished, and
|
|
options were not parsed correctly (fix thanks to Eric Delaunay).
|
|
* more will now use the terminal size if BB_FEATURE_AUTOWIDTH is on.
|
|
* rm wouldn't remove a symlink unless the symlink was valid. This was
|
|
a side effect of the busybox 0.32 recursiveAction() fix. Things
|
|
should now work correctly.
|
|
* grep wouldn't grep stdin. Now it does.
|
|
* sed wouldn't sed stdin. Now it does.
|
|
* sed was appending a \n to the end of lines with replacements.
|
|
Now it doesn't do that.
|
|
* ls -l now bypasses libc6 nss when displaying user/group names.
|
|
Now uses my_getpwuid and my_getgrgid.
|
|
|
|
-Erik Andersen, Nov 8, 1999
|
|
|
|
0.33
|
|
* Fixed a bug where init could hang instead of rebooting.
|
|
* Removed some debugging noise from init.c
|
|
* Fixed ln so it works now (it was very broken).
|
|
* Fixed df so it won't segfault when there is no /etc/fstab,
|
|
* If BB_MTAB is not defined, df and mount will whine if /etc/fstab
|
|
is not installed (since they cannot fixup "/dev/root" to
|
|
state the real root device name)
|
|
* merged some redundant code from mtab.c/df.c into utility.c
|
|
|
|
-Erik Andersen, Nov 5, 1999
|
|
|
|
0.32
|
|
* More changes -- many thanks to Lineo for paying me to work on
|
|
busybox. If you have any problems please let me know ASAP
|
|
at andersen@lineo.com or andersee@debian.org
|
|
* usage() now prints the BusyBox version. This will help folks
|
|
realize that they are not in Kansas anymore.
|
|
* Fixed mkdir -m option so that it works.
|
|
* kill segfaulted w/o any arguments. Now it doesn't do that.
|
|
* kill wasn't properly accepting signal names. It does now.
|
|
* Added new apps chvt and deallocvt (I should probably add open)
|
|
* Major rewrite of init.c. Code is now readable by mere mortals IMHO.
|
|
* Wrote sed -- weighs only 1.8k (5.8k with full regular expressions!).
|
|
* Fixed a stupid seg-fault in sync
|
|
* Fixed mount -- mount -a failed to parse and apply mount options
|
|
* Fixed umount -n (patch thanks to Matthew Grant <grantma@anathoth.gen.nz>)
|
|
* umount -a no longer umounts /proc
|
|
* Added BB_MTAB, allowing (at the cost of ~1.5k and the need for a rw /etc)
|
|
folks to use a real /etc/mtab file instead of a symlink to /proc/mounts.
|
|
mount, and umount will add/remove entries and df will now use /etc/mtab
|
|
if BB_MTAB is defined.
|
|
* Fixed a nice bug in recursiveAction() which caused it to infinitely
|
|
hunt through /proc/../fd/* creating new file descriptors if it
|
|
followed the /dev/fd link over to /proc. recursiveAction() now
|
|
lstat's the file when followLinks==FALSE so it won't follow links
|
|
as the name suggests. Fix thanks to Matt Porter <porter@debian.org>.
|
|
|
|
|
|
-Erik Andersen, Nov 4, 1999
|
|
|
|
0.31
|
|
* I added a changelog for version 0.30.
|
|
* adjusted find internals to make it smaller, and removed
|
|
some redundancy.
|
|
* Fixed a segfault in ps when /etc/passwd or /etc/group
|
|
are absent. Now will warn you and carry on.
|
|
* Added in optional _real_ regular expression support (to be
|
|
the basis for a future sed utility). When compiled in
|
|
it adds 3.9k, but makes grep much more capable.
|
|
* Checked out using nftw(3) for recursive stuff, but unfortunatly
|
|
it wasn't supported before GNU libc 2.1, and some folks use
|
|
glibc 2.0.7 since it is much smaller than that latest and greatest.
|
|
|
|
-Erik Andersen, Oct 21, 1999
|
|
|
|
0.30
|
|
Major changes -- lots of stuff rewritten. Many thanks to Lineo for
|
|
paying me to make these updates. If you have any problems with busybox,
|
|
or notice any bugs -- please let me know so I can fix it. These
|
|
changes include:
|
|
|
|
Core Changes:
|
|
* busybox can now invoke apps in two ways: via symlinks to the
|
|
busybox binary, and as 'busybox [function] [arguments]...'
|
|
* When invoked as busybox, the list of currently compiled in
|
|
functions is printed out (no this is not bloat -- the list
|
|
has to be there anyway to map invocation name to function).
|
|
* busybox no longer parses command lines for apps or displays their
|
|
usage info. Each app gets to handle (or not handle) this for
|
|
itself.
|
|
* Eliminated monadic, dyadic, descend, block_device, and
|
|
postprocess. It was cumbersome to have so many programs
|
|
cobbled together in this way. Without them, the app is much
|
|
more granular.
|
|
* All shared code now lives in utility.c, and is properly
|
|
ifdef'ed to be only included for those apps requiring it.
|
|
* Eliminated struct FileInfo (the basis of monadic, dyadic, etc)
|
|
so now each app has the function prototype of (da-dum):
|
|
extern int foo_main(int argc, char** argv);
|
|
which speeds integration of new apps.
|
|
* Adjusted the Makefile to make it easier to
|
|
{en|dis}able debugging.
|
|
* Changed default compiler optimization to -Os
|
|
(optimize for smaller binaries).
|
|
|
|
App Changes:
|
|
* To cope with the new app function prototype and the removal of
|
|
monadic, dyadic, etc, the following apps were re-written:
|
|
* cat - Works same as always.
|
|
* chgrp, chmod, chown - rewrite. Combined into a single
|
|
source file. Absorbed patches from Enrique Zanardi <ezanard@debian.org>
|
|
that removes the dependency on libc6 libnss* libraries.
|
|
* cp - Can now do 'cp -a' can can copy devices,
|
|
pipes, symlinks, as well as recursive or non-recursive dir copies.
|
|
* fdflush - adjusted to remove dependancy on struct FileInfo.
|
|
* find - Now includes some basic regexp matching
|
|
which will be the basic of a future mini-sed.
|
|
* ln - Same functionality.
|
|
* mkdir - Added -p flag to feature set.
|
|
* mv - rewrite.
|
|
* rm - Added -f flag to feature set.
|
|
* rmdir - Same functionality.
|
|
* swapon, swapoff - Combined into a single binary. No longer
|
|
uses /etc/swaps. swap{on|off} -a uses /etc/fstab instead.
|
|
* touch - Same functionality.
|
|
* date - adjusted with a patch from Matthew Grant <grantma@anathoth.gen.nz>
|
|
to accomodate glibc timezone support. I then ripped out GNU getopt.
|
|
* mkswap -- new version merged from util-linux. Can now make >128Meg swaps.
|
|
* Replaced the old and star, unstar, and tarcat with the tar
|
|
implementation from sash. Now tar behaves as god intended
|
|
it to (i.e. tar -xvf <file> and tar -cf <file> <dir> work).
|
|
* dd -- rewritten. Can with with files, stdin, stdout.
|
|
* Added the following new apps:
|
|
* loadfont -- added from debian boot floppies
|
|
* chroot -- added based on a patch from Paolo Molaro <lupus@lettere.unipd.it>
|
|
* grep -- I just wrote it. Only matches simple strings
|
|
* ps -- I just wrote it. Has _no_ options at all, but works.
|
|
* fsck_minix, mkfs_minix -- added from util-linux, but I ripped out
|
|
internationalization and such to make them smaller.
|
|
* sfdisk -- Added from util-linux (minus internationalization and such).
|
|
* Probably some other changes that I forgot to document...
|
|
|
|
-Erik Andersen, Oct 20, 1999
|
|
|
|
0.29
|
|
This version was a messy pre-alpha. stay away or it will bite you.
|
|
-Erik Andersen, Sep 24, 1999
|
|
|
|
0.28
|
|
mini-netcat (mnc) rewritten.
|
|
|
|
0.27
|
|
Mount now supports -a, and -t auto.
|
|
Mount now updates mtab correctly for 'ro'.
|
|
More checks screen rows size, outputs bytes percentage.
|
|
Printf added as module.
|
|
0.26
|
|
Touch now creates files. -c option for no create.
|
|
|