- fix some wrong markup.
[oweals/busybox.git] / docs / busybox.net / oldnews.html
1 <!--#include file="header.html" -->
2
3
4 <ul>
5   <li><b>12 February 2008 -- BusyBox 1.9.1 (stable)</b>
6     <p><a href="http://busybox.net/downloads/busybox-1.9.1.tar.bz2">BusyBox 1.9.1</a>.
7     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/">svn</a>,
8     <a href="http://busybox.net/downloads/fixes-1.9.1/">patches</a>,
9     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
10
11     <p>This is a bugfix-only release, with fixes to fsck,
12     iproute, mdev, mkswap, msh, nameif, stty, test, zcip.</p>
13     <p>hush has `command` expansion re-enabled for NOMMU, although it is
14     inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
15     The plan is to make this less likely to bite people in future versions.</p>
16   </li>
17
18   <li><b>24 December 2007 -- BusyBox 1.9.0 (unstable)</b>
19     <p><a href="http://busybox.net/downloads/busybox-1.9.0.tar.bz2">BusyBox 1.9.0</a>.
20     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/">svn</a>,
21     <a href="http://busybox.net/downloads/fixes-1.9.0/">patches</a>,
22     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
23
24     <p>Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):<pre>
25    text    data     bss     dec     hex filename
26  792796     978    9724  803498   c42aa busybox-1.8.2
27  783803     683    7508  791994   c15ba busybox-1.9.0
28 </pre>
29     <p>Top 10 stack users:<pre>
30 busybox-1.8.2:               busybox-1.9.0:
31 input_tab             10428  echo_dg                4116
32 umount_main            8252  bb_full_fd_action      4112
33 rtnl_talk              8240  discard_dg             4096
34 xrtnl_dump_filter      8240  echo_stream            4096
35 sendMTFValues          5316  discard_stream         4096
36 mainSort               4700  find_list_entry2       4096
37 mkfs_minix_main        4288  readlink_main          4096
38 grave                  4260  ipaddr_list_or_flush   3900
39 unix_do_one            4156  iproute_list_or_flush  3680
40 parse_prompt           4132  insmod_main            3152
41 </pre>
42
43     <p>lash is deleted from this release. hush can be configured down to almost
44        the same size, but it is significantly less buggy. It even works
45        on NOMMU machines (interactive mode and backticks are not working on NOMMU,
46        though). "lash" applet is still available, but it runs hush.
47
48     <p>init has some changes in this release, please report if it causes
49        problems for you.
50
51     <p>Changes since previous release:
52       <ul>
53         <li>Build system improvements
54         <li>Testsuite additions
55         <li>Stack size reductions, code size reductions, data/bss reductions
56         <li>An option to prefer IPv4 address if host has both
57         <li>New applets: hd, sestatus
58         <li>Removed applets: lash
59         <li>hush: fixed a few bugs, wired up echo and test to be builtins
60         <li>init: simplify forking of children
61         <li>getty: special handling of '#' and '@' is removed
62         <li>[su]login: sanitize environment if called by non-root
63         <li>udhcpc: support "bad" servers which send oversized packets
64           (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
65         <li>udhcpc: -O option allows to specify which options to ask for
66           (Stefan Hellermann &lt;stefan at the2masters.de&gt;)
67         <li>udhcpc: optionally check whether given IP is really free (by ARP ping)
68           (Jonas Danielsson &lt;jonas.danielsson at axis.com&gt;)
69         <li>vi: now handles files with unlimited line length
70         <li>vi: speedup for huge line lengths
71         <li>vi: Del key works
72         <li>sed: support GNUism '\t'
73         <li>cp/mv/install: optionally use bigger buffer for bulk copying
74         <li>line editing: don't eat stack like crazy
75         <li>passwd: follows symlinked /etc/passwd
76         <li>renice: accepts priority with +N too
77         <li>netstat: wide output mode
78         <li>nameif: extended matching (Nico Erfurth &lt;masta at perlgolf.de&gt;)
79         <li>test: become NOFORK applet
80         <li>find: -iname (Alexander Griesser &lt;alexander.griesser at lkh-vil.or.at&gt;)
81         <li>df: -i option (show inode info) (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
82         <li>hexdump: -R option (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
83       </ul>
84     </p>
85
86   <li><b>23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)</b>
87     <p><a href="http://busybox.net/downloads/busybox-1.8.2.tar.bz2">BusyBox 1.8.2</a>.
88     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
89     <a href="http://busybox.net/downloads/fixes-1.8.2/">patches</a>,
90     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
91     <p><a href="http://busybox.net/downloads/busybox-1.7.4.tar.bz2">BusyBox 1.7.4</a>.
92     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
93     <a href="http://busybox.net/downloads/fixes-1.7.4/">patches</a>,
94     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
95
96     <p>These are bugfix-only releases.
97     1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
98     1.7.4 contains a fix for inetd.</p>
99   </li>
100
101   <li><b>9 November 2007 -- BusyBox 1.8.1 (stable)</b>
102     <p><a href="http://busybox.net/downloads/busybox-1.8.1.tar.bz2">BusyBox 1.8.1</a>.
103     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
104     <a href="http://busybox.net/downloads/fixes-1.8.1/">patches</a>,
105     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
106
107     <p>This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.</p>
108   </li>
109
110   <li><b>4 November 2007 -- BusyBox 1.8.0 (unstable)</b>
111     <p><a href="http://busybox.net/downloads/busybox-1.8.0.tar.bz2">BusyBox 1.8.0</a>.
112     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
113     <a href="http://busybox.net/downloads/fixes-1.8.0/">patches</a>,
114     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
115
116     <p>Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
117
118     <p>Applets which had many changes since 1.7.x:
119     <p>httpd:
120       <ul>
121         <li>does not clear environment, CGIs will see all environment variables which were set for httpd
122         <li>fix bug where we were trying to read more POSTDATA than content-length
123         <li>fix trivial bug (spotted by Alex Landau)
124         <li>optional support for partial downloads
125         <li>simplified CGI i/o loop (now it looks good to me)
126         <li>small auth and IPv6 fixes (Kim B. Heino &lt;Kim.Heino at bluegiga.com>)
127         <li>support for proxying connection to other http server (by Alex Landau &lt;landau_alex at yahoo.com>)
128       </ul>
129
130     <p>top:
131       <ul>
132         <li>TOPMEM feature - 's(how sizes)' command
133         <li>don't wait before final bailout (try top -b -n1)
134         <li>fix for command line wrapping
135       </ul>
136
137     <p>Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
138
139     <p>Code and data size in comparison with 1.7.3:<pre>
140 Equivalent .config, i386 uclibc static builds:
141    text    data     bss     dec     hex filename
142  768123    1055   10768  779946   be6aa busybox-1.7.3/busybox
143  759693     974    9420  770087   bc027 busybox-1.8.0/busybox</pre>
144
145     <p>New applets:
146       <ul>
147         <li>microcom: new applet by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;
148         <li>kbd_mode: new applet by Loic Grenie &lt;loic.grenie at gmail.com&gt;
149         <li>bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
150         <li>pgrep, pkill: new applets by Loic Grenie &lt;loic.grenie at gmail.com&gt;
151         <li>setsebool: new applet (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
152       </ul>
153
154     <p>Other changes since previous release (abridged):
155       <ul>
156         <li>cp: -r and -R imply -d (coreutils compat)
157         <li>cp: detect and prevent infinite recursion
158         <li>cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
159         <li>hdparm: reduce possibility of numeric overflow in -T
160         <li>hdparm: simplify timing measurement
161         <li>wget: -O FILE is allowed to overwrite existing file (compat)
162         <li>wget: allow dots in header field names
163         <li>telnetd: add -K option to close sessions as soon as child exits
164         <li>telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
165         <li>ed: large cleanup, add line editing
166         <li>hush: feeble attempt at making it more NOMMU-friendly
167         <li>hush: fix glob()
168         <li>hush: stop doing manual accounting of open fd's, kernel can do it for us
169         <li>adduser: implement -S and fix uid selection
170         <li>ash: fix prompt expansion (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
171         <li>ash: revert "cat | jobs" fix, it causes more problems than good
172         <li>find: fix -xdev behavior in the presence of two or more nested mount points
173         <li>grep: fix grep -F -e str1 -e str2 (was matching str2 only)
174         <li>grep: optimization: stop on first -e match
175         <li>gunzip: support concatenated gz files
176         <li>inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
177         <li>install: 'support' (by ignoring) -v and -b
178         <li>install: fix bug in "install -c file dir" (tried to copy dir into dir too)
179         <li>ip: tunnel parameter parsing fix by Jean Wolter &lt;jw5 at os.inf.tu-dresden.de&gt;
180         <li>isrv: use monotonic_sec
181         <li>less: make 'f' key page forward
182         <li>libiproute: add missing break statements
183         <li>load_policy: update (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
184         <li>logger: fix a problem of losing all argv except first
185         <li>login: do reject wrong passwords with PAM auth
186         <li>losetup: support -f (Loic Grenie &lt;loic.grenie at gmail.com&gt;)
187         <li>fdisk: make fdisk compile on libc without llseek64
188         <li>libbb: by popular request allow PATH to be customized at build time
189         <li>mkswap: selinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
190         <li>mount: allow (and ignore) -i
191         <li>mount: ignore NFS bg option on NOMMU machines
192         <li>mount: mount helpers support (by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;)
193         <li>passwd: handle Ctrl-C, restore termios on Ctrl-C
194         <li>passwd: SELinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
195         <li>ping: make -I ethN work too (-I addr already worked)
196         <li>ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
197         <li>read_line_input: fix it to not do any fancy editing if echoing is disabled
198         <li>run_parts: make it sort executables by name (required by API)
199         <li>runsv: do not use clock_gettime if !MONOTONIC_CLOCK
200         <li>runsvdir: fix "linear wait time" bug
201         <li>sulogin: remove alarm handling, it is redundant there
202         <li>svlogd: compat: svlogd -tt should timestamp stderr too
203         <li>syslogd: bail out if you see null read from Unix socket
204         <li>syslogd: do not need to poll(), we can just block in read()
205         <li>tail: work correctly on /proc files (Kazuo TAKADA &lt;kztakada at sm.sony.co.jp&gt;)
206         <li>tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau &lt;landau_alex at yahoo.com&gt;)
207         <li>tar: strip leading '/' BEFORE memorizing hardlink's name
208         <li>tftp: fix infinite retry bug
209         <li>umount: support (by ignoring) -i; style fixes
210         <li>unzip: fix endianness bugs
211         <li>vi: don't wait 50 ms before reading ESC sequences
212         <li>watchdog: allow millisecond spec (-t 250ms)
213         <li>zcip: fix unaligned trap on ARM
214       </ul>
215     </p>
216
217   </li>
218
219   <li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b>
220     <p><a href="http://busybox.net/downloads/busybox-1.7.3.tar.bz2">BusyBox 1.7.3</a>.
221     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
222     <a href="http://busybox.net/downloads/fixes-1.7.3/">patches</a>,
223     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
224
225     <p>This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.</p>
226   </li>
227
228   <li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b>
229     <p><a href="http://busybox.net/downloads/busybox-1.7.2.tar.bz2">BusyBox 1.7.2</a>.
230     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
231     <a href="http://busybox.net/downloads/fixes-1.7.2/">patches</a>,
232     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
233
234     <p>This is a bugfix-only release, with fixes to install, find, login, httpd, runsvdir, chcon, setfiles, fdisk and line editing.</p>
235   </li>
236
237   <li><b>16 September 2007 -- BusyBox 1.7.1 (stable)</b>
238     <p><a href="http://busybox.net/downloads/busybox-1.7.1.tar.bz2">BusyBox 1.7.1</a>.
239     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
240     <a href="http://busybox.net/downloads/fixes-1.7.1/">patches</a>,
241     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
242
243     <p>This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system.</p>
244   </li>
245
246   <li><b>24 August 2007 -- BusyBox 1.7.0 (unstable)</b>
247     <p><a href="http://busybox.net/downloads/busybox-1.7.0.tar.bz2">BusyBox 1.7.0</a>.
248     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
249     <a href="http://busybox.net/downloads/fixes-1.7.0/">patches</a>,
250     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
251
252     <p>Applets which had many changes since 1.6.x:
253     <p>httpd:
254       <ul>
255         <li>works in standalone mode on NOMMU machines now (partly by Alex Landau &lt;landau_alex at yahoo.com&gt;)
256         <li>indexer example is rewritten in C
257         <li>optional support for error pages (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
258         <li>stop reading headers using 1-byte reads
259         <li>new option -v[v]: prints client addresses, HTTP codes returned, URLs
260         <li>extended -p PORT to -p [IP[v6]:]PORT
261         <li>sendfile support (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
262         <li>add support for Status: CGI header
263         <li>fix CGI handling bug (we were closing wrong fd)
264         <li>CGI I/O loop still doesn't look 100% ok to me...
265       </ul>
266
267     <p>udhcp[cd]:
268       <ul>
269         <li>add -f "foreground" and -S "syslog" options
270         <li>fixed "ifupdown + udhcpc_without_pidfile_creation" bug
271         <li>new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson &lt;mats at blue2net.com&gt; (Blue2Net AB))
272         <li>consistently treat server_config.start/end IPs as host-order
273         <li>fix IP parsing for 64bit machines
274         <li>fix unsafe hton macro usage in read_opt()
275         <li>do not chdir to / when daemonizing
276       </ul>
277
278     <p>top, ps, killall, pidof:
279       <ul>
280         <li>simpler loadavg processing
281         <li>truncate usernames to 8 chars
282         <li>fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
283         <li>improve /proc/PID/cmdinfo reading code
284         <li>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)
285         <li>reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
286         <li>make percentile (0.1%) calculations configurable
287         <li>add config option and code for global CPU% display
288         <li>reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
289       </ul>
290
291     <p>Build system improvements: doesn't link against libraries we don't need,
292         generates verbose link output and map file, allows for custom link
293         scripts (useful for removing extra padding, among other things).
294
295     <p>Code and data size in comparison with 1.6.1:<pre>
296 Equivalent .config, i386 glibc dynamic builds:
297    text    data     bss     dec     hex filename
298  672671    2768   16808  692247   a9017 busybox-1.6.1/busybox
299  662948    2660   13528  679136   a5ce0 busybox-1.7.0/busybox
300  662783    2631   13416  678830   a5bae busybox-1.7.0/busybox.customld
301
302 Same .config built against static uclibc:
303  765021    1059   11020  777100   bdb8c busybox-1.7.0/busybox_uc</pre>
304
305     <p>Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
306         test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
307         runit/*, in libbb.
308
309     <p>New applets:
310       <ul>
311         <li>pscan, expand, unexpand (from Tito &lt;farmatito at tiscali.it&gt;)
312         <li>setfiles, restorecon (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
313         <li>chpasswd (by Alexander Shishkin &lt;virtuoso at slind.org&gt;)
314         <li>slattach, ttysize
315       </ul>
316
317     <p>Unfortunately, not much work is done on shells. This was mostly stalled
318         by lack of time (read: laziness) on my part to learn how to adapt existing
319         qemu-runnable image for a NOMMU architechture (available on qemu website)
320         for local testing of cross-compiled busybox on my machine.
321
322     <p>Other changes since previous release (abridged):
323       <ul>
324         <li>addgroup: disallow addgroup -g num user group; make -g 0 work (Tito &lt;farmatito at tiscali.it&gt;)
325         <li>adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa &lt;natanael.copa at gmail.com&gt;
326         <li>arping: -i should be -I, fixed
327         <li>ash: make "jobs | cat" work like in bash (was giving empty output)
328         <li>ash: recognize -l as --login equivalent; do not recognize +-login
329         <li>ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
330         <li>ash: fix SEGV if type has zero parameters
331         <li>awk: fix -F 'regex' bug (miscounted fields if last field is empty)
332         <li>catv: catv without arguments was trying to use environ as argv (Alex Landau &lt;landau_alex at yahoo.com&gt;)
333         <li>catv: don't die on open error (emit warning)
334         <li>chown/chgrp: completely match coreutils 6.8 wrt symlink handling
335         <li>correct_password: do not print "no shadow passwd..." message
336         <li>crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
337         <li>dd: fix bug where we assume count=INT_MAX when count is unspecified
338         <li>devfsd: sanitization by Tito &lt;farmatito at tiscali.it&gt;
339         <li>echo: fix non-fancy echo
340         <li>fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
341         <li>find: -context support for SELinux (KaiGai Kohei &lt;kaigai at kaigai.gr.jp&gt;)
342         <li>find: add conditional support for -maxdepth and -regex, make -size match GNU find
343         <li>find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
344         <li>fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
345         <li>grep: implement -m MAX_MATCHES, fix buglets with context printing
346         <li>grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
347         <li>hush: add missing dependencies (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
348         <li>hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
349         <li>ifconfig: make it work with ifaces with interface no. &gt; 255
350         <li>ifup/ifdown: make location of ifstate configurable
351         <li>ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
352         <li>install: fix -s (strip) option, fix install a b /a/link/to/dir
353         <li>libbb: consolidate ARRAY_SIZE macro (Walter Harms &lt;wharms at bfs.de&gt;)
354         <li>libbb: make /etc/network parsing configurable. -200 bytes when off
355         <li>libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
356         <li>libbb: xioctl and friends by Tito &lt;farmatito at tiscali.it&gt;
357         <li>login: optional support for PAM
358         <li>login: make /etc/nologin support configurable (-240 bytes)
359         <li>login: ask passwords even for wrong usernames
360         <li>md5_sha1_sum: fix mishandling when run as /bin/md5sum
361         <li>mdev: add support for firmware loading
362         <li>mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
363         <li>modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN &lt;yann.morin.1998 at anciens.enib.fr&gt;)
364         <li>more: fixes by Tristan Schmelcher &lt;tpkschme at engmail.uwaterloo.ca&gt;
365         <li>nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
366         <li>passwd: fix bug "updating shadow even if user's record is in passwd"
367         <li>patch: fix -p -1 handling
368         <li>patch: fix bad line ending handling (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
369         <li>ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
370         <li>ping: fix incorrect handling of -I (Iouri Kharon &lt;bc-info at styx.cabel.net&gt;)
371         <li>ping: fix non-fancy ping6
372         <li>printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni &lt;kalyanatejaswi at yahoo.co.in&gt;)
373         <li>ps: fix -Z (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
374         <li>rpm: add optional support for bz2 data. +50 bytes of code
375         <li>rpm: fix bogus "package is not installed" case
376         <li>sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
377         <li>start_stop_daemon: NOMMU fixes by Alex Landau &lt;landau_alex at yahoo.com&gt;
378         <li>stat: fix option -Z SEGV
379         <li>strings: strings a b was processing a twice, fix that
380         <li>svlogd: fix timestamping, do not warn if config is missing
381         <li>syslogd, logread: get rid of head pointer, fix logread bug in the process
382         <li>syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
383         <li>tar: improve OLDGNU compat, make old SUN compat configurable
384         <li>test: fix testing primary expressions like '"-u" = "-u"'
385         <li>uudecode: fix to base64 decode by Jorgen Cederlof &lt;jcz at google.com&gt;
386         <li>vi: multiple fixes by Natanael Copa &lt;natanael.copa at gmail.com&gt;
387         <li>wget: fix bug in base64 encoding (bug 1404). +10 bytes
388         <li>wget: lift 256 chars limitation on terminal width
389         <li>wget, zcip: use monotonic_sec instead of gettimeofday
390       </ul>
391     </p>
392   </li>
393
394   <li><b>30 June 2007 -- BusyBox 1.6.1 (stable)</b>
395     <p><a href="http://busybox.net/downloads/busybox-1.6.1.tar.bz2">BusyBox 1.6.1</a>.
396     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/">svn</a>,
397     <a href="http://busybox.net/downloads/fixes-1.6.1/">patches</a>,
398     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
399
400     <p>This is a bugfix-only release, with fixes to echo, hush, and wget.</p>
401   </li>
402
403   <li><b>1 June 2007 -- BusyBox 1.6.0 (unstable)</b>
404     <p><a href="http://busybox.net/downloads/busybox-1.6.0.tar.bz2">BusyBox 1.6.0</a>.
405     (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/">svn</a>,
406     <a href="http://busybox.net/downloads/fixes-1.6.0/">patches</a>,
407     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
408
409     <p>Since this is a x.x.0 release, it probably does not deserve "stable"
410     label. Please help making 1.6.1 stable by testing 1.6.0.</p>
411     <p>Note that hush shell had many changes and (hopefully) is much improved now,
412     but there is a possibility that it regressed in some obscure cases. Please
413     report any such cases.</p>
414     <p>lash users please note: lash is going to be deprecated in busybox 1.7.0
415     and removed in the more distant future. Please migrate to hush.</p>
416     <p><a href="http://busybox.net/~vda/mem_usage-1.6.0.txt">Memory usage has decreased, but we can do better still</a></p>
417     <p>Other changes since previous release:
418     <ul>
419 <li>NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
420 <li>NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
421 <li>NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
422 <li>NOMMU: random fixes; compressed --help now works for NOMMU
423 <li>SELinux: load_policy applet
424 <li>[u]mount: extend -t option (Roy Marples &lt;uberlord at gentoo.org&gt;)
425 <li>addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
426 <li>adduser: don't bomb out if shadow password file doesn't exist (from Tito &lt;farmatito at tiscali.it&gt;)
427 <li>applet.c: do not even try to read config if run by real root; fix suid config handling
428 <li>ash: fix infinite loop on exit if tty is not there anymore
429 <li>ash: fix kill -l (by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
430 <li>ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
431 <li>awk: don't segfault on printf(%*s). Closes bug 1337
432 <li>awk: guard against empty environment
433 <li>awk: some 'lineno' vars were shorts, made them ints (code got smaller)
434 <li>cat: stop using stdio.h opens
435 <li>config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
436 <li>cryptpw: new applet (by Thomas Lundquist &lt;lists at zelow.no&gt;)
437 <li>cttyhack: new applet
438 <li>dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens &lt;develop at cle-mens.de&gt;)
439 <li>deluser: add optional support for removing users from groups (by Tito &lt;farmatito at tiscali.it&gt;)
440 <li>diff: fix SEGV (NULL deref) in diff -N
441 <li>diff: fix segfault on empty dirs (Peter Korsgaard &lt;peter.korsgaard at barco.com&gt;)
442 <li>dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
443 <li>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 &lt;Kim.Heino at bluegiga.com&gt;)
444 <li>dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
445 <li>dumpleases: getopt32()-ization (from Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
446 <li>e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
447 <li>ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
448 <li>ether-wake: save a few more bytes of code
449 <li>find: -group, -depth (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
450 <li>find: add support for -delete, -path (by Natanael Copa)
451 <li>find: fix -prune. Add big comment about it
452 <li>find: improve usage text (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
453 <li>find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
454 <li>find: un-DESKTOPize (Kai Schwenzfeier &lt;niteblade at gmx.net&gt;)
455 <li>find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov &lt;lich at math.spbu.ru&gt;)
456 <li>find_root_device: use lstat - don't follow links
457 <li>getopt32: fix llist_t options ordering. llist_rev is now unused
458 <li>getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;
459 <li>hdparm: fix multisector mode setting (from Toni Mirabete &lt;amirabete at catix.cat&gt;)
460 <li>hdparm: make -T -t code smaller (-194 bytes), and output prettier
461 <li>ifupdown: make it possible to use DHCP clients different from udhcp
462 <li>ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa &lt;natanael.copa at gmail.com&gt;
463 <li>ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
464 <li>ip: fix compilation if FEATURE_TR_CLASSES is off
465 <li>ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
466 <li>ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
467 <li>ip: set the scope properly. Thanks to Jean Wolter
468 <li>iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
469 <li>iproute: shrink a bit (-200 bytes)
470 <li>kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
471 <li>klogd: remove dependency on syslogd
472 <li>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.
473 <li>lash: fix kill buglet (didn't properly recognize ESRCH)
474 <li>lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
475 <li>lash: recognize and use NOFORK applets
476 <li>less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less &lt;HUGEFILE + [End] busy loop
477 <li>libbb: add xsendto, xunlink, xpipe
478 <li>libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
479 <li>libbb: make pidfile writing configurable
480 <li>libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
481 <li>libbb: rework NOMMU helper API so that it makes more sense and easier to use
482 <li>libiproute: audit callgraph, shortcut error paths into die() functions
483 <li>lineedit: do not try to open NULL history file
484 <li>lineedit: nuke two unused variables and code which sets them
485 <li>login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
486 <li>login: shrink login and set_environment by ~100 bytes
487 <li>mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
488 <li>mount: fix mounting of symlinks (mount from util-linux allows that)
489 <li>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
490 <li>nc: port nc 1.10 to busybox
491 <li>netstat: fix for bogus state value for raw sockets
492 <li>netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
493 <li>nmeter: should die if stdout doesn't like him anymore
494 <li>patch: do not try to delete same file twice
495 <li>ping: fix wrong sign extension of packet id (bug 1373)
496 <li>ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
497 <li>run_parts: rewrite
498 <li>run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo &lt;somlo at cmu.edu&gt;
499 <li>sed: fix escaped newlines in -f
500 <li>split: new applet
501 <li>stat: remove superfluous bss user (flags) and manually unswitch some areas
502 <li>stty: fix option parsing bug (spotted by Sascha Hauer &lt;s.hauer at pengutronix.de&gt;)
503 <li>svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
504 <li>tail: fix SEGV on "tail -N"
505 <li>ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape &lt;pape at smarden.org&gt;, http://smarden.sunsite.dk/ipsvd/
506 <li>test: close bug 1371; plug a memory leak; code size reduction
507 <li>tftp: code diet, and I think retransmits were broken
508 <li>tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
509 <li>udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
510 <li>udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
511 <li>xargs: shrink code, ~80 bytes; simplify word list management
512 <li>zcip: make it work on NOMMU (+ improve NOMMU support machinery)
513     </ul>
514     </p>
515   </li>
516
517   <li><b>20 May 2007 -- BusyBox 1.5.1 (stable)</b>
518     <p><a href="http://busybox.net/downloads/busybox-1.5.1.tar.bz2">BusyBox 1.5.1</a>.
519     (<a href="http://busybox.net/downloads/fixes-1.5.1/">patches</a>,
520     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
521
522     <p>This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
523     and sed.</p>
524   </li>
525
526   <li><b>23 March 2007 -- BusyBox 1.5.0 (unstable)</b>
527     <p><a href="http://busybox.net/downloads/busybox-1.5.0.tar.bz2">BusyBox 1.5.0</a>.
528     (<a href="http://busybox.net/downloads/fixes-1.5.0/">patches</a>,
529     <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
530
531     <p>Since this is a x.x.0 release, it probably does not deserve "stable"
532     label. Please help making 1.5.1 stable by testing 1.5.0.</p>
533     <p>Notable changes since previous release:
534     <ul>
535     <li>find: added support for -user, -not, fixed -mtime, -mmin, -perm
536     <li>[de]archivers: merge common logic into one module
537     <li>ping[6]: unified code for both
538     <li>less: regex search improved
539     <li>ash: more readable code, testsuite added
540     <li>sed: several very obscure bugs fixed
541     <li>chown: -H, -L, -P support (required by POSIX)
542     <li>tar: handle (broken) checksums a-la Sun; tar restores mode again
543     <li>grep: implement -w, "implement" -a and -I by ignoring them
544     <li>cp: more sane behavior when overwriting existing files
545     <li>init: stop doing silly things with the console (-400 bytes)
546     <li>httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
547     <li>httpd: run interpreter for configured file extensions in any dir,
548         not only in /cgi-bin/
549     <li>chrt: new applet
550     <li>SELinux: SELinux-related code and -Z option added to several applets,
551         new SELinux-specific applets: chcon, runcon.
552     <li>Build system: produces link map, uses -Wwrite-strings to catch
553         improper usage of string constants.
554     <li>Data and bss section usage audited and reduced - should help NOMMU
555         targets.
556     <li>Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
557         sv, printf, diff, awk, sort, dpkg, diff, tftp
558     <li>Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
559         udhcpd, start_stop_daemon, cmp
560     <li>Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
561         syslogd, swapon, runsv, svlogd, klogd
562     </ul>
563     </p>
564   </li>
565
566   <li><b>18 March 2007 -- BusyBox 1.4.2 (stable)</b>
567     <p><a href="http://busybox.net/downloads/busybox-1.4.2.tar.bz2">BusyBox 1.4.2</a>.
568     </p>
569
570     <p>This release includes only trivial fixes accumulated since 1.4.1.
571     </p>
572   </li>
573
574   <li><b>25 January 2007 -- BusyBox 1.4.1 (stable)</b>
575     <p><a href="http://busybox.net/downloads/busybox-1.4.1.tar.bz2">BusyBox 1.4.1</a>.
576     (<a href="http://busybox.net/downloads/fixes-1.4.1/">patches</a>)</p>
577
578     <p>This release includes only trivial fixes accumulated since 1.4.0.
579     </p>
580   </li>
581
582   <li><b>20 January 2007 -- BusyBox 1.4.0 (stable)</b>
583     <p><a href="http://busybox.net/downloads/busybox-1.4.0.tar.bz2">BusyBox 1.4.0</a>.
584     (<a href="http://busybox.net/downloads/fixes-1.4.0/">patches</a>)</p>
585
586     <p>Since this is a x.x.0 release, it probably is a bit less "stable"
587     than usual.</p>
588     <p>Changes since previous release:
589     <ul>
590     <li>e2fsprogs are mostly removed from busybox. Some smaller parts remain,
591     the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
592     it's too bloated. Really. I'm afraid it's about the only way we can
593     ever get e2fsprogs cleaned up.
594     <li>less: many improvements. Now can display binary files
595     (although I expect it to have trouble with displays where 8bit chars
596     don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
597     anymore. Less does not read entire input up-front. Reads input
598     as it appears (yay!). Works rather nice as man pager. I recommend it
599     for general use now.
600     <li>IPv6: generic support is in place, many networking applets are
601     upgraded to be IPv6 capable. Probably some work remains, but it is
602     already much better than what we had previously.
603     <li>arp: new applet (thanks to Eric Spakman).
604     <li>fakeidentd: non-forking standalone server part was taking ~90%
605     of the applet. Factored it out (in fact, rewrote it).
606     <li>syslogd: mostly rewritten.
607     <li>decompress_unzip, gzip: sanitized a bit.
608     <li>sed: better hadling of NULs
609     <li>httpd: stop adding our own "Content-type:" to CGI output
610     <li>chown: user.grp works again.
611     <li>minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
612     ps, ifupdown, time, su, stty, awk, ping[6], sort,...
613     </ul>
614     </p>
615   </li>
616
617   <li><b>20 January 2007 -- BusyBox 1.3.2 (stable)</b>
618     <p><a href="http://busybox.net/downloads/busybox-1.3.2.tar.bz2">BusyBox 1.3.2</a>.</p>
619
620     <p>This release includes only one trivial fix accumulated since 1.3.1
621     </p>
622   </li>
623
624   <li><b>27 December 2006 -- BusyBox 1.3.1 (stable)</b>
625     <p><a href="http://busybox.net/downloads/busybox-1.3.1.tar.bz2">BusyBox 1.3.1</a>.
626     (<a href="http://busybox.net/downloads/fixes-1.3.1/">patches</a>)</p>
627
628     <p>Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
629     </p>
630   </li>
631
632   <li><b>14 December 2006 -- BusyBox 1.3.0 (stable)</b>
633     <p><a href="http://busybox.net/downloads/busybox-1.3.0.tar.bz2">BusyBox 1.3.0</a>.
634     (<a href="http://busybox.net/downloads/fixes-1.3.0/">patches</a>)</p>
635
636     <p>This release has CONFIG_DESKTOP option which enables features
637     needed for busybox usage on desktop machine. For example, find, chmod
638     and chown get several less frequently used options, od is significantly
639     bigger but matches GNU coreutils, etc. Intended to eventually make
640     busybox a viable alternative for "standard" utilities for slightly
641     adventurous desktop users.
642     <p>Changes since previous release:
643     <ul>
644     <li>find: taking many more of standard options
645     <li>ps: POSIX-compliant -o implemented
646     <li>cp: added -s, -l
647     <li>grep: added -r, fixed -h
648     <li>watch: make it exec child like standard one does (was totally
649         incompatible)
650     <li>tar: fix limitations which were preventing bbox tar usage
651         on big directories: long names and linknames, pax headers
652         (Linux kernel tarballs have that). Fixed a number of obscure bugs.
653         Raised max file limit (now 64Gb). Security fixes (/../ attacks).
654     <li>httpd: added -i (inetd), -f (foreground), support for
655         directory indexer CGI (example is included), bugfixes.
656     <li>telnetd: fixed/improved IPv6 support, inetd+standalone support,
657         other fixes. Useful IPv6 stuff factored out into libbb.
658     <li>runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
659         (these are my personal favorite small-and-beautiful toys)
660     <li>minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
661         fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
662     </ul>
663     <p>Note that GnuPG key used to sign this release is different.
664     1.2.2.1 is also signed post-factum now. Sorry for the mess.
665     </p>
666   </li>
667
668   <li><b>29 October 2006 -- BusyBox 1.2.2.1 (fix)</b>
669     <p><a href="http://busybox.net/downloads/busybox-1.2.2.1.tar.bz2">BusyBox 1.2.2.1</a>.</p>
670
671     <p>Added compile-time warning that static linking against glibc
672     produces buggy executables.
673   </li>
674
675   <li><b>24 October 2006 -- BusyBox 1.2.2 (stable)</b>
676     <p>It's a bit overdue, but
677     <a href="http://busybox.net/downloads/busybox-1.2.2.tar.bz2">here is
678     BusyBox 1.2.2</a>.</p>
679
680     <p>This release has dozens of fixes backported from the ongoing development
681     branch.  There are a couple of bugfixes to sed, two fixes to documentation
682     generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
683     umount to report the right errno on failure and to umount block devices by
684     name with newer kernels, fix mount to handle symlinks properly, make mdev
685     delete device nodes when called for hotplug remove, fix a segfault
686     in traceroute, a minor portability fix to md5sum option parsing, a build
687     fix for httpd with old gccs, an options parsing tweak to hdparm, make test
688     fail gracefully when getgroups() returns -1, fix a race condition in
689     modprobe when two instances run at once (hotplug does this), make "tar xf
690     foo.tar dir/dir" extract all subdirectories, make our getty initialize the
691     terminal more like mingetty, an selinux build fix, an endianness fix in
692     ping6, fix for zcip defending addresses, clean up some global variables in
693     gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
694     fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.</p>
695
696     <p>As <a href="http://lwn.net/Articles/202106/">Linux Weekly News noted</a>,
697     this is my (Rob's) last release of BusyBox.  The new maintainer is Denis
698     Vlasenko, I'm off to do <a href="http://landley.net/code">other things</a>.
699     </p>
700   </li>
701
702   <li><b>29 September 2006 -- New license email address.</b>
703     <p>The email address gpl@busybox.net is now the recommended way to contact
704     the Software Freedom Law Center to report BusyBox license violations.</p>
705
706   <li><b>31 July 2006 -- BusyBox 1.2.1 (stable)</b>
707     <p>Since nobody seems to have objected too loudly over the weekend, I
708     might as well point you all at
709     <a href="http://busybox.net/downloads/busybox-1.2.1.tar.bz2">Busybox
710     1.2.1</a>, a bugfix-only release with no new features.</p>
711
712     <p>It has three shell fixes (two to lash: going "var=value" without
713     saying "export" should now work, plus a missing null pointer check, and
714     one to ash when redirecting output to a file that fills up.)  Fix three
715     embarassing thinkos in the new dmesg command.  Two build tweaks
716     (dependencies for the compressed usage messages and running make in the
717     libbb subdirectory).  One fix to tar so it can extract git-generated
718     tarballs (rather than barfing on the pax extensions).  And a partridge
719     in a pear...  Ahem.</p>
720
721     <p>But wait, there's more!  A passwd changing fix so an empty
722     gecos field doesn't trigger a false objection that the new passwd contains
723     the gecos field.  Make all our setuid() and setgid() calls check the return
724     value in case somebody's using per-process resource limits that prevent
725     a user from having too many processes (and thus prevent a process from
726     switching away from root, in which case the process will now _die_ rather
727     than continue with root privileges).  A fix to adduser to make sure that
728     /etc/group gets updated.  And a fix to modprobe to look for modules.conf
729     in the right place on 2.6 kernels.</p>
730
731   <li><b>30 June 2006 -- BusyBox 1.2.0</b>
732     <p>The -devel branch has been stabilized and the result is
733     <a href="http://busybox.net/downloads/busybox-1.2.0.tar.bz2">Busybox
734     1.2.0</a>.  Lots of stuff changed, I need to work up a decent changelog
735     over the weekend.</p>
736
737     <p>I'm still experimenting with how long is best for the development
738     cycle, and since we've got some largeish projects queued up I'm going to
739     try a longer one.  Expect 1.3.0 in December.  (Expect 1.2.1 any time
740     we fix enough bugs. :)</p>
741
742     <p>Update: Here are <a href="http://busybox.net/downloads/busybox-1.2.0.fixes.patch">the first few bug fixes</a> that will go into 1.2.1.</p>
743
744   <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
745     <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
746     1.1.3</a> is another bugfix release.  It makes passwd use salt, fixes a
747     memory freeing bug in ls, fixes "build all sources at once" mode, makes
748     mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
749     background processes, makes patch work with patch hunks that don't have a
750     timestamp, make less's text search a lot more robust (the old one could
751     segfault), and fixes readlink -f when built against uClibc.</p>
752
753     <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
754
755   <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
756     <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
757     backported from the development branch: Some build fixes, several fixes
758     for mount and nfsmount, a fix for insmod on big endian systems, a fix for
759     find -xdev, and a fix for comm.  Check the file "changelog" in the tarball
760     for more info.</p>
761
762     <p>The next new development release (1.2.0) is slated for June.  A 1.1.3
763     will be released before then if more bug fixes crop up.  (The new plan is
764     to have a 1.x.0 new development release every 3 months, with 1.x.y stable
765     bugfix only releases based on that as appropriate.)</p>
766
767   <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
768     <p>One issue Erik Andersen wanted to resolve when handing off BusyBox
769     maintainership to Rob Landley was license enforcement.  BusyBox and
770     uClibc's existing license enforcement efforts (pro-bono representation
771     by Erik's father's law firm, and the
772     <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), haven't
773     scaled to match the popularity of the projects.  So we put our heads
774     together and did the obvious thing: ask Pamela Jones of
775     <a href="http://www.groklaw.net">Groklaw</a> for suggestions.  She
776     referred us to the fine folks at softwarefreedom.org.</p>
777
778     <p>As a result, we're pleased to announce that the
779     <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
780     has agreed to represent BusyBox and uClibc.  We join a number of other
781     free and open source software projects (such as
782     <a href="http://lwn.net/Articles/141806/">X.org</a>,
783     <a href="http://lwn.net/Articles/135413/">Wine</a>, and
784     <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
785     in being represented by a fairly cool bunch of lawyers, which is not a
786     phrase you get to use every day.</p>
787
788   <li><b>22 March 2006 -- BusyBox 1.1.1</b>
789     <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>
790     <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
791     the various small fixes have been collected together into a
792     <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
793     and new fixes will be appended to that as needed.  Expect 1.1.2 around
794     June.</p>
795   </li>
796   <li><b>11 January 2006 -- 1.1.0 is out</b>
797     <p>The new stable release is
798     <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
799     1.1.0</a>.  It has a number of improvements, including several new applets.
800     (It also has <a href="http://www.busybox.net/lists/busybox/2006-January/017733.html">a few rough spots</a>,
801     but we're trying out a "release early, release often" strategy to see how
802     that works.  Expect 1.1.1 sometime in March.)</p>
803
804   <li><b>31 October 2005 -- 1.1.0-pre1</b>
805     <p>The development branch of busybox is stable enough for wider testing, so
806     you can now
807     <a href="http://www.busybox.net/downloads/busybox-1.1.0-pre1.tar.bz2">download</a>,
808     the first prerelease of 1.1.0.  This prerelease includes a lot of
809     <a href="http://www.busybox.net/downloads/BusyBox.html">new
810     functionality</a>: new applets, new features, and extensive rewrites of
811     several existing applets.  This prerelease should be noticeably more
812     <a href="http://www.opengroup.org/onlinepubs/009695399/">standards
813     compliant</a> than earlier versions of busybox, although we're
814     still working out the <a href="http://bugs.busybox.net">bugs</a>.</p>
815
816   <li><b>16 August 2005 -- 1.01 is out</b>
817
818     <p>A new stable release (<a href="http://www.busybox.net/downloads/busybox-1.01.tar.bz2">BusyBox
819     1.01</a>) is now available for download, containing over a hundred
820     <a href="http://www.busybox.net/lists/busybox/2005-August/015424.html">small
821     fixes</a> that have cropped up since the 1.00 release.</p>
822
823   <li><b>13 January 2005 -- Bug and Patch Tracking</b><p>
824
825     Bug reports sometimes get lost when posted to the mailing list.  The
826     developers of BusyBox are busy people, and have only so much they can keep
827     in their brains at a time. In my case, I'm lucky if I can remember my own
828     name, much less a bug report posted last week... To prevent your bug report
829     from getting lost, if you find a bug in BusyBox, please use the
830     <a href="http://bugs.busybox.net/">shiny new Bug and Patch Tracking System</a>
831     to post all the gory details.
832
833     <p>
834
835     The same applies to patches... Regardless of whether your patch
836     is a bug fix or adds spiffy new features, please post your patch
837     to the Bug and Patch Tracking System to make certain it is
838     properly considered.
839
840
841   <p>
842   <li><b>13 October 2004 -- BusyBox 1.00 released</b><p>
843
844     When you take a careful look at nearly every embedded Linux device or
845     software distribution shipping today, you will find a copy of BusyBox.
846     With countless routers, set top boxes, wireless access points, PDAs, and
847     who knows what else, the future for Linux and BusyBox on embedded devices
848     is looking very bright.
849
850     <p>
851
852     It is therefore with great satisfaction that I declare each and every
853     device already shipping with BusyBox is now officially out of date.
854     The highly anticipated release of BusyBox 1.00 has arrived!
855
856     <p>
857
858     Over three years in development, BusyBox 1.00 represents a tremendous
859     improvement over the old 0.60.x stable series.  Now featuring a Linux
860     KernelConf based configuration system (as used by the Linux kernel),
861     Linux 2.6 kernel support, many many new applets, and the development
862     work and testing of thousands of people from around the world.
863
864     <p>
865
866     If you are already using BusyBox, you are strongly encouraged to upgrade to
867     BusyBox 1.00.  If you are considering developing an embedded Linux device
868     or software distribution, you may wish to investigate if using BusyBox is
869     right for your application.  If you need help getting started using
870     BusyBox, if you wish to donate to help cover expenses, or if you find a bug
871     and need help reporting it, you are invited to visit the <a
872     href="FAQ.html">BusyBox FAQ</a>.
873
874     <p>
875
876     As usual you can <a href="downloads">download busybox here</a>.
877
878     <p>Have Fun!
879
880     <p>
881     <li><b>Old News</b><p>
882     <a href="/oldnews.html">Click here to read older news</a>
883
884
885   <li><b>16 August 2004 -- BusyBox 1.0.0-rc3 released</b><p>
886
887     Here goes release candidate 3...
888     <p>
889     The <a href="downloads/Changelog">changelog</a> has all the details.
890     And as usual you can <a href="downloads">download busybox here</a>.
891
892     <p>Have Fun!
893
894   <p>
895   <li><b>26 July 2004 -- BusyBox 1.0.0-rc2 released</b><p>
896
897     Here goes release candidate 2...
898     <p>
899     The <a href="downloads/Changelog">changelog</a> has all the details.
900     And as usual you can <a href="downloads">download busybox here</a>.
901
902     <p>Have Fun!
903
904   <p>
905   <li><b>20 July 2004 -- BusyBox 1.0.0-rc1 released</b><p>
906
907     Here goes release candidate 1...  This fixes all (most?) of the problems
908     that have turned up since -pre10.  In particular, loading and unloading of
909     kernel modules with 2.6.x kernels should be working much better.
910     <p>
911
912     I <b>really</b> want to get BusyBox 1.0.0 released soon and I see no real
913     reason why the 1.0.0 release shouldn't happen with things pretty much as
914     is.  BusyBox is in good shape at the moment, and it works nicely for
915     everything that I'm doing with it.  And from the reports I've been getting,
916     it works nicely for what most everyone else is doing with it as well.
917     There will eventually be a 1.0.1 anyway, so we might as well get on with
918     it.  No, BusyBox is not perfect.  No piece of software ever is.  And while
919     there is still plenty that can be done to improve things, most of that work
920     is waiting till we can get a solid 1.0.0 release out the door....
921     <p>
922
923     Please do not bother to send in patches adding cool new features at this
924     time.  Only bug-fix patches will be accepted.  If you have submitted a
925     bug-fixing patch to the busybox mailing list and no one has emailed you
926     explaining why your patch was rejected, it is safe to say that your patch
927     has been lost or forgotten.  That happens sometimes.  Please re-submit your
928     bug-fixing patch to the BusyBox mailing list, and be sure to put "[PATCH]"
929     at the beginning of the email subject line!
930
931     <p>
932     The <a href="downloads/Changelog">changelog</a> has all the details.
933     And as usual you can <a href="downloads">download busybox here</a>.
934
935     <p>Have Fun!
936
937     <p>
938     On a less happy note, My 92 year old grandmother (my dad's mom) passed away
939     yesterday (June 19th).  The funeral will be Thursday in a little town about
940     2 hours south of my home.  I've checked and there is absolutely no way I
941     could be back in time for the funeral if I attend <a
942     href="http://www.linuxsymposium.org/2004/">OLS</a> and give my presentation
943     as scheduled.
944     <p>
945     As such, it is with great reluctance and sadness that I have come
946     to the conclusion I will have to make my appologies and skip OLS
947     this year.
948     <p>
949
950
951   <p>
952   <li><b>13 April 2004 -- BusyBox 1.0.0-pre10 released</b><p>
953
954     Ok, I lied.  It turns out that -pre9 will not be the final BusyBox
955     pre-release.  With any luck however -pre10 will be, since I <b>really</b>
956     want to get BusyBox 1.0.0 released very soon.  As usual, please do not
957     bother to send in patches adding cool new features at this time.  Only
958     bug-fix patches will be accepted.  It would also be <b>very</b> helpful if
959     people could continue to review the BusyBox documentation and submit
960     improvements.
961
962     <p>
963     The <a href="downloads/Changelog">changelog</a> has all the details.
964     And as usual you can <a href="downloads">download busybox here</a>.
965
966     <p>Have Fun!
967     <p>
968
969
970   <p>
971   <li><b>6 April 2004 -- BusyBox 1.0.0-pre9 released</b><p>
972
973     Here goes the final BusyBox pre-release...  This is your last chance for
974     bug fixes.  With luck this will be released as BusyBox 1.0.0 later this
975     week.  Please do not bother to send in patches adding cool new features at
976     this time.  Only bug-fix patches will be accepted.  It would also be
977     <b>very</b> helpful if people could help review the BusyBox documentation
978     and submit improvements.  I've spent a lot of time updating the
979     documentation to make it better match reality, but I could really use some
980     assistance in checking that the features supported by the various applets
981     match the features listed in the documentation.
982
983     <p>
984     I had hoped to get this released a month ago, but
985     <a href="http://codepoet.org/gallery/baby_peter/img_1796">
986     another release on 1 March 2004</a> has kept me busy...
987
988     <p>
989     The <a href="downloads/Changelog">changelog</a> has all the details.
990     And as usual you can <a href="downloads">download busybox here</a>.
991
992     <p>Have Fun!
993     <p>
994
995
996   <p>
997   <li><b>23 February 2004 -- BusyBox 1.0.0-pre8 released</b><p>
998
999     Here goes yet another BusyBox pre-release...  Please do not bother to send
1000     in patches supplying new features at this time.  Only bug-fix patches will
1001     be accepted.  If you have a cool new feature you would like to see
1002     supported, or if you have an amazing new applet you would like to submit,
1003     please wait and submit such things later.  We really want to get a release
1004     out we can all be proud of.  We are still aiming to finish off the -pre
1005     series in February and move on to the final 1.0.0 release...  So if you
1006     spot any bugs, now would be an excellent time to send in a fix to the
1007     busybox mailing list.  It would also be <b>very</b> helpful if people could
1008     help review the BusyBox documentation and submit improvements.  It would be
1009     especially helpful if people could check that the features supported by the
1010     various applets match the features listed in the documentation.
1011
1012     <p>
1013
1014     The <a href="downloads/Changelog">changelog</a> has all the details.
1015     And as usual you can <a href="downloads">download busybox here</a>.
1016
1017     <p>Have Fun!
1018     <p>
1019
1020
1021   <li><b>4 February 2004 -- BusyBox 1.0.0-pre7 released</b><p>
1022
1023     There was a bug in -pre6 that broke argument parsing for a
1024     number of applets, since a variable was not being zeroed out
1025     properly.  This release is primarily intended to fix that one
1026     problem.  In addition, this release fixes several other
1027     problems, including a rewrite by mjn3 of the code for parsing
1028     the busybox.conf file used for suid handling, some shell updates
1029     from vodz, and a scattering of other small fixes.  We are still
1030     aiming to finish off the -pre series in February and move on to
1031     the final 1.0.0 release...  If you see any problems, of have
1032     suggestions to make, as always, please feel free to email the
1033     busybox mailing list.
1034
1035     <p>
1036
1037     The <a href="downloads/Changelog">changelog</a> has all
1038     the details.  And as usual you can
1039     <a href="downloads">download busybox here</a>.
1040
1041     <p>Have Fun!
1042     <p>
1043
1044
1045   <p>
1046   <li><b>30 January 2004 -- BusyBox 1.0.0-pre6 released</b><p>
1047
1048     Here goes the next pre-release for the new BusyBox stable
1049     series.  This release adds a number of size optimizations,
1050     updates udhcp, fixes up 2.6 modutils support, updates ash
1051     and the shell command line editing, and the usual pile of
1052     bug fixes both large and small.  Things appear to be
1053     settling down now, so with a bit of luck and some testing
1054     perhaps we can finish off the -pre series in February and
1055     move on to the final 1.0.0 release...  If you see any
1056     problems, of have suggestions to make, as always, please
1057     feel free to email the busybox mailing list.
1058
1059     <p>
1060
1061     People who rely on the <a href="downloads/snapshots/">daily BusyBox snapshots</a>
1062     should be aware that snapshots of the old busybox 0.60.x
1063     series are no longer available.  Daily snapshots are now
1064     only available for the BusyBox 1.0.0 series and now use
1065     the naming scheme "busybox-&lt;date&gt;.tar.bz2".  Please
1066     adjust any build scripts using the old naming scheme accordingly.
1067
1068     <p>
1069
1070     The <a href="downloads/Changelog">changelog</a> has all
1071     the details.  And as usual you can
1072     <a href="downloads">download busybox here</a>.
1073
1074     <p>Have Fun!
1075     <p>
1076
1077
1078   <p>
1079   <li><b>23 December 2003 -- BusyBox 1.0.0-pre5 released</b><p>
1080
1081     Here goes the next pre-release for the new BusyBox stable
1082     series.  The most obvious thing in this release is a fix for
1083     a terribly stupid bug in mount that prevented it from working
1084     properly unless you specified the filesystem type.  This
1085     release also fixes a few compile problems, updates udhcp,
1086     fixes a silly bug in fdisk, fixes ifup/ifdown to behave like
1087     the Debian version, updates devfsd, updates the 2.6.x
1088     modutils support, add a new 'rx' applet, removes the obsolete
1089     'loadacm' applet, fixes a few tar bugs, fixes a sed bug, and
1090     a few other odd fixes.
1091
1092     <p>
1093
1094     If you see any problems, of have suggestions to make, as
1095     always, please feel free to send an email to the busybox
1096     mailing list.
1097
1098     <p>
1099
1100     The <a href="downloads/Changelog">changelog</a> has all
1101     the details.  And as usual you can
1102     <a href="downloads">download busybox here</a>.
1103
1104     <p>Have Fun!
1105     <p>
1106
1107
1108
1109   <li><b>10 December 2003 -- BusyBox 1.0.0-pre4 released</b><p>
1110
1111     Here goes the fourth pre-release for the new BusyBox stable
1112     series.  This release includes major rework to sed, lots of
1113     rework on tar, a new tiny implementation of bunzip2, a new
1114     devfsd applet, support for 2.6.x kernel modules, updates to
1115     the ash shell, sha1sum and md5sum have been merged into a
1116     common applet, the dpkg applets has been cleaned up, and tons
1117     of random bugs have been fixed.  Thanks everyone for all the
1118     testing, bug reports, and patches!  Once again, a big
1119     thank-you goes to Glenn McGrath (bug1) for stepping in and
1120     helping get patches merged!
1121
1122     <p>
1123
1124     And of course, if you are reading this, you might have noticed
1125     the busybox website has been completely reworked.  Hopefully
1126     things are now somewhat easier to navigate...  If you see any
1127     problems, of have suggestions to make, as always, please feel
1128     free to send an email to the busybox mailing list.
1129
1130     <p>
1131
1132     The <a href="downloads/Changelog">changelog</a> has all
1133     the details.  And as usual you can
1134     <a href="downloads">download busybox here</a>.
1135
1136     <p>Have Fun!
1137
1138
1139
1140   <p>
1141   <li><b>12 Sept 2003 -- BusyBox 1.0.0-pre3 released</b><p>
1142
1143     Here goes the third pre-release for the new BusyBox stable
1144     series.  The last prerelease has held up quite well under
1145     testing, but a number of problems have turned up as the number
1146     of people using it has increased.  Thanks everyone for all
1147     the testing, bug reports, and patches!
1148
1149     <p>
1150
1151     If you have submitted a patch or a bug report to the busybox
1152     mailing list and no one has emailed you explaining why your
1153     patch was rejected, it is safe to say that your patch has
1154     somehow gotten lost or forgotten.  That happens sometimes.
1155     Please re-submit your patch or bug report to the BusyBox
1156     mailing list!
1157
1158     <p>
1159
1160     The point of the "-preX" versions is to get a larger group of
1161     people and vendors testing, so any problems that turn up can be
1162     fixed prior to the final 1.0.0 release.  The main feature
1163     (besides additional testing) that is still still on the TODO
1164     list before the final BusyBox 1.0.0 release is sorting out the
1165     modutils issues.  For the new 2.6.x kernels, we already have
1166     patches adding insmod and rmmod support and those need to be
1167     integrated.  For 2.4.x kernels, for which busybox only supports
1168     a limited number of architectures, we may want to invest a bit
1169     more work before we cut 1.0.0.  Or we may just leave 2.4.x
1170     module loading alone.
1171
1172     <p>
1173
1174     I had hoped this release would be out a month ago.  And of
1175     course, it wasn't since Erik became busy getting a release of
1176     <a href="http://www.uclibc.org/">uClibc</a>
1177     out the door.  Many thanks to Glenn McGrath (bug1) for
1178     stepping in and helping get a bunch of patches merged!  I am
1179     not even going to state a date for releasing BusyBox 1.0.0
1180     -pre4 (or the final 1.0.0).  We're aiming for late September...
1181     But if this release proves as to be exceptionally stable (or
1182     exceptionally unstable!), the next release may be very soon
1183     indeed.
1184
1185     <p>
1186
1187     The <a href="downloads/Changelog">changelog</a> has all
1188     the details.  And as usual you can
1189     <a href="downloads">download busybox here</a>.
1190
1191     <p>Have Fun!
1192
1193
1194     <p>
1195     <li><b>30 July 2003 -- BusyBox 1.0.0-pre2 released</b><p>
1196
1197     Here goes another pre release for the new BusyBox stable
1198     series.  The last prerelease (pre1) was given quite a lot of
1199     testing (thanks everyone!) which has helped turn up a number of
1200     bugs, and these problems have now been fixed.
1201
1202     <p>
1203
1204     Highlights of -pre2 include updating the 'ash' shell to sync up
1205     with the Debian 'dash' shell, a new 'hdparm' applet was added,
1206     init again supports pivot_root,  The 'reboot' 'halt' and
1207     'poweroff' applets can now be used without using busybox init.
1208     an ifconfig buffer overflow was fixed, losetup now allows
1209     read-write loop devices, uClinux daemon support was added, the
1210     'watchdog', 'fdisk', and 'kill' applets were rewritten, there were
1211     tons of doc updates, and there were many other bugs fixed.
1212     <p>
1213
1214     If you have submitted a patch and it is not included in this
1215     release and Erik has not emailed you explaining why your patch
1216     was rejected, it is safe to say that he has lost your patch.
1217     That happens sometimes.   Please re-submit your patch to the
1218     BusyBox mailing list.
1219     <p>
1220
1221     The point of the "-preX" versions is to get a larger group of
1222     people and vendors testing, so any problems that turn up can be
1223     fixed prior to the final 1.0.0 release.  The main feature that
1224     is still still on the TODO list before the final BusyBox 1.0.0
1225     release is adding module support for the new 2.6.x kernels.  If
1226     necessary, a -pre3 BusyBox release will happen on August 6th.
1227     Hopefully (i.e.  unless some horrible catastrophic problem
1228             turns up) the final BusyBox 1.0.0 release will be ready by
1229     then...
1230     <p>
1231
1232     The <a href="downloads/Changelog">changelog</a> has all
1233     the details.  As usual you can <a href="downloads">download busybox here</a>.
1234
1235     <p>Have Fun!
1236     <p>
1237
1238     <p>
1239   <li><b>15 July 2003 -- BusyBox 1.0.0-pre1 released</b><p>
1240
1241     The busybox development series has been under construction for
1242     nearly two years now.  Which is just entirely too long...  So
1243     it is with great pleasure that I announce the imminent release
1244     of a new stable series.  Due to the huge number of changes
1245     since the last stable release (and the usual mindless version
1246     number inflation) I am branding this new stable series verison
1247     1.0.x...
1248     <p>
1249
1250     The point of "-preX" versions is to get a larger group of
1251     people and vendors testing, so any problems that turn up can be
1252     fixed prior to the magic 1.0.0 release (which should happen
1253     later this month)...  I plan to release BusyBox 1.0.0-pre2 next
1254     Monday (July 21st), and, if necessary, -pre3 on July 28th.
1255     Hopefully (i.e. unless some horrible catastrophic problem turns
1256     up) the final BusyBox 1.0.0 release should be ready by the end
1257     of July.
1258     <p>
1259
1260     If you have submitted patches, and they are not in this release
1261     and I have not emailed you explaining why your patch was
1262     rejected, it is safe to say that I have lost your patch.  That
1263     happens sometimes.  Please do <B>NOT</b> send all your patches,
1264     support questions, etc, directly to Erik.  I get hundreds of
1265     emails every day (which is why I end up losing patches
1266     sometimes in the flood)...  The busybox mailing list is the
1267     right place to send your patches, support questions, etc.
1268     <p>
1269
1270     I would like to especially thank Vladimir Oleynik (vodz), Glenn
1271     McGrath (bug1), Robert Griebl (sandman), and Manuel Novoa III
1272     (mjn3) for their significant efforts and contributions that
1273     have made this release possible.
1274     <p>
1275
1276     As usual you can <a href="downloads">download busybox here</a>.
1277     You don't really need to bother with the
1278     <a href="downloads/Changelog">changelog</a>, as the changes
1279     vs the stable version are way too extensive to easily enumerate.
1280     But you can take a look if you really want too.
1281
1282     <p>Have Fun!
1283     <p>
1284
1285
1286
1287   <p>
1288   <li><b>26 October 2002 -- BusyBox 0.60.5 released</b><p>
1289
1290     I am very pleased to announce that the BusyBox 0.60.5 (stable)
1291     is now available for download.  This is a bugfix release for
1292     the stable series to address all the problems that have turned
1293     up since the last release.  Unfortunately, the previous release
1294     had a few nasty bugs (i.e. init could deadlock, gunzip -c tried
1295     to delete source files, cp -a wouldn't copy symlinks, and init
1296     was not always providing controlling ttys when it should have).
1297     I know I said that the previous release would be the end of the
1298     0.60.x series.  Well, it turns out I'm a liar.  But this time I
1299     mean it (just like last time ;-).  This will be the last
1300     release for the 0.60.x series --  all further development work
1301     will be done for the development busybox tree.  Expect the development
1302     version to have its first real release very very soon now...
1303
1304     <p>
1305     The <a href="downloads/Changelog.full">changelog</a> has all
1306     the details.  As usual you can <a href="downloads">download busybox here</a>.
1307     <p>Have Fun!
1308     <p>
1309
1310   <p>
1311   <li><b>18 September 2002 -- BusyBox 0.60.4 released</b><p>
1312
1313     I am very pleased to announce that the BusyBox 0.60.4
1314     (stable) is now available for download.  This is primarily
1315     a bugfix release for the stable series to address all
1316     the problems that have turned up since the last
1317     release.  This will be the last release for the 0.60.x series.
1318     I mean it this time --  all further development work will be done
1319     on the development busybox tree, which is quite solid now and
1320     should soon be getting its first real release.
1321
1322     <p>
1323     The <a href="downloads/Changelog.full">changelog</a> has all
1324     the details.  As usual you can <a href="downloads">download busybox here</a>.
1325     <p>Have Fun!
1326     <p>
1327
1328
1329   <p>
1330   <li><b>27 April 2002 -- BusyBox 0.60.3 released</b><p>
1331
1332     I am very pleased to announce that the BusyBox 0.60.3 (stable) is
1333     now available for download.  This is primarily a bugfix release
1334     for the stable series.  A number of problems have turned up since
1335     the last release, and this should address most of those problems.
1336     This should be the last release for the 0.60.x series.  The
1337     development busybox tree has been progressing nicely, and will
1338     hopefully be ready to become the next stable release.
1339
1340     <p>
1341     The <a href="downloads/Changelog">changelog</a> has all
1342     the details.  As usual you can <a href="downloads">download busybox here</a>.
1343     <p>Have Fun!
1344     <p>
1345
1346
1347   <p>
1348   <li><b>6 March 2002 -- busybox.net now has mirrors!</b><p>
1349
1350     Busybox.net is now much more available, thanks to
1351     the fine folks at <a href="http://i-netinnovations.com/">http://i-netinnovations.com/</a>
1352     who are providing hosting for busybox.net and
1353     uclibc.org.  In addition, we now have two mirrors:
1354     <a href="http://busybox.linuxmagic.com/">http://busybox.linuxmagic.com/</a>
1355     in Canada and
1356     <a href="http://busybox.csservers.de/">http://busybox.csservers.de/</a>
1357     in Germany.  I hope this makes things much more
1358     accessible for everyone!
1359
1360
1361 <li>
1362 <b>3 January 2002 -- Welcome to busybox.net!</b>
1363
1364 <p>Thanks to the generosity of a number of busybox
1365 users, we have been able to purchase busybox.net
1366 (which is where you are probably reading this).
1367 Right now, busybox.net and uclibc.org are both
1368 living on my home system (at the end of my DSL
1369 line). I apologize for the abrupt move off of
1370 busybox.lineo.com. Unfortunately, I no longer have
1371 the access needed to keep that system updated (for
1372 example, you might notice the daily snapshots there
1373 stopped some time ago).</p>
1374
1375 <p>Busybox.net is currently hosted on my home
1376 server, at the end of a DSL line. Unfortunately,
1377 the load on them is quite heavy. To address this,
1378 I'm trying to make arrangements to get busybox.net
1379 co-located directly at an ISP. To assist in the
1380 co-location effort, <a href=
1381 "http://www.codepoet.org/~markw">Mark Whitley</a>
1382 (author of busybox sed, cut, and grep) has donated
1383 his <a href=
1384 "http://www.netwinder.org/">NetWinder</a> computer
1385 for hosting busybox.net and uclibc.org. Once this
1386 system is co-located, the current speed problems
1387 should be completely eliminated. Hopefully, too,
1388 some of you will volunteer to set up some mirror
1389 sites, to help to distribute the load a bit.</p>
1390
1391 <p><!--
1392     <center>
1393     Click here to help support busybox.net!
1394     <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
1395     <input type="hidden" name="cmd" value="_xclick">
1396     <input type="hidden" name="business" value="andersen@codepoet.org">
1397     <input type="hidden" name="item_name" value="Support Busybox">
1398     <input type="hidden" name="image_url" value="https://codepoet-consulting.com/images/busybox2.jpg">
1399     <input type="hidden" name="no_shipping" value="1">
1400     <input type="image" src="images/donate.png" border="0" name="submit" alt="Make donation using PayPal">
1401     </form>
1402     </center>
1403     -->
1404  Since some people expressed concern over BusyBox
1405 donations, let me assure you that no one is getting
1406 rich here. All BusyBox and uClibc donations will be
1407 spent paying for bandwidth and needed hardware
1408 upgrades. For example, Mark's NetWinder currently
1409 has just 64Meg of memory. As demonstrated when
1410 google spidered the site the other day, 64 Megs in
1411 not enough, so I'm going to be ordering 256Megs of
1412 ram and a larger hard drive for the box today. So
1413 far, donations received have been sufficient to
1414 cover almost all expenses. In the future, we may
1415 have co-location fees to worry about, but for now
1416 we are ok. A <b>HUGE thank-you</b> goes out to
1417 everyone that has contributed!<br>
1418  -Erik</p>
1419 </li>
1420
1421 <li>
1422 <b>20 November 2001 -- BusyBox 0.60.2 released</b>
1423
1424 <p>We am very pleased to announce that the BusyBox
1425 0.60.2 (stable) is now released to the world. This
1426 one is primarily a bugfix release for the stable
1427 series, and it should take care of most everyone's
1428 needs till we can get the nice new stuff we have
1429 been working on in CVS ready to release (with the
1430 wonderful new buildsystem). The biggest change in
1431 this release (beyond bugfixes) is the fact that msh
1432 (the minix shell) has been re-worked by Vladimir N.
1433 Oleynik (vodz) and so it no longer crashes when
1434 told to do complex things with backticks.</p>
1435
1436 <p>This release has been tested on x86, ARM, and
1437 powerpc using glibc 2.2.4, libc5, and uClibc, so it
1438 should work with just about any Linux system you
1439 throw it at. See the <a href=
1440 "downloads/Changelog">changelog</a> for <small>most
1441 of</small> the details. The last release was
1442 <em>very</em> solid for people, and this one should
1443 be even better.</p>
1444
1445 <p>As usual BusyBox 0.60.2 can be downloaded from
1446 <a href=
1447 "downloads">http://www.busybox.net/downloads</a>.</p>
1448
1449 <p>Have Fun.<br>
1450  -Erik</p>
1451 </li>
1452
1453 <li> <b>18 November 2001 -- Help us buy busybox.net!</b>
1454
1455 <!-- Begin PayPal Logo -->
1456 <center>
1457 Click here to help buy busybox.net!
1458 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
1459 <input type="hidden" name="cmd" value="_xclick">
1460 <input type="hidden" name="business" value="andersen@codepoet.org">
1461 <input type="hidden" name="item_name" value="Support Busybox">
1462 <input type="hidden" name="image_url" value="https://busybox.net/images/busybox2.jpg">
1463 <input type="hidden" name="no_shipping" value="1">
1464 <input type="image" src="images/donate.png" border="0" name="submit" alt="Make donation using PayPal">
1465 </form>
1466 </center>
1467 <!-- End PayPal Logo -->
1468
1469 I've contacted the current owner of busybox.net and he is willing
1470 to sell the domain name -- for $250.  He also owns busybox.org but
1471 will not part with it...  I will then need to pay the registry fee
1472 for a couple of years and start paying for bandwidth, so this will
1473 initially cost about $300.  I would like to host busybox.net on my
1474 home machine (codepoet.org) so I have full control over the system,
1475 but to do that would require that I increase the level of bandwidth
1476 I am paying for.  Did you know that so far this month, there
1477 have been over 1.4 Gigabytes of busybox ftp downloads?  I don't
1478 even <em>know</em> how much CVS bandwidth it requires.  For the
1479 time being, Lineo has continued to graciously provide this
1480 bandwidth, despite the fact that I no longer work for them.  If I
1481 start running this all on my home machine, paying for the needed bandwidth
1482 will start costing some money.
1483 <p>
1484
1485 I was going to pay it all myself, but my wife didn't like that
1486 idea at all (big surprise).   It turns out &lt;insert argument
1487 where she wins and I don't&gt; she has better ideas
1488 about what we should spend our money on that don't involve
1489 busybox.  She suggested I should ask for contributions on the
1490 mailing list and web page.  So...
1491 <p>
1492
1493 I am hoping that if everyone could contribute a bit, we could pick
1494 up the busybox.net domain name and cover the bandwidth costs.  I
1495 know that busybox is being used by a lot of companies as well as
1496 individuals -- hopefully people and companies that are willing to
1497 contribute back a bit.  So if everyone could please help out, that
1498 would be wonderful!
1499 <p>
1500
1501
1502 <li> <b>23 August 2001 -- BusyBox 0.60.1 released</b>
1503 <br>
1504
1505      This is a relatively minor bug fixing release that fixes
1506      up the bugs that have shown up in the stable release in
1507      the last few weeks.  Fortunately, nothing <em>too</em>
1508      serious has shown up.  This release only fixes bugs -- no
1509      new features, no new applets.  So without further ado,
1510      here it is.  Come and get it.
1511      <p>
1512      The
1513      <a href="downloads/Changelog">changelog</a> has all
1514      the details.  As usual BusyBox 0.60.1 can be downloaded from
1515      <a href="downloads">http://busybox.net/downloads</a>.
1516      <p>Have Fun!
1517      <p>
1518
1519
1520 <li> <b>2 August 2001 -- BusyBox 0.60.0 released</b>
1521 <br>
1522      I am very pleased to announce the immediate availability of
1523      BusyBox 0.60.0.  I have personally tested this release with libc5, glibc,
1524      and <a href="http://uclibc.org/">uClibc</a> on
1525      x86, ARM, and powerpc using linux 2.2 and 2.4, and I know a number
1526      of people using it on everything from ia64 to m68k with great success.
1527      Everything seems to be working very nicely now, so getting a nice
1528      stable bug-free(tm) release out seems to be in order.   This releases fixes
1529      a memory leak in syslogd, a number of bugs in the ash and msh shells, and
1530      cleans up a number of things.
1531
1532      <p>
1533
1534      Those wanting an easy way to test the 0.60.0 release with uClibc can
1535      use <a href="http://user-mode-linux.sourceforge.net/">User-Mode Linux</a>
1536      to give it a try by downloading and compiling
1537      <a href="ftp://busybox.net/buildroot.tar.gz">buildroot.tar.gz</a>.
1538      You don't have to be root or reboot your machine to run test this way.
1539      Preconfigured User-Mode Linux kernel source is also on busybox.net.
1540      <p>
1541      Another cool thing is the nifty <a href="downloads/tutorial/index.html">
1542      BusyBox Tutorial</a> contributed by K Computing.  This requires
1543      a ShockWave plugin (or standalone viewer), so you may want to grab the
1544      the GPLed shockwave viewer from <a href="http://www.swift-tools.com/Flash/flash-0.4.10.tgz">here</a>
1545      to view the tutorial.
1546      <p>
1547
1548      Finally, In case you didn't notice anything odd about the
1549      version number of this release, let me point out that this release
1550      is <em>not</em> 0.53, because I bumped the version number up a
1551      bit.  This reflects the fact that this release is intended to form
1552      a new stable BusyBox release series.  If you need to rely on a
1553      stable version of BusyBox, you should plan on using the stable
1554      0.60.x series.  If bugs show up then I will release 0.60.1, then
1555      0.60.2, etc...  This is also intended to deal with the fact that
1556      the BusyBox build system will be getting a major overhaul for the
1557      next release and I don't want that to break products that people
1558      are shipping.  To avoid that, the new build system will be
1559      released as part of a new BusyBox development series that will
1560      have some not-yet-decided-on odd version number.  Once things
1561      stabilize and the new build system is working for everyone, then
1562      I will release that as a new stable release series.
1563
1564      <p>
1565      The
1566      <a href="downloads/Changelog">changelog</a> has all
1567      the details.  As usual BusyBox 0.60.0 can be downloaded from
1568      <a href="downloads">http://busybox.net/downloads</a>.
1569      <p>Have Fun!
1570      <p>
1571
1572
1573 <li> <b>7 July 2001 -- BusyBox 0.52 released</b>
1574 <br>
1575
1576      I am very pleased to announce the immediate availability of
1577      BusyBox 0.52 (the "new-and-improved rock-solid release").  This
1578      release is the result of <em>many</em> hours of work and has tons
1579      of bugfixes, optimizations, and cleanups.  This release adds
1580      several new applets, including several new shells (such as hush, msh,
1581      and ash).
1582
1583      <p>
1584      The
1585      <a href="downloads/Changelog">changelog</a> covers
1586      some of the more obvious details, but there are many many things that
1587      are not mentioned, but have been improved in subtle ways.  As usual,
1588      BusyBox 0.52 can be downloaded from
1589      <a href="downloads">http://busybox.net/downloads</a>.
1590      <p>Have Fun!
1591      <p>
1592
1593
1594 <li> <b>10 April 2001 - Graph of Busybox Growth </b>
1595 <br>
1596 The illustrious Larry Doolittle has made a PostScript chart of the growth
1597 of the Busybox tarball size over time. It is available for downloading /
1598 viewing <a href="busybox-growth.ps"> right here</a>.
1599
1600 <p> (Note that while the number of applets in Busybox has increased, you
1601 can still configure Busybox to be as small as you want by selectively
1602 turning off whichever applets you don't need.)
1603 <p>
1604
1605
1606 <li> <b>10 April 2001 -- BusyBox 0.51 released</b>
1607 <br>
1608
1609      BusyBox 0.51 (the "rock-solid release") is now out there.  This
1610      release adds only 2 new applets: env and vi.  The vi applet,
1611      contributed by Sterling Huxley, is very functional, and is only
1612      22k.  This release fixes 3 critical bugs in the 0.50 release.
1613      There were 2 potential segfaults in lash (the busybox shell) in
1614      the 0.50 release which are now fixed.  Another critical bug in
1615      0.50 which is now fixed: syslogd from 0.50 could potentially
1616      deadlock the init process and thereby break your entire system.
1617      <p>
1618
1619      There are a number of improvements in this release as well.  For
1620      one thing, the wget applet is greatly improved.  Dmitry Zakharov
1621      added FTP support, and Laurence Anderson make wget fully RFC
1622      compliant for HTTP 1.1.  The mechanism for including utility
1623      functions in previous releases was clumsy and error prone.  Now
1624      all utility functions are part of a new libbb library, which makes
1625      maintaining utility functions much simpler.  And BusyBox now
1626      compiles on itanium systems (thanks to the Debian itanium porters
1627      for letting me use their system!).
1628      <p>
1629      You can read the
1630      <a href="downloads/Changelog">changelog</a> for
1631      complete details.  BusyBox 0.51 can be downloaded from
1632      <a href="downloads">http://busybox.net/downloads</a>.
1633      <p>Have Fun!
1634      <p>
1635
1636 <li> <b>Busybox Boot-Floppy Image</b>
1637
1638 <p>Because you asked for it, we have made available a <a href=
1639 "downloads/busybox.floppy.img"> Busybox boot floppy
1640 image</a>. Here's how you use it:
1641
1642 <ol>
1643
1644     <li> <a href="downloads/busybox.floppy.img">
1645     Download the image</a>
1646
1647     <li> dd it onto a floppy like so: <tt> dd if=busybox.floppy.img
1648     of=/dev/fd0 ; sync </tt>
1649
1650     <li> Pop it in a machine and boot up.
1651
1652 </ol>
1653
1654 <p> If you want to look at the contents of the initrd image, do this:
1655
1656 <pre>
1657     mount ./busybox.floppy.img /mnt -o loop -t msdos
1658     cp /mnt/initrd.gz /tmp
1659     umount /mnt
1660     gunzip /tmp/initrd.gz
1661     mount /tmp/initrd /mnt -o loop -t minix
1662 </pre>
1663
1664
1665 <li> <b>15 March 2001 -- BusyBox 0.50 released</b>
1666 <br>
1667
1668      This release adds several new applets including ifconfig, route, pivot_root, stty,
1669      and tftp, and also fixes tons of bugs.  Tab completion in the
1670      shell is now working very well, and the shell's environment variable
1671      expansion was fixed.   Tons of other things were fixed or made
1672      smaller.  For a fairly complete overview, see the
1673      <a href="downloads/Changelog">changelog</a>.
1674      <p>
1675      lash (the busybox shell) is still with us, fixed up a bit so it
1676      now behaves itself quite nicely.  It really is quite usable as
1677      long as you don't expect it to provide Bourne shell grammer.
1678      Standard things like pipes, redirects, command line editing, and
1679      environment variable expansion work great.  But we have found that
1680      this shell, while very usable, does not provide an extensible
1681      framework for adding in full Bourne shell behavior.  So the first order of
1682      business as we begin working on the next BusyBox release will be to merge in the new shell
1683      currently in progress at
1684      <a href="http://doolittle.faludi.com/~larry/parser.html">Larry Doolittle's website</a>.
1685      <p>
1686
1687
1688 <li> <b>27 January 2001 -- BusyBox 0.49 released</b>
1689 <br>
1690
1691      Several new applets, lots of bug fixes, cleanups, and many smaller
1692      things made nicer.  Several cleanups and improvements to the shell.
1693      For a list of the most interesting changes
1694      you might want to look at the <a href="downloads/Changelog">changelog</a>.
1695      <p>
1696      Special thanks go out to Matt Kraai and Larry Doolittle for all their
1697      work on this release, and for keeping on top of things while I've been
1698      out of town.
1699      <p>
1700      <em>Special Note</em><br>
1701
1702      BusyBox 0.49 was supposed to have replaced lash, the BusyBox
1703      shell, with a new shell that understands full Bourne shell/Posix shell grammer.
1704      Well, that simply didn't happen in time for this release.  A new
1705      shell that will eventually replace lash is already under
1706      construction.  This new shell is being developed by Larry
1707      Doolittle, and could use all of our help.  Please see the work in
1708      progress on <a href="http://doolittle.faludi.com/~larry/parser.html">Larry's website</a>
1709      and help out if you can.  This shell will be included in the next
1710      release of BusyBox.
1711      <p>
1712
1713 <li> <b>13 December 2000 -- BusyBox 0.48 released</b>
1714 <br>
1715
1716      This release fixes lots and lots of bugs.  This has had some very
1717      rigorous testing, and looks very, very clean.  The usual tar
1718      update of course: tar no longer breaks hardlinks, tar -xzf is
1719      optionally supported, and the LRP folks will be pleased to know
1720      that 'tar -X' and 'tar --exclude' are both now in.  Applets are
1721      now looked up using a binary search making lash (the busybox
1722      shell) much faster.  For the new debian-installer (for Debian
1723      woody) a .udeb can now be generated.
1724      <p>
1725      The curious can get a list of some of the more interesting changes by reading
1726      the <a href="downloads/Changelog">changelog</a>.
1727      <p>
1728      Many thanks go out to the many many people that have contributed to
1729      this release, especially Matt Kraai, Larry Doolittle, and Kent Robotti.
1730      <p>
1731 <p> <li> <b>26 September 2000 -- BusyBox 0.47 released</b>
1732 <br>
1733
1734      This release fixes lots of bugs (including an ugly bug in 0.46
1735      syslogd that could fork-bomb your system).  Added several new
1736      apps: rdate, wget, getopt, dos2unix, unix2dos, reset, unrpm,
1737      renice, xargs, and expr.  syslogd now supports network logging.
1738      There are the usual tar updates.  Most apps now use getopt for
1739      more correct option parsing.
1740      See the <a href="downloads/Changelog">changelog</a>
1741      for complete details.
1742
1743
1744 <p> <li> <b>11 July 2000 -- BusyBox 0.46 released</b>
1745 <br>
1746
1747      This release fixes several bugs (including a ugly bug in tar,
1748      and fixes for NFSv3 mount support).  Added a dumpkmap to allow
1749      people to dump a binary keymaps for use with 'loadkmap', and a
1750      completely reworked 'grep' and 'sed' which should behave better.
1751      BusyBox shell can now also be used as a login shell.
1752      See the <a href="downloads/Changelog">changelog</a>
1753      for complete details.
1754
1755
1756 <p> <li> <b>21 June 2000 -- BusyBox 0.45 released</b>
1757 <br>
1758
1759      This release has been slow in coming, but is very solid at this
1760      point.  BusyBox now supports libc5 as well as GNU libc.  This
1761      release provides the following new apps: cut, tr, insmod, ar,
1762      mktemp, setkeycodes, md5sum, uuencode, uudecode, which, and
1763      telnet.  There are bug fixes for just about every app as well (see
1764      the <a href="downloads/Changelog">changelog</a> for
1765      details).
1766      <p>
1767      Also, some exciting infrastructure news!  Busybox now has its own
1768      <a href="lists/busybox/">mailing list</a>,
1769      publically browsable
1770      <a href="/cgi-bin/viewcvs.cgi/trunk/busybox/">CVS tree</a>,
1771      anonymous
1772      <a href="cvs_anon.html">CVS access</a>, and
1773      for those that are actively contributing there is even
1774      <a href="cvs_write.html">CVS write access</a>.
1775      I think this will be a huge help to the ongoing development of BusyBox.
1776      <p>
1777      Also, for the curious, there is no 0.44 release.  Somehow 0.44 got announced
1778      a few weeks ago prior to its actually being released.  To avoid any confusion
1779      we are just skipping 0.44.
1780      <p>
1781      Many thanks go out to the many people that have contributed to this release
1782      of BusyBox (esp. Pavel Roskin)!
1783
1784
1785 <p> <li> <b>19 April 2000 -- syslogd bugfix</b>
1786 <br>
1787 Turns out that there was still a bug in busybox syslogd.
1788 For example, with the following test app:
1789 <pre>
1790 #include &lt;syslog.h&gt;
1791
1792 int do_log(char* msg, int delay)
1793 {
1794     openlog("testlog", LOG_PID, LOG_DAEMON);
1795     while(1) {
1796         syslog(LOG_ERR, "%s: testing one, two, three\n", msg);
1797         sleep(delay);
1798     }
1799     closelog();
1800     return(0);
1801 };
1802
1803 int main(void)
1804 {
1805     if (fork()==0)
1806         do_log("A", 2);
1807     do_log("B", 3);
1808 }
1809 </pre>
1810 it should be logging stuff from both "A" and "B".  As released in 0.43 only stuff
1811 from "A" would have been logged.  This means that if init tries to log something
1812 while say ppp has the syslog open, init would block (which is bad, bad, bad).
1813 <p>
1814 Karl M. Hegbloom has created a fix for the problem.
1815 Thanks Karl!
1816
1817
1818 <p> <li> <b>18 April 2000 -- BusyBox 0.43 released (finally!)</b>
1819 <br>
1820 I have finally gotten everything into a state where I feel pretty
1821 good about things.  This is definitely the most stable, solid release
1822 so far.  A lot of bugs have been fixed, and the following new apps
1823 have been added: sh, basename, dirname, killall, uptime,
1824 freeramdisk, tr, echo, test, and usleep.  Tar has been completely
1825 rewritten from scratch.  Bss size has also been greatly reduced.
1826 More details are available in the
1827 <a href="downloads/Changelog">changelog</a>.
1828 Oh, and as a special bonus, I wrote some fairly comprehensive
1829 <em>documentation</em>, complete with examples and full usage information.
1830
1831 <p>
1832 Many thanks go out to the fine people that have helped by submitting patches
1833 and bug reports; particularly instrumental in helping for this release were
1834 Karl Hegbloom, Pavel Roskin, Friedrich Vedder, Emanuele Caratti,
1835 Bob Tinsley, Nicolas Pitre, Avery Pennarun, Arne Bernin, John Beppu, and Jim Gleason.
1836 There were others so if I somehow forgot to mention you, I'm very sorry.
1837 <p>
1838
1839 You can grab BusyBox 0.43 tarballs <a href="downloads">here</a>.
1840
1841 <p> <li> <b>9 April 2000 -- BusyBox 0.43 pre release</b>
1842 <br>
1843 Unfortunately, I have not yet finished all the things I want to
1844 do for BusyBox 0.43, so I am posting this pre-release for people
1845 to poke at.  This contains my complete rewrite of tar, which now weighs in at
1846 5k (7k with all options turned on) and works for reading and writing
1847 tarballs (which it does correctly for everything I have been able to throw
1848 at it).  Tar also (optionally) supports the "--exclude" option (mainly because
1849 the Linux Router Project folks asked for it).  This also has a pre-release
1850 of the micro shell I have been writing.  This pre-release should be stable
1851 enough for production use -- it just isn't a release since I have some structural
1852 changes I still want to make.
1853 <p>
1854 The pre-release can be found <a href="downloads">here</a>.
1855 Please let me know ASAP if you find <em>any</em> bugs.
1856
1857 <p> <li> <b>28 March 2000 -- Andersen Baby Boy release</b>
1858 <br>
1859 I am pleased to announce that on Tuesday March 28th at 5:48pm, weighing in at 7
1860 lbs. 12 oz, Micah Erik Andersen was born at LDS Hospital here in Salt Lake City.
1861 He was born in the emergency room less then 5 minutes after we arrived -- and
1862 it was such a relief that we even made it to the hospital at all.  Despite the
1863 fact that I was driving at an amazingly unlawful speed and honking at everybody
1864 and thinking decidedly unkind thoughts about the people in our way, my wife
1865 (inconsiderate of my feelings and complete lack of medical training) was lying
1866 down in the back seat saying things like "I think I need to start pushing now"
1867 (which she then proceeded to do despite my best encouraging statements to the
1868 contrary).
1869 <p>
1870 Anyway, I'm glad to note that despite the much-faster-than-we-were-expecting
1871 labor, both Shaunalei and our new baby boy are doing wonderfully.
1872 <p>
1873 So now that I am done with my excuse for the slow release cycle...
1874 Progress on the next release of BusyBox has been slow but steady.  I expect
1875 to have a release sometime during the first week of April.  This release will
1876 include a number of important changes, including the addition of a shell, a
1877 re-write of tar (to accommodate the Linux Router Project), and syslogd can now
1878 accept multiple concurrent connections, fixing lots of unexpected blocking
1879 problems.
1880
1881
1882 <p> <li> <b>11 February 2000 -- BusyBox 0.42 released</b>
1883 <br>
1884
1885      This is the most solid BusyBox release so far.  Many, many
1886         bugs have been fixed.   See the
1887         <a href="downloads/Changelog">changelog</a> for details.
1888
1889         Of particular interest, init will now cleanly unmount
1890         filesystems on reboot, cp and mv have been rewritten and
1891         behave much better, and mount and umount no longer leak
1892         loop devices.  Many thanks go out to Randolph Chung,
1893         Karl M. Hegbloom, Taketoshi Sano, and Pavel Roskin for
1894         their hard work on this release of BusyBox.  Please pound
1895         on it and let me know if you find any bugs.
1896
1897 <p> <li> <b>19 January 2000 -- BusyBox 0.41 released</b>
1898 <br>
1899
1900      This release includes bugfixes to cp, mv, logger, true, false,
1901         mkdir, syslogd, and init.  New apps include wc, hostid,
1902         logname, tty, whoami, and yes.  New features include loop device
1903         support in mount and umount, and better TERM handling by init.
1904         The changelog can be found <a href="downloads/Changelog">here</a>.
1905
1906 <p> <li> <b>7 January 2000 -- BusyBox 0.40 released</b>
1907 <br>
1908
1909      This release includes bugfixes to init (now includes inittab support),
1910      syslogd, head, logger, du, grep, cp, mv, sed, dmesg, ls, kill, gunzip, and mknod.
1911      New apps include sort, uniq, lsmod, rmmod, fbset, and loadacm.
1912      In particular, this release fixes an important bug in tar which
1913      in some cases produced serious security problems.
1914      As always, the changelog can be found <a href="downloads/Changelog">here</a>.
1915
1916 <p> <li> <b>11 December 1999 -- BusyBox Website</b>
1917 <br>
1918      I have received permission from Bruce Perens (the original author of BusyBox)
1919         to set up this site as the new primary website for BusyBox.  This website
1920         will always contain pointers to the latest and greatest, and will also
1921         contain the latest documentation on how to use BusyBox, what it can do,
1922         what arguments its apps support, etc.
1923
1924 <p> <li> <b>10 December 1999 -- BusyBox 0.39 released</b>
1925 <br>
1926      This release includes fixes to init, reboot, halt, kill, and ls, and contains
1927      the new apps ping, hostname, mkfifo, free, tail, du, tee, and head.  A full
1928      changelog can be found <a href="downloads/Changelog">here</a>.
1929 <p> <li> <b>5 December 1999 -- BusyBox 0.38 released</b>
1930 <br>
1931      This release includes fixes to tar, cat, ls, dd, rm, umount, find, df,
1932         and make install, and includes new apps syslogd/klogd and logger.
1933
1934
1935 </ul>
1936
1937
1938 <!--#include file="footer.html" -->
1939