From a4e55ab8407563ee1ecd74a6db0e2d6fec1059f9 Mon Sep 17 00:00:00 2001
From: Bernhard Reutner-Fischer
Date: Sat, 19 Apr 2008 09:33:22 +0000
Subject: [PATCH] - rotate some older new to oldnews
---
docs/busybox.net/news.html | 800 +---------------------------------
docs/busybox.net/oldnews.html | 799 +++++++++++++++++++++++++++++++++
2 files changed, 800 insertions(+), 799 deletions(-)
diff --git a/docs/busybox.net/news.html b/docs/busybox.net/news.html
index 3be1c2a76..90a628440 100644
--- a/docs/busybox.net/news.html
+++ b/docs/busybox.net/news.html
@@ -171,7 +171,7 @@ iproute_list_or_flush 3680 readhere 2308
- 21 March 2008 -- BusyBox stable releases
+ 21 March 2008 -- BusyBox old stable releases
Bugfix-only releases for four past branches. Links to locations
for future hot patches are in parentheses.
@@ -193,804 +193,6 @@ iproute_list_or_flush 3680 readhere 2308
the Software Freedom Law Center to report BusyBox license violations.
- 12 February 2008 -- BusyBox 1.9.1 (stable)
- BusyBox 1.9.1.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to fsck,
- iproute, mdev, mkswap, msh, nameif, stty, test, zcip.
- hush has `command` expansion re-enabled for NOMMU, although it is
- inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
- The plan is to make this less likely to bite people in future versions.
-
-
- 24 December 2007 -- BusyBox 1.9.0 (unstable)
- BusyBox 1.9.0.
- (svn,
- patches,
- how to add a patch)
-
- Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):
- text data bss dec hex filename
- 792796 978 9724 803498 c42aa busybox-1.8.2
- 783803 683 7508 791994 c15ba busybox-1.9.0
-
- Top 10 stack users:
-busybox-1.8.2: busybox-1.9.0:
-input_tab 10428 echo_dg 4116
-umount_main 8252 bb_full_fd_action 4112
-rtnl_talk 8240 discard_dg 4096
-xrtnl_dump_filter 8240 echo_stream 4096
-sendMTFValues 5316 discard_stream 4096
-mainSort 4700 find_list_entry2 4096
-mkfs_minix_main 4288 readlink_main 4096
-grave 4260 ipaddr_list_or_flush 3900
-unix_do_one 4156 iproute_list_or_flush 3680
-parse_prompt 4132 insmod_main 3152
-
-
- lash is deleted from this release. hush can be configured down to almost
- the same size, but it is significantly less buggy. It even works
- on NOMMU machines (interactive mode and backticks are not working on NOMMU,
- though). "lash" applet is still available, but it runs hush.
-
-
init has some changes in this release, please report if it causes
- problems for you.
-
-
Changes since previous release:
-
- - Build system improvements
-
- Testsuite additions
-
- Stack size reductions, code size reductions, data/bss reductions
-
- An option to prefer IPv4 address if host has both
-
- New applets: hd, sestatus
-
- Removed applets: lash
-
- hush: fixed a few bugs, wired up echo and test to be builtins
-
- init: simplify forking of children
-
- getty: special handling of '#' and '@' is removed
-
- [su]login: sanitize environment if called by non-root
-
- udhcpc: support "bad" servers which send oversized packets
- (Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
-
- udhcpc: -O option allows to specify which options to ask for
- (Stefan Hellermann <stefan at the2masters.de>)
-
- udhcpc: optionally check whether given IP is really free (by ARP ping)
- (Jonas Danielsson <jonas.danielsson at axis.com>)
-
- vi: now handles files with unlimited line length
-
- vi: speedup for huge line lengths
-
- vi: Del key works
-
- sed: support GNUism '\t'
-
- cp/mv/install: optionally use bigger buffer for bulk copying
-
- line editing: don't eat stack like crazy
-
- passwd: follows symlinked /etc/passwd
-
- renice: accepts priority with +N too
-
- netstat: wide output mode
-
- nameif: extended matching (Nico Erfurth <masta at perlgolf.de>)
-
- test: become NOFORK applet
-
- find: -iname (Alexander Griesser <alexander.griesser at lkh-vil.or.at>)
-
- df: -i option (show inode info) (Pascal Bellard <pascal.bellard at ads-lu.com>)
-
- hexdump: -R option (Pascal Bellard <pascal.bellard at ads-lu.com>)
-
-
-
- 23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)
- BusyBox 1.8.2.
- (svn,
- patches,
- how to add a patch)
- BusyBox 1.7.4.
- (svn,
- patches,
- how to add a patch)
-
- These are bugfix-only releases.
- 1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
- 1.7.4 contains a fix for inetd.
-
-
- 9 November 2007 -- BusyBox 1.8.1 (stable)
- BusyBox 1.8.1.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.
-
-
- 4 November 2007 -- BusyBox 1.8.0 (unstable)
- BusyBox 1.8.0.
- (svn,
- patches,
- how to add a patch)
-
- Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
-
-
Applets which had many changes since 1.7.x:
-
httpd:
-
- - does not clear environment, CGIs will see all environment variables which were set for httpd
-
- fix bug where we were trying to read more POSTDATA than content-length
-
- fix trivial bug (spotted by Alex Landau)
-
- optional support for partial downloads
-
- simplified CGI i/o loop (now it looks good to me)
-
- small auth and IPv6 fixes (Kim B. Heino <Kim.Heino at bluegiga.com>)
-
- support for proxying connection to other http server (by Alex Landau <landau_alex at yahoo.com>)
-
-
- top:
-
- - TOPMEM feature - 's(how sizes)' command
-
- don't wait before final bailout (try top -b -n1)
-
- fix for command line wrapping
-
-
- Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
-
-
Code and data size in comparison with 1.7.3:
-Equivalent .config, i386 uclibc static builds:
- text data bss dec hex filename
- 768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
- 759693 974 9420 770087 bc027 busybox-1.8.0/busybox
-
- New applets:
-
- - microcom: new applet by Vladimir Dronnikov <dronnikov at gmail.ru>
-
- kbd_mode: new applet by Loic Grenie <loic.grenie at gmail.com>
-
- bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
-
- pgrep, pkill: new applets by Loic Grenie <loic.grenie at gmail.com>
-
- setsebool: new applet (Yuichi Nakamura <ynakam at hitachisoft.jp>)
-
-
- Other changes since previous release (abridged):
-
- - cp: -r and -R imply -d (coreutils compat)
-
- cp: detect and prevent infinite recursion
-
- cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
-
- hdparm: reduce possibility of numeric overflow in -T
-
- hdparm: simplify timing measurement
-
- wget: -O FILE is allowed to overwrite existing file (compat)
-
- wget: allow dots in header field names
-
- telnetd: add -K option to close sessions as soon as child exits
-
- telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
-
- ed: large cleanup, add line editing
-
- hush: feeble attempt at making it more NOMMU-friendly
-
- hush: fix glob()
-
- hush: stop doing manual accounting of open fd's, kernel can do it for us
-
- adduser: implement -S and fix uid selection
-
- ash: fix prompt expansion (Natanael Copa <natanael.copa at gmail.com>)
-
- ash: revert "cat | jobs" fix, it causes more problems than good
-
- find: fix -xdev behavior in the presence of two or more nested mount points
-
- grep: fix grep -F -e str1 -e str2 (was matching str2 only)
-
- grep: optimization: stop on first -e match
-
- gunzip: support concatenated gz files
-
- inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
-
- install: 'support' (by ignoring) -v and -b
-
- install: fix bug in "install -c file dir" (tried to copy dir into dir too)
-
- ip: tunnel parameter parsing fix by Jean Wolter <jw5 at os.inf.tu-dresden.de>
-
- isrv: use monotonic_sec
-
- less: make 'f' key page forward
-
- libiproute: add missing break statements
-
- load_policy: update (Yuichi Nakamura <ynakam at hitachisoft.jp>)
-
- logger: fix a problem of losing all argv except first
-
- login: do reject wrong passwords with PAM auth
-
- losetup: support -f (Loic Grenie <loic.grenie at gmail.com>)
-
- fdisk: make fdisk compile on libc without llseek64
-
- libbb: by popular request allow PATH to be customized at build time
-
- mkswap: selinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
-
- mount: allow (and ignore) -i
-
- mount: ignore NFS bg option on NOMMU machines
-
- mount: mount helpers support (by Vladimir Dronnikov <dronnikov at gmail.ru>)
-
- passwd: handle Ctrl-C, restore termios on Ctrl-C
-
- passwd: SELinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
-
- ping: make -I ethN work too (-I addr already worked)
-
- ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
-
- read_line_input: fix it to not do any fancy editing if echoing is disabled
-
- run_parts: make it sort executables by name (required by API)
-
- runsv: do not use clock_gettime if !MONOTONIC_CLOCK
-
- runsvdir: fix "linear wait time" bug
-
- sulogin: remove alarm handling, it is redundant there
-
- svlogd: compat: svlogd -tt should timestamp stderr too
-
- syslogd: bail out if you see null read from Unix socket
-
- syslogd: do not need to poll(), we can just block in read()
-
- tail: work correctly on /proc files (Kazuo TAKADA <kztakada at sm.sony.co.jp>)
-
- tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau <landau_alex at yahoo.com>)
-
- tar: strip leading '/' BEFORE memorizing hardlink's name
-
- tftp: fix infinite retry bug
-
- umount: support (by ignoring) -i; style fixes
-
- unzip: fix endianness bugs
-
- vi: don't wait 50 ms before reading ESC sequences
-
- watchdog: allow millisecond spec (-t 250ms)
-
- zcip: fix unaligned trap on ARM
-
-
-
-
-
- 4 November 2007 -- BusyBox 1.7.3 (stable)
- BusyBox 1.7.3.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.
-
-
- 30 September 2007 -- BusyBox 1.7.2 (stable)
- BusyBox 1.7.2.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to install, find, login, httpd, runsvdir, chcon, setfiles, fdisk and line editing.
-
-
- 16 September 2007 -- BusyBox 1.7.1 (stable)
- BusyBox 1.7.1.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system.
-
-
- 24 August 2007 -- BusyBox 1.7.0 (unstable)
- BusyBox 1.7.0.
- (svn,
- patches,
- how to add a patch)
-
- Applets which had many changes since 1.6.x:
-
httpd:
-
- - works in standalone mode on NOMMU machines now (partly by Alex Landau <landau_alex at yahoo.com>)
-
- indexer example is rewritten in C
-
- optional support for error pages (by Pierre Metras <genepi at sympatico.ca>)
-
- stop reading headers using 1-byte reads
-
- new option -v[v]: prints client addresses, HTTP codes returned, URLs
-
- extended -p PORT to -p [IP[v6]:]PORT
-
- sendfile support (by Pierre Metras <genepi at sympatico.ca>)
-
- add support for Status: CGI header
-
- fix CGI handling bug (we were closing wrong fd)
-
- CGI I/O loop still doesn't look 100% ok to me...
-
-
- udhcp[cd]:
-
- - add -f "foreground" and -S "syslog" options
-
- fixed "ifupdown + udhcpc_without_pidfile_creation" bug
-
- new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson <mats at blue2net.com> (Blue2Net AB))
-
- consistently treat server_config.start/end IPs as host-order
-
- fix IP parsing for 64bit machines
-
- fix unsafe hton macro usage in read_opt()
-
- do not chdir to / when daemonizing
-
-
- top, ps, killall, pidof:
-
- - simpler loadavg processing
-
- truncate usernames to 8 chars
-
- fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
-
- improve /proc/PID/cmdinfo reading code
-
- use cmdline, not comm field (fixes problems with re-execed applets showing as processes with name "exe", and not being found by pidof/killall by applet name)
-
- reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
-
- make percentile (0.1%) calculations configurable
-
- add config option and code for global CPU% display
-
- reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
-
-
- Build system improvements: doesn't link against libraries we don't need,
- generates verbose link output and map file, allows for custom link
- scripts (useful for removing extra padding, among other things).
-
-
Code and data size in comparison with 1.6.1:
-Equivalent .config, i386 glibc dynamic builds:
- text data bss dec hex filename
- 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
- 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
- 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
-
-Same .config built against static uclibc:
- 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc
-
- Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
- test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
- runit/*, in libbb.
-
-
New applets:
-
- - pscan, expand, unexpand (from Tito <farmatito at tiscali.it>)
-
- setfiles, restorecon (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
-
- chpasswd (by Alexander Shishkin <virtuoso at slind.org>)
-
- slattach, ttysize
-
-
- Unfortunately, not much work is done on shells. This was mostly stalled
- by lack of time (read: laziness) on my part to learn how to adapt existing
- qemu-runnable image for a NOMMU architechture (available on qemu website)
- for local testing of cross-compiled busybox on my machine.
-
-
Other changes since previous release (abridged):
-
- - addgroup: disallow addgroup -g num user group; make -g 0 work (Tito <farmatito at tiscali.it>)
-
- adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa <natanael.copa at gmail.com>
-
- arping: -i should be -I, fixed
-
- ash: make "jobs | cat" work like in bash (was giving empty output)
-
- ash: recognize -l as --login equivalent; do not recognize +-login
-
- ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
-
- ash: fix SEGV if type has zero parameters
-
- awk: fix -F 'regex' bug (miscounted fields if last field is empty)
-
- catv: catv without arguments was trying to use environ as argv (Alex Landau <landau_alex at yahoo.com>)
-
- catv: don't die on open error (emit warning)
-
- chown/chgrp: completely match coreutils 6.8 wrt symlink handling
-
- correct_password: do not print "no shadow passwd..." message
-
- crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
-
- dd: fix bug where we assume count=INT_MAX when count is unspecified
-
- devfsd: sanitization by Tito <farmatito at tiscali.it>
-
- echo: fix non-fancy echo
-
- fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
-
- find: -context support for SELinux (KaiGai Kohei <kaigai at kaigai.gr.jp>)
-
- find: add conditional support for -maxdepth and -regex, make -size match GNU find
-
- find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
-
- fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
-
- grep: implement -m MAX_MATCHES, fix buglets with context printing
-
- grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon <mbizon at freebox.fr> (Freebox))
-
- hush: add missing dependencies (Maxime Bizon <mbizon at freebox.fr> (Freebox))
-
- hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
-
- ifconfig: make it work with ifaces with interface no. > 255
-
- ifup/ifdown: make location of ifstate configurable
-
- ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
-
- install: fix -s (strip) option, fix install a b /a/link/to/dir
-
- libbb: consolidate ARRAY_SIZE macro (Walter Harms <wharms at bfs.de>)
-
- libbb: make /etc/network parsing configurable. -200 bytes when off
-
- libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
-
- libbb: xioctl and friends by Tito <farmatito at tiscali.it>
-
- login: optional support for PAM
-
- login: make /etc/nologin support configurable (-240 bytes)
-
- login: ask passwords even for wrong usernames
-
- md5_sha1_sum: fix mishandling when run as /bin/md5sum
-
- mdev: add support for firmware loading
-
- mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
-
- modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN <yann.morin.1998 at anciens.enib.fr>)
-
- more: fixes by Tristan Schmelcher <tpkschme at engmail.uwaterloo.ca>
-
- nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
-
- passwd: fix bug "updating shadow even if user's record is in passwd"
-
- patch: fix -p -1 handling
-
- patch: fix bad line ending handling (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
-
- ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
-
- ping: fix incorrect handling of -I (Iouri Kharon <bc-info at styx.cabel.net>)
-
- ping: fix non-fancy ping6
-
- printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni <kalyanatejaswi at yahoo.co.in>)
-
- ps: fix -Z (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
-
- rpm: add optional support for bz2 data. +50 bytes of code
-
- rpm: fix bogus "package is not installed" case
-
- sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
-
- start_stop_daemon: NOMMU fixes by Alex Landau <landau_alex at yahoo.com>
-
- stat: fix option -Z SEGV
-
- strings: strings a b was processing a twice, fix that
-
- svlogd: fix timestamping, do not warn if config is missing
-
- syslogd, logread: get rid of head pointer, fix logread bug in the process
-
- syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
-
- tar: improve OLDGNU compat, make old SUN compat configurable
-
- test: fix testing primary expressions like '"-u" = "-u"'
-
- uudecode: fix to base64 decode by Jorgen Cederlof <jcz at google.com>
-
- vi: multiple fixes by Natanael Copa <natanael.copa at gmail.com>
-
- wget: fix bug in base64 encoding (bug 1404). +10 bytes
-
- wget: lift 256 chars limitation on terminal width
-
- wget, zcip: use monotonic_sec instead of gettimeofday
-
-
-
-
- 30 June 2007 -- BusyBox 1.6.1 (stable)
- BusyBox 1.6.1.
- (svn,
- patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to echo, hush, and wget.
-
-
- 1 June 2007 -- BusyBox 1.6.0 (unstable)
- BusyBox 1.6.0.
- (svn,
- patches,
- how to add a patch)
-
- Since this is a x.x.0 release, it probably does not deserve "stable"
- label. Please help making 1.6.1 stable by testing 1.6.0.
- Note that hush shell had many changes and (hopefully) is much improved now,
- but there is a possibility that it regressed in some obscure cases. Please
- report any such cases.
- lash users please note: lash is going to be deprecated in busybox 1.7.0
- and removed in the more distant future. Please migrate to hush.
- Memory usage has decreased, but we can do better still
- Other changes since previous release:
-
-- NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
-
- NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
-
- NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
-
- NOMMU: random fixes; compressed --help now works for NOMMU
-
- SELinux: load_policy applet
-
- [u]mount: extend -t option (Roy Marples <uberlord at gentoo.org>)
-
- addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
-
- adduser: don't bomb out if shadow password file doesn't exist (from Tito <farmatito at tiscali.it>)
-
- applet.c: do not even try to read config if run by real root; fix suid config handling
-
- ash: fix infinite loop on exit if tty is not there anymore
-
- ash: fix kill -l (by Mats Erik Andersson <mats.andersson64 at comhem.se>)
-
- ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson <mats.andersson64 at comhem.se>)
-
- awk: don't segfault on printf(%*s). Closes bug 1337
-
- awk: guard against empty environment
-
- awk: some 'lineno' vars were shorts, made them ints (code got smaller)
-
- cat: stop using stdio.h opens
-
- config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
-
- cryptpw: new applet (by Thomas Lundquist <lists at zelow.no>)
-
- cttyhack: new applet
-
- dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens <develop at cle-mens.de>)
-
- deluser: add optional support for removing users from groups (by Tito <farmatito at tiscali.it>)
-
- diff: fix SEGV (NULL deref) in diff -N
-
- diff: fix segfault on empty dirs (Peter Korsgaard <peter.korsgaard at barco.com>)
-
- dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
-
- dpkg: run_package_script() returns 0 if all ok and non-zero if failure. The result code was checked incorrectly in two places. (from Kim B. Heino <Kim.Heino at bluegiga.com>)
-
- dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
-
- dumpleases: getopt32()-ization (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
-
- e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
-
- ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
-
- ether-wake: save a few more bytes of code
-
- find: -group, -depth (Natanael Copa <natanael.copa at gmail.com>)
-
- find: add support for -delete, -path (by Natanael Copa)
-
- find: fix -prune. Add big comment about it
-
- find: improve usage text (Natanael Copa <natanael.copa at gmail.com>)
-
- find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
-
- find: un-DESKTOPize (Kai Schwenzfeier <niteblade at gmx.net>)
-
- find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov <lich at math.spbu.ru>)
-
- find_root_device: use lstat - don't follow links
-
- getopt32: fix llist_t options ordering. llist_rev is now unused
-
- getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson <mats.andersson64 at comhem.se>
-
- hdparm: fix multisector mode setting (from Toni Mirabete <amirabete at catix.cat>)
-
- hdparm: make -T -t code smaller (-194 bytes), and output prettier
-
- ifupdown: make it possible to use DHCP clients different from udhcp
-
- ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa <natanael.copa at gmail.com>
-
- ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
-
- ip: fix compilation if FEATURE_TR_CLASSES is off
-
- ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
-
- ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
-
- ip: set the scope properly. Thanks to Jean Wolter
-
- iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
-
- iproute: shrink a bit (-200 bytes)
-
- kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
-
- klogd: remove dependency on syslogd
-
- lash: "forking" applets are actually can be treated the same way as "non-forked". Also save a bit of space on trailing NULL array elements.
-
- lash: fix kill buglet (didn't properly recognize ESRCH)
-
- lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
-
- lash: recognize and use NOFORK applets
-
- less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less <HUGEFILE + [End] busy loop
-
- libbb: add xsendto, xunlink, xpipe
-
- libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
-
- libbb: make pidfile writing configurable
-
- libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
-
- libbb: rework NOMMU helper API so that it makes more sense and easier to use
-
- libiproute: audit callgraph, shortcut error paths into die() functions
-
- lineedit: do not try to open NULL history file
-
- lineedit: nuke two unused variables and code which sets them
-
- login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
-
- login: shrink login and set_environment by ~100 bytes
-
- mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
-
- mount: fix mounting of symlinks (mount from util-linux allows that)
-
- msh: data/bss reduction (more than 9k of it); fix "underscore bug" (a_b=1111 didn't work); fix obscure case with backticks and closed fd 1
-
- nc: port nc 1.10 to busybox
-
- netstat: fix for bogus state value for raw sockets
-
- netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
-
- nmeter: should die if stdout doesn't like him anymore
-
- patch: do not try to delete same file twice
-
- ping: fix wrong sign extension of packet id (bug 1373)
-
- ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
-
- run_parts: rewrite
-
- run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo <somlo at cmu.edu>
-
- sed: fix escaped newlines in -f
-
- split: new applet
-
- stat: remove superfluous bss user (flags) and manually unswitch some areas
-
- stty: fix option parsing bug (spotted by Sascha Hauer <s.hauer at pengutronix.de>)
-
- svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
-
- tail: fix SEGV on "tail -N"
-
- ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape <pape at smarden.org>, http://smarden.sunsite.dk/ipsvd/
-
- test: close bug 1371; plug a memory leak; code size reduction
-
- tftp: code diet, and I think retransmits were broken
-
- tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
-
- udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
-
- udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
-
- xargs: shrink code, ~80 bytes; simplify word list management
-
- zcip: make it work on NOMMU (+ improve NOMMU support machinery)
-
-
-
-
- 20 May 2007 -- BusyBox 1.5.1 (stable)
- BusyBox 1.5.1.
- (patches,
- how to add a patch)
-
- This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
- and sed.
-
-
- 23 March 2007 -- BusyBox 1.5.0 (unstable)
- BusyBox 1.5.0.
- (patches,
- how to add a patch)
-
- Since this is a x.x.0 release, it probably does not deserve "stable"
- label. Please help making 1.5.1 stable by testing 1.5.0.
- Notable changes since previous release:
-
- - find: added support for -user, -not, fixed -mtime, -mmin, -perm
-
- [de]archivers: merge common logic into one module
-
- ping[6]: unified code for both
-
- less: regex search improved
-
- ash: more readable code, testsuite added
-
- sed: several very obscure bugs fixed
-
- chown: -H, -L, -P support (required by POSIX)
-
- tar: handle (broken) checksums a-la Sun; tar restores mode again
-
- grep: implement -w, "implement" -a and -I by ignoring them
-
- cp: more sane behavior when overwriting existing files
-
- init: stop doing silly things with the console (-400 bytes)
-
- httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
-
- httpd: run interpreter for configured file extensions in any dir,
- not only in /cgi-bin/
-
- chrt: new applet
-
- SELinux: SELinux-related code and -Z option added to several applets,
- new SELinux-specific applets: chcon, runcon.
-
- Build system: produces link map, uses -Wwrite-strings to catch
- improper usage of string constants.
-
- Data and bss section usage audited and reduced - should help NOMMU
- targets.
-
- Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
- sv, printf, diff, awk, sort, dpkg, diff, tftp
-
- Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
- udhcpd, start_stop_daemon, cmp
-
- Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
- syslogd, swapon, runsv, svlogd, klogd
-
-
-
-
- 18 March 2007 -- BusyBox 1.4.2 (stable)
- BusyBox 1.4.2.
-
-
- This release includes only trivial fixes accumulated since 1.4.1.
-
-
-
- 25 January 2007 -- BusyBox 1.4.1 (stable)
- BusyBox 1.4.1.
- (patches)
-
- This release includes only trivial fixes accumulated since 1.4.0.
-
-
-
- 20 January 2007 -- BusyBox 1.4.0 (stable)
- BusyBox 1.4.0.
- (patches)
-
- Since this is a x.x.0 release, it probably is a bit less "stable"
- than usual.
- Changes since previous release:
-
- - e2fsprogs are mostly removed from busybox. Some smaller parts remain,
- the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
- it's too bloated. Really. I'm afraid it's about the only way we can
- ever get e2fsprogs cleaned up.
-
- less: many improvements. Now can display binary files
- (although I expect it to have trouble with displays where 8bit chars
- don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
- anymore. Less does not read entire input up-front. Reads input
- as it appears (yay!). Works rather nice as man pager. I recommend it
- for general use now.
-
- IPv6: generic support is in place, many networking applets are
- upgraded to be IPv6 capable. Probably some work remains, but it is
- already much better than what we had previously.
-
- arp: new applet (thanks to Eric Spakman).
-
- fakeidentd: non-forking standalone server part was taking ~90%
- of the applet. Factored it out (in fact, rewrote it).
-
- syslogd: mostly rewritten.
-
- decompress_unzip, gzip: sanitized a bit.
-
- sed: better hadling of NULs
-
- httpd: stop adding our own "Content-type:" to CGI output
-
- chown: user.grp works again.
-
- minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
- ps, ifupdown, time, su, stty, awk, ping[6], sort,...
-
-
-
-
- 20 January 2007 -- BusyBox 1.3.2 (stable)
- BusyBox 1.3.2.
-
- This release includes only one trivial fix accumulated since 1.3.1
-
-
-
- 27 December 2006 -- BusyBox 1.3.1 (stable)
- BusyBox 1.3.1.
- (patches)
-
- Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
-
-
-
- 14 December 2006 -- BusyBox 1.3.0 (stable)
- BusyBox 1.3.0.
- (patches)
-
- This release has CONFIG_DESKTOP option which enables features
- needed for busybox usage on desktop machine. For example, find, chmod
- and chown get several less frequently used options, od is significantly
- bigger but matches GNU coreutils, etc. Intended to eventually make
- busybox a viable alternative for "standard" utilities for slightly
- adventurous desktop users.
-
Changes since previous release:
-
- - find: taking many more of standard options
-
- ps: POSIX-compliant -o implemented
-
- cp: added -s, -l
-
- grep: added -r, fixed -h
-
- watch: make it exec child like standard one does (was totally
- incompatible)
-
- tar: fix limitations which were preventing bbox tar usage
- on big directories: long names and linknames, pax headers
- (Linux kernel tarballs have that). Fixed a number of obscure bugs.
- Raised max file limit (now 64Gb). Security fixes (/../ attacks).
-
- httpd: added -i (inetd), -f (foreground), support for
- directory indexer CGI (example is included), bugfixes.
-
- telnetd: fixed/improved IPv6 support, inetd+standalone support,
- other fixes. Useful IPv6 stuff factored out into libbb.
-
- runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
- (these are my personal favorite small-and-beautiful toys)
-
- minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
- fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
-
- Note that GnuPG key used to sign this release is different.
- 1.2.2.1 is also signed post-factum now. Sorry for the mess.
-
-
-
- 29 October 2006 -- BusyBox 1.2.2.1 (fix)
- BusyBox 1.2.2.1.
-
- Added compile-time warning that static linking against glibc
- produces buggy executables.
-
-
- 24 October 2006 -- BusyBox 1.2.2 (stable)
- It's a bit overdue, but
- here is
- BusyBox 1.2.2.
-
- This release has dozens of fixes backported from the ongoing development
- branch. There are a couple of bugfixes to sed, two fixes to documentation
- generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
- umount to report the right errno on failure and to umount block devices by
- name with newer kernels, fix mount to handle symlinks properly, make mdev
- delete device nodes when called for hotplug remove, fix a segfault
- in traceroute, a minor portability fix to md5sum option parsing, a build
- fix for httpd with old gccs, an options parsing tweak to hdparm, make test
- fail gracefully when getgroups() returns -1, fix a race condition in
- modprobe when two instances run at once (hotplug does this), make "tar xf
- foo.tar dir/dir" extract all subdirectories, make our getty initialize the
- terminal more like mingetty, an selinux build fix, an endianness fix in
- ping6, fix for zcip defending addresses, clean up some global variables in
- gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
- fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.
-
- As Linux Weekly News noted,
- this is my (Rob's) last release of BusyBox. The new maintainer is Denis
- Vlasenko, I'm off to do other things.
-
-
-
- 29 September 2006 -- New license email address.
- The email address gpl@busybox.net is now the recommended way to contact
- the Software Freedom Law Center to report BusyBox license violations.
-
- 31 July 2006 -- BusyBox 1.2.1 (stable)
- Since nobody seems to have objected too loudly over the weekend, I
- might as well point you all at
- Busybox
- 1.2.1, a bugfix-only release with no new features.
-
- It has three shell fixes (two to lash: going "var=value" without
- saying "export" should now work, plus a missing null pointer check, and
- one to ash when redirecting output to a file that fills up.) Fix three
- embarassing thinkos in the new dmesg command. Two build tweaks
- (dependencies for the compressed usage messages and running make in the
- libbb subdirectory). One fix to tar so it can extract git-generated
- tarballs (rather than barfing on the pax extensions). And a partridge
- in a pear... Ahem.
-
- But wait, there's more! A passwd changing fix so an empty
- gecos field doesn't trigger a false objection that the new passwd contains
- the gecos field. Make all our setuid() and setgid() calls check the return
- value in case somebody's using per-process resource limits that prevent
- a user from having too many processes (and thus prevent a process from
- switching away from root, in which case the process will now _die_ rather
- than continue with root privileges). A fix to adduser to make sure that
- /etc/group gets updated. And a fix to modprobe to look for modules.conf
- in the right place on 2.6 kernels.
-
- 30 June 2006 -- BusyBox 1.2.0
- The -devel branch has been stabilized and the result is
- Busybox
- 1.2.0. Lots of stuff changed, I need to work up a decent changelog
- over the weekend.
-
- I'm still experimenting with how long is best for the development
- cycle, and since we've got some largeish projects queued up I'm going to
- try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
- we fix enough bugs. :)
-
- Update: Here are the first few bug fixes that will go into 1.2.1.
-
- 17 May 2006 -- BusyBox 1.1.3 (stable)
- BusyBox
- 1.1.3 is another bugfix release. It makes passwd use salt, fixes a
- memory freeing bug in ls, fixes "build all sources at once" mode, makes
- mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
- background processes, makes patch work with patch hunks that don't have a
- timestamp, make less's text search a lot more robust (the old one could
- segfault), and fixes readlink -f when built against uClibc.
-
- Expect 1.2.0 sometime next month, which won't be a bugfix release.
-
- 10 April 2006 -- BusyBox 1.1.2 (stable)
- You can now download BusyBox 1.1.2, a bug fix release consisting of 11 patches
- backported from the development branch: Some build fixes, several fixes
- for mount and nfsmount, a fix for insmod on big endian systems, a fix for
- find -xdev, and a fix for comm. Check the file "changelog" in the tarball
- for more info.
-
- The next new development release (1.2.0) is slated for June. A 1.1.3
- will be released before then if more bug fixes crop up. (The new plan is
- to have a 1.x.0 new development release every 3 months, with 1.x.y stable
- bugfix only releases based on that as appropriate.)
-
- 27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc
- One issue Erik Andersen wanted to resolve when handing off BusyBox
- maintainership to Rob Landley was license enforcement. BusyBox and
- uClibc's existing license enforcement efforts (pro-bono representation
- by Erik's father's law firm, and the
- Hall of Shame), haven't
- scaled to match the popularity of the projects. So we put our heads
- together and did the obvious thing: ask Pamela Jones of
- Groklaw for suggestions. She
- referred us to the fine folks at softwarefreedom.org.
-
- As a result, we're pleased to announce that the
- Software Freedom Law Center
- has agreed to represent BusyBox and uClibc. We join a number of other
- free and open source software projects (such as
- X.org,
- Wine, and
- Plone
- in being represented by a fairly cool bunch of lawyers, which is not a
- phrase you get to use every day.
-
- 22 March 2006 -- BusyBox 1.1.1
- The new maintainer is Rob Landley, and the new release is BusyBox 1.1.1. Expect a "what's new" document in a few days. (Also, Erik and I have have another announcement pending...)
- Update: Rather than put out an endless stream of 1.1.1.x releases,
- the various small fixes have been collected together into a
- patch,
- and new fixes will be appended to that as needed. Expect 1.1.2 around
- June.
-
- 11 January 2006 -- 1.1.0 is out
- The new stable release is
- BusyBox
- 1.1.0. It has a number of improvements, including several new applets.
- (It also has a few rough spots,
- but we're trying out a "release early, release often" strategy to see how
- that works. Expect 1.1.1 sometime in March.)
Old News
Click here to read older news
diff --git a/docs/busybox.net/oldnews.html b/docs/busybox.net/oldnews.html
index 1017b6975..d6bd581f7 100644
--- a/docs/busybox.net/oldnews.html
+++ b/docs/busybox.net/oldnews.html
@@ -2,6 +2,805 @@
+ - 12 February 2008 -- BusyBox 1.9.1 (stable)
+
BusyBox 1.9.1.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to fsck,
+ iproute, mdev, mkswap, msh, nameif, stty, test, zcip.
+ hush has `command` expansion re-enabled for NOMMU, although it is
+ inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
+ The plan is to make this less likely to bite people in future versions.
+
+
+ - 24 December 2007 -- BusyBox 1.9.0 (unstable)
+
BusyBox 1.9.0.
+ (svn,
+ patches,
+ how to add a patch)
+
+ Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):
+ text data bss dec hex filename
+ 792796 978 9724 803498 c42aa busybox-1.8.2
+ 783803 683 7508 791994 c15ba busybox-1.9.0
+
+ Top 10 stack users:
+busybox-1.8.2: busybox-1.9.0:
+input_tab 10428 echo_dg 4116
+umount_main 8252 bb_full_fd_action 4112
+rtnl_talk 8240 discard_dg 4096
+xrtnl_dump_filter 8240 echo_stream 4096
+sendMTFValues 5316 discard_stream 4096
+mainSort 4700 find_list_entry2 4096
+mkfs_minix_main 4288 readlink_main 4096
+grave 4260 ipaddr_list_or_flush 3900
+unix_do_one 4156 iproute_list_or_flush 3680
+parse_prompt 4132 insmod_main 3152
+
+
+ lash is deleted from this release. hush can be configured down to almost
+ the same size, but it is significantly less buggy. It even works
+ on NOMMU machines (interactive mode and backticks are not working on NOMMU,
+ though). "lash" applet is still available, but it runs hush.
+
+
init has some changes in this release, please report if it causes
+ problems for you.
+
+
Changes since previous release:
+
+ - Build system improvements
+
- Testsuite additions
+
- Stack size reductions, code size reductions, data/bss reductions
+
- An option to prefer IPv4 address if host has both
+
- New applets: hd, sestatus
+
- Removed applets: lash
+
- hush: fixed a few bugs, wired up echo and test to be builtins
+
- init: simplify forking of children
+
- getty: special handling of '#' and '@' is removed
+
- [su]login: sanitize environment if called by non-root
+
- udhcpc: support "bad" servers which send oversized packets
+ (Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
+
- udhcpc: -O option allows to specify which options to ask for
+ (Stefan Hellermann <stefan at the2masters.de>)
+
- udhcpc: optionally check whether given IP is really free (by ARP ping)
+ (Jonas Danielsson <jonas.danielsson at axis.com>)
+
- vi: now handles files with unlimited line length
+
- vi: speedup for huge line lengths
+
- vi: Del key works
+
- sed: support GNUism '\t'
+
- cp/mv/install: optionally use bigger buffer for bulk copying
+
- line editing: don't eat stack like crazy
+
- passwd: follows symlinked /etc/passwd
+
- renice: accepts priority with +N too
+
- netstat: wide output mode
+
- nameif: extended matching (Nico Erfurth <masta at perlgolf.de>)
+
- test: become NOFORK applet
+
- find: -iname (Alexander Griesser <alexander.griesser at lkh-vil.or.at>)
+
- df: -i option (show inode info) (Pascal Bellard <pascal.bellard at ads-lu.com>)
+
- hexdump: -R option (Pascal Bellard <pascal.bellard at ads-lu.com>)
+
+
+
+ - 23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)
+
BusyBox 1.8.2.
+ (svn,
+ patches,
+ how to add a patch)
+ BusyBox 1.7.4.
+ (svn,
+ patches,
+ how to add a patch)
+
+ These are bugfix-only releases.
+ 1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
+ 1.7.4 contains a fix for inetd.
+
+
+ - 9 November 2007 -- BusyBox 1.8.1 (stable)
+
BusyBox 1.8.1.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.
+
+
+ - 4 November 2007 -- BusyBox 1.8.0 (unstable)
+
BusyBox 1.8.0.
+ (svn,
+ patches,
+ how to add a patch)
+
+ Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
+
+
Applets which had many changes since 1.7.x:
+
httpd:
+
+ - does not clear environment, CGIs will see all environment variables which were set for httpd
+
- fix bug where we were trying to read more POSTDATA than content-length
+
- fix trivial bug (spotted by Alex Landau)
+
- optional support for partial downloads
+
- simplified CGI i/o loop (now it looks good to me)
+
- small auth and IPv6 fixes (Kim B. Heino <Kim.Heino at bluegiga.com>)
+
- support for proxying connection to other http server (by Alex Landau <landau_alex at yahoo.com>)
+
+
+ top:
+
+ - TOPMEM feature - 's(how sizes)' command
+
- don't wait before final bailout (try top -b -n1)
+
- fix for command line wrapping
+
+
+ Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
+
+
Code and data size in comparison with 1.7.3:
+Equivalent .config, i386 uclibc static builds:
+ text data bss dec hex filename
+ 768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
+ 759693 974 9420 770087 bc027 busybox-1.8.0/busybox
+
+ New applets:
+
+ - microcom: new applet by Vladimir Dronnikov <dronnikov at gmail.ru>
+
- kbd_mode: new applet by Loic Grenie <loic.grenie at gmail.com>
+
- bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
+
- pgrep, pkill: new applets by Loic Grenie <loic.grenie at gmail.com>
+
- setsebool: new applet (Yuichi Nakamura <ynakam at hitachisoft.jp>)
+
+
+ Other changes since previous release (abridged):
+
+ - cp: -r and -R imply -d (coreutils compat)
+
- cp: detect and prevent infinite recursion
+
- cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
+
- hdparm: reduce possibility of numeric overflow in -T
+
- hdparm: simplify timing measurement
+
- wget: -O FILE is allowed to overwrite existing file (compat)
+
- wget: allow dots in header field names
+
- telnetd: add -K option to close sessions as soon as child exits
+
- telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
+
- ed: large cleanup, add line editing
+
- hush: feeble attempt at making it more NOMMU-friendly
+
- hush: fix glob()
+
- hush: stop doing manual accounting of open fd's, kernel can do it for us
+
- adduser: implement -S and fix uid selection
+
- ash: fix prompt expansion (Natanael Copa <natanael.copa at gmail.com>)
+
- ash: revert "cat | jobs" fix, it causes more problems than good
+
- find: fix -xdev behavior in the presence of two or more nested mount points
+
- grep: fix grep -F -e str1 -e str2 (was matching str2 only)
+
- grep: optimization: stop on first -e match
+
- gunzip: support concatenated gz files
+
- inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
+
- install: 'support' (by ignoring) -v and -b
+
- install: fix bug in "install -c file dir" (tried to copy dir into dir too)
+
- ip: tunnel parameter parsing fix by Jean Wolter <jw5 at os.inf.tu-dresden.de>
+
- isrv: use monotonic_sec
+
- less: make 'f' key page forward
+
- libiproute: add missing break statements
+
- load_policy: update (Yuichi Nakamura <ynakam at hitachisoft.jp>)
+
- logger: fix a problem of losing all argv except first
+
- login: do reject wrong passwords with PAM auth
+
- losetup: support -f (Loic Grenie <loic.grenie at gmail.com>)
+
- fdisk: make fdisk compile on libc without llseek64
+
- libbb: by popular request allow PATH to be customized at build time
+
- mkswap: selinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
+
- mount: allow (and ignore) -i
+
- mount: ignore NFS bg option on NOMMU machines
+
- mount: mount helpers support (by Vladimir Dronnikov <dronnikov at gmail.ru>)
+
- passwd: handle Ctrl-C, restore termios on Ctrl-C
+
- passwd: SELinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
+
- ping: make -I ethN work too (-I addr already worked)
+
- ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
+
- read_line_input: fix it to not do any fancy editing if echoing is disabled
+
- run_parts: make it sort executables by name (required by API)
+
- runsv: do not use clock_gettime if !MONOTONIC_CLOCK
+
- runsvdir: fix "linear wait time" bug
+
- sulogin: remove alarm handling, it is redundant there
+
- svlogd: compat: svlogd -tt should timestamp stderr too
+
- syslogd: bail out if you see null read from Unix socket
+
- syslogd: do not need to poll(), we can just block in read()
+
- tail: work correctly on /proc files (Kazuo TAKADA <kztakada at sm.sony.co.jp>)
+
- tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau <landau_alex at yahoo.com>)
+
- tar: strip leading '/' BEFORE memorizing hardlink's name
+
- tftp: fix infinite retry bug
+
- umount: support (by ignoring) -i; style fixes
+
- unzip: fix endianness bugs
+
- vi: don't wait 50 ms before reading ESC sequences
+
- watchdog: allow millisecond spec (-t 250ms)
+
- zcip: fix unaligned trap on ARM
+
+
+
+
+
+ - 4 November 2007 -- BusyBox 1.7.3 (stable)
+
BusyBox 1.7.3.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.
+
+
+ - 30 September 2007 -- BusyBox 1.7.2 (stable)
+
BusyBox 1.7.2.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to install, find, login, httpd, runsvdir, chcon, setfiles, fdisk and line editing.
+
+
+ - 16 September 2007 -- BusyBox 1.7.1 (stable)
+
BusyBox 1.7.1.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system.
+
+
+ - 24 August 2007 -- BusyBox 1.7.0 (unstable)
+
BusyBox 1.7.0.
+ (svn,
+ patches,
+ how to add a patch)
+
+ Applets which had many changes since 1.6.x:
+
httpd:
+
+ - works in standalone mode on NOMMU machines now (partly by Alex Landau <landau_alex at yahoo.com>)
+
- indexer example is rewritten in C
+
- optional support for error pages (by Pierre Metras <genepi at sympatico.ca>)
+
- stop reading headers using 1-byte reads
+
- new option -v[v]: prints client addresses, HTTP codes returned, URLs
+
- extended -p PORT to -p [IP[v6]:]PORT
+
- sendfile support (by Pierre Metras <genepi at sympatico.ca>)
+
- add support for Status: CGI header
+
- fix CGI handling bug (we were closing wrong fd)
+
- CGI I/O loop still doesn't look 100% ok to me...
+
+
+ udhcp[cd]:
+
+ - add -f "foreground" and -S "syslog" options
+
- fixed "ifupdown + udhcpc_without_pidfile_creation" bug
+
- new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson <mats at blue2net.com> (Blue2Net AB))
+
- consistently treat server_config.start/end IPs as host-order
+
- fix IP parsing for 64bit machines
+
- fix unsafe hton macro usage in read_opt()
+
- do not chdir to / when daemonizing
+
+
+ top, ps, killall, pidof:
+
+ - simpler loadavg processing
+
- truncate usernames to 8 chars
+
- fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
+
- improve /proc/PID/cmdinfo reading code
+
- use cmdline, not comm field (fixes problems with re-execed applets showing as processes with name "exe", and not being found by pidof/killall by applet name)
+
- reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
+
- make percentile (0.1%) calculations configurable
+
- add config option and code for global CPU% display
+
- reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
+
+
+ Build system improvements: doesn't link against libraries we don't need,
+ generates verbose link output and map file, allows for custom link
+ scripts (useful for removing extra padding, among other things).
+
+
Code and data size in comparison with 1.6.1:
+Equivalent .config, i386 glibc dynamic builds:
+ text data bss dec hex filename
+ 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
+ 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
+ 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
+
+Same .config built against static uclibc:
+ 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc
+
+ Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
+ test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
+ runit/*, in libbb.
+
+
New applets:
+
+ - pscan, expand, unexpand (from Tito <farmatito at tiscali.it>)
+
- setfiles, restorecon (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
+
- chpasswd (by Alexander Shishkin <virtuoso at slind.org>)
+
- slattach, ttysize
+
+
+ Unfortunately, not much work is done on shells. This was mostly stalled
+ by lack of time (read: laziness) on my part to learn how to adapt existing
+ qemu-runnable image for a NOMMU architechture (available on qemu website)
+ for local testing of cross-compiled busybox on my machine.
+
+
Other changes since previous release (abridged):
+
+ - addgroup: disallow addgroup -g num user group; make -g 0 work (Tito <farmatito at tiscali.it>)
+
- adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa <natanael.copa at gmail.com>
+
- arping: -i should be -I, fixed
+
- ash: make "jobs | cat" work like in bash (was giving empty output)
+
- ash: recognize -l as --login equivalent; do not recognize +-login
+
- ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
+
- ash: fix SEGV if type has zero parameters
+
- awk: fix -F 'regex' bug (miscounted fields if last field is empty)
+
- catv: catv without arguments was trying to use environ as argv (Alex Landau <landau_alex at yahoo.com>)
+
- catv: don't die on open error (emit warning)
+
- chown/chgrp: completely match coreutils 6.8 wrt symlink handling
+
- correct_password: do not print "no shadow passwd..." message
+
- crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
+
- dd: fix bug where we assume count=INT_MAX when count is unspecified
+
- devfsd: sanitization by Tito <farmatito at tiscali.it>
+
- echo: fix non-fancy echo
+
- fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
+
- find: -context support for SELinux (KaiGai Kohei <kaigai at kaigai.gr.jp>)
+
- find: add conditional support for -maxdepth and -regex, make -size match GNU find
+
- find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
+
- fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
+
- grep: implement -m MAX_MATCHES, fix buglets with context printing
+
- grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon <mbizon at freebox.fr> (Freebox))
+
- hush: add missing dependencies (Maxime Bizon <mbizon at freebox.fr> (Freebox))
+
- hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
+
- ifconfig: make it work with ifaces with interface no. > 255
+
- ifup/ifdown: make location of ifstate configurable
+
- ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
+
- install: fix -s (strip) option, fix install a b /a/link/to/dir
+
- libbb: consolidate ARRAY_SIZE macro (Walter Harms <wharms at bfs.de>)
+
- libbb: make /etc/network parsing configurable. -200 bytes when off
+
- libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
+
- libbb: xioctl and friends by Tito <farmatito at tiscali.it>
+
- login: optional support for PAM
+
- login: make /etc/nologin support configurable (-240 bytes)
+
- login: ask passwords even for wrong usernames
+
- md5_sha1_sum: fix mishandling when run as /bin/md5sum
+
- mdev: add support for firmware loading
+
- mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
+
- modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN <yann.morin.1998 at anciens.enib.fr>)
+
- more: fixes by Tristan Schmelcher <tpkschme at engmail.uwaterloo.ca>
+
- nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
+
- passwd: fix bug "updating shadow even if user's record is in passwd"
+
- patch: fix -p -1 handling
+
- patch: fix bad line ending handling (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
+
- ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
+
- ping: fix incorrect handling of -I (Iouri Kharon <bc-info at styx.cabel.net>)
+
- ping: fix non-fancy ping6
+
- printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni <kalyanatejaswi at yahoo.co.in>)
+
- ps: fix -Z (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
+
- rpm: add optional support for bz2 data. +50 bytes of code
+
- rpm: fix bogus "package is not installed" case
+
- sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
+
- start_stop_daemon: NOMMU fixes by Alex Landau <landau_alex at yahoo.com>
+
- stat: fix option -Z SEGV
+
- strings: strings a b was processing a twice, fix that
+
- svlogd: fix timestamping, do not warn if config is missing
+
- syslogd, logread: get rid of head pointer, fix logread bug in the process
+
- syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
+
- tar: improve OLDGNU compat, make old SUN compat configurable
+
- test: fix testing primary expressions like '"-u" = "-u"'
+
- uudecode: fix to base64 decode by Jorgen Cederlof <jcz at google.com>
+
- vi: multiple fixes by Natanael Copa <natanael.copa at gmail.com>
+
- wget: fix bug in base64 encoding (bug 1404). +10 bytes
+
- wget: lift 256 chars limitation on terminal width
+
- wget, zcip: use monotonic_sec instead of gettimeofday
+
+
+
+
+ - 30 June 2007 -- BusyBox 1.6.1 (stable)
+
BusyBox 1.6.1.
+ (svn,
+ patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to echo, hush, and wget.
+
+
+ - 1 June 2007 -- BusyBox 1.6.0 (unstable)
+
BusyBox 1.6.0.
+ (svn,
+ patches,
+ how to add a patch)
+
+ Since this is a x.x.0 release, it probably does not deserve "stable"
+ label. Please help making 1.6.1 stable by testing 1.6.0.
+ Note that hush shell had many changes and (hopefully) is much improved now,
+ but there is a possibility that it regressed in some obscure cases. Please
+ report any such cases.
+ lash users please note: lash is going to be deprecated in busybox 1.7.0
+ and removed in the more distant future. Please migrate to hush.
+ Memory usage has decreased, but we can do better still
+ Other changes since previous release:
+
+- NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
+
- NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
+
- NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
+
- NOMMU: random fixes; compressed --help now works for NOMMU
+
- SELinux: load_policy applet
+
- [u]mount: extend -t option (Roy Marples <uberlord at gentoo.org>)
+
- addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
+
- adduser: don't bomb out if shadow password file doesn't exist (from Tito <farmatito at tiscali.it>)
+
- applet.c: do not even try to read config if run by real root; fix suid config handling
+
- ash: fix infinite loop on exit if tty is not there anymore
+
- ash: fix kill -l (by Mats Erik Andersson <mats.andersson64 at comhem.se>)
+
- ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson <mats.andersson64 at comhem.se>)
+
- awk: don't segfault on printf(%*s). Closes bug 1337
+
- awk: guard against empty environment
+
- awk: some 'lineno' vars were shorts, made them ints (code got smaller)
+
- cat: stop using stdio.h opens
+
- config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
+
- cryptpw: new applet (by Thomas Lundquist <lists at zelow.no>)
+
- cttyhack: new applet
+
- dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens <develop at cle-mens.de>)
+
- deluser: add optional support for removing users from groups (by Tito <farmatito at tiscali.it>)
+
- diff: fix SEGV (NULL deref) in diff -N
+
- diff: fix segfault on empty dirs (Peter Korsgaard <peter.korsgaard at barco.com>)
+
- dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
+
- dpkg: run_package_script() returns 0 if all ok and non-zero if failure. The result code was checked incorrectly in two places. (from Kim B. Heino <Kim.Heino at bluegiga.com>)
+
- dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
+
- dumpleases: getopt32()-ization (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
+
- e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
+
- ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
+
- ether-wake: save a few more bytes of code
+
- find: -group, -depth (Natanael Copa <natanael.copa at gmail.com>)
+
- find: add support for -delete, -path (by Natanael Copa)
+
- find: fix -prune. Add big comment about it
+
- find: improve usage text (Natanael Copa <natanael.copa at gmail.com>)
+
- find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
+
- find: un-DESKTOPize (Kai Schwenzfeier <niteblade at gmx.net>)
+
- find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov <lich at math.spbu.ru>)
+
- find_root_device: use lstat - don't follow links
+
- getopt32: fix llist_t options ordering. llist_rev is now unused
+
- getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson <mats.andersson64 at comhem.se>
+
- hdparm: fix multisector mode setting (from Toni Mirabete <amirabete at catix.cat>)
+
- hdparm: make -T -t code smaller (-194 bytes), and output prettier
+
- ifupdown: make it possible to use DHCP clients different from udhcp
+
- ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa <natanael.copa at gmail.com>
+
- ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
+
- ip: fix compilation if FEATURE_TR_CLASSES is off
+
- ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
+
- ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
+
- ip: set the scope properly. Thanks to Jean Wolter
+
- iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
+
- iproute: shrink a bit (-200 bytes)
+
- kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
+
- klogd: remove dependency on syslogd
+
- lash: "forking" applets are actually can be treated the same way as "non-forked". Also save a bit of space on trailing NULL array elements.
+
- lash: fix kill buglet (didn't properly recognize ESRCH)
+
- lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
+
- lash: recognize and use NOFORK applets
+
- less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less <HUGEFILE + [End] busy loop
+
- libbb: add xsendto, xunlink, xpipe
+
- libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
+
- libbb: make pidfile writing configurable
+
- libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
+
- libbb: rework NOMMU helper API so that it makes more sense and easier to use
+
- libiproute: audit callgraph, shortcut error paths into die() functions
+
- lineedit: do not try to open NULL history file
+
- lineedit: nuke two unused variables and code which sets them
+
- login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
+
- login: shrink login and set_environment by ~100 bytes
+
- mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
+
- mount: fix mounting of symlinks (mount from util-linux allows that)
+
- msh: data/bss reduction (more than 9k of it); fix "underscore bug" (a_b=1111 didn't work); fix obscure case with backticks and closed fd 1
+
- nc: port nc 1.10 to busybox
+
- netstat: fix for bogus state value for raw sockets
+
- netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
+
- nmeter: should die if stdout doesn't like him anymore
+
- patch: do not try to delete same file twice
+
- ping: fix wrong sign extension of packet id (bug 1373)
+
- ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
+
- run_parts: rewrite
+
- run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo <somlo at cmu.edu>
+
- sed: fix escaped newlines in -f
+
- split: new applet
+
- stat: remove superfluous bss user (flags) and manually unswitch some areas
+
- stty: fix option parsing bug (spotted by Sascha Hauer <s.hauer at pengutronix.de>)
+
- svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
+
- tail: fix SEGV on "tail -N"
+
- ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape <pape at smarden.org>, http://smarden.sunsite.dk/ipsvd/
+
- test: close bug 1371; plug a memory leak; code size reduction
+
- tftp: code diet, and I think retransmits were broken
+
- tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
+
- udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
+
- udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
+
- xargs: shrink code, ~80 bytes; simplify word list management
+
- zcip: make it work on NOMMU (+ improve NOMMU support machinery)
+
+
+
+
+ - 20 May 2007 -- BusyBox 1.5.1 (stable)
+
BusyBox 1.5.1.
+ (patches,
+ how to add a patch)
+
+ This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
+ and sed.
+
+
+ - 23 March 2007 -- BusyBox 1.5.0 (unstable)
+
BusyBox 1.5.0.
+ (patches,
+ how to add a patch)
+
+ Since this is a x.x.0 release, it probably does not deserve "stable"
+ label. Please help making 1.5.1 stable by testing 1.5.0.
+ Notable changes since previous release:
+
+ - find: added support for -user, -not, fixed -mtime, -mmin, -perm
+
- [de]archivers: merge common logic into one module
+
- ping[6]: unified code for both
+
- less: regex search improved
+
- ash: more readable code, testsuite added
+
- sed: several very obscure bugs fixed
+
- chown: -H, -L, -P support (required by POSIX)
+
- tar: handle (broken) checksums a-la Sun; tar restores mode again
+
- grep: implement -w, "implement" -a and -I by ignoring them
+
- cp: more sane behavior when overwriting existing files
+
- init: stop doing silly things with the console (-400 bytes)
+
- httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
+
- httpd: run interpreter for configured file extensions in any dir,
+ not only in /cgi-bin/
+
- chrt: new applet
+
- SELinux: SELinux-related code and -Z option added to several applets,
+ new SELinux-specific applets: chcon, runcon.
+
- Build system: produces link map, uses -Wwrite-strings to catch
+ improper usage of string constants.
+
- Data and bss section usage audited and reduced - should help NOMMU
+ targets.
+
- Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
+ sv, printf, diff, awk, sort, dpkg, diff, tftp
+
- Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
+ udhcpd, start_stop_daemon, cmp
+
- Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
+ syslogd, swapon, runsv, svlogd, klogd
+
+
+
+
+ - 18 March 2007 -- BusyBox 1.4.2 (stable)
+
BusyBox 1.4.2.
+
+
+ This release includes only trivial fixes accumulated since 1.4.1.
+
+
+
+ - 25 January 2007 -- BusyBox 1.4.1 (stable)
+
BusyBox 1.4.1.
+ (patches)
+
+ This release includes only trivial fixes accumulated since 1.4.0.
+
+
+
+ - 20 January 2007 -- BusyBox 1.4.0 (stable)
+
BusyBox 1.4.0.
+ (patches)
+
+ Since this is a x.x.0 release, it probably is a bit less "stable"
+ than usual.
+ Changes since previous release:
+
+ - e2fsprogs are mostly removed from busybox. Some smaller parts remain,
+ the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
+ it's too bloated. Really. I'm afraid it's about the only way we can
+ ever get e2fsprogs cleaned up.
+
- less: many improvements. Now can display binary files
+ (although I expect it to have trouble with displays where 8bit chars
+ don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
+ anymore. Less does not read entire input up-front. Reads input
+ as it appears (yay!). Works rather nice as man pager. I recommend it
+ for general use now.
+
- IPv6: generic support is in place, many networking applets are
+ upgraded to be IPv6 capable. Probably some work remains, but it is
+ already much better than what we had previously.
+
- arp: new applet (thanks to Eric Spakman).
+
- fakeidentd: non-forking standalone server part was taking ~90%
+ of the applet. Factored it out (in fact, rewrote it).
+
- syslogd: mostly rewritten.
+
- decompress_unzip, gzip: sanitized a bit.
+
- sed: better hadling of NULs
+
- httpd: stop adding our own "Content-type:" to CGI output
+
- chown: user.grp works again.
+
- minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
+ ps, ifupdown, time, su, stty, awk, ping[6], sort,...
+
+
+
+
+ - 20 January 2007 -- BusyBox 1.3.2 (stable)
+
BusyBox 1.3.2.
+
+ This release includes only one trivial fix accumulated since 1.3.1
+
+
+
+ - 27 December 2006 -- BusyBox 1.3.1 (stable)
+
BusyBox 1.3.1.
+ (patches)
+
+ Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
+
+
+
+ - 14 December 2006 -- BusyBox 1.3.0 (stable)
+
BusyBox 1.3.0.
+ (patches)
+
+ This release has CONFIG_DESKTOP option which enables features
+ needed for busybox usage on desktop machine. For example, find, chmod
+ and chown get several less frequently used options, od is significantly
+ bigger but matches GNU coreutils, etc. Intended to eventually make
+ busybox a viable alternative for "standard" utilities for slightly
+ adventurous desktop users.
+
Changes since previous release:
+
+ - find: taking many more of standard options
+
- ps: POSIX-compliant -o implemented
+
- cp: added -s, -l
+
- grep: added -r, fixed -h
+
- watch: make it exec child like standard one does (was totally
+ incompatible)
+
- tar: fix limitations which were preventing bbox tar usage
+ on big directories: long names and linknames, pax headers
+ (Linux kernel tarballs have that). Fixed a number of obscure bugs.
+ Raised max file limit (now 64Gb). Security fixes (/../ attacks).
+
- httpd: added -i (inetd), -f (foreground), support for
+ directory indexer CGI (example is included), bugfixes.
+
- telnetd: fixed/improved IPv6 support, inetd+standalone support,
+ other fixes. Useful IPv6 stuff factored out into libbb.
+
- runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
+ (these are my personal favorite small-and-beautiful toys)
+
- minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
+ fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
+
+ Note that GnuPG key used to sign this release is different.
+ 1.2.2.1 is also signed post-factum now. Sorry for the mess.
+
+
+
+ - 29 October 2006 -- BusyBox 1.2.2.1 (fix)
+
BusyBox 1.2.2.1.
+
+ Added compile-time warning that static linking against glibc
+ produces buggy executables.
+
+
+ - 24 October 2006 -- BusyBox 1.2.2 (stable)
+
It's a bit overdue, but
+ here is
+ BusyBox 1.2.2.
+
+ This release has dozens of fixes backported from the ongoing development
+ branch. There are a couple of bugfixes to sed, two fixes to documentation
+ generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
+ umount to report the right errno on failure and to umount block devices by
+ name with newer kernels, fix mount to handle symlinks properly, make mdev
+ delete device nodes when called for hotplug remove, fix a segfault
+ in traceroute, a minor portability fix to md5sum option parsing, a build
+ fix for httpd with old gccs, an options parsing tweak to hdparm, make test
+ fail gracefully when getgroups() returns -1, fix a race condition in
+ modprobe when two instances run at once (hotplug does this), make "tar xf
+ foo.tar dir/dir" extract all subdirectories, make our getty initialize the
+ terminal more like mingetty, an selinux build fix, an endianness fix in
+ ping6, fix for zcip defending addresses, clean up some global variables in
+ gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
+ fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.
+
+ As Linux Weekly News noted,
+ this is my (Rob's) last release of BusyBox. The new maintainer is Denis
+ Vlasenko, I'm off to do other things.
+
+
+
+ - 29 September 2006 -- New license email address.
+
The email address gpl@busybox.net is now the recommended way to contact
+ the Software Freedom Law Center to report BusyBox license violations.
+
+ - 31 July 2006 -- BusyBox 1.2.1 (stable)
+
Since nobody seems to have objected too loudly over the weekend, I
+ might as well point you all at
+ Busybox
+ 1.2.1, a bugfix-only release with no new features.
+
+ It has three shell fixes (two to lash: going "var=value" without
+ saying "export" should now work, plus a missing null pointer check, and
+ one to ash when redirecting output to a file that fills up.) Fix three
+ embarassing thinkos in the new dmesg command. Two build tweaks
+ (dependencies for the compressed usage messages and running make in the
+ libbb subdirectory). One fix to tar so it can extract git-generated
+ tarballs (rather than barfing on the pax extensions). And a partridge
+ in a pear... Ahem.
+
+ But wait, there's more! A passwd changing fix so an empty
+ gecos field doesn't trigger a false objection that the new passwd contains
+ the gecos field. Make all our setuid() and setgid() calls check the return
+ value in case somebody's using per-process resource limits that prevent
+ a user from having too many processes (and thus prevent a process from
+ switching away from root, in which case the process will now _die_ rather
+ than continue with root privileges). A fix to adduser to make sure that
+ /etc/group gets updated. And a fix to modprobe to look for modules.conf
+ in the right place on 2.6 kernels.
+
+ - 30 June 2006 -- BusyBox 1.2.0
+
The -devel branch has been stabilized and the result is
+ Busybox
+ 1.2.0. Lots of stuff changed, I need to work up a decent changelog
+ over the weekend.
+
+ I'm still experimenting with how long is best for the development
+ cycle, and since we've got some largeish projects queued up I'm going to
+ try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
+ we fix enough bugs. :)
+
+ Update: Here are the first few bug fixes that will go into 1.2.1.
+
+ - 17 May 2006 -- BusyBox 1.1.3 (stable)
+
BusyBox
+ 1.1.3 is another bugfix release. It makes passwd use salt, fixes a
+ memory freeing bug in ls, fixes "build all sources at once" mode, makes
+ mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
+ background processes, makes patch work with patch hunks that don't have a
+ timestamp, make less's text search a lot more robust (the old one could
+ segfault), and fixes readlink -f when built against uClibc.
+
+ Expect 1.2.0 sometime next month, which won't be a bugfix release.
+
+ - 10 April 2006 -- BusyBox 1.1.2 (stable)
+
You can now download BusyBox 1.1.2, a bug fix release consisting of 11 patches
+ backported from the development branch: Some build fixes, several fixes
+ for mount and nfsmount, a fix for insmod on big endian systems, a fix for
+ find -xdev, and a fix for comm. Check the file "changelog" in the tarball
+ for more info.
+
+ The next new development release (1.2.0) is slated for June. A 1.1.3
+ will be released before then if more bug fixes crop up. (The new plan is
+ to have a 1.x.0 new development release every 3 months, with 1.x.y stable
+ bugfix only releases based on that as appropriate.)
+
+ - 27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc
+
One issue Erik Andersen wanted to resolve when handing off BusyBox
+ maintainership to Rob Landley was license enforcement. BusyBox and
+ uClibc's existing license enforcement efforts (pro-bono representation
+ by Erik's father's law firm, and the
+ Hall of Shame), haven't
+ scaled to match the popularity of the projects. So we put our heads
+ together and did the obvious thing: ask Pamela Jones of
+ Groklaw for suggestions. She
+ referred us to the fine folks at softwarefreedom.org.
+
+ As a result, we're pleased to announce that the
+ Software Freedom Law Center
+ has agreed to represent BusyBox and uClibc. We join a number of other
+ free and open source software projects (such as
+ X.org,
+ Wine, and
+ Plone
+ in being represented by a fairly cool bunch of lawyers, which is not a
+ phrase you get to use every day.
+
+ - 22 March 2006 -- BusyBox 1.1.1
+
The new maintainer is Rob Landley, and the new release is BusyBox 1.1.1. Expect a "what's new" document in a few days. (Also, Erik and I have have another announcement pending...)
+ Update: Rather than put out an endless stream of 1.1.1.x releases,
+ the various small fixes have been collected together into a
+ patch,
+ and new fixes will be appended to that as needed. Expect 1.1.2 around
+ June.
+
+ - 11 January 2006 -- 1.1.0 is out
+
The new stable release is
+ BusyBox
+ 1.1.0. It has a number of improvements, including several new applets.
+ (It also has a few rough spots,
+ but we're trying out a "release early, release often" strategy to see how
+ that works. Expect 1.1.1 sometime in March.)
+
- 31 October 2005 -- 1.1.0-pre1
The development branch of busybox is stable enough for wider testing, so
you can now