<!--#include file="header.html" -->

<ul>

  <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>31 December 2008 -- BusyBox 1.13.2 (stable), BusyBox 1.12.4 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.13.2.tar.bz2">BusyBox 1.13.2</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_13_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.13.2/">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.12.4.tar.bz2">BusyBox 1.12.4</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_12_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.12.4/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>

    <p>Bug fix releases. 1.13.2 has fixes for crond, dc, init, ip, printf.
    1.12.4 has fixes for ip and printf.
    </p>
  </li>

  <li><b>29 November 2008 -- BusyBox 1.13.1 (stable), BusyBox 1.12.3 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.13.1.tar.bz2">BusyBox 1.13.1</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_13_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.13.1/">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.12.3.tar.bz2">BusyBox 1.12.3</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_12_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.12.3/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>

    <p>Bug fix releases. 1.13.1 has fixes for ash, option parsing, id, init,
    inotifyd, klogd, line editing and modprobe. 1.12.3 has fixes
    for option parsing and line editing.
    </p>
  </li>

  <li><b>10 November 2008 -- BusyBox 1.13.0 (unstable), BusyBox 1.12.2 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.13.0.tar.bz2">BusyBox 1.13.0</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_13_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.13.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.12.2.tar.bz2">BusyBox 1.12.2</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_12_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.12.2/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>

    <p>Sizes of busybox-1.12.2 and busybox-1.13.0 (with equivalent config, static uclibc build):<pre>
   text    data     bss     dec     hex filename
 778291     551    7856  786698   c010a busybox-1.12.2/busybox
 778981     551    7852  787384   c03b8 busybox-1.13.0/busybox
</pre>

    <p>New applets: blkid, devmem

    <p>Changes since previous release:
      <ul>
	<li>mail applets: total overhaul. Vladimir as usual</li>
	<li>ash: fix "while kill -0 $child; do true; done" looping forever</li>
	<li>ash: fix NOEXEC mode - we were forgetting to pass environment</li>
	<li>ash: fix a bug in standalone mode (corrupted getopt state)</li>
	<li>ash: optionally support "&gt;&amp;file" and "&amp;&gt;file" redirections</li>
	<li>awk: bitwise ops cast oprands and results to unsigned long, not signed. closes bug 4774</li>
	<li>awk: fix typo in atan2 code. closes bug 5594</li>
	<li>awk: improve handling of negative numbers in bitwise ops; fix handling of octal costants</li>
	<li>awk: support hex constants</li>
	<li>basename: fix error code (again)</li>
	<li>cpio: emit TRAILER even when hard links were found. By Pascal Bellard (pascal.bellard AT ads-lu.com)</li>
	<li>crontab: do not destroy STDIN_FILENO, editor may need it (crontab -e)</li>
	<li>dc: support for bases 2 and 8, by Nate Case (ncase AT xes-inc.com)</li>
	<li>dhcpc: treat "discover...select...discover..." loop the same way as "discover...discover...discover..."</li>
	<li>dpkg: add dpkg -l PACKAGE_PATTERN. By Peter Korsgaard</li>
	<li>fbset: fix mode matching code: original code may trigger false positive.</li>
	<li>findfs: fix LUKS and FAT detection routines; do not exit if corrupted FAT fs makes us try to seek past the end</li>
	<li>grep: fix 'echo aaa | grep -o a' + ENABLE_EXTRA_COMPAT case. By Natanael Copa</li>
	<li>grep: fix EXTRA_COMPAT grep to honor -E and -i</li>
	<li>gunzip: restore mtime</li>
	<li>halt: reinstate -w even if !FEATURE_WTMP</li>
	<li>hexdump: fix SEGV in hexdump -e ""</li>
	<li>httpd: pass "Accept:" and "Accept-Language:" header to CGI scripts (Alina Friedrichsen)</li>
	<li>hush: fix environment and memory leaks</li>
	<li>hush: fix trashing of environment by local env vars: a=a; a=b cmd; - a was unset</li>
	<li>id: improve compatibility with coreutils. By Tito Ragusa</li>
	<li>inetd: fix a case when we have zero services</li>
	<li>inetd: use config parser. by Vladimir</li>
	<li>init: set stderr to NONBLOCK</li>
	<li>insmod: fix detection of open failure</li>
	<li>install: support -D</li>
	<li>ip: fix ip route rejecting dotted quads as prefix</li>
	<li>ip: route metric support (Natanael Copa)</li>
	<li>iplink: accept shorthands for "address" keyword: "ip link set address 00:11:22:33:44:55"</li>
	<li>kbd_mode: support -C TTY</li>
	<li>kill[all[5]]: accept -s SIG too. By Steve Bennett (steveb AT workware.net.au)</li>
	<li>klogd: handle many lines at once. By Steve Bennett (steveb AT workware.net.au)</li>
	<li>less: support -I to be able to search case-insensitively</li>
	<li>less: add optional line number toggle and resizing on window resize</li>
	<li>libbb: do not reject floating point strings like ".15"</li>
	<li>lineedit: fix bug 5824 "since rev 23530 fdisk and ed don't work any more"</li>
	<li>lineedit: fix problems with empty commands in history</li>
	<li>login: fix /etc/nologin handling</li>
	<li>man: fix inconsistencies in handling $MANPATH</li>
	<li>mdev: support match by major,minor. See bug 4714</li>
	<li>modprobe-small: make insmod command line compatible</li>
	<li>modprobe-small: support "blacklist" keyword in /etc/modules/MODULE_NAME</li>
	<li>modprobe: fix a segfault when modprobe is called with no arguments at all</li>
	<li>modutils/*: rewrite by Timo Teras (timo.teras AT iki.fi)</li>
	<li>mount: fix "-o parm1 -o parm2" not accumulating</li>
	<li>nmeter: 4k buffers are too small for /proc files, make them dynamically sized with 16k upper limit</li>
	<li>ping: SO_RCVBUF must be bigger than packet size, otherwise large ping packets might fail to be received</li>
	<li>route: fix for 64-bit BE machines by Seonghun Lim (wariua AT gmail.com)</li>
	<li>rpm: fix incompatibilities which prevented rpm -i foo.src.rpm</li>
	<li>runsvdir: support runsvdir-as-init</li>
	<li>setarch: do not try to use non-existent data in argv[]</li>
	<li>setfont: support -m and -C, support -m TEXTUAL_MAP (by Vladimir)</li>
	<li>setup_environment: cd $HOME regardless of clear_env value</li>
	<li>slattach: preserve speed in non-raw mode. By Matthieu Castet (matthieu.castet AT parrot.com)</li>
	<li>start_stop_daemon: accept (and ignore) -R PARAM</li>
	<li>sv: make default service dir configurable (Vladimir wants it)</li>
	<li>sysctl: fix bug 3894 (by Kryzhanovskyy Maksym)</li>
	<li>tar: fix bug 3844: non-root tar does not preserve perms</li>
	<li>telnetd: handle emacs M-DEL and IAC-NOP. by Jim Cathey (jcathey AT ciena.com)</li>
	<li>top: fix "top -d 1" (bug 5144)</li>
	<li>top: optional SMP support by Vineet Gupta (vineetg76 AT gmail.com)</li>
	<li>trylink: make messages less confusing</li>
	<li>unzip: handle "central directory". needed for OpenOffice, gmail attachment .zips etc</li>
	<li>vi: Rob's algorithm of reading and matching ESC sequences (nice work btw!)</li>
	<li>vi: deal with EOF/error on stdin and with input NULs</li>
	<li>vi: fix uninitialized last_search_pattern (bug 5794)</li>
	<li>vi: handle chars 0x80, 0x81 etc correctly</li>
	<li>volume identification: abolish /proc/partitions and /proc/cdroms scanning. It does not catch volume managers and such. Simply scan /dev/* for any block devices</li>
	<li>watchdog: WDIOC_SETTIMEOUT accepts seconds, not milliseconds</li>
	<li>watchdog: add -T option</li>
      </ul>
    <p>
    The email address gpl@busybox.net is the recommended way to contact
    the Software Freedom Law Center to report BusyBox license violations.
    </p>
  </li>

  <li><b>28 September 2008 -- BusyBox 1.12.1 (stable), BusyBox 1.11.3 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.12.1.tar.bz2">BusyBox 1.12.1</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_12_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.12.1/">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.3.tar.bz2">BusyBox 1.11.3</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_11_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.11.3/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
    <p>
    Bugfix-only releases for 1.11.x and 1.12.x branches.
    </p>
  </li>

  <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://sources.busybox.net/index.py/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://sources.busybox.net/index.py/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 &lt;&amp;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&gt;&amp;- from closing fd used for script reading</li>
	<li>ash: teach ash about 123&gt;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 &amp;&amp; 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>

  <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://sources.busybox.net/index.py/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>

  <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>



  <li><b>Old News</b><p>
    Click here to read <a href="oldnews.html">older news</a>
    </p>
  </li>

</ul>

<!--#include file="footer.html" -->

