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