1 <!--#include file="header.html" -->
4 <li><b>19 April 2008 -- BusyBox 1.10.1 (stable)</b>
5 <p><a href=http://busybox.net/downloads/busybox-1.10.1.tar.bz2>BusyBox 1.10.1</a>.
6 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
7 <a href=http://busybox.net/downloads/fixes-1.10.1/>patches</a>,
8 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
10 Bugfix-only release for 1.10.x branch. It contains fixes for
11 fuser, init, less, nameif, tail, taskset, tcpudp, top, udhcp.
13 <a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
15 The email address gpl@busybox.net is the recommended way to contact
16 the Software Freedom Law Center to report BusyBox license violations.
19 <li><b>21 March 2008 -- BusyBox 1.10.0 (unstable)</b>
20 <p><a href=http://busybox.net/downloads/busybox-1.10.0.tar.bz2>BusyBox 1.10.0</a>.
21 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
22 <a href=http://busybox.net/downloads/fixes-1.10.0/>patches</a>,
23 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
25 <p>Sizes of busybox-1.9.2 and busybox-1.10.0 (with almost full config, static uclibc build):<pre>
26 text data bss dec hex filename
27 781405 679 7500 789584 c0c50 busybox-1.9.2
28 773551 640 7372 781563 becfb busybox-1.10.0
30 <p>Top 10 stack users:<pre>
31 busybox-1.9.2: busybox-1.10.0:
32 echo_dg 4116 bb_full_fd_action 4112
33 bb_full_fd_action 4112 find_list_entry2 4096
34 discard_dg 4108 readlink_main 4096
35 discard_dg 4096 ipaddr_list_or_flush 3900
36 echo_stream 4096 iproute_list_or_flush 3680
37 discard_stream 4096 insmod_main 3152
38 find_list_entry2 4096 fallbackSort 2952
39 readlink_main 4096 do_iproute 2492
40 ipaddr_list_or_flush 3900 cal_main 2464
41 iproute_list_or_flush 3680 readhere 2308
44 <p>New applets: brctl, chat (by Vladimir Dronnikov <dronnikov AT gmail.com>),
45 findfs, ifenslave (closes bug 115), lpd (by Vladimir Dronnikov <dronnikov AT gmail.com>),
46 lpr+lpq (by Walter Harms), script (by Pascal Bellard <pascal.bellard AT ads-lu.com>),
47 sendmail (Vladimir Dronnikov <dronnikov AT gmail.com>), tac, tftpd.
49 <p>Made NOMMU-compatible: crond, crontab, ifupdown, inetd, init, runsv, svlogd, tcpsvd, udpsvd.
51 <p>Changes since previous release:
53 <li>globally: add -Wunused-parameter
54 <li>globally: add optimization barrier to all "G trick" locations
55 <li>adduser/addgroup: check username for invalid chars (by Tito <farmatito AT tiscali.it>)
56 <li>adduser: optional support for long options. Closes bug 2134
57 <li>ash: handle "A=1 A=2 B=$A; echo $B". Closes bug 947
58 <li>ash: make ash -c "if set -o barfoo 2>/dev/null; then echo foo; else echo bar; fi" work. Closes bug 1142
59 <li>build system: don't use "gcc -o /dev/null", old gcc can delete /dev/null in this case
60 <li>build system: fixes for cross-compiling on an OS X host
61 <li>build system: make it do without "od -t"
62 <li>build system: pass CFLAGS to link stage too. Closes bug 1376
63 <li>build system: add CONFIG_NOMMU
64 <li>cp: add ENABLE_FEATURE_VERBOSE_CP_MESSAGE. Closes bug 1470
65 <li>crontab: almost complete rewrite
66 <li>dnsd: properly set _src_ IP:port on outgoing UDP packets
67 <li>dpkg: fix bug where existence check was reversed
68 <li>eject: add -s for SCSI- and USB-devices (Nico Erfurth)
69 <li>fdisk: fix a case where break was reached only for DOS labels
70 <li>fsck: don't kill pid -1! (Roy Marples <roy at marples.name>)
71 <li>fsck_minix: fix bug in map_block2: s/(blknr >= 256 * 256)/(blknr < 256 * 256)/
72 <li>fuser: substantial rewrite
73 <li>getopt: add support for "a+" specifier for nonnegative int parameters. By Vladimir Dronnikov <dronnikov at gmail.com>
74 <li>getty: don't try to detect parity on local lines (Joakim Tjernlund <Joakim.Tjernlund at transmode.se>)
75 <li>halt: write wtmp entry if wtmp support is enabled
76 <li>httpd: "HEAD" support. Closes bug 1530
77 <li>httpd: fix bug 2004: wrong argv when interpreter is invoked
78 <li>httpd: fix bug where we did chdir("") if CGI path had only one "/"
79 <li>httpd: fix for POST upload
80 <li>httpd: support for "I:index.xml" syntax (Peter Korsgaard <jacmet AT uclibc.org>)
81 <li>hush: fix a case where none of pipe members could be started because of fork failure
82 <li>hush: more correct handling of piping
83 <li>hush: reinstate `cmd` handling for NOMMU
84 <li>hush: report [v]fork failures
85 <li>hush: set CLOEXEC on script file being executed
86 <li>hush: try to add a bit more of vfork-friendliness
87 <li>inetd: make "udp nowait" work
88 <li>inetd: make inetd IPv6-capable
89 <li>init: add FEATURE_KILL_REMOVED (Eugene Bordenkircher <eugebo AT gmail.com>)
90 <li>init: allow last line of config file to be not terminated by "\n"
91 <li>init: do not die if "/dev/null" is missing
92 <li>init: fix bug 1111: restart actions were not splitting words
93 <li>init: wait for orphaned children too while waiting for sysinit-like processes (harald-tuxbox AT arcor.de)
94 <li>ip route: "ip route" was misbehaving (extra argv+1 ate 1st env var)
95 <li>last: do not go into endless loop on read error
96 <li>less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)
97 <li>less: "examine" command will not bomb out on bad file name now
98 <li>less: fix bug where backspace wasn't actually deleting chars
99 <li>less: make it a bit more resistant against status line corruption
100 <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
101 <li>less: update line input so that it doesn't interfere with screen update. Makes "man bash", [enter], [/], <enter search pattern>, [enter] more usable - manpage now draws even as you enter the pattern!
102 <li>libbb: filename completion matches dangling symlinks too
103 <li>libbb: fix getopt state corruption for NOFORK applets
104 <li>libbb: full_read/write now will report partial data counts prior to error
105 <li>libbb: intrduce and use safe_gethostname. By Tito <farmatito AT tiscali.it>
106 <li>libbb: introduce and use nonblock_safe_read(). Yay! Our shells are immune from this nasty O_NONBLOCK now!
107 <li>login,su: avoid clearing environment with some options, as was intended
108 <li>microcom: read more than 1 byte from device, if possible
109 <li>microcom: split -d (delay) option away from -t
110 <li>mktemp: support -p DIR (Timo Teras <timo.teras at iki.fi>)
111 <li>mount: #ifdef out MOUNT_LABEL code parts if it is not selected
112 <li>mount: add another mount helper call method
113 <li>mount: allow and ignore _netdev option
114 <li>mount: make -f work even without mtab support (Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
115 <li>mount: optional support for -vv verbosity
116 <li>mount: plug a hole where FEATURE_MOUNT_HELPERS could allow execution of arbitrary command
117 <li>mount: recognize "dirsync" (closes bug 835)
118 <li>mount: sanitize environment if called by non-root
119 <li>mount: support for mount by label. Closes bug 1143
120 <li>mount: with -vv -f, say what mount() calls we were going to make
121 <li>msh: create testsuite (based on hush one)
122 <li>msh: don't use floating point in "times" builtin
123 <li>msh: fix Ctrl-C handling with line editing
124 <li>msh: fix for bug 846 ("break" didn't work second time)
125 <li>msh: glob0/glob1/glob2/glob3 were just a sorting routine, removed
126 <li>msh: instead of fixing "ls | cd", "cd | ls" etc disallow builtins in pipes. They make no sense there anyway
127 <li>msh: stop trying to parse variables in "msh SCRIPT VAR=val param". They are passed as ordinary parameters
128 <li>netstat: print control chars as "^C" etc
129 <li>nmeter: fix bug where %[mf] behaves as %[mt]
130 <li>nohup: compat patch by Christoph Gysin <mailinglist.cache at gmail.com>
131 <li>od: handle /proc files (which have filesize 0) correctly
132 <li>patch: don't trash permissions of patched file
133 <li>ps: add conditional support for -o [e]time
134 <li>ps: fix COMMAND column adjustment; overflow in USER and VSZ columns
135 <li>reset: call "stty sane". Closes bug 1414
136 <li>rmdir: optional long options support for Debian users. By Roberto Gordo Saez <roberto.gordo AT gmail.com>
137 <li>run-parts: add --reverse
138 <li>script: correctly handle buffered "tail" of output
139 <li>sed: "n" command must reset "we had successful subst" flag. Closes bug 1214
140 <li>sort: -z outputs NUL terminated lines. Closes bug 1591
141 <li>stty: fix mishandling of control keywords (Ralf Friedl <Ralf.Friedl AT online.de>)
142 <li>switch_root: stop at first non-option. Closes bug 1425
143 <li>syslogd: avoid excessive time() system calls
144 <li>syslogd: don't die if remote host's IP cannot be resolved. Retry resolutions every two minutes instead
145 <li>syslogd: fix shmat error check
146 <li>syslogd: optional support for dropping dups. Closes bug 436
147 <li>syslogd: send "\n"-terminated messages over the network. Fully closes bug 1574
148 <li>syslogd: tighten up hostname handling
149 <li>tail: fix "tail -c 20 /dev/huge_disk" (was taking ages)
150 <li>tar: compat: handle tarballs with only one zero block at the end
151 <li>tar: autodetection of gz/bz2 compressed tarballs. Closes bug 992
152 <li>tar: real support for -p. By Natanael Copa <natanael.copa at gmail.com>
153 <li>tcpudp: narrow down time window where we have no wildcard socket
154 <li>telnetd: use login always, not "sometimes login, sometimes shell"
155 <li>test: fix mishandling of "test ! arg1 op arg2 more args"
156 <li>trylink: instead of build error, disable --gc-sections if GLIBC and STATIC are selected
157 <li>udhcp: make file paths configurable
158 <li>udhcp: optional support for non-standard DHCP ports
159 <li>udhcp: set correct op byte in the packet for DHCPDECLINE
160 <li>udhcpc: filter unwanted packets in kernel (Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn AT axis.com>)
161 <li>udhcpc: fix wrong options in decline and release packets (Jonas Danielsson <jonas.danielsson AT axis.com>)
162 <li>umount: do not complain several times about the same mountpoint
163 <li>umount: do not try to free loop device or erase mtab if remounted ro
164 <li>umount: instead of non-standard -D, use -d with opposite meaning. Closes bug 1604
165 <li>unlzma: shrink by Pascal Bellard <pascal.bellard AT ads-lu.com>
166 <li>unzip: do not try to read entire compressed stream at once (it can be huge)
167 <li>unzip: handle short reads correctly
169 <li>zcip: don't chdir to root
170 <li>zcip: open ARP socket before openlog (else we can trash syslog socket)
174 <li><b>21 March 2008 -- BusyBox old stable releases</b>
176 Bugfix-only releases for four past branches. Links to locations
177 for future hot patches are in parentheses.
179 <a href=http://busybox.net/downloads/busybox-1.9.2.tar.bz2>1.9.2</a>
180 (<a href=http://busybox.net/downloads/fixes-1.9.2/>patches</a>),
181 <a href=http://busybox.net/downloads/busybox-1.8.3.tar.bz2>1.8.3</a>
182 (<a href=http://busybox.net/downloads/fixes-1.8.3/>patches</a>),
183 <a href=http://busybox.net/downloads/busybox-1.7.5.tar.bz2>1.7.5</a>
184 (<a href=http://busybox.net/downloads/fixes-1.7.5/>patches</a>),
185 <a href=http://busybox.net/downloads/busybox-1.5.2.tar.bz2>1.5.2</a>
186 (<a href=http://busybox.net/downloads/fixes-1.5.2/>patches</a>).
188 <a href=http://busybox.net/fix.html>How to add a patch.</a>
190 <a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
192 The email address gpl@busybox.net is the recommended way to contact
193 the Software Freedom Law Center to report BusyBox license violations.
197 <li><b>Old News</b><p>
198 <a href="/oldnews.html">Click here to read older news</a>
205 <!--#include file="footer.html" -->