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