blob: d3378e60cbb4ad2c8be96156ce85aff1b5895392 [file] [log] [blame]
Eric Andersen539eef62003-12-10 12:08:20 +00001<!--#include file="header.html" -->
2
Eric Andersen539eef62003-12-10 12:08:20 +00003<ul>
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +00004 <li><b>21 August 2008 -- BusyBox 1.12.0 (unstable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +00005 <p><a href="http://busybox.net/downloads/busybox-1.12.0.tar.bz2">BusyBox 1.12.0</a>.
6 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_12_stable/">svn</a>,
7 <a href="http://busybox.net/downloads/fixes-1.12.0/">patches</a>,
8 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +00009 <p>Sizes of busybox-1.11.1 and busybox-1.12.0 (with equivalent config, static uclibc build):<pre>
10 text data bss dec hex filename
11 829687 617 7052 837356 cc6ec busybox-1.11.1/busybox
12 822961 594 6832 830387 cabb3 busybox-1.12.0/busybox
13</pre>
14
15 <p>New applets: rdev (Grant Erickson), setfont, showkey (both by Vladimir)
16
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000017 <p>Most significant changes since previous release (please report any regression):
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000018 <ul>
19 <li>ash: bash compat: "shift $BIGNUM" is equivalent to "shift 1"
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000020 <li>ash: dont allow e.g. exec &lt;&10 to attach to script's fd!
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000021 <li>ash: fix a bug where redirection fds were not closed afterwards. optimize close+fcntl(DUPFD) into dup2
22 <li>ash: fix segfault in "command -v"
23 <li>ash: fix very weak $RANDOM generator
24 <li>ash: prevent exec NN&gt;&amp;- from closing fd used for script reading
25 <li>ash: teach ash about 123&gt;file. It could take only 0..9 before
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000026 <li>hush: fix a case where "$@" must expand to no word at all
27 <li>hush: fix mishandling of a'b'c=fff as assignments. They are not
28 <li>hush: fix non-detection of builtins and applets in "v=break; ...; $v; ..." case
29 <li>hush: fix "while false; ..." exitcode; add testsuites
30 <li>hush: support "case...esac" statements (~350 bytes of code)
31 <li>hush: support "break N" and "continue N" statements
32 <li>hush: support "for if in do done then; do echo $if; done" case
33 <li>hush: support "for v; do ... done" syntax (implied 'in "$@"')
34 <li>hush: support $_NUMBERS variable names
35 <li>libbb: unified config parser (by Vladimir). This change affected many applets
36 </ul>
37
38 <p>Other changes:
39 <ul>
40 <li>libbb: dump: do not use uninitialized memory (closes bug 4364)
41 <li>libbb: fix bb_strtol[l]'s check for "-" (closes bug 4174)
42 <li>libbb: fix --help to not affect "test --help"
43 <li>libbb: fix mishandling of "all argv are opts" in getopt32()
44 <li>libbb: getopt32() should not ever touch argv[0] (even read)
45 <li>libbb: introduce and use xrealloc_vector
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000046 <li>libbb: [x]fopen_for_{read,write} introduced and used (by Vladimir)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000047 <li>lineedit: fix use-after-free
48 <li>arp: without -H type, assume "ether" (closes bug 4564)
49 <li>ar: reuse existing ar unpacking code
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000050 <li>awk: fix a case with multiple -f options. Simplify -f file reading.
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000051 <li>bb_strtoXXX: close bug 4174 (potential use of buf[-1])
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000052 <li>build system: introduce and use FAST_FUNC: regparm on i386, otherwise no-op
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000053 <li>bunzip2: fix an uncompression error (by Rob Landley rob AT landley.net)
54 <li>b[un]zip2, g[un]zip: unlink destination if -f is given (closes bug 3854)
55 <li>comm: almost total rewrite
56 <li>cpio: fix -m to actually work as expected (by Pascal Bellard)
57 <li>cpio: internalize archive_xread_all_eof, add a few paranoia checks for corrupted cpio files
58 <li>cpio: make long opts depend only on ENABLE_GETOPT_LONG
59 <li>cpio: on unpack, limit filename length to 8k
60 <li>cpio: support some long options
61 <li>crond: use execlp instead of execl
Denis Vlasenko68cef202008-08-21 11:34:57 +000062 <li>cut: fix buffer overflow (closes bug 4544)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000063 <li>envdir: fix "envdir with no params" and "envdir dir" cases
64 <li>findfs: make it use setuid-ness of busybox binary
65 <li>fsck: use getmntent_r instead of open-coded parsing (by Vladimir)
66 <li>fuser: a bit of safety in scanf
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000067 <li>grep: option to use GNU regex matching instead of POSIX one. This fixes problems with NULs in files being scanned, but costs +800 bytes
68 <li>halt: signal init regardless of ENABLE_INIT
69 <li>httpd: add homedir directive specially for (and by) Walter Harms wharms AT bfs.de
70 <li>ifupdown: /etc/network/interfaces can have comments with leading blanks
71 <li>ifupdown: fixes for custom MAC address (by Wade Berrier wberrier AT gmail.com)
72 <li>ifupdown: fixes for shutdown of DHCP-managed interfaces (by Wade Berrier wberrier AT gmail.com)
73 <li>inetd: do not trash errno in signal handlers; in CHLD handler, stop looping through services when pid is found
74 <li>insmod: users report that "|| defined(__powerpc__)" is missing
75 <li>install: do not chown intermediate directories with install -d (by Natanael Copa)
76 <li>install: fix long option not taking params (closes bug 4584)
77 <li>lpd,lpr: send/receive ACKs after filenames, not only after file bodies
78 <li>ls: fix a bug where we may use uninintialized variable
79 <li>man: add handling of "man links", by Ivana Varekova varekova AT redhat.com
80 <li>man: fix a case when a full pathname to manpage is given
81 <li>man: fix inverted cat/man bool variable
82 <li>man: fix missed NULL termination of an array
83 <li>man: mimic "no manual entry for 'bogus'" message and exitcode
84 <li>man: support cat pages too (by Jason Curl jcurlnews AT arcor.de)
85 <li>man: teach it to use .lzma if requested by .config
86 <li>mdev: check for "/block/" substring for block dev detection
87 <li>mdev: do not complain if mdev.conf does not exist
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000088 <li>mdev: if device was moved at creation, at removal correctly remove it from moved location and also remove symlinks to it
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000089 <li>mdev: support for serializing hotplug
90 <li>mdev, init: use shared code for fd sanitization
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000091 <li>mkdir: fix "uname 0222; mkdir -p foo/bar" case (by Doug Graham dgraham AT nortel.com)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000092 <li>modprobe: support for /etc/modprobe.d (by Timo Teras)
93 <li>modprobe: use buffering line reads (fgets()) instead of reads()
94 <li>modutils: optional modprobe-small (by Vladimir), 15kb smaller than standard one
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +000095 <li>mount: support for "-o mand" and "[no]relatime"
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +000096 <li>mount: support nfs mount option nordiplus (by Octavian Purdila opurdila AT ixiacom.com)
97 <li>mount: support relatime / norelatime
98 <li>mount: testsuite for "-o mand"
99 <li>msh: fix "while...continue" (closes bug 3884)
Bernhard Reutner-Fischer040fead2008-08-21 10:35:26 +0000100 <li>mv: fix a case when we move dangling symlink across mountpoints
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000101 <li>netstat: optional -p support (by L. Gabriel Somlo somlo AT cmu.edu)
102 <li>nmeter: fix read past the end if a buffer (closes bug 4594)
Denis Vlasenko68cef202008-08-21 11:34:57 +0000103 <li>od, hexdump: fix bug where xrealloc may move pointer, leaving other pointers dangling (closes bug 4104)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000104 <li>open_transformer: don't leak compressed descriptor anymore
105 <li>open_transformer: fix bug of calling exit instead of _exit
Denis Vlasenko68cef202008-08-21 11:34:57 +0000106 <li>pidof/killall: allow find_pid_by_name to find running processes started as scripts_with_name_longer_than_15_bytes.sh (closes bug 4054)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000107 <li>printf: do not print garbage on "%Ld" (closes bug 4214)
108 <li>printf: fix %b, fix several bugs in %*.*, fix compat issues with aborting too early, support %zd; expand testsuite
109 <li>printf: protect against bogus format specifiers (closes bug 4184)
110 <li>libunarchive: refactor handling of archived files. "tar f file.tar.lzma" now works too
111 <li>sendmail: updates from Vladimir:
112 <li>sendmail: do not discard all headers
113 <li>sendmail: do not ignore CC; accept to: and cc: case-insensitively. +20 bytes
114 <li>sendmail: fixed mail recipient address
115 <li>sendmail: fixed SEGV if sender address is missed
116 <li>sendmail: use HOSTNAME instead of HOST when no server is explicitly specified
Bernhard Reutner-Fischer158f1d42008-08-21 11:19:52 +0000117 <li>sleep: if FANCY &amp;&amp; DESKTOP, support fractional seconds, minutes, hours and so on (coreutils compat)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000118 <li>ssd: CLOSE_EXTRA_FDS in MMU case too
119 <li>ssd: do not stat -x EXECUTABLE, it is not needed anymore
120 <li>ssd: fix -a without -x case
121 <li>ssd: use $PATH
122 <li>tar: fix handling of tarballs with symlinks with size field != 0
Denis Vlasenko14a79382008-08-21 11:36:24 +0000123 <li>tar: handle autodetection for tiny .tar.gz files too, simplify autodetection
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000124 <li>taskset: fix some careless code in both fancy and non-fancy cases. -5 bytes for fancy, +5 for non-fancy
125 <li>tee: fix infinite looping on open error (echo asd | tee "")
126 <li>tee: "-" is a name for stdout, handle it that way
127 <li>telnetd: fix issue file printing
128 <li>test: fix parser to prefer binop over unop, as coreutils does
129 <li>testsuite: uniformly use $ECHO with -n -e
130 <li>time: don't segfault with no arguments
131 <li>touch: support -r REF_FILE if ENABLE_DESKTOP (needed for blackfin compile)
132 <li>tr: fix "access past the end of a string" bug 4354
133 <li>tr: fix "tr [=" case (closes bug 4374)
Denis Vlasenko68cef202008-08-21 11:34:57 +0000134 <li>tr: fix yet another access past the end of a string (closes bug 4374)
Denis Vlasenkoc1b39ed2008-08-21 10:19:28 +0000135 <li>unlzma: fix memory leak (by Pascal Bellard)
136 <li>vi: fix reversed checks for underflow
137 <li>vi: using array data after it fell out of scope is stupid
138 <li>xargs: fix -e default to match newer GNU xargs, add SUS mandated -E (closes bug 4414)
139 <li>other fixes and code size reductions in many applets
140 </ul>
141 <p>
142 The email address gpl@busybox.net is the recommended way to contact
143 the Software Freedom Law Center to report BusyBox license violations.
144 </p>
145
Denis Vlasenkoe18d21d2008-07-11 22:11:50 +0000146 <li><b>12 July 2008 -- BusyBox 1.11.1 (stable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000147 <p><a href="http://busybox.net/downloads/busybox-1.11.1.tar.bz2">BusyBox 1.11.1</a>.
148 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/">svn</a>,
149 <a href="http://busybox.net/downloads/fixes-1.11.1/">patches</a>,
150 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenkoe18d21d2008-07-11 22:11:50 +0000151 <p>
152 Bugfix-only release for 1.11.x branch. It contains fixes for awk,
153 bunzip2, cpio, ifupdown, ip, man, start-stop-daemon, uname and vi.
154 </p>
155
Denis Vlasenkoff814f82008-07-11 09:55:58 +0000156 <li><b>11 July 2008 -- HOWTO is updated</b>
157 <p>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000158 <a href="http://busybox.net/~vda/HOWTO/i486-linux-uclibc/HOWTO.txt">
Denis Vlasenkoff814f82008-07-11 09:55:58 +0000159 "How to build static busybox for i486-linux-uclibc"</a> is updated
160 and tested on a fresh Fedora 9 install. Please report if it doesn't
161 work for you.
162 </p>
163
Denis Vlasenko6e18f9a2008-06-25 15:58:00 +0000164 <li><b>25 June 2008 -- BusyBox 1.11.0 (unstable), BusyBox 1.10.4 (stable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000165 <p><a href="http://busybox.net/downloads/busybox-1.11.0.tar.bz2">BusyBox 1.11.0</a>.
166 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/">svn</a>,
167 <a href="http://busybox.net/downloads/fixes-1.11.0/">patches</a>,
168 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
169 <p><a href="http://busybox.net/downloads/busybox-1.10.4.tar.bz2">BusyBox 1.10.4</a>.
170 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/">svn</a>,
171 <a href="http://busybox.net/downloads/fixes-1.10.4/">patches</a>,
172 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenko6e18f9a2008-06-25 15:58:00 +0000173 <p>Sizes of busybox-1.10.4 and busybox-1.11.0 (with equivalent config, static uclibc build):<pre>
174 text data bss dec hex filename
175 800675 636 7080 808391 c55c7 busybox-1.10.4
176 798392 611 6900 805903 c4c0f busybox-1.11.0
177</pre>
178
179 <p>New applets: inotify (Vladimir Dronnikov), man (Ivana Varekova),
180 fbsplash (Michele Sanges), depmod (Bernhard Fischer)
181
182 <p>Changes since previous release:
183 <ul>
184 <li>build system: reinstate CONFIG_CROSS_COMPILE_PREFIX
185 <li>ash: optional bash compatibility features added; other fixes
186 <li>hush: lots and lots of fixes
Denis Vlasenkof8e87832008-07-02 11:34:49 +0000187 <li>msh: fix the case where the file has exec bit but can't be run directly (runs "$SHELL file" instead)
Denis Vlasenko6e18f9a2008-06-25 15:58:00 +0000188 <li>msh: fix exit codes when command is not found or can't be execed
189 <li>udhcpc: added workaround for buggy kernels
190 <li>mount: fix mishandling of proto=tcp/udp
191 <li>diff: make it work on non-seekable streams
192 <li>openvt: made more compatible with "standard" one
193 <li>mdev: fix block/char device detection
194 <li>ping: add -w, -W support (James Simmons)
195 <li>crond: add handling of "MAILTO=user" lines
196 <li>start-stop-daemon: make --exec follow symlinks (Joakim Tjernlund)
197 <li>date: make it accept ISO date format
198 <li>echo: fix echo -e -n "msg\n\0" (David Pinedo)
Denis Vlasenkof8e87832008-07-02 11:34:49 +0000199 <li>httpd: fix several bugs triggered by relative path in -h DIR
Denis Vlasenko6e18f9a2008-06-25 15:58:00 +0000200 <li>printf: fix printf -%s- foo, printf -- -%s- foo
201 <li>syslogd: do not error out on missing files to rotate
202 <li>ls: support Unicode in names
203 <li>ip: support for the LOWER_UP flag (Natanael Copa)
204 <li>mktemp: make argument optional (coreutil 6.12 compat)
205 <li>libiproute: fix option parsing, so that "ip -o link" works again
206 <li>other fixes and code size reductions in many applets
207 </ul>
Denis Vlasenko8b393e52008-07-08 09:07:01 +0000208 <p>
Denis Vlasenko8b393e52008-07-08 09:07:01 +0000209 The email address gpl@busybox.net is the recommended way to contact
210 the Software Freedom Law Center to report BusyBox license violations.
Denis Vlasenko6e18f9a2008-06-25 15:58:00 +0000211 </p>
212
Denis Vlasenkoeee4f552008-06-13 12:06:22 +0000213 <li><b>12 June 2008 -- Sponsors!</b>
214 <p>We want to thank the following companies which are providing support
215 for BusyBox project:
216 <ul>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000217 <li>AOE media, a <a href="http://www.aoemedia.com/typo3-development.html">
Denis Vlasenkoe773be02008-06-13 13:10:01 +0000218 TYPO3 development agency</a> contributes financially.
219 <p>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000220 <li><a href="http://www.analog.com/en/">Analog Devices, Inc.</a> provided
221 a <a href="http://docs.blackfin.uclinux.org/doku.php?id=bf537_quick_start">
Denis Vlasenkoeee4f552008-06-13 12:06:22 +0000222 Blackfin development board</a> free of charge.
Bernhard Reutner-Fischer158f1d42008-08-21 11:19:52 +0000223 <a href="http://www.analog.com/blackfin">Blackfin</a>
Denis Vlasenkoeee4f552008-06-13 12:06:22 +0000224 is a NOMMU processor, and its availability for testing is invaluable.
225 If you are an embedded device developer,
Denis Vlasenkoaa9cd892008-06-13 13:49:59 +0000226 please note that Analog Devices has entire Linux distribution available
Denis Vlasenkoeee4f552008-06-13 12:06:22 +0000227 for download for this board. Visit
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000228 <a href="http://blackfin.uclinux.org/">http://blackfin.uclinux.org/</a>
Denis Vlasenkoeee4f552008-06-13 12:06:22 +0000229 for more information.
230 </ul>
231 </p>
232
Bernhard Reutner-Fischer593f8ba2008-06-06 08:40:28 +0000233 <li><b>5 June 2008 -- BusyBox 1.10.3 (stable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000234 <p><a href="http://busybox.net/downloads/busybox-1.10.3.tar.bz2">BusyBox 1.10.3</a>.
235 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/">svn</a>,
236 <a href="http://busybox.net/downloads/fixes-1.10.3/">patches</a>,
237 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenkob6fe1002008-06-05 01:17:49 +0000238 <p>
239 Bugfix-only release for 1.10.x branch. It contains fixes for dnsd, fuser, hush,
240 ip, mdev and syslogd.
Denis Vlasenkob6fe1002008-06-05 01:17:49 +0000241 </p>
242
Denis Vlasenko35d16832008-05-08 15:36:54 +0000243 <li><b>8 May 2008 -- BusyBox 1.10.2 (stable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000244 <p><a href="http://busybox.net/downloads/busybox-1.10.2.tar.bz2">BusyBox 1.10.2</a>.
245 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/">svn</a>,
246 <a href="http://busybox.net/downloads/fixes-1.10.2/">patches</a>,
247 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenko35d16832008-05-08 15:36:54 +0000248 <p>
249 Bugfix-only release for 1.10.x branch. It contains fixes for echo, httpd, pidof,
250 start-stop-daemon, tar, taskset, tab completion in shells, build system.
251 <p>Please note that mdev was backported from current svn trunk. Please
252 report if you encounter any problems with it.
Denis Vlasenko35d16832008-05-08 15:36:54 +0000253 </p>
254
Denis Vlasenko9a7af9f2008-04-19 04:28:21 +0000255 <li><b>19 April 2008 -- BusyBox 1.10.1 (stable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000256 <p><a href="http://busybox.net/downloads/busybox-1.10.1.tar.bz2">BusyBox 1.10.1</a>.
257 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/">svn</a>,
258 <a href="http://busybox.net/downloads/fixes-1.10.1/">patches</a>,
259 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenko9a7af9f2008-04-19 04:28:21 +0000260 <p>
261 Bugfix-only release for 1.10.x branch. It contains fixes for
262 fuser, init, less, nameif, tail, taskset, tcpudp, top, udhcp.
Denis Vlasenko9a7af9f2008-04-19 04:28:21 +0000263
Denis Vlasenko74f82082008-03-21 20:50:37 +0000264 <li><b>21 March 2008 -- BusyBox 1.10.0 (unstable)</b>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000265 <p><a href="http://busybox.net/downloads/busybox-1.10.0.tar.bz2">BusyBox 1.10.0</a>.
266 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/">svn</a>,
267 <a href="http://busybox.net/downloads/fixes-1.10.0/">patches</a>,
268 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
Denis Vlasenko74f82082008-03-21 20:50:37 +0000269
270 <p>Sizes of busybox-1.9.2 and busybox-1.10.0 (with almost full config, static uclibc build):<pre>
271 text data bss dec hex filename
272 781405 679 7500 789584 c0c50 busybox-1.9.2
273 773551 640 7372 781563 becfb busybox-1.10.0
274</pre>
275 <p>Top 10 stack users:<pre>
276busybox-1.9.2: busybox-1.10.0:
277echo_dg 4116 bb_full_fd_action 4112
278bb_full_fd_action 4112 find_list_entry2 4096
279discard_dg 4108 readlink_main 4096
280discard_dg 4096 ipaddr_list_or_flush 3900
281echo_stream 4096 iproute_list_or_flush 3680
282discard_stream 4096 insmod_main 3152
283find_list_entry2 4096 fallbackSort 2952
284readlink_main 4096 do_iproute 2492
285ipaddr_list_or_flush 3900 cal_main 2464
286iproute_list_or_flush 3680 readhere 2308
287</pre>
288
289 <p>New applets: brctl, chat (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
290 findfs, ifenslave (closes bug 115), lpd (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
291 lpr+lpq (by Walter Harms), script (by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;),
292 sendmail (Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;), tac, tftpd.
293
294 <p>Made NOMMU-compatible: crond, crontab, ifupdown, inetd, init, runsv, svlogd, tcpsvd, udpsvd.
295
296 <p>Changes since previous release:
297 <ul>
298 <li>globally: add -Wunused-parameter
299 <li>globally: add optimization barrier to all "G trick" locations
300 <li>adduser/addgroup: check username for invalid chars (by Tito &lt;farmatito AT tiscali.it&gt;)
301 <li>adduser: optional support for long options. Closes bug 2134
302 <li>ash: handle "A=1 A=2 B=$A; echo $B". Closes bug 947
303 <li>ash: make ash -c "if set -o barfoo 2&gt;/dev/null; then echo foo; else echo bar; fi" work. Closes bug 1142
304 <li>build system: don't use "gcc -o /dev/null", old gcc can delete /dev/null in this case
305 <li>build system: fixes for cross-compiling on an OS X host
306 <li>build system: make it do without "od -t"
307 <li>build system: pass CFLAGS to link stage too. Closes bug 1376
308 <li>build system: add CONFIG_NOMMU
309 <li>cp: add ENABLE_FEATURE_VERBOSE_CP_MESSAGE. Closes bug 1470
310 <li>crontab: almost complete rewrite
311 <li>dnsd: properly set _src_ IP:port on outgoing UDP packets
312 <li>dpkg: fix bug where existence check was reversed
313 <li>eject: add -s for SCSI- and USB-devices (Nico Erfurth)
314 <li>fdisk: fix a case where break was reached only for DOS labels
315 <li>fsck: don't kill pid -1! (Roy Marples &lt;roy at marples.name&gt;)
316 <li>fsck_minix: fix bug in map_block2: s/(blknr &gt;= 256 * 256)/(blknr &lt; 256 * 256)/
317 <li>fuser: substantial rewrite
318 <li>getopt: add support for "a+" specifier for nonnegative int parameters. By Vladimir Dronnikov &lt;dronnikov at gmail.com&gt;
319 <li>getty: don't try to detect parity on local lines (Joakim Tjernlund &lt;Joakim.Tjernlund at transmode.se&gt;)
320 <li>halt: write wtmp entry if wtmp support is enabled
321 <li>httpd: "HEAD" support. Closes bug 1530
322 <li>httpd: fix bug 2004: wrong argv when interpreter is invoked
323 <li>httpd: fix bug where we did chdir("") if CGI path had only one "/"
324 <li>httpd: fix for POST upload
325 <li>httpd: support for "I:index.xml" syntax (Peter Korsgaard &lt;jacmet AT uclibc.org&gt;)
326 <li>hush: fix a case where none of pipe members could be started because of fork failure
327 <li>hush: more correct handling of piping
328 <li>hush: reinstate `cmd` handling for NOMMU
329 <li>hush: report [v]fork failures
330 <li>hush: set CLOEXEC on script file being executed
331 <li>hush: try to add a bit more of vfork-friendliness
332 <li>inetd: make "udp nowait" work
333 <li>inetd: make inetd IPv6-capable
334 <li>init: add FEATURE_KILL_REMOVED (Eugene Bordenkircher &lt;eugebo AT gmail.com&gt;)
335 <li>init: allow last line of config file to be not terminated by "\n"
336 <li>init: do not die if "/dev/null" is missing
337 <li>init: fix bug 1111: restart actions were not splitting words
338 <li>init: wait for orphaned children too while waiting for sysinit-like processes (harald-tuxbox AT arcor.de)
339 <li>ip route: "ip route" was misbehaving (extra argv+1 ate 1st env var)
340 <li>last: do not go into endless loop on read error
341 <li>less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)
342 <li>less: "examine" command will not bomb out on bad file name now
343 <li>less: fix bug where backspace wasn't actually deleting chars
344 <li>less: make it a bit more resistant against status line corruption
345 <li>less: improve search when data is not supplied fast enough by stdin - now will try reading for 1-2 seconds before declaring that there is no match. This fixes a very common annoyance with long manpages
346 <li>less: update line input so that it doesn't interfere with screen update. Makes "man bash", [enter], [/], &lt;enter search pattern&gt;, [enter] more usable - manpage now draws even as you enter the pattern!
347 <li>libbb: filename completion matches dangling symlinks too
348 <li>libbb: fix getopt state corruption for NOFORK applets
349 <li>libbb: full_read/write now will report partial data counts prior to error
350 <li>libbb: intrduce and use safe_gethostname. By Tito &lt;farmatito AT tiscali.it&gt;
351 <li>libbb: introduce and use nonblock_safe_read(). Yay! Our shells are immune from this nasty O_NONBLOCK now!
352 <li>login,su: avoid clearing environment with some options, as was intended
353 <li>microcom: read more than 1 byte from device, if possible
354 <li>microcom: split -d (delay) option away from -t
355 <li>mktemp: support -p DIR (Timo Teras &lt;timo.teras at iki.fi&gt;)
356 <li>mount: #ifdef out MOUNT_LABEL code parts if it is not selected
357 <li>mount: add another mount helper call method
358 <li>mount: allow and ignore _netdev option
359 <li>mount: make -f work even without mtab support (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
360 <li>mount: optional support for -vv verbosity
361 <li>mount: plug a hole where FEATURE_MOUNT_HELPERS could allow execution of arbitrary command
362 <li>mount: recognize "dirsync" (closes bug 835)
363 <li>mount: sanitize environment if called by non-root
364 <li>mount: support for mount by label. Closes bug 1143
365 <li>mount: with -vv -f, say what mount() calls we were going to make
366 <li>msh: create testsuite (based on hush one)
367 <li>msh: don't use floating point in "times" builtin
368 <li>msh: fix Ctrl-C handling with line editing
369 <li>msh: fix for bug 846 ("break" didn't work second time)
370 <li>msh: glob0/glob1/glob2/glob3 were just a sorting routine, removed
371 <li>msh: instead of fixing "ls | cd", "cd | ls" etc disallow builtins in pipes. They make no sense there anyway
372 <li>msh: stop trying to parse variables in "msh SCRIPT VAR=val param". They are passed as ordinary parameters
373 <li>netstat: print control chars as "^C" etc
374 <li>nmeter: fix bug where %[mf] behaves as %[mt]
375 <li>nohup: compat patch by Christoph Gysin &lt;mailinglist.cache at gmail.com&gt;
376 <li>od: handle /proc files (which have filesize 0) correctly
377 <li>patch: don't trash permissions of patched file
378 <li>ps: add conditional support for -o [e]time
379 <li>ps: fix COMMAND column adjustment; overflow in USER and VSZ columns
380 <li>reset: call "stty sane". Closes bug 1414
381 <li>rmdir: optional long options support for Debian users. By Roberto Gordo Saez &lt;roberto.gordo AT gmail.com&gt;
382 <li>run-parts: add --reverse
383 <li>script: correctly handle buffered "tail" of output
384 <li>sed: "n" command must reset "we had successful subst" flag. Closes bug 1214
385 <li>sort: -z outputs NUL terminated lines. Closes bug 1591
386 <li>stty: fix mishandling of control keywords (Ralf Friedl &lt;Ralf.Friedl AT online.de&gt;)
387 <li>switch_root: stop at first non-option. Closes bug 1425
388 <li>syslogd: avoid excessive time() system calls
389 <li>syslogd: don't die if remote host's IP cannot be resolved. Retry resolutions every two minutes instead
390 <li>syslogd: fix shmat error check
391 <li>syslogd: optional support for dropping dups. Closes bug 436
392 <li>syslogd: send "\n"-terminated messages over the network. Fully closes bug 1574
393 <li>syslogd: tighten up hostname handling
394 <li>tail: fix "tail -c 20 /dev/huge_disk" (was taking ages)
395 <li>tar: compat: handle tarballs with only one zero block at the end
396 <li>tar: autodetection of gz/bz2 compressed tarballs. Closes bug 992
Denis Vlasenkof45c4f42008-06-16 04:09:25 +0000397 <li>tar: real support for -p. By Natanael Copa &lt;natanael.copa at gmail.com&gt;
Denis Vlasenko74f82082008-03-21 20:50:37 +0000398 <li>tcpudp: narrow down time window where we have no wildcard socket
399 <li>telnetd: use login always, not "sometimes login, sometimes shell"
400 <li>test: fix mishandling of "test ! arg1 op arg2 more args"
401 <li>trylink: instead of build error, disable --gc-sections if GLIBC and STATIC are selected
402 <li>udhcp: make file paths configurable
403 <li>udhcp: optional support for non-standard DHCP ports
404 <li>udhcp: set correct op byte in the packet for DHCPDECLINE
405 <li>udhcpc: filter unwanted packets in kernel (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn AT axis.com&gt;)
406 <li>udhcpc: fix wrong options in decline and release packets (Jonas Danielsson &lt;jonas.danielsson AT axis.com&gt;)
407 <li>umount: do not complain several times about the same mountpoint
408 <li>umount: do not try to free loop device or erase mtab if remounted ro
409 <li>umount: instead of non-standard -D, use -d with opposite meaning. Closes bug 1604
410 <li>unlzma: shrink by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;
411 <li>unzip: do not try to read entire compressed stream at once (it can be huge)
412 <li>unzip: handle short reads correctly
413 <li>vi: many fixes
414 <li>zcip: don't chdir to root
Denis Vlasenkob9d0f0c2008-03-21 21:22:24 +0000415 <li>zcip: open ARP socket before openlog (else we can trash syslog socket)
Denis Vlasenko74f82082008-03-21 20:50:37 +0000416 </ul>
417 </p>
418
Bernhard Reutner-Fischera4e55ab2008-04-19 09:33:22 +0000419 <li><b>21 March 2008 -- BusyBox old stable releases</b>
Denis Vlasenko68d09692008-03-21 18:41:21 +0000420 <p>
Denis Vlasenko45911a62008-03-21 20:06:42 +0000421 Bugfix-only releases for four past branches. Links to locations
Denis Vlasenko31567c12008-03-21 18:52:18 +0000422 for future hot patches are in parentheses.
Denis Vlasenko68d09692008-03-21 18:41:21 +0000423 <p>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000424 <a href="http://busybox.net/downloads/busybox-1.9.2.tar.bz2">1.9.2</a>
425 (<a href="http://busybox.net/downloads/fixes-1.9.2/">patches</a>),
426 <a href="http://busybox.net/downloads/busybox-1.8.3.tar.bz2">1.8.3</a>
427 (<a href="http://busybox.net/downloads/fixes-1.8.3/">patches</a>),
428 <a href="http://busybox.net/downloads/busybox-1.7.5.tar.bz2">1.7.5</a>
429 (<a href="http://busybox.net/downloads/fixes-1.7.5/">patches</a>),
430 <a href="http://busybox.net/downloads/busybox-1.5.2.tar.bz2">1.5.2</a>
431 (<a href="http://busybox.net/downloads/fixes-1.5.2/">patches</a>).
Denis Vlasenko68d09692008-03-21 18:41:21 +0000432 <p>
Bernhard Reutner-Fischer8c8601c2008-08-21 10:54:55 +0000433 <a href="http://busybox.net/fix.html">How to add a patch.</a>
Denis Vlasenko31567c12008-03-21 18:52:18 +0000434 </p>
Denis Vlasenko68d09692008-03-21 18:41:21 +0000435
Eric Andersenc7bda1c2004-03-15 08:29:22 +0000436 <li><b>Old News</b><p>
Eric Andersen539eef62003-12-10 12:08:20 +0000437 <a href="/oldnews.html">Click here to read older news</a>
Rob Landleyd879ffb2006-06-27 21:29:56 +0000438 </p>
439 </li>
Eric Andersen539eef62003-12-10 12:08:20 +0000440
441
442</ul>
443
444<!--#include file="footer.html" -->
445