<!--#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>15 April 2009 -- BusyBox 1.14.0 (unstable), BusyBox 1.13.4 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.14.0.tar.bz2">BusyBox 1.14.0</a>.
    (<a href="http://sources.busybox.net/index.py/branches/busybox_1_14_stable/">svn</a>,
    <a href="http://busybox.net/downloads/fixes-1.14.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.13.4.tar.bz2">BusyBox 1.13.4</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.4/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>

    <p>Sizes of busybox-1.13.4 and busybox-1.14.0 (with equivalent config, static uclibc build):<pre>
   text    data     bss     dec     hex filename
 785501     483    7036  793020   c19bc busybox.1.13.4/busybox
 788380     467    6960  795807   c249f busybox.1.14.0/busybox
  15361       0       0   15361    3c01 busybox.1.13.4/shell/hush.o
  20724       0       0   20724    50f4 busybox.1.14.0/shell/hush.o
</pre>
    <p>Most of growth is in hush. The rest shrank a bit.

    <p>New applets:
      <ul>
	<li>flash_eraseall: by Sebastian Andrzej Siewior (bigeasy AT linutronix.de)</li>
	<li>acpid,mkdosfs (aka mkfs.vfat),tunctl: by Vladimir</li>
	<li>ftpd: by Adam Tkac</li>
	<li>timeout: by Roberto Foglietta</li>
	<li>ionice: adapted from Linux kernel' example by Walter Harms</li>
	<li>mkpasswd: synonym to cryptpw. mkpasswd is in Debian, OTOH cryptpw was added to busybox earlier. Trying to make both camps happy by making those two applets just aliases. They are command-line compatible</li>
      </ul>

    <p>Changes since previous release:

    <p>lash and msh are deprecated, please migrate to hush.

    <p>hush had many, many fixes and features added: here documents, arithmetic evaluation, function support, and all this works on NOMMU too, safely: 100kb-sized `command` and heredocs. Here document support, arithmetic evaluation, improved ${var} ops, other fixes are by Mike Frysinger (vapier AT gentoo.org).

    <p>Other changes:
      <ul>
	<li>libbb: unify concurrent-safe update of /etc/{passwd,group,[g]shadow}. By Tito (farmatito AT tiscali.it)</li>
	<li>libbb/sha1/256/512: major code shrink</li>
	<li>libbb/lineedit: make history saving/loading concurrent-safe</li>
	<li>libbb: shrink linked list ops. By xmaks AT email.cz</li>
	<li>libbb: str2sockaddr shuld accept [IPv6] addr without port - wget 'ftp://[::1]/file' needs that to work</li>
	<li>libbb: make bb_info_msg do atomic, unbuffered writes</li>
	<li>adduser: allow adding to group 0; don't _create_ /etc/shadow, only append data if it exists</li>
	<li>ash: fix mishandled ^C</li>
	<li>ash: fix "ash -c 'exec 1&gt;&amp;0'" complaining that fd 0 is busy</li>
	<li>ash: fix $IFS handling in read. Closes bug 235</li>
	<li>ash: fix a case where we close wrong descriptor</li>
	<li>ash: fix bad interaction between ash -c '....&amp;' and bash compat</li>
	<li>ash: fix miscalculation of memory needed for eval tree. Found by Timo Teras (timo.teras AT iki.fi)</li>
	<li>ash: in dotrap(), do not clear gotsig[] for SIGINT if there is no handler for it, otherwise raise interrupt gets confused later</li>
	<li>ash: make dot command search current directory first, as bash does</li>
	<li>ash: make evaltree save/restore int suppression depth. Hopefully this fixes bug 189</li>
	<li>ash: printf builtin with no arguments should not exit</li>
	<li>awk: fix long field separators case. By Ian Wienand (ianw AT vmware.com)</li>
	<li>awk: in BEGIN section $0 should be "", not "0"</li>
	<li>awk: make "struct global" hack more robust wrt alignment. Closes bug 131</li>
	<li>brctl: fix compilation on 2.4.x kernels</li>
	<li>chat: treat timeout more correctly</li>
	<li>chat: recognize RECORD directive</li>
	<li>cksum, printenv: report errors via exitcode</li>
	<li>cpio: add -p, -0 and -L options</li>
	<li>crond,crontab: make cron directory location configurable</li>
	<li>crond: correct more of logfile to 0666 (as usual, umask allows user to remove unwanted bits)</li>
	<li>crond: put tasks in separate process groups</li>
	<li>dc: fix the "base 2" patch omission of base not being set</li>
	<li>depmod: accept and ignore -r. Linux kernel build needs this</li>
	<li>depmod: fix -b option. By timo.teras AT iki.fi</li>
	<li>udhcpd,dumpleases: write and use 64-bit current time in lease file. without it, determination of remaining lease time is unreliable</li>
	<li>udhcpd: remember and record hostnames</li>
	<li>dhcprelay: fix usage text. Simplify and make code more readable</li>
	<li>dumpleases: fix -a option; show hostnames</li>
	<li>udhcpc: fix a problem where we don't open listening socket fast enough</li>
	<li>udhcpc: stop filtering environment passed to the script</li>
	<li>udhcpd: add code which rejects lease files with suspicious or old timestamp</li>
	<li>udhcpd: disable opton to have absolute lease times in lease file (that does not work with dumpleases)</li>
	<li>dnsd: fix a number of bugs. Ideas by Ming-Ching Tiew (mctiew AT yahoo.com)</li>
	<li>dpkg: better and shorter code to compare versions. Taken from "official" dpkg by Eugene T. Bordenkircher (eugebo AT gmail.com)</li>
	<li>du: fix "du /dir /dir" case</li>
	<li>env: support -uVAR=VAL</li>
	<li>expand: fix incorrect expansion exactly on tab boundary; shrink the code</li>
	<li>expr: a bit more robust handling of regexps with groups. Closes bug 87</li>
	<li>find: support --mindepth</li>
	<li>getty: fix handling of speed 0; stop using non-portable way of setting speeds</li>
	<li>grep: support -z</li>
	<li>gzip: fix gzip -dc bug caused by using stale getopt state</li>
	<li>head: report file open errors with exitcode 1 (was happily returning 0)</li>
	<li>httpd: set $HOST to Host: header value. By Tobias Poschwatta (tp AT fonz.de)</li>
	<li>ifupdown: allow options to udhcpc to be configurable from .config</li>
	<li>init: do not eat last char in messages; do not print duplicate "init:" prefix to syslog</li>
	<li>init: fix a bug where on reload order of entries might be wrong</li>
	<li>init: major improvement in documentation and signal handling. Lots of nasty, but hard to trip, races are fixed</li>
	<li>init: reinstate proper handling of !ENABLE_FEATURE_USE_INITTAB</li>
	<li>init: remove wait loop on restart, it may be dangerous</li>
	<li>init: test for vt terminal with VT_OPENQRY, assume that anything else is TERM=vt102, not TERM=linux. Closes bug 195</li>
	<li>inotifyd: add x, o, and u events</li>
	<li>inotifyd: fix buffer overflow and "unreaped zombies" problem</li>
	<li>inotifyd: exit if x event happened for all files</li>
	<li>inotifyd: conserve resourses by closing unused inotify descriptors</li>
	<li>insmod/modprobe: do not pass NULL to kernel as module parameter</li>
	<li>ip: in "ip rule add from all table 1", "all" is taken as 0.0.0.0/32, whereas "any" and "default" would be 0.0.0.0/0. They must be all 0.0.0.0/0. Closes bug 57</li>
	<li>iproute: fix ipXXX utilities trying to parse their applet name as their 1st parameter</li>
	<li>klogctl: fix a problem where we don't terminate read data with '\0' and then misinterpret it</li>
	<li>ls: do not follow links with -s. Closes bug 33</li>
	<li>ls: implement -Q and -g (-g was accepted but ignored)</li>
	<li>ls: make readlink error to not disrupt output (try ls -l /proc/self/fd)</li>
	<li>man: better check for duplicated MANPATH</li>
	<li>mdev: add support for - ("dont stop here") char</li>
	<li>mdev: if /sys/class/block exists, don't scan /sys/block</li>
	<li>mdev: ignore events with "$SUBSYSTEM" == "firmware" &amp;&amp; "$ACTION" == "remove"</li>
	<li>mdev: provide $SUBSYSTEM. By Vladimir</li>
	<li>modprobe/insmod for 2.4: support compressed modules. By Guenter (lists AT gknw.net)</li>
	<li>modprobe: emit "can't open 'modules.dep': (errno)" instead of "module not found"</li>
	<li>modprobe: rework/speedup by Timo Teras (timo.teras AT iki.fi)</li>
	<li>modutils-24: fix bad interaction of xzalloc with xrealloc_vector</li>
	<li>mount: support "-O option"</li>
	<li>mount: stop trying to mount swap partitions</li>
	<li>mount: fix CIFS support</li>
	<li>mountpoint: add -n option. By Vladimir</li>
	<li>nslookup: allow usage of IPv6 addresses or hostnames for DNS server name; allow for port specification. Tested to work: "nslookup google.com [::1]:5353". glibc + IPv6 address of DNS server still does not work</li>
	<li>popmaildir: fix several grave bugs with using memory past end of malloc block</li>
	<li>printf: fix 1.12.0 breakage (from %*d fix), it was misinterpreting "*"</li>
	<li>printf: make integer format strings print long long-sized values</li>
	<li>rmmod: fix bug 263 "modutils/rmmod can't remove modules with dash in name on 2.4 kernels"</li>
	<li>sendmail: document and fix usage of fd #4, fix check for helper failure</li>
	<li>sendmail: update by Vladimir</li>
	<li>seq: add -w support. By Natanael Copa</li>
	<li>seq: add support for "-s separator"</li>
	<li>stat: make stat -f show filesystem "ID:" as coreutils does</li>
	<li>sysctl: fix another corner case with "dots and slashes"</li>
	<li>sysctl: fix broken -p [file]. Closes bug 231</li>
	<li>sysctl: support recursing if name is a directory: "sysctl net.ipv4.conf". Patch by xmaks AT email.cz</li>
	<li>syslogd: comment out file locking; make signal handling syncronous</li>
	<li>syslogd: create logfile with 0666 (affected by umask as usual), not 0600</li>
	<li>tail: fix tail +N syntax not working. Closes bug 221</li>
	<li>tar: do not change new tarfile's mode, GNU tar doesn't do it</li>
	<li>tar: support GNU tar's "base256" encoding</li>
	<li>telnetd: correctly output 0xff char</li>
	<li>telnetd: do not advertise TELNET_LFLOW, we do not support it properly</li>
	<li>tftp: when we infer local name from remote (-r [/]path/path/file), strip path. This mimics wget and is generally more intuitive</li>
	<li>timeout: fix parsing of -t NUM on MMU</li>
	<li>top: make it work again on 2.4 kernels. Closes bug 125</li>
	<li>tr: fix overflow in expand and complement, fix stop after [:class:]</li>
	<li>tr: support -C as synonym to -c</li>
	<li>tr: support [:xdigit:], fix handling of ranges and [x]'s</li>
	<li>traceroute: rewrite. Do not emit raw IP packets, instead send UDP or ICMP packets and rely on the kernel to form IP headers, select source IP and interface</li>
	<li>uname: add support for -i and -o, fix printing of unknown -p value with -a option</li>
	<li>uname: support long options</li>
	<li>unexpand: fix incorrect expansion</li>
	<li>unzip: fix thinko with le/be conv and size. Closes bug 129</li>
	<li>vi: fix several instances of major goof: when text grows, text[] might get reallocated! We were keeping around pointers to old place</li>
	<li>vi: speedup and code shrink. By Walter Harms</li>
	<li>volume_id: abort early on read failures. Should help with probing missing fdd's</li>
	<li>volumeid: fix bug 249 "findfs finds the wrong partition"</li>
	<li>wget: --post-data support. By Harald Kuthe (harald-tuxbox AT arcor.de)</li>
	<li>wget: fix --header handling</li>
	<li>wget: more robust EINTR detection</li>
      </ul>
    </p>

  <li><b>8 March 2009 -- BusyBox 1.13.3 (stable)</b>
    <p><a href="http://busybox.net/downloads/busybox-1.13.3.tar.bz2">BusyBox 1.13.3</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.3/">patches</a>,
    <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>

    <p>1.13.3 is a bug fix release. It has fixes for awk, depmod, init, killall, mdev,
    modprobe, printf, syslogd, tar, top, unzip, wget.
    </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" -->

