blob: 3be1c2a76da21a2da2274d5dde178188d74b4a35 [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>
Denis Vlasenko9a7af9f2008-04-19 04:28:21 +00004 <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>
9 <p>
10 Bugfix-only release for 1.10.x branch. It contains fixes for
11 fuser, init, less, nameif, tail, taskset, tcpudp, top, udhcp.
12 <p>
13 <a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
14 <p>
15 The email address gpl@busybox.net is the recommended way to contact
16 the Software Freedom Law Center to report BusyBox license violations.
17 </p>
18
Denis Vlasenko74f82082008-03-21 20:50:37 +000019 <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>
24
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
29</pre>
30 <p>Top 10 stack users:<pre>
31busybox-1.9.2: busybox-1.10.0:
32echo_dg 4116 bb_full_fd_action 4112
33bb_full_fd_action 4112 find_list_entry2 4096
34discard_dg 4108 readlink_main 4096
35discard_dg 4096 ipaddr_list_or_flush 3900
36echo_stream 4096 iproute_list_or_flush 3680
37discard_stream 4096 insmod_main 3152
38find_list_entry2 4096 fallbackSort 2952
39readlink_main 4096 do_iproute 2492
40ipaddr_list_or_flush 3900 cal_main 2464
41iproute_list_or_flush 3680 readhere 2308
42</pre>
43
44 <p>New applets: brctl, chat (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
45 findfs, ifenslave (closes bug 115), lpd (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
46 lpr+lpq (by Walter Harms), script (by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;),
47 sendmail (Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;), tac, tftpd.
48
49 <p>Made NOMMU-compatible: crond, crontab, ifupdown, inetd, init, runsv, svlogd, tcpsvd, udpsvd.
50
51 <p>Changes since previous release:
52 <ul>
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 &lt;farmatito AT tiscali.it&gt;)
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&gt;/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 &lt;roy at marples.name&gt;)
71 <li>fsck_minix: fix bug in map_block2: s/(blknr &gt;= 256 * 256)/(blknr &lt; 256 * 256)/
72 <li>fuser: substantial rewrite
73 <li>getopt: add support for "a+" specifier for nonnegative int parameters. By Vladimir Dronnikov &lt;dronnikov at gmail.com&gt;
74 <li>getty: don't try to detect parity on local lines (Joakim Tjernlund &lt;Joakim.Tjernlund at transmode.se&gt;)
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 &lt;jacmet AT uclibc.org&gt;)
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 &lt;eugebo AT gmail.com&gt;)
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], [/], &lt;enter search pattern&gt;, [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 &lt;farmatito AT tiscali.it&gt;
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 &lt;timo.teras at iki.fi&gt;)
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 &lt;cristian.ionescu-idbohrn at axis.com&gt;)
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 &lt;mailinglist.cache at gmail.com&gt;
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 &lt;roberto.gordo AT gmail.com&gt;
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 &lt;Ralf.Friedl AT online.de&gt;)
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 &lt;natanael.copa at gmail.com&gt;
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 &lt;cristian.ionescu-idbohrn AT axis.com&gt;)
161 <li>udhcpc: fix wrong options in decline and release packets (Jonas Danielsson &lt;jonas.danielsson AT axis.com&gt;)
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 &lt;pascal.bellard AT ads-lu.com&gt;
166 <li>unzip: do not try to read entire compressed stream at once (it can be huge)
167 <li>unzip: handle short reads correctly
168 <li>vi: many fixes
169 <li>zcip: don't chdir to root
Denis Vlasenkob9d0f0c2008-03-21 21:22:24 +0000170 <li>zcip: open ARP socket before openlog (else we can trash syslog socket)
Denis Vlasenko74f82082008-03-21 20:50:37 +0000171 </ul>
172 </p>
173
Denis Vlasenko68d09692008-03-21 18:41:21 +0000174 <li><b>21 March 2008 -- BusyBox stable releases</b>
175 <p>
Denis Vlasenko45911a62008-03-21 20:06:42 +0000176 Bugfix-only releases for four past branches. Links to locations
Denis Vlasenko31567c12008-03-21 18:52:18 +0000177 for future hot patches are in parentheses.
Denis Vlasenko68d09692008-03-21 18:41:21 +0000178 <p>
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>).
187 <p>
188 <a href=http://busybox.net/fix.html>How to add a patch.</a>
189 <p>
190 <a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
191 <p>
192 The email address gpl@busybox.net is the recommended way to contact
Denis Vlasenko31567c12008-03-21 18:52:18 +0000193 the Software Freedom Law Center to report BusyBox license violations.
194 </p>
Denis Vlasenko68d09692008-03-21 18:41:21 +0000195
Denis Vlasenko3d3d6982008-02-12 17:53:59 +0000196 <li><b>12 February 2008 -- BusyBox 1.9.1 (stable)</b>
197 <p><a href=http://busybox.net/downloads/busybox-1.9.1.tar.bz2>BusyBox 1.9.1</a>.
198 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/>svn</a>,
199 <a href=http://busybox.net/downloads/fixes-1.9.1/>patches</a>,
200 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
201
202 <p>This is a bugfix-only release, with fixes to fsck,
203 iproute, mdev, mkswap, msh, nameif, stty, test, zcip.</p>
204 <p>hush has `command` expansion re-enabled for NOMMU, although it is
205 inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
Denis Vlasenko7c5258b2008-02-12 18:53:16 +0000206 The plan is to make this less likely to bite people in future versions.</p>
Denis Vlasenko3d3d6982008-02-12 17:53:59 +0000207 </li>
208
Denis Vlasenko299c5c32007-12-24 14:43:25 +0000209 <li><b>24 December 2007 -- BusyBox 1.9.0 (unstable)</b>
210 <p><a href=http://busybox.net/downloads/busybox-1.9.0.tar.bz2>BusyBox 1.9.0</a>.
211 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/>svn</a>,
212 <a href=http://busybox.net/downloads/fixes-1.9.0/>patches</a>,
213 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
214
215 <p>Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):<pre>
216 text data bss dec hex filename
217 792796 978 9724 803498 c42aa busybox-1.8.2
218 783803 683 7508 791994 c15ba busybox-1.9.0
219</pre>
220 <p>Top 10 stack users:<pre>
221busybox-1.8.2: busybox-1.9.0:
222input_tab 10428 echo_dg 4116
223umount_main 8252 bb_full_fd_action 4112
224rtnl_talk 8240 discard_dg 4096
225xrtnl_dump_filter 8240 echo_stream 4096
226sendMTFValues 5316 discard_stream 4096
227mainSort 4700 find_list_entry2 4096
228mkfs_minix_main 4288 readlink_main 4096
229grave 4260 ipaddr_list_or_flush 3900
230unix_do_one 4156 iproute_list_or_flush 3680
231parse_prompt 4132 insmod_main 3152
232</pre>
233
234 <p>lash is deleted from this release. hush can be configured down to almost
235 the same size, but it is significantly less buggy. It even works
236 on NOMMU machines (interactive mode and backticks are not working on NOMMU,
237 though). "lash" applet is still available, but it runs hush.
238
239 <p>init has some changes in this release, please report if it causes
240 problems for you.
241
242 <p>Changes since previous release:
243 <ul>
244 <li>Build system improvements
245 <li>Testsuite additions
246 <li>Stack size reductions, code size reductions, data/bss reductions
247 <li>An option to prefer IPv4 address if host has both
248 <li>New applets: hd, sestatus
249 <li>Removed applets: lash
250 <li>hush: fixed a few bugs, wired up echo and test to be builtins
251 <li>init: simplify forking of children
252 <li>getty: special handling of '#' and '@' is removed
253 <li>[su]login: sanitize environment if called by non-root
254 <li>udhcpc: support "bad" servers which send oversized packets
255 (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
Denis Vlasenko7b55c7f2007-12-24 17:33:56 +0000256 <li>udhcpc: -O option allows to specify which options to ask for
Denis Vlasenko299c5c32007-12-24 14:43:25 +0000257 (Stefan Hellermann &lt;stefan at the2masters.de&gt;)
258 <li>udhcpc: optionally check whether given IP is really free (by ARP ping)
259 (Jonas Danielsson &lt;jonas.danielsson at axis.com&gt;)
260 <li>vi: now handles files with unlimited line length
261 <li>vi: speedup for huge line lengths
262 <li>vi: Del key works
263 <li>sed: support GNUism '\t'
264 <li>cp/mv/install: optionally use bigger buffer for bulk copying
265 <li>line editing: don't eat stack like crazy
266 <li>passwd: follows symlinked /etc/passwd
267 <li>renice: accepts priority with +N too
268 <li>netstat: wide output mode
269 <li>nameif: extended matching (Nico Erfurth &lt;masta at perlgolf.de&gt;)
270 <li>test: become NOFORK applet
271 <li>find: -iname (Alexander Griesser &lt;alexander.griesser at lkh-vil.or.at&gt;)
272 <li>df: -i option (show inode info) (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
273 <li>hexdump: -R option (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
274 </ul>
Denis Vlasenko31567c12008-03-21 18:52:18 +0000275 </p>
Denis Vlasenko299c5c32007-12-24 14:43:25 +0000276
Denis Vlasenkoa8875ef2007-11-24 04:49:07 +0000277 <li><b>23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)</b>
278 <p><a href=http://busybox.net/downloads/busybox-1.8.2.tar.bz2>BusyBox 1.8.2</a>.
279 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
280 <a href=http://busybox.net/downloads/fixes-1.8.2/>patches</a>,
281 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
282 <p><a href=http://busybox.net/downloads/busybox-1.7.4.tar.bz2>BusyBox 1.7.4</a>.
283 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
284 <a href=http://busybox.net/downloads/fixes-1.7.4/>patches</a>,
285 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
286
287 <p>These are bugfix-only releases.
288 1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
289 1.7.4 contains a fix for inetd.</p>
290 </li>
291
Denis Vlasenko40702da2007-11-10 03:24:21 +0000292 <li><b>9 November 2007 -- BusyBox 1.8.1 (stable)</b>
293 <p><a href=http://busybox.net/downloads/busybox-1.8.1.tar.bz2>BusyBox 1.8.1</a>.
294 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
295 <a href=http://busybox.net/downloads/fixes-1.8.1/>patches</a>,
296 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
297
298 <p>This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.</p>
299 </li>
300
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000301 <li><b>4 November 2007 -- BusyBox 1.8.0 (unstable)</b>
302 <p><a href=http://busybox.net/downloads/busybox-1.8.0.tar.bz2>BusyBox 1.8.0</a>.
303 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
304 <a href=http://busybox.net/downloads/fixes-1.8.0/>patches</a>,
305 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
306
307 <p>Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
308
309 <p>Applets which had many changes since 1.7.x:
310 <p>httpd:
311 <ul>
312 <li>does not clear environment, CGIs will see all environment variables which were set for httpd
313 <li>fix bug where we were trying to read more POSTDATA than content-length
314 <li>fix trivial bug (spotted by Alex Landau)
315 <li>optional support for partial downloads
316 <li>simplified CGI i/o loop (now it looks good to me)
317 <li>small auth and IPv6 fixes (Kim B. Heino &lt;Kim.Heino at bluegiga.com>)
318 <li>support for proxying connection to other http server (by Alex Landau &lt;landau_alex at yahoo.com>)
319 </ul>
320
321 <p>top:
322 <ul>
323 <li>TOPMEM feature - 's(how sizes)' command
324 <li>don't wait before final bailout (try top -b -n1)
325 <li>fix for command line wrapping
326 </ul>
327
328 <p>Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
329
330 <p>Code and data size in comparison with 1.7.3:<pre>
331Equivalent .config, i386 uclibc static builds:
332 text data bss dec hex filename
333 768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
334 759693 974 9420 770087 bc027 busybox-1.8.0/busybox</pre>
335
336 <p>New applets:
337 <ul>
338 <li>microcom: new applet by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;
339 <li>kbd_mode: new applet by Loic Grenie &lt;loic.grenie at gmail.com&gt;
340 <li>bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
341 <li>pgrep, pkill: new applets by Loic Grenie &lt;loic.grenie at gmail.com&gt;
342 <li>setsebool: new applet (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
343 </ul>
344
345 <p>Other changes since previous release (abridged):
346 <ul>
347 <li>cp: -r and -R imply -d (coreutils compat)
348 <li>cp: detect and prevent infinite recursion
349 <li>cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
350 <li>hdparm: reduce possibility of numeric overflow in -T
351 <li>hdparm: simplify timing measurement
352 <li>wget: -O FILE is allowed to overwrite existing file (compat)
Denis Vlasenko9fcd7992007-11-05 16:26:34 +0000353 <li>wget: allow dots in header field names
354 <li>telnetd: add -K option to close sessions as soon as child exits
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000355 <li>telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
356 <li>ed: large cleanup, add line editing
357 <li>hush: feeble attempt at making it more NOMMU-friendly
358 <li>hush: fix glob()
359 <li>hush: stop doing manual accounting of open fd's, kernel can do it for us
360 <li>adduser: implement -S and fix uid selection
361 <li>ash: fix prompt expansion (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
362 <li>ash: revert "cat | jobs" fix, it causes more problems than good
363 <li>find: fix -xdev behavior in the presence of two or more nested mount points
364 <li>grep: fix grep -F -e str1 -e str2 (was matching str2 only)
365 <li>grep: optimization: stop on first -e match
366 <li>gunzip: support concatenated gz files
367 <li>inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
368 <li>install: 'support' (by ignoring) -v and -b
369 <li>install: fix bug in "install -c file dir" (tried to copy dir into dir too)
370 <li>ip: tunnel parameter parsing fix by Jean Wolter &lt;jw5 at os.inf.tu-dresden.de&gt;
371 <li>isrv: use monotonic_sec
372 <li>less: make 'f' key page forward
373 <li>libiproute: add missing break statements
374 <li>load_policy: update (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
375 <li>logger: fix a problem of losing all argv except first
376 <li>login: do reject wrong passwords with PAM auth
377 <li>losetup: support -f (Loic Grenie &lt;loic.grenie at gmail.com&gt;)
378 <li>fdisk: make fdisk compile on libc without llseek64
379 <li>libbb: by popular request allow PATH to be customized at build time
380 <li>mkswap: selinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
381 <li>mount: allow (and ignore) -i
382 <li>mount: ignore NFS bg option on NOMMU machines
383 <li>mount: mount helpers support (by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;)
384 <li>passwd: handle Ctrl-C, restore termios on Ctrl-C
385 <li>passwd: SELinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
386 <li>ping: make -I ethN work too (-I addr already worked)
387 <li>ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
388 <li>read_line_input: fix it to not do any fancy editing if echoing is disabled
389 <li>run_parts: make it sort executables by name (required by API)
390 <li>runsv: do not use clock_gettime if !MONOTONIC_CLOCK
391 <li>runsvdir: fix "linear wait time" bug
392 <li>sulogin: remove alarm handling, it is redundant there
Denis Vlasenko9fcd7992007-11-05 16:26:34 +0000393 <li>svlogd: compat: svlogd -tt should timestamp stderr too
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000394 <li>syslogd: bail out if you see null read from Unix socket
395 <li>syslogd: do not need to poll(), we can just block in read()
396 <li>tail: work correctly on /proc files (Kazuo TAKADA &lt;kztakada at sm.sony.co.jp&gt;)
397 <li>tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau &lt;landau_alex at yahoo.com&gt;)
398 <li>tar: strip leading '/' BEFORE memorizing hardlink's name
399 <li>tftp: fix infinite retry bug
400 <li>umount: support (by ignoring) -i; style fixes
401 <li>unzip: fix endianness bugs
402 <li>vi: don't wait 50 ms before reading ESC sequences
403 <li>watchdog: allow millisecond spec (-t 250ms)
404 <li>zcip: fix unaligned trap on ARM
405 </ul>
406 </p>
407
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000408 </li>
409
Denis Vlasenko06200342007-11-04 04:30:20 +0000410 <li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b>
411 <p><a href=http://busybox.net/downloads/busybox-1.7.3.tar.bz2>BusyBox 1.7.3</a>.
412 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
413 <a href=http://busybox.net/downloads/fixes-1.7.3/>patches</a>,
414 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
415
416 <p>This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.</p>
Denis Vlasenko06200342007-11-04 04:30:20 +0000417 </li>
418
Denis Vlasenkoe03c77f2007-09-30 00:06:42 +0000419 <li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b>
420 <p><a href=http://busybox.net/downloads/busybox-1.7.2.tar.bz2>BusyBox 1.7.2</a>.
421 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
422 <a href=http://busybox.net/downloads/fixes-1.7.2/>patches</a>,
423 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
424
425 <p>This is a bugfix-only release, with fixes to install, find, login, httpd, runsvdir, chcon, setfiles, fdisk and line editing.</p>
Denis Vlasenkoe03c77f2007-09-30 00:06:42 +0000426 </li>
427
Denis Vlasenko27bd8d72007-09-16 19:41:40 +0000428 <li><b>16 September 2007 -- BusyBox 1.7.1 (stable)</b>
429 <p><a href=http://busybox.net/downloads/busybox-1.7.1.tar.bz2>BusyBox 1.7.1</a>.
430 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
431 <a href=http://busybox.net/downloads/fixes-1.7.1/>patches</a>,
432 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
433
434 <p>This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system.</p>
Denis Vlasenko27bd8d72007-09-16 19:41:40 +0000435 </li>
436
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000437 <li><b>24 August 2007 -- BusyBox 1.7.0 (unstable)</b>
438 <p><a href=http://busybox.net/downloads/busybox-1.7.0.tar.bz2>BusyBox 1.7.0</a>.
439 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
440 <a href=http://busybox.net/downloads/fixes-1.7.0/>patches</a>,
441 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
442
443 <p>Applets which had many changes since 1.6.x:
444 <p>httpd:
445 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000446 <li>works in standalone mode on NOMMU machines now (partly by Alex Landau &lt;landau_alex at yahoo.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000447 <li>indexer example is rewritten in C
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000448 <li>optional support for error pages (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000449 <li>stop reading headers using 1-byte reads
450 <li>new option -v[v]: prints client addresses, HTTP codes returned, URLs
451 <li>extended -p PORT to -p [IP[v6]:]PORT
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000452 <li>sendfile support (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000453 <li>add support for Status: CGI header
454 <li>fix CGI handling bug (we were closing wrong fd)
455 <li>CGI I/O loop still doesn't look 100% ok to me...
456 </ul>
457
458 <p>udhcp[cd]:
459 <ul>
460 <li>add -f "foreground" and -S "syslog" options
Denis Vlasenko46fc23b2007-08-24 11:49:55 +0000461 <li>fixed "ifupdown + udhcpc_without_pidfile_creation" bug
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000462 <li>new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson &lt;mats at blue2net.com&gt; (Blue2Net AB))
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000463 <li>consistently treat server_config.start/end IPs as host-order
464 <li>fix IP parsing for 64bit machines
465 <li>fix unsafe hton macro usage in read_opt()
466 <li>do not chdir to / when daemonizing
467 </ul>
468
Denis Vlasenko46fc23b2007-08-24 11:49:55 +0000469 <p>top, ps, killall, pidof:
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000470 <ul>
471 <li>simpler loadavg processing
472 <li>truncate usernames to 8 chars
473 <li>fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
474 <li>improve /proc/PID/cmdinfo reading code
475 <li>use cmdline, not comm field (fixes problems with re-execed applets showing as processes with name "exe", and not being found by pidof/killall by applet name)
476 <li>reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
477 <li>make percentile (0.1%) calculations configurable
478 <li>add config option and code for global CPU% display
479 <li>reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
480 </ul>
481
482 <p>Build system improvements: doesn't link against libraries we don't need,
483 generates verbose link output and map file, allows for custom link
Denis Vlasenkocab774d2007-08-24 12:52:04 +0000484 scripts (useful for removing extra padding, among other things).
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000485
486 <p>Code and data size in comparison with 1.6.1:<pre>
487Equivalent .config, i386 glibc dynamic builds:
488 text data bss dec hex filename
489 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
490 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
491 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
492
493Same .config built against static uclibc:
494 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc</pre>
495
496 <p>Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
497 test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
498 runit/*, in libbb.
499
500 <p>New applets:
501 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000502 <li>pscan, expand, unexpand (from Tito &lt;farmatito at tiscali.it&gt;)
503 <li>setfiles, restorecon (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
504 <li>chpasswd (by Alexander Shishkin &lt;virtuoso at slind.org&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000505 <li>slattach, ttysize
506 </ul>
507
508 <p>Unfortunately, not much work is done on shells. This was mostly stalled
509 by lack of time (read: laziness) on my part to learn how to adapt existing
510 qemu-runnable image for a NOMMU architechture (available on qemu website)
511 for local testing of cross-compiled busybox on my machine.
512
513 <p>Other changes since previous release (abridged):
514 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000515 <li>addgroup: disallow addgroup -g num user group; make -g 0 work (Tito &lt;farmatito at tiscali.it&gt;)
516 <li>adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa &lt;natanael.copa at gmail.com&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000517 <li>arping: -i should be -I, fixed
518 <li>ash: make "jobs | cat" work like in bash (was giving empty output)
519 <li>ash: recognize -l as --login equivalent; do not recognize +-login
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000520 <li>ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000521 <li>ash: fix SEGV if type has zero parameters
522 <li>awk: fix -F 'regex' bug (miscounted fields if last field is empty)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000523 <li>catv: catv without arguments was trying to use environ as argv (Alex Landau &lt;landau_alex at yahoo.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000524 <li>catv: don't die on open error (emit warning)
525 <li>chown/chgrp: completely match coreutils 6.8 wrt symlink handling
526 <li>correct_password: do not print "no shadow passwd..." message
527 <li>crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
528 <li>dd: fix bug where we assume count=INT_MAX when count is unspecified
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000529 <li>devfsd: sanitization by Tito &lt;farmatito at tiscali.it&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000530 <li>echo: fix non-fancy echo
531 <li>fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000532 <li>find: -context support for SELinux (KaiGai Kohei &lt;kaigai at kaigai.gr.jp&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000533 <li>find: add conditional support for -maxdepth and -regex, make -size match GNU find
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000534 <li>find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000535 <li>fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
536 <li>grep: implement -m MAX_MATCHES, fix buglets with context printing
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000537 <li>grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
538 <li>hush: add missing dependencies (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000539 <li>hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
Bernhard Reutner-Fischer2062fc42007-08-24 14:32:23 +0000540 <li>ifconfig: make it work with ifaces with interface no. &gt; 255
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000541 <li>ifup/ifdown: make location of ifstate configurable
542 <li>ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
543 <li>install: fix -s (strip) option, fix install a b /a/link/to/dir
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000544 <li>libbb: consolidate ARRAY_SIZE macro (Walter Harms &lt;wharms at bfs.de&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000545 <li>libbb: make /etc/network parsing configurable. -200 bytes when off
546 <li>libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000547 <li>libbb: xioctl and friends by Tito &lt;farmatito at tiscali.it&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000548 <li>login: optional support for PAM
549 <li>login: make /etc/nologin support configurable (-240 bytes)
550 <li>login: ask passwords even for wrong usernames
551 <li>md5_sha1_sum: fix mishandling when run as /bin/md5sum
552 <li>mdev: add support for firmware loading
553 <li>mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
Bernhard Reutner-Fischer52226772007-08-25 11:16:18 +0000554 <li>modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN &lt;yann.morin.1998 at anciens.enib.fr&gt;)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000555 <li>more: fixes by Tristan Schmelcher &lt;tpkschme at engmail.uwaterloo.ca&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000556 <li>nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
557 <li>passwd: fix bug "updating shadow even if user's record is in passwd"
558 <li>patch: fix -p -1 handling
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000559 <li>patch: fix bad line ending handling (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000560 <li>ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
Bernhard Reutner-Fischer2062fc42007-08-24 14:32:23 +0000561 <li>ping: fix incorrect handling of -I (Iouri Kharon &lt;bc-info at styx.cabel.net&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000562 <li>ping: fix non-fancy ping6
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000563 <li>printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni &lt;kalyanatejaswi at yahoo.co.in&gt;)
564 <li>ps: fix -Z (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000565 <li>rpm: add optional support for bz2 data. +50 bytes of code
566 <li>rpm: fix bogus "package is not installed" case
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000567 <li>sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
568 <li>start_stop_daemon: NOMMU fixes by Alex Landau &lt;landau_alex at yahoo.com&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000569 <li>stat: fix option -Z SEGV
570 <li>strings: strings a b was processing a twice, fix that
571 <li>svlogd: fix timestamping, do not warn if config is missing
572 <li>syslogd, logread: get rid of head pointer, fix logread bug in the process
573 <li>syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
574 <li>tar: improve OLDGNU compat, make old SUN compat configurable
575 <li>test: fix testing primary expressions like '"-u" = "-u"'
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000576 <li>uudecode: fix to base64 decode by Jorgen Cederlof &lt;jcz at google.com&gt;
577 <li>vi: multiple fixes by Natanael Copa &lt;natanael.copa at gmail.com&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000578 <li>wget: fix bug in base64 encoding (bug 1404). +10 bytes
579 <li>wget: lift 256 chars limitation on terminal width
580 <li>wget, zcip: use monotonic_sec instead of gettimeofday
581 </ul>
582 </p>
583 </li>
584
Denis Vlasenko16b7cb42007-06-30 17:12:14 +0000585 <li><b>30 June 2007 -- BusyBox 1.6.1 (stable)</b>
586 <p><a href=http://busybox.net/downloads/busybox-1.6.1.tar.bz2>BusyBox 1.6.1</a>.
587 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
588 <a href=http://busybox.net/downloads/fixes-1.6.1/>patches</a>,
589 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
590
591 <p>This is a bugfix-only release, with fixes to echo, hush, and wget.</p>
592 </li>
593
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000594 <li><b>1 June 2007 -- BusyBox 1.6.0 (unstable)</b>
595 <p><a href=http://busybox.net/downloads/busybox-1.6.0.tar.bz2>BusyBox 1.6.0</a>.
Bernhard Reutner-Fischer66db2642007-06-09 09:12:45 +0000596 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
597 <a href=http://busybox.net/downloads/fixes-1.6.0/>patches</a>,
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000598 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
599
600 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
601 label. Please help making 1.6.1 stable by testing 1.6.0.</p>
602 <p>Note that hush shell had many changes and (hopefully) is much improved now,
603 but there is a possibility that it regressed in some obscure cases. Please
604 report any such cases.</p>
605 <p>lash users please note: lash is going to be deprecated in busybox 1.7.0
606 and removed in the more distant future. Please migrate to hush.</p>
607 <p><a href=http://busybox.net/~vda/mem_usage-1.6.0.txt>Memory usage has decreased, but we can do better still</a></p>
608 <p>Other changes since previous release:
609 <ul>
610<li>NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
611<li>NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
612<li>NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
613<li>NOMMU: random fixes; compressed --help now works for NOMMU
614<li>SELinux: load_policy applet
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000615<li>[u]mount: extend -t option (Roy Marples &lt;uberlord at gentoo.org&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000616<li>addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000617<li>adduser: don't bomb out if shadow password file doesn't exist (from Tito &lt;farmatito at tiscali.it&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000618<li>applet.c: do not even try to read config if run by real root; fix suid config handling
619<li>ash: fix infinite loop on exit if tty is not there anymore
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000620<li>ash: fix kill -l (by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
621<li>ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000622<li>awk: don't segfault on printf(%*s). Closes bug 1337
623<li>awk: guard against empty environment
624<li>awk: some 'lineno' vars were shorts, made them ints (code got smaller)
625<li>cat: stop using stdio.h opens
626<li>config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000627<li>cryptpw: new applet (by Thomas Lundquist &lt;lists at zelow.no&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000628<li>cttyhack: new applet
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000629<li>dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens &lt;develop at cle-mens.de&gt;)
630<li>deluser: add optional support for removing users from groups (by Tito &lt;farmatito at tiscali.it&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000631<li>diff: fix SEGV (NULL deref) in diff -N
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000632<li>diff: fix segfault on empty dirs (Peter Korsgaard &lt;peter.korsgaard at barco.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000633<li>dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000634<li>dpkg: run_package_script() returns 0 if all ok and non-zero if failure. The result code was checked incorrectly in two places. (from Kim B. Heino &lt;Kim.Heino at bluegiga.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000635<li>dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000636<li>dumpleases: getopt32()-ization (from Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000637<li>e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
638<li>ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
639<li>ether-wake: save a few more bytes of code
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000640<li>find: -group, -depth (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000641<li>find: add support for -delete, -path (by Natanael Copa)
642<li>find: fix -prune. Add big comment about it
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000643<li>find: improve usage text (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000644<li>find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000645<li>find: un-DESKTOPize (Kai Schwenzfeier &lt;niteblade at gmx.net&gt;)
646<li>find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov &lt;lich at math.spbu.ru&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000647<li>find_root_device: use lstat - don't follow links
648<li>getopt32: fix llist_t options ordering. llist_rev is now unused
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000649<li>getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;
650<li>hdparm: fix multisector mode setting (from Toni Mirabete &lt;amirabete at catix.cat&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000651<li>hdparm: make -T -t code smaller (-194 bytes), and output prettier
652<li>ifupdown: make it possible to use DHCP clients different from udhcp
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000653<li>ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa &lt;natanael.copa at gmail.com&gt;
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000654<li>ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
655<li>ip: fix compilation if FEATURE_TR_CLASSES is off
656<li>ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
657<li>ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
658<li>ip: set the scope properly. Thanks to Jean Wolter
659<li>iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
660<li>iproute: shrink a bit (-200 bytes)
661<li>kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
662<li>klogd: remove dependency on syslogd
663<li>lash: "forking" applets are actually can be treated the same way as "non-forked". Also save a bit of space on trailing NULL array elements.
664<li>lash: fix kill buglet (didn't properly recognize ESRCH)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000665<li>lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000666<li>lash: recognize and use NOFORK applets
667<li>less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less &lt;HUGEFILE + [End] busy loop
668<li>libbb: add xsendto, xunlink, xpipe
669<li>libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
670<li>libbb: make pidfile writing configurable
671<li>libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
672<li>libbb: rework NOMMU helper API so that it makes more sense and easier to use
673<li>libiproute: audit callgraph, shortcut error paths into die() functions
674<li>lineedit: do not try to open NULL history file
675<li>lineedit: nuke two unused variables and code which sets them
676<li>login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
677<li>login: shrink login and set_environment by ~100 bytes
678<li>mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
679<li>mount: fix mounting of symlinks (mount from util-linux allows that)
680<li>msh: data/bss reduction (more than 9k of it); fix "underscore bug" (a_b=1111 didn't work); fix obscure case with backticks and closed fd 1
681<li>nc: port nc 1.10 to busybox
682<li>netstat: fix for bogus state value for raw sockets
683<li>netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
684<li>nmeter: should die if stdout doesn't like him anymore
685<li>patch: do not try to delete same file twice
686<li>ping: fix wrong sign extension of packet id (bug 1373)
687<li>ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
688<li>run_parts: rewrite
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000689<li>run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo &lt;somlo at cmu.edu&gt;
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000690<li>sed: fix escaped newlines in -f
691<li>split: new applet
692<li>stat: remove superfluous bss user (flags) and manually unswitch some areas
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000693<li>stty: fix option parsing bug (spotted by Sascha Hauer &lt;s.hauer at pengutronix.de&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000694<li>svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
695<li>tail: fix SEGV on "tail -N"
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000696<li>ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape &lt;pape at smarden.org&gt;, http://smarden.sunsite.dk/ipsvd/
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000697<li>test: close bug 1371; plug a memory leak; code size reduction
698<li>tftp: code diet, and I think retransmits were broken
699<li>tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
700<li>udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
701<li>udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
702<li>xargs: shrink code, ~80 bytes; simplify word list management
703<li>zcip: make it work on NOMMU (+ improve NOMMU support machinery)
704 </ul>
705 </p>
706 </li>
707
708 <li><b>20 May 2007 -- BusyBox 1.5.1 (stable)</b>
Denis Vlasenkofe52a742007-05-20 17:12:43 +0000709 <p><a href=http://busybox.net/downloads/busybox-1.5.1.tar.bz2>BusyBox 1.5.1</a>.
710 (<a href=http://busybox.net/downloads/fixes-1.5.1/>patches</a>,
711 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
712
713 <p>This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
714 and sed.</p>
715 </li>
716
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000717 <li><b>23 March 2007 -- BusyBox 1.5.0 (unstable)</b>
Denis Vlasenko7d108232007-03-22 23:31:29 +0000718 <p><a href=http://busybox.net/downloads/busybox-1.5.0.tar.bz2>BusyBox 1.5.0</a>.
Denis Vlasenkofdf63a32007-04-07 09:35:56 +0000719 (<a href=http://busybox.net/downloads/fixes-1.5.0/>patches</a>,
720 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
Denis Vlasenko9eb51ad2007-03-31 10:32:27 +0000721
Denis Vlasenko7d108232007-03-22 23:31:29 +0000722 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
723 label. Please help making 1.5.1 stable by testing 1.5.0.</p>
724 <p>Notable changes since previous release:
725 <ul>
726 <li>find: added support for -user, -not, fixed -mtime, -mmin, -perm
727 <li>[de]archivers: merge common logic into one module
728 <li>ping[6]: unified code for both
729 <li>less: regex search improved
730 <li>ash: more readable code, testsuite added
731 <li>sed: several very obscure bugs fixed
732 <li>chown: -H, -L, -P support (required by POSIX)
733 <li>tar: handle (broken) checksums a-la Sun; tar restores mode again
734 <li>grep: implement -w, "implement" -a and -I by ignoring them
735 <li>cp: more sane behavior when overwriting existing files
736 <li>init: stop doing silly things with the console (-400 bytes)
737 <li>httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
738 <li>httpd: run interpreter for configured file extensions in any dir,
739 not only in /cgi-bin/
740 <li>chrt: new applet
741 <li>SELinux: SELinux-related code and -Z option added to several applets,
742 new SELinux-specific applets: chcon, runcon.
743 <li>Build system: produces link map, uses -Wwrite-strings to catch
744 improper usage of string constants.
745 <li>Data and bss section usage audited and reduced - should help NOMMU
746 targets.
747 <li>Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
748 sv, printf, diff, awk, sort, dpkg, diff, tftp
749 <li>Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
750 udhcpd, start_stop_daemon, cmp
751 <li>Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
752 syslogd, swapon, runsv, svlogd, klogd
753 </ul>
754 </p>
755 </li>
756
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000757 <li><b>18 March 2007 -- BusyBox 1.4.2 (stable)</b>
Denis Vlasenko1c86a292007-03-18 18:21:44 +0000758 <p><a href=http://busybox.net/downloads/busybox-1.4.2.tar.bz2>BusyBox 1.4.2</a>.
759 </p>
760
761 <p>This release includes only trivial fixes accumulated since 1.4.1.
762 </p>
763 </li>
764
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000765 <li><b>25 January 2007 -- BusyBox 1.4.1 (stable)</b>
Denis Vlasenko5ff8f3d2007-01-26 23:35:12 +0000766 <p><a href=http://busybox.net/downloads/busybox-1.4.1.tar.bz2>BusyBox 1.4.1</a>.
767 (<a href=http://busybox.net/downloads/fixes-1.4.1/>patches</a>)</p>
Denis Vlasenko30abe972007-01-25 21:10:43 +0000768
769 <p>This release includes only trivial fixes accumulated since 1.4.0.
770 </p>
771 </li>
772
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000773 <li><b>20 January 2007 -- BusyBox 1.4.0 (stable)</b>
Denis Vlasenko52848ee2007-01-22 23:39:08 +0000774 <p><a href=http://busybox.net/downloads/busybox-1.4.0.tar.bz2>BusyBox 1.4.0</a>.
775 (<a href=http://busybox.net/downloads/fixes-1.4.0/>patches</a>)</p>
Denis Vlasenko31273582007-01-20 20:38:57 +0000776
777 <p>Since this is a x.x.0 release, it probably is a bit less "stable"
778 than usual.</p>
779 <p>Changes since previous release:
780 <ul>
781 <li>e2fsprogs are mostly removed from busybox. Some smaller parts remain,
782 the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
783 it's too bloated. Really. I'm afraid it's about the only way we can
784 ever get e2fsprogs cleaned up.
785 <li>less: many improvements. Now can display binary files
786 (although I expect it to have trouble with displays where 8bit chars
787 don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
788 anymore. Less does not read entire input up-front. Reads input
789 as it appears (yay!). Works rather nice as man pager. I recommend it
790 for general use now.
791 <li>IPv6: generic support is in place, many networking applets are
792 upgraded to be IPv6 capable. Probably some work remains, but it is
793 already much better than what we had previously.
794 <li>arp: new applet (thanks to Eric Spakman).
795 <li>fakeidentd: non-forking standalone server part was taking ~90%
796 of the applet. Factored it out (in fact, rewrote it).
797 <li>syslogd: mostly rewritten.
798 <li>decompress_unzip, gzip: sanitized a bit.
799 <li>sed: better hadling of NULs
800 <li>httpd: stop adding our own "Content-type:" to CGI output
801 <li>chown: user.grp works again.
802 <li>minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
803 ps, ifupdown, time, su, stty, awk, ping[6], sort,...
804 </ul>
805 </p>
806 </li>
807
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000808 <li><b>20 January 2007 -- BusyBox 1.3.2 (stable)</b>
Bernhard Reutner-Fischerb3f3c232007-01-20 21:46:20 +0000809 <p><a href=http://busybox.net/downloads/busybox-1.3.2.tar.bz2>BusyBox 1.3.2</a>.</p>
Denis Vlasenko31273582007-01-20 20:38:57 +0000810
811 <p>This release includes only one trivial fix accumulated since 1.3.1
812 </p>
813 </li>
814
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000815 <li><b>27 December 2006 -- BusyBox 1.3.1 (stable)</b>
Denis Vlasenko9cd7a242006-12-27 07:57:29 +0000816 <p><a href=http://busybox.net/downloads/busybox-1.3.1.tar.bz2>BusyBox 1.3.1</a>.
Denis Vlasenkoc1a33992006-12-28 21:44:43 +0000817 (<a href=http://busybox.net/downloads/fixes-1.3.1/>patches</a>)</p>
Denis Vlasenkof959bee2006-12-27 05:06:27 +0000818
819 <p>Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
820 </p>
821 </li>
822
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000823 <li><b>14 December 2006 -- BusyBox 1.3.0 (stable)</b>
Denis Vlasenko79e77cd2006-12-15 22:10:07 +0000824 <p><a href=http://busybox.net/downloads/busybox-1.3.0.tar.bz2>BusyBox 1.3.0</a>.
825 (<a href=http://busybox.net/downloads/fixes-1.3.0/>patches</a>)</p>
Denis Vlasenkof7b0d4a2006-12-14 00:22:51 +0000826
827 <p>This release has CONFIG_DESKTOP option which enables features
828 needed for busybox usage on desktop machine. For example, find, chmod
829 and chown get several less frequently used options, od is significantly
830 bigger but matches GNU coreutils, etc. Intended to eventually make
831 busybox a viable alternative for "standard" utilities for slightly
832 adventurous desktop users.
833 <p>Changes since previous release:
834 <ul>
835 <li>find: taking many more of standard options
836 <li>ps: POSIX-compliant -o implemented
837 <li>cp: added -s, -l
838 <li>grep: added -r, fixed -h
839 <li>watch: make it exec child like standard one does (was totally
840 incompatible)
Denis Vlasenkof7996f32007-01-11 17:20:00 +0000841 <li>tar: fix limitations which were preventing bbox tar usage
Denis Vlasenkoba092332006-12-27 09:47:53 +0000842 on big directories: long names and linknames, pax headers
Denis Vlasenkof7b0d4a2006-12-14 00:22:51 +0000843 (Linux kernel tarballs have that). Fixed a number of obscure bugs.
844 Raised max file limit (now 64Gb). Security fixes (/../ attacks).
845 <li>httpd: added -i (inetd), -f (foreground), support for
846 directory indexer CGI (example is included), bugfixes.
847 <li>telnetd: fixed/improved IPv6 support, inetd+standalone support,
848 other fixes. Useful IPv6 stuff factored out into libbb.
849 <li>runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
850 (these are my personal favorite small-and-beautiful toys)
851 <li>minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
852 fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
853 </ul>
854 <p>Note that GnuPG key used to sign this release is different.
855 1.2.2.1 is also signed post-factum now. Sorry for the mess.
856 </p>
857 </li>
858
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000859 <li><b>29 October 2006 -- BusyBox 1.2.2.1 (fix)</b>
Denis Vlasenko41be5b82006-10-29 19:34:49 +0000860 <p><a href=http://busybox.net/downloads/busybox-1.2.2.1.tar.bz2>BusyBox 1.2.2.1</a>.</p>
Denis Vlasenko8d463072006-10-29 19:30:55 +0000861
862 <p>Added compile-time warning that static linking against glibc
863 produces buggy executables.
864 </li>
865
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000866 <li><b>24 October 2006 -- BusyBox 1.2.2 (stable)</b>
Rob Landley44c79172006-10-24 21:46:19 +0000867 <p>It's a bit overdue, but
868 <a href=http://busybox.net/downloads/busybox-1.2.2.tar.bz2>here is
869 BusyBox 1.2.2</a>.</p>
870
871 <p>This release has dozens of fixes backported from the ongoing development
872 branch. There are a couple of bugfixes to sed, two fixes to documentation
873 generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
874 umount to report the right errno on failure and to umount block devices by
875 name with newer kernels, fix mount to handle symlinks properly, make mdev
876 delete device nodes when called for hotplug remove, fix a segfault
877 in traceroute, a minor portability fix to md5sum option parsing, a build
878 fix for httpd with old gccs, an options parsing tweak to hdparm, make test
879 fail gracefully when getgroups() returns -1, fix a race condition in
880 modprobe when two instances run at once (hotplug does this), make "tar xf
881 foo.tar dir/dir" extract all subdirectories, make our getty initialize the
882 terminal more like mingetty, an selinux build fix, an endianness fix in
883 ping6, fix for zcip defending addresses, clean up some global variables in
884 gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
885 fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.</p>
886
887 <p>As <a href=http://lwn.net/Articles/202106/>Linux Weekly News noted</a>,
888 this is my (Rob's) last release of BusyBox. The new maintainer is Denis
889 Vlasenko, I'm off to do <a href=http://landley.net/code>other things</a>.
890 </p>
891 </li>
892
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000893 <li><b>29 September 2006 -- New license email address.</b>
Rob Landley530c3ef2006-09-29 22:43:12 +0000894 <p>The email address gpl@busybox.net is now the recommended way to contact
895 the Software Freedom Law Center to report BusyBox license violations.</p>
896
Rob Landley2aced7e2006-07-31 23:56:26 +0000897 <li><b>31 July 2006 -- BusyBox 1.2.1 (stable)</b>
898 <p>Since nobody seems to have objected too loudly over the weekend, I
899 might as well point you all at
900 <a href="http://busybox.net/downloads/busybox-1.2.1.tar.bz2">Busybox
901 1.2.1</a>, a bugfix-only release with no new features.</p>
902
903 <p>It has three shell fixes (two to lash: going "var=value" without
904 saying "export" should now work, plus a missing null pointer check, and
905 one to ash when redirecting output to a file that fills up.) Fix three
906 embarassing thinkos in the new dmesg command. Two build tweaks
907 (dependencies for the compressed usage messages and running make in the
908 libbb subdirectory). One fix to tar so it can extract git-generated
909 tarballs (rather than barfing on the pax extensions). And a partridge
910 in a pear... Ahem.</p>
911
912 <p>But wait, there's more! A passwd changing fix so an empty
913 gecos field doesn't trigger a false objection that the new passwd contains
914 the gecos field. Make all our setuid() and setgid() calls check the return
915 value in case somebody's using per-process resource limits that prevent
916 a user from having too many processes (and thus prevent a process from
917 switching away from root, in which case the process will now _die_ rather
918 than continue with root privileges). A fix to adduser to make sure that
919 /etc/group gets updated. And a fix to modprobe to look for modules.conf
920 in the right place on 2.6 kernels.</p>
921
Rob Landley01772ae2006-06-30 22:40:13 +0000922 <li><b>30 June 2006 -- BusyBox 1.2.0</b>
923 <p>The -devel branch has been stabilized and the result is
924 <a href="http://busybox.net/downloads/busybox-1.2.0.tar.bz2">Busybox
925 1.2.0</a>. Lots of stuff changed, I need to work up a decent changelog
926 over the weekend.</p>
927
928 <p>I'm still experimenting with how long is best for the development
929 cycle, and since we've got some largeish projects queued up I'm going to
930 try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
931 we fix enough bugs. :)</p>
932
Rob Landley1df45cf2006-07-08 18:11:00 +0000933 <p>Update: Here are <a href="http://busybox.net/downloads/busybox-1.2.0.fixes.patch">the first few bug fixes</a> that will go into 1.2.1.</p>
934
Rob Landleyc27c04c2006-05-17 19:59:24 +0000935 <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
Rob Landleyd2ccc2b2006-05-17 21:04:53 +0000936 <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
Rob Landleyc27c04c2006-05-17 19:59:24 +0000937 1.1.3</a> is another bugfix release. It makes passwd use salt, fixes a
938 memory freeing bug in ls, fixes "build all sources at once" mode, makes
939 mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
940 background processes, makes patch work with patch hunks that don't have a
941 timestamp, make less's text search a lot more robust (the old one could
942 segfault), and fixes readlink -f when built against uClibc.</p>
943
944 <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
945
Rob Landleybb5b2ff2006-04-10 20:04:32 +0000946 <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
947 <p>You can now download <a href="http://busybox.net/downloads/busybox-1.1.2.tar.bz2">BusyBox 1.1.2</a>, a bug fix release consisting of 11 patches
948 backported from the development branch: Some build fixes, several fixes
949 for mount and nfsmount, a fix for insmod on big endian systems, a fix for
950 find -xdev, and a fix for comm. Check the file "changelog" in the tarball
951 for more info.</p>
952
953 <p>The next new development release (1.2.0) is slated for June. A 1.1.3
954 will be released before then if more bug fixes crop up. (The new plan is
955 to have a 1.x.0 new development release every 3 months, with 1.x.y stable
956 bugfix only releases based on that as appropriate.)</p>
Denis Vlasenko9213a9e2006-09-17 16:28:10 +0000957
Rob Landley0949d302006-03-27 22:43:40 +0000958 <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
959 <p>One issue Erik Andersen wanted to resolve when handing off BusyBox
960 maintainership to Rob Landley was license enforcement. BusyBox and
961 uClibc's existing license enforcement efforts (pro-bono representation
962 by Erik's father's law firm, and the
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000963 <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), haven't
Rob Landley0949d302006-03-27 22:43:40 +0000964 scaled to match the popularity of the projects. So we put our heads
965 together and did the obvious thing: ask Pamela Jones of
966 <a href="http://www.groklaw.net">Groklaw</a> for suggestions. She
967 referred us to the fine folks at softwarefreedom.org.</p>
968
969 <p>As a result, we're pleased to announce that the
970 <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
971 has agreed to represent BusyBox and uClibc. We join a number of other
972 free and open source software projects (such as
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000973 <a href="http://lwn.net/Articles/141806/">X.org</a>,
Rob Landley0949d302006-03-27 22:43:40 +0000974 <a href="http://lwn.net/Articles/135413/">Wine</a>, and
Bernhard Reutner-Fischeraf07a002006-04-16 20:56:03 +0000975 <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
Rob Landley0949d302006-03-27 22:43:40 +0000976 in being represented by a fairly cool bunch of lawyers, which is not a
977 phrase you get to use every day.</p>
978
Rob Landley5fba2502006-03-23 03:08:09 +0000979 <li><b>22 March 2006 -- BusyBox 1.1.1</b>
980 <p>The new maintainer is Rob Landley, and the new release is <a href="http://busybox.net/downloads/busybox-1.1.1.tar.bz2">BusyBox 1.1.1</a>. Expect a "what's new" document in a few days. (Also, Erik and I have have another announcement pending...)</p>
Rob Landley0949d302006-03-27 22:43:40 +0000981 <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
982 the various small fixes have been collected together into a
983 <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
Rob Landley28ff9662006-03-27 23:22:16 +0000984 and new fixes will be appended to that as needed. Expect 1.1.2 around
985 June.</p>
Rob Landley5fba2502006-03-23 03:08:09 +0000986 </li>
Rob Landley734a7792006-01-14 07:43:22 +0000987 <li><b>11 January 2006 -- 1.1.0 is out</b>
988 <p>The new stable release is
989 <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
990 1.1.0</a>. It has a number of improvements, including several new applets.
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000991 (It also has <a href="http://www.busybox.net/lists/busybox/2006-January/017733.html">a few rough spots</a>,
Rob Landley734a7792006-01-14 07:43:22 +0000992 but we're trying out a "release early, release often" strategy to see how
993 that works. Expect 1.1.1 sometime in March.)</p>
Eric Andersen539eef62003-12-10 12:08:20 +0000994
Eric Andersenc7bda1c2004-03-15 08:29:22 +0000995 <li><b>Old News</b><p>
Eric Andersen539eef62003-12-10 12:08:20 +0000996 <a href="/oldnews.html">Click here to read older news</a>
Rob Landleyd879ffb2006-06-27 21:29:56 +0000997 </p>
998 </li>
Eric Andersen539eef62003-12-10 12:08:20 +0000999
1000
1001</ul>
1002
1003<!--#include file="footer.html" -->
1004