<!--#include file="header.html" -->
-
<ul>
- <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
- <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
- 1.1.3</a> 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.</p>
-
- <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
-
- <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
- <p>You can now download <a href="http://busybox.net/downloads/busybox-1.1.2.tar.bz2">BusyBox 1.1.2</a>, 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.</p>
-
- <p>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.)</p>
-
- <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
- <p>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
- <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), 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
- <a href="http://www.groklaw.net">Groklaw</a> for suggestions. She
- referred us to the fine folks at softwarefreedom.org.</p>
- <p>As a result, we're pleased to announce that the
- <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
- has agreed to represent BusyBox and uClibc. We join a number of other
- free and open source software projects (such as
- <a href="http://lwn.net/Articles/141806/">X.org</a>,
- <a href="http://lwn.net/Articles/135413/">Wine</a>, and
- <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
- in being represented by a fairly cool bunch of lawyers, which is not a
- phrase you get to use every day.</p>
-
- <li><b>22 March 2006 -- BusyBox 1.1.1</b>
- <p>The new maintainer is Rob Landley, and the new release is <a href="http://busybox.net/downloads/busybox-1.1.1.tar.bz2">BusyBox 1.1.1</a>. Expect a "what's new" document in a few days. (Also, Erik and I have have another announcement pending...)</p>
- <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
- the various small fixes have been collected together into a
- <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
- and new fixes will be appended to that as needed. Expect 1.1.2 around
- June.</p>
+ <li>
+ <p>We want to thank the following companies which are providing support for the BusyBox project:
+ <ul>
+ <li>AOE media, a <a href="http://www.aoemedia.com/typo3-development.html">
+ TYPO3 development agency</a> contributes financially.</li>
+ <li><a href="http://www.analog.com/en/">Analog Devices, Inc.</a> provided
+ a <a href="http://docs.blackfin.uclinux.org/doku.php?id=bf537_quick_start">
+ Blackfin development board</a> free of charge.
+ <a href="http://www.analog.com/blackfin">Blackfin</a>
+ is a NOMMU processor, and its availability for testing is invaluable.
+ If you are an embedded device developer,
+ please note that Analog Devices has entire Linux distribution available
+ for download for this board. Visit
+ <a href="http://blackfin.uclinux.org/">http://blackfin.uclinux.org/</a>
+ for more information.
+ </li>
+ </ul>
+ </p>
</li>
- <li><b>11 January 2006 -- 1.1.0 is out</b>
- <p>The new stable release is
- <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
- 1.1.0</a>. It has a number of improvements, including several new applets.
- (It also has <a href="http://www.busybox.net/lists/busybox/2006-January/017733.html">a few rough spots</a>,
- but we're trying out a "release early, release often" strategy to see how
- that works. Expect 1.1.1 sometime in March.)</p>
-
- <li><b>31 October 2005 -- 1.1.0-pre1</b>
- <p>The development branch of busybox is stable enough for wider testing, so
- you can now
- <a href="http://www.busybox.net/downloads/busybox-1.1.0-pre1.tar.bz2">download</a>,
- the first prerelease of 1.1.0. This prerelease includes a lot of
- <a href="http://www.busybox.net/downloads/BusyBox.html">new
- functionality</a>: new applets, new features, and extensive rewrites of
- several existing applets. This prerelease should be noticeably more
- <a href="http://www.opengroup.org/onlinepubs/009695399/">standards
- compliant</a> than earlier versions of busybox, although we're
- still working out the <a href="http://bugs.busybox.net">bugs</a>.</p>
-
- <li><b>16 August 2005 -- 1.01 is out</b>
-
- <p>A new stable release (<a href="http://www.busybox.net/downloads/busybox-1.01.tar.bz2">BusyBox
- 1.01</a>) is now available for download, containing over a hundred
- <a href="http://www.busybox.net/lists/busybox/2005-August/015424.html">small
- fixes</a> that have cropped up since the 1.00 release.</p>
-
- <li><b>13 January 2005 -- Bug and Patch Tracking</b><p>
-
- Bug reports sometimes get lost when posted to the mailing list. The
- developers of BusyBox are busy people, and have only so much they can keep
- in their brains at a time. In my case, I'm lucky if I can remember my own
- name, much less a bug report posted last week... To prevent your bug report
- from getting lost, if you find a bug in BusyBox, please use the
- <a href="http://bugs.busybox.net/">shiny new Bug and Patch Tracking System</a>
- to post all the gory details.
+ <li><b>21 August 2008 -- BusyBox 1.12.0 (unstable), BusyBox 1.11.2 (stable)</b>
+ <p><a href="http://busybox.net/downloads/busybox-1.12.0.tar.bz2">BusyBox 1.12.0</a>.
+ (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_12_stable/">svn</a>,
+ <a href="http://busybox.net/downloads/fixes-1.12.0/">patches</a>,
+ <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
+ <p><a href="http://busybox.net/downloads/busybox-1.11.2.tar.bz2">BusyBox 1.11.2</a>.
+ (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/">svn</a>,
+ <a href="http://busybox.net/downloads/fixes-1.11.2/">patches</a>,
+ <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
+
+ <p>Sizes of busybox-1.11.2 and busybox-1.12.0 (with equivalent config, static uclibc build):<pre>
+ text data bss dec hex filename
+ 829687 617 7052 837356 cc6ec busybox-1.11.2/busybox
+ 822961 594 6832 830387 cabb3 busybox-1.12.0/busybox
+</pre>
+
+ <p>New applets: rdev (Grant Erickson), setfont, showkey (both by Vladimir)
+
+ <p>Most significant changes since previous release (please report any regression):
+ <ul>
+ <li>ash: bash compat: "shift $BIGNUM" is equivalent to "shift 1"</li>
+ <li>ash: dont allow e.g. exec <&10 to attach to script's fd! </li>
+ <li>ash: fix a bug where redirection fds were not closed afterwards. optimize close+fcntl(DUPFD) into dup2</li>
+ <li>ash: fix segfault in "command -v"</li>
+ <li>ash: fix very weak $RANDOM generator</li>
+ <li>ash: prevent exec NN>&- from closing fd used for script reading</li>
+ <li>ash: teach ash about 123>file. It could take only 0..9 before</li>
+ <li>hush: fix a case where "$@" must expand to no word at all</li>
+ <li>hush: fix mishandling of a'b'c=fff as assignments. They are not</li>
+ <li>hush: fix non-detection of builtins and applets in "v=break; ...; $v; ..." case</li>
+ <li>hush: fix "while false; ..." exitcode; add testsuites</li>
+ <li>hush: support "case...esac" statements (~350 bytes of code)</li>
+ <li>hush: support "break [N]" and "continue [N]" statements</li>
+ <li>hush: support "for if in do done then; do echo $if; done" case</li>
+ <li>hush: support "for v; do ... done" syntax (implied 'in "$@"')</li>
+ <li>hush: support $_NUMBERS variable names</li>
+ <li>libbb: unified config parser (by Vladimir). This change affected many applets</li>
+ </ul>
+
+ <p>Other changes:
+ <ul>
+ <li>libbb: dump: do not use uninitialized memory (closes bug 4364)</li>
+ <li>libbb: fix bb_strtol[l]'s check for "-" (closes bug 4174)</li>
+ <li>libbb: fix --help to not affect "test --help"</li>
+ <li>libbb: fix mishandling of "all argv are opts" in getopt32()</li>
+ <li>libbb: getopt32() should not ever touch argv[0] (even read)</li>
+ <li>libbb: introduce and use xrealloc_vector</li>
+ <li>libbb: [x]fopen_for_{read,write} introduced and used (by Vladimir)</li>
+ <li>lineedit: fix use-after-free</li>
+ <li>libunarchive: refactor handling of archived files. "tar f file.tar.lzma" now works too</li>
+ <li>bb_strtoXXX: close bug 4174 (potential use of buf[-1])</li>
+ <li>open_transformer: don't leak file descriptor</li>
+ <li>open_transformer: fix bug of calling exit instead of _exit</li>
+ <li>arp: without -H type, assume "ether" (closes bug 4564)</li>
+ <li>ar: reuse existing ar unpacking code</li>
+ <li>awk: fix a case with multiple -f options. Simplify -f file reading. </li>
+ <li>build system: introduce and use FAST_FUNC: regparm on i386, otherwise no-op</li>
+ <li>bunzip2: fix an uncompression error (by Rob Landley rob AT landley.net)</li>
+ <li>b[un]zip2, g[un]zip: unlink destination if -f is given (closes bug 3854)</li>
+ <li>comm: almost total rewrite</li>
+ <li>cpio: fix -m to actually work as expected (by Pascal Bellard)</li>
+ <li>cpio: internalize archive_xread_all_eof, add a few paranoia checks for corrupted cpio files</li>
+ <li>cpio: make long opts depend only on ENABLE_GETOPT_LONG</li>
+ <li>cpio: on unpack, limit filename length to 8k</li>
+ <li>cpio: support some long options</li>
+ <li>crond: use execlp instead of execl</li>
+ <li>cut: fix buffer overflow (closes bug 4544)</li>
+ <li>envdir: fix "envdir" (no params at all) and "envdir dir" cases</li>
+ <li>findfs: make it use setuid-ness of busybox binary</li>
+ <li>fsck: use getmntent_r instead of open-coded parsing (by Vladimir)</li>
+ <li>fuser: a bit of safety in scanf</li>
+ <li>grep: option to use GNU regex matching instead of POSIX one. This fixes problems with NULs in files being scanned, but costs +800 bytes</li>
+ <li>halt: signal init regardless of ENABLE_INIT</li>
+ <li>httpd: add homedir directive specially for (and by) Walter Harms wharms AT bfs.de</li>
+ <li>ifupdown: /etc/network/interfaces can have comments with leading blanks</li>
+ <li>ifupdown: fixes for custom MAC address (by Wade Berrier wberrier AT gmail.com)</li>
+ <li>ifupdown: fixes for shutdown of DHCP-managed interfaces (by Wade Berrier wberrier AT gmail.com)</li>
+ <li>inetd: do not trash errno in signal handlers; in CHLD handler, stop looping through services when pid is found</li>
+ <li>insmod: users report that "|| defined(__powerpc__)" is missing</li>
+ <li>install: do not chown intermediate directories with install -d (by Natanael Copa)</li>
+ <li>install: fix long option not taking params (closes bug 4584)</li>
+ <li>lpd,lpr: send/receive ACKs after filenames, not only after file bodies</li>
+ <li>ls: fix a bug where we may use uninintialized variable</li>
+ <li>man: add handling of "man links", by Ivana Varekova varekova AT redhat.com</li>
+ <li>man: fix a case when a full pathname to manpage is given</li>
+ <li>man: fix inverted cat/man bool variable</li>
+ <li>man: fix missed NULL termination of an array</li>
+ <li>man: mimic "no manual entry for 'bogus'" message and exitcode</li>
+ <li>man: support cat pages too (by Jason Curl jcurlnews AT arcor.de)</li>
+ <li>man: teach it to use .lzma if requested by .config</li>
+ <li>mdev: check for "/block/" substring for block dev detection</li>
+ <li>mdev: do not complain if mdev.conf does not exist</li>
+ <li>mdev: if device was moved at creation, at removal correctly remove it from moved location and also remove symlinks to it</li>
+ <li>mdev: support for serializing hotplug</li>
+ <li>mdev, init: use shared code for fd sanitization</li>
+ <li>mkdir: fix "uname 0222; mkdir -p foo/bar" case (by Doug Graham dgraham AT nortel.com)</li>
+ <li>modprobe: support for /etc/modprobe.d (by Timo Teras)</li>
+ <li>modprobe: use buffering line reads (fgets()) instead of reads()</li>
+ <li>modutils: optional modprobe-small (by Vladimir), 15kb smaller than standard one</li>
+ <li>mount: support for "-o mand" and "[no]relatime"</li>
+ <li>mount: support nfs mount option "nordiplus" (by Octavian Purdila opurdila AT ixiacom.com)</li>
+ <li>mount: support "relatime" / "norelatime"</li>
+ <li>mount: testsuite for "-o mand"</li>
+ <li>msh: fix "while... continue; ..." (closes bug 3884)</li>
+ <li>mv: fix a case when we move dangling symlink across mountpoints</li>
+ <li>netstat: optional -p support (by L. Gabriel Somlo somlo AT cmu.edu)</li>
+ <li>nmeter: fix read past the end of a buffer (closes bug 4594)</li>
+ <li>od, hexdump: fix bug where xrealloc may move pointer, leaving other pointers dangling (closes bug 4104)</li>
+ <li>pidof/killall: allow find_pid_by_name to find running processes started as scripts_with_name_longer_than_15_bytes.sh (closes bug 4054)</li>
+ <li>printf: do not print garbage on "%Ld" (closes bug 4214)</li>
+ <li>printf: fix %b, fix several bugs in %*.*, fix compat issues with aborting too early, support %zd; expand testsuite</li>
+ <li>printf: protect against bogus format specifiers (closes bug 4184)</li>
+ <li>sendmail: updates from Vladimir:</li>
+ <li>sendmail: do not discard all headers</li>
+ <li>sendmail: do not ignore CC; accept to: and cc: case-insensitively. +20 bytes</li>
+ <li>sendmail: fixed mail recipient address</li>
+ <li>sendmail: fixed SEGV if sender address is missed</li>
+ <li>sendmail: use HOSTNAME instead of HOST when no server is explicitly specified</li>
+ <li>sleep: if FANCY && DESKTOP, support fractional seconds, minutes, hours and so on (coreutils compat)</li>
+ <li>ssd: CLOSE_EXTRA_FDS in MMU case too</li>
+ <li>ssd: do not stat -x EXECUTABLE, it is not needed anymore</li>
+ <li>ssd: fix -a without -x case</li>
+ <li>ssd: use $PATH</li>
+ <li>tar: fix handling of tarballs with symlinks with size field != 0</li>
+ <li>tar: handle autodetection for tiny .tar.gz files too, simplify autodetection</li>
+ <li>taskset: fix some careless code in both fancy and non-fancy cases. -5 bytes for fancy, +5 for non-fancy</li>
+ <li>tee: fix infinite looping on open error (echo asd | tee "")</li>
+ <li>tee: "-" is a name for stdout, handle it that way</li>
+ <li>telnetd: fix issue file printing</li>
+ <li>test: fix parser to prefer binop over unop, as coreutils does</li>
+ <li>testsuite: uniformly use $ECHO with -n -e</li>
+ <li>time: don't segfault with no arguments</li>
+ <li>touch: support -r REF_FILE if ENABLE_DESKTOP (needed for blackfin compile)</li>
+ <li>tr: fix "access past the end of a string" bug 4354</li>
+ <li>tr: fix "tr [=" case (closes bug 4374)</li>
+ <li>tr: fix yet another access past the end of a string (closes bug 4374)</li>
+ <li>unlzma: fix memory leak (by Pascal Bellard)</li>
+ <li>vi: fix reversed checks for underflow</li>
+ <li>vi: using array data after it fell out of scope is stupid</li>
+ <li>xargs: fix -e default to match newer GNU xargs, add SUS mandated -E (closes bug 4414)</li>
+ <li>other fixes and code size reductions in many applets</li>
+ </ul>
<p>
-
- The same applies to patches... Regardless of whether your patch
- is a bug fix or adds spiffy new features, please post your patch
- to the Bug and Patch Tracking System to make certain it is
- properly considered.
-
-
- <p>
- <li><b>13 October 2004 -- BusyBox 1.00 released</b><p>
-
- When you take a careful look at nearly every embedded Linux device or
- software distribution shipping today, you will find a copy of BusyBox.
- With countless routers, set top boxes, wireless access points, PDAs, and
- who knows what else, the future for Linux and BusyBox on embedded devices
- is looking very bright.
-
- <p>
-
- It is therefore with great satisfaction that I declare each and every
- device already shipping with BusyBox is now officially out of date.
- The highly anticipated release of BusyBox 1.00 has arrived!
-
- <p>
-
- Over three years in development, BusyBox 1.00 represents a tremendous
- improvement over the old 0.60.x stable series. Now featuring a Linux
- KernelConf based configuration system (as used by the Linux kernel),
- Linux 2.6 kernel support, many many new applets, and the development
- work and testing of thousands of people from around the world.
-
+ The email address gpl@busybox.net is the recommended way to contact
+ the Software Freedom Law Center to report BusyBox license violations.
+ </p>
+
+ <li><b>12 July 2008 -- BusyBox 1.11.1 (stable)</b>
+ <p><a href="http://busybox.net/downloads/busybox-1.11.1.tar.bz2">BusyBox 1.11.1</a>.
+ (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/">svn</a>,
+ <a href="http://busybox.net/downloads/fixes-1.11.1/">patches</a>,
+ <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
<p>
+ Bugfix-only release for 1.11.x branch. It contains fixes for awk,
+ bunzip2, cpio, ifupdown, ip, man, start-stop-daemon, uname and vi.
+ </p>
+ </li>
- If you are already using BusyBox, you are strongly encouraged to upgrade to
- BusyBox 1.00. If you are considering developing an embedded Linux device
- or software distribution, you may wish to investigate if using BusyBox is
- right for your application. If you need help getting started using
- BusyBox, if you wish to donate to help cover expenses, or if you find a bug
- and need help reporting it, you are invited to visit the <a
- href="FAQ.html">BusyBox FAQ</a>.
-
+ <li><b>11 July 2008 -- HOWTO is updated</b>
<p>
+ <a href="http://busybox.net/~vda/HOWTO/i486-linux-uclibc/HOWTO.txt">
+ "How to build static busybox for i486-linux-uclibc"</a> is updated
+ and tested on a fresh Fedora 9 install. Please report if it doesn't
+ work for you.
+ </p>
+ </li>
- As usual you can <a href="downloads">download busybox here</a>.
-
- <p>Have Fun!
- <p>
- <li><b>Old News</b><p>
- <a href="/oldnews.html">Click here to read older news</a>
+ <li><b>Old News</b><p>
+ Click here to read <a href="oldnews.html">older news</a>
+ </p>
+ </li>
</ul>