blob: bba96b481ba60d422859ebfbab87ce0812bb073e [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 Vlasenko68d09692008-03-21 18:41:21 +00004 <li><b>21 March 2008 -- BusyBox stable releases</b>
5 <p>
Denis Vlasenko45911a62008-03-21 20:06:42 +00006 Bugfix-only releases for four past branches. Links to locations
Denis Vlasenko31567c12008-03-21 18:52:18 +00007 for future hot patches are in parentheses.
Denis Vlasenko68d09692008-03-21 18:41:21 +00008 <p>
9 <a href=http://busybox.net/downloads/busybox-1.9.2.tar.bz2>1.9.2</a>
10 (<a href=http://busybox.net/downloads/fixes-1.9.2/>patches</a>),
11 <a href=http://busybox.net/downloads/busybox-1.8.3.tar.bz2>1.8.3</a>
12 (<a href=http://busybox.net/downloads/fixes-1.8.3/>patches</a>),
13 <a href=http://busybox.net/downloads/busybox-1.7.5.tar.bz2>1.7.5</a>
14 (<a href=http://busybox.net/downloads/fixes-1.7.5/>patches</a>),
15 <a href=http://busybox.net/downloads/busybox-1.5.2.tar.bz2>1.5.2</a>
16 (<a href=http://busybox.net/downloads/fixes-1.5.2/>patches</a>).
17 <p>
18 <a href=http://busybox.net/fix.html>How to add a patch.</a>
19 <p>
20 <a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
21 <p>
22 The email address gpl@busybox.net is the recommended way to contact
Denis Vlasenko31567c12008-03-21 18:52:18 +000023 the Software Freedom Law Center to report BusyBox license violations.
24 </p>
Denis Vlasenko68d09692008-03-21 18:41:21 +000025
Denis Vlasenko3d3d6982008-02-12 17:53:59 +000026 <li><b>12 February 2008 -- BusyBox 1.9.1 (stable)</b>
27 <p><a href=http://busybox.net/downloads/busybox-1.9.1.tar.bz2>BusyBox 1.9.1</a>.
28 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/>svn</a>,
29 <a href=http://busybox.net/downloads/fixes-1.9.1/>patches</a>,
30 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
31
32 <p>This is a bugfix-only release, with fixes to fsck,
33 iproute, mdev, mkswap, msh, nameif, stty, test, zcip.</p>
34 <p>hush has `command` expansion re-enabled for NOMMU, although it is
35 inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
Denis Vlasenko7c5258b2008-02-12 18:53:16 +000036 The plan is to make this less likely to bite people in future versions.</p>
Denis Vlasenko3d3d6982008-02-12 17:53:59 +000037 </li>
38
Denis Vlasenko299c5c32007-12-24 14:43:25 +000039 <li><b>24 December 2007 -- BusyBox 1.9.0 (unstable)</b>
40 <p><a href=http://busybox.net/downloads/busybox-1.9.0.tar.bz2>BusyBox 1.9.0</a>.
41 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/>svn</a>,
42 <a href=http://busybox.net/downloads/fixes-1.9.0/>patches</a>,
43 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
44
45 <p>Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):<pre>
46 text data bss dec hex filename
47 792796 978 9724 803498 c42aa busybox-1.8.2
48 783803 683 7508 791994 c15ba busybox-1.9.0
49</pre>
50 <p>Top 10 stack users:<pre>
51busybox-1.8.2: busybox-1.9.0:
52input_tab 10428 echo_dg 4116
53umount_main 8252 bb_full_fd_action 4112
54rtnl_talk 8240 discard_dg 4096
55xrtnl_dump_filter 8240 echo_stream 4096
56sendMTFValues 5316 discard_stream 4096
57mainSort 4700 find_list_entry2 4096
58mkfs_minix_main 4288 readlink_main 4096
59grave 4260 ipaddr_list_or_flush 3900
60unix_do_one 4156 iproute_list_or_flush 3680
61parse_prompt 4132 insmod_main 3152
62</pre>
63
64 <p>lash is deleted from this release. hush can be configured down to almost
65 the same size, but it is significantly less buggy. It even works
66 on NOMMU machines (interactive mode and backticks are not working on NOMMU,
67 though). "lash" applet is still available, but it runs hush.
68
69 <p>init has some changes in this release, please report if it causes
70 problems for you.
71
72 <p>Changes since previous release:
73 <ul>
74 <li>Build system improvements
75 <li>Testsuite additions
76 <li>Stack size reductions, code size reductions, data/bss reductions
77 <li>An option to prefer IPv4 address if host has both
78 <li>New applets: hd, sestatus
79 <li>Removed applets: lash
80 <li>hush: fixed a few bugs, wired up echo and test to be builtins
81 <li>init: simplify forking of children
82 <li>getty: special handling of '#' and '@' is removed
83 <li>[su]login: sanitize environment if called by non-root
84 <li>udhcpc: support "bad" servers which send oversized packets
85 (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
Denis Vlasenko7b55c7f2007-12-24 17:33:56 +000086 <li>udhcpc: -O option allows to specify which options to ask for
Denis Vlasenko299c5c32007-12-24 14:43:25 +000087 (Stefan Hellermann &lt;stefan at the2masters.de&gt;)
88 <li>udhcpc: optionally check whether given IP is really free (by ARP ping)
89 (Jonas Danielsson &lt;jonas.danielsson at axis.com&gt;)
90 <li>vi: now handles files with unlimited line length
91 <li>vi: speedup for huge line lengths
92 <li>vi: Del key works
93 <li>sed: support GNUism '\t'
94 <li>cp/mv/install: optionally use bigger buffer for bulk copying
95 <li>line editing: don't eat stack like crazy
96 <li>passwd: follows symlinked /etc/passwd
97 <li>renice: accepts priority with +N too
98 <li>netstat: wide output mode
99 <li>nameif: extended matching (Nico Erfurth &lt;masta at perlgolf.de&gt;)
100 <li>test: become NOFORK applet
101 <li>find: -iname (Alexander Griesser &lt;alexander.griesser at lkh-vil.or.at&gt;)
102 <li>df: -i option (show inode info) (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
103 <li>hexdump: -R option (Pascal Bellard &lt;pascal.bellard at ads-lu.com&gt;)
104 </ul>
Denis Vlasenko31567c12008-03-21 18:52:18 +0000105 </p>
Denis Vlasenko299c5c32007-12-24 14:43:25 +0000106
Denis Vlasenkoa8875ef2007-11-24 04:49:07 +0000107 <li><b>23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)</b>
108 <p><a href=http://busybox.net/downloads/busybox-1.8.2.tar.bz2>BusyBox 1.8.2</a>.
109 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
110 <a href=http://busybox.net/downloads/fixes-1.8.2/>patches</a>,
111 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
112 <p><a href=http://busybox.net/downloads/busybox-1.7.4.tar.bz2>BusyBox 1.7.4</a>.
113 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
114 <a href=http://busybox.net/downloads/fixes-1.7.4/>patches</a>,
115 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
116
117 <p>These are bugfix-only releases.
118 1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
119 1.7.4 contains a fix for inetd.</p>
120 </li>
121
Denis Vlasenko40702da2007-11-10 03:24:21 +0000122 <li><b>9 November 2007 -- BusyBox 1.8.1 (stable)</b>
123 <p><a href=http://busybox.net/downloads/busybox-1.8.1.tar.bz2>BusyBox 1.8.1</a>.
124 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
125 <a href=http://busybox.net/downloads/fixes-1.8.1/>patches</a>,
126 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
127
128 <p>This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.</p>
129 </li>
130
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000131 <li><b>4 November 2007 -- BusyBox 1.8.0 (unstable)</b>
132 <p><a href=http://busybox.net/downloads/busybox-1.8.0.tar.bz2>BusyBox 1.8.0</a>.
133 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
134 <a href=http://busybox.net/downloads/fixes-1.8.0/>patches</a>,
135 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
136
137 <p>Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
138
139 <p>Applets which had many changes since 1.7.x:
140 <p>httpd:
141 <ul>
142 <li>does not clear environment, CGIs will see all environment variables which were set for httpd
143 <li>fix bug where we were trying to read more POSTDATA than content-length
144 <li>fix trivial bug (spotted by Alex Landau)
145 <li>optional support for partial downloads
146 <li>simplified CGI i/o loop (now it looks good to me)
147 <li>small auth and IPv6 fixes (Kim B. Heino &lt;Kim.Heino at bluegiga.com>)
148 <li>support for proxying connection to other http server (by Alex Landau &lt;landau_alex at yahoo.com>)
149 </ul>
150
151 <p>top:
152 <ul>
153 <li>TOPMEM feature - 's(how sizes)' command
154 <li>don't wait before final bailout (try top -b -n1)
155 <li>fix for command line wrapping
156 </ul>
157
158 <p>Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
159
160 <p>Code and data size in comparison with 1.7.3:<pre>
161Equivalent .config, i386 uclibc static builds:
162 text data bss dec hex filename
163 768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
164 759693 974 9420 770087 bc027 busybox-1.8.0/busybox</pre>
165
166 <p>New applets:
167 <ul>
168 <li>microcom: new applet by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;
169 <li>kbd_mode: new applet by Loic Grenie &lt;loic.grenie at gmail.com&gt;
170 <li>bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
171 <li>pgrep, pkill: new applets by Loic Grenie &lt;loic.grenie at gmail.com&gt;
172 <li>setsebool: new applet (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
173 </ul>
174
175 <p>Other changes since previous release (abridged):
176 <ul>
177 <li>cp: -r and -R imply -d (coreutils compat)
178 <li>cp: detect and prevent infinite recursion
179 <li>cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
180 <li>hdparm: reduce possibility of numeric overflow in -T
181 <li>hdparm: simplify timing measurement
182 <li>wget: -O FILE is allowed to overwrite existing file (compat)
Denis Vlasenko9fcd7992007-11-05 16:26:34 +0000183 <li>wget: allow dots in header field names
184 <li>telnetd: add -K option to close sessions as soon as child exits
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000185 <li>telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
186 <li>ed: large cleanup, add line editing
187 <li>hush: feeble attempt at making it more NOMMU-friendly
188 <li>hush: fix glob()
189 <li>hush: stop doing manual accounting of open fd's, kernel can do it for us
190 <li>adduser: implement -S and fix uid selection
191 <li>ash: fix prompt expansion (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
192 <li>ash: revert "cat | jobs" fix, it causes more problems than good
193 <li>find: fix -xdev behavior in the presence of two or more nested mount points
194 <li>grep: fix grep -F -e str1 -e str2 (was matching str2 only)
195 <li>grep: optimization: stop on first -e match
196 <li>gunzip: support concatenated gz files
197 <li>inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
198 <li>install: 'support' (by ignoring) -v and -b
199 <li>install: fix bug in "install -c file dir" (tried to copy dir into dir too)
200 <li>ip: tunnel parameter parsing fix by Jean Wolter &lt;jw5 at os.inf.tu-dresden.de&gt;
201 <li>isrv: use monotonic_sec
202 <li>less: make 'f' key page forward
203 <li>libiproute: add missing break statements
204 <li>load_policy: update (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
205 <li>logger: fix a problem of losing all argv except first
206 <li>login: do reject wrong passwords with PAM auth
207 <li>losetup: support -f (Loic Grenie &lt;loic.grenie at gmail.com&gt;)
208 <li>fdisk: make fdisk compile on libc without llseek64
209 <li>libbb: by popular request allow PATH to be customized at build time
210 <li>mkswap: selinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
211 <li>mount: allow (and ignore) -i
212 <li>mount: ignore NFS bg option on NOMMU machines
213 <li>mount: mount helpers support (by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;)
214 <li>passwd: handle Ctrl-C, restore termios on Ctrl-C
215 <li>passwd: SELinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
216 <li>ping: make -I ethN work too (-I addr already worked)
217 <li>ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
218 <li>read_line_input: fix it to not do any fancy editing if echoing is disabled
219 <li>run_parts: make it sort executables by name (required by API)
220 <li>runsv: do not use clock_gettime if !MONOTONIC_CLOCK
221 <li>runsvdir: fix "linear wait time" bug
222 <li>sulogin: remove alarm handling, it is redundant there
Denis Vlasenko9fcd7992007-11-05 16:26:34 +0000223 <li>svlogd: compat: svlogd -tt should timestamp stderr too
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000224 <li>syslogd: bail out if you see null read from Unix socket
225 <li>syslogd: do not need to poll(), we can just block in read()
226 <li>tail: work correctly on /proc files (Kazuo TAKADA &lt;kztakada at sm.sony.co.jp&gt;)
227 <li>tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau &lt;landau_alex at yahoo.com&gt;)
228 <li>tar: strip leading '/' BEFORE memorizing hardlink's name
229 <li>tftp: fix infinite retry bug
230 <li>umount: support (by ignoring) -i; style fixes
231 <li>unzip: fix endianness bugs
232 <li>vi: don't wait 50 ms before reading ESC sequences
233 <li>watchdog: allow millisecond spec (-t 250ms)
234 <li>zcip: fix unaligned trap on ARM
235 </ul>
236 </p>
237
Denis Vlasenko6cee58e2007-11-04 15:43:26 +0000238 </li>
239
Denis Vlasenko06200342007-11-04 04:30:20 +0000240 <li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b>
241 <p><a href=http://busybox.net/downloads/busybox-1.7.3.tar.bz2>BusyBox 1.7.3</a>.
242 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
243 <a href=http://busybox.net/downloads/fixes-1.7.3/>patches</a>,
244 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
245
246 <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 +0000247 </li>
248
Denis Vlasenkoe03c77f2007-09-30 00:06:42 +0000249 <li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b>
250 <p><a href=http://busybox.net/downloads/busybox-1.7.2.tar.bz2>BusyBox 1.7.2</a>.
251 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
252 <a href=http://busybox.net/downloads/fixes-1.7.2/>patches</a>,
253 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
254
255 <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 +0000256 </li>
257
Denis Vlasenko27bd8d72007-09-16 19:41:40 +0000258 <li><b>16 September 2007 -- BusyBox 1.7.1 (stable)</b>
259 <p><a href=http://busybox.net/downloads/busybox-1.7.1.tar.bz2>BusyBox 1.7.1</a>.
260 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
261 <a href=http://busybox.net/downloads/fixes-1.7.1/>patches</a>,
262 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
263
264 <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 +0000265 </li>
266
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000267 <li><b>24 August 2007 -- BusyBox 1.7.0 (unstable)</b>
268 <p><a href=http://busybox.net/downloads/busybox-1.7.0.tar.bz2>BusyBox 1.7.0</a>.
269 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
270 <a href=http://busybox.net/downloads/fixes-1.7.0/>patches</a>,
271 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
272
273 <p>Applets which had many changes since 1.6.x:
274 <p>httpd:
275 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000276 <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 +0000277 <li>indexer example is rewritten in C
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000278 <li>optional support for error pages (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000279 <li>stop reading headers using 1-byte reads
280 <li>new option -v[v]: prints client addresses, HTTP codes returned, URLs
281 <li>extended -p PORT to -p [IP[v6]:]PORT
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000282 <li>sendfile support (by Pierre Metras &lt;genepi at sympatico.ca&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000283 <li>add support for Status: CGI header
284 <li>fix CGI handling bug (we were closing wrong fd)
285 <li>CGI I/O loop still doesn't look 100% ok to me...
286 </ul>
287
288 <p>udhcp[cd]:
289 <ul>
290 <li>add -f "foreground" and -S "syslog" options
Denis Vlasenko46fc23b2007-08-24 11:49:55 +0000291 <li>fixed "ifupdown + udhcpc_without_pidfile_creation" bug
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000292 <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 +0000293 <li>consistently treat server_config.start/end IPs as host-order
294 <li>fix IP parsing for 64bit machines
295 <li>fix unsafe hton macro usage in read_opt()
296 <li>do not chdir to / when daemonizing
297 </ul>
298
Denis Vlasenko46fc23b2007-08-24 11:49:55 +0000299 <p>top, ps, killall, pidof:
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000300 <ul>
301 <li>simpler loadavg processing
302 <li>truncate usernames to 8 chars
303 <li>fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
304 <li>improve /proc/PID/cmdinfo reading code
305 <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)
306 <li>reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
307 <li>make percentile (0.1%) calculations configurable
308 <li>add config option and code for global CPU% display
309 <li>reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
310 </ul>
311
312 <p>Build system improvements: doesn't link against libraries we don't need,
313 generates verbose link output and map file, allows for custom link
Denis Vlasenkocab774d2007-08-24 12:52:04 +0000314 scripts (useful for removing extra padding, among other things).
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000315
316 <p>Code and data size in comparison with 1.6.1:<pre>
317Equivalent .config, i386 glibc dynamic builds:
318 text data bss dec hex filename
319 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
320 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
321 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
322
323Same .config built against static uclibc:
324 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc</pre>
325
326 <p>Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
327 test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
328 runit/*, in libbb.
329
330 <p>New applets:
331 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000332 <li>pscan, expand, unexpand (from Tito &lt;farmatito at tiscali.it&gt;)
333 <li>setfiles, restorecon (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
334 <li>chpasswd (by Alexander Shishkin &lt;virtuoso at slind.org&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000335 <li>slattach, ttysize
336 </ul>
337
338 <p>Unfortunately, not much work is done on shells. This was mostly stalled
339 by lack of time (read: laziness) on my part to learn how to adapt existing
340 qemu-runnable image for a NOMMU architechture (available on qemu website)
341 for local testing of cross-compiled busybox on my machine.
342
343 <p>Other changes since previous release (abridged):
344 <ul>
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000345 <li>addgroup: disallow addgroup -g num user group; make -g 0 work (Tito &lt;farmatito at tiscali.it&gt;)
346 <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 +0000347 <li>arping: -i should be -I, fixed
348 <li>ash: make "jobs | cat" work like in bash (was giving empty output)
349 <li>ash: recognize -l as --login equivalent; do not recognize +-login
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000350 <li>ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000351 <li>ash: fix SEGV if type has zero parameters
352 <li>awk: fix -F 'regex' bug (miscounted fields if last field is empty)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000353 <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 +0000354 <li>catv: don't die on open error (emit warning)
355 <li>chown/chgrp: completely match coreutils 6.8 wrt symlink handling
356 <li>correct_password: do not print "no shadow passwd..." message
357 <li>crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
358 <li>dd: fix bug where we assume count=INT_MAX when count is unspecified
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000359 <li>devfsd: sanitization by Tito &lt;farmatito at tiscali.it&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000360 <li>echo: fix non-fancy echo
361 <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 +0000362 <li>find: -context support for SELinux (KaiGai Kohei &lt;kaigai at kaigai.gr.jp&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000363 <li>find: add conditional support for -maxdepth and -regex, make -size match GNU find
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000364 <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 +0000365 <li>fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
366 <li>grep: implement -m MAX_MATCHES, fix buglets with context printing
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000367 <li>grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
368 <li>hush: add missing dependencies (Maxime Bizon &lt;mbizon at freebox.fr&gt; (Freebox))
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000369 <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 +0000370 <li>ifconfig: make it work with ifaces with interface no. &gt; 255
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000371 <li>ifup/ifdown: make location of ifstate configurable
372 <li>ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
373 <li>install: fix -s (strip) option, fix install a b /a/link/to/dir
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000374 <li>libbb: consolidate ARRAY_SIZE macro (Walter Harms &lt;wharms at bfs.de&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000375 <li>libbb: make /etc/network parsing configurable. -200 bytes when off
376 <li>libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000377 <li>libbb: xioctl and friends by Tito &lt;farmatito at tiscali.it&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000378 <li>login: optional support for PAM
379 <li>login: make /etc/nologin support configurable (-240 bytes)
380 <li>login: ask passwords even for wrong usernames
381 <li>md5_sha1_sum: fix mishandling when run as /bin/md5sum
382 <li>mdev: add support for firmware loading
383 <li>mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
Bernhard Reutner-Fischer52226772007-08-25 11:16:18 +0000384 <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 +0000385 <li>more: fixes by Tristan Schmelcher &lt;tpkschme at engmail.uwaterloo.ca&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000386 <li>nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
387 <li>passwd: fix bug "updating shadow even if user's record is in passwd"
388 <li>patch: fix -p -1 handling
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000389 <li>patch: fix bad line ending handling (Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000390 <li>ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
Bernhard Reutner-Fischer2062fc42007-08-24 14:32:23 +0000391 <li>ping: fix incorrect handling of -I (Iouri Kharon &lt;bc-info at styx.cabel.net&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000392 <li>ping: fix non-fancy ping6
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000393 <li>printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni &lt;kalyanatejaswi at yahoo.co.in&gt;)
394 <li>ps: fix -Z (by Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000395 <li>rpm: add optional support for bz2 data. +50 bytes of code
396 <li>rpm: fix bogus "package is not installed" case
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000397 <li>sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy &lt;pclouds at gmail.com&gt;)
398 <li>start_stop_daemon: NOMMU fixes by Alex Landau &lt;landau_alex at yahoo.com&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000399 <li>stat: fix option -Z SEGV
400 <li>strings: strings a b was processing a twice, fix that
401 <li>svlogd: fix timestamping, do not warn if config is missing
402 <li>syslogd, logread: get rid of head pointer, fix logread bug in the process
403 <li>syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
404 <li>tar: improve OLDGNU compat, make old SUN compat configurable
405 <li>test: fix testing primary expressions like '"-u" = "-u"'
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000406 <li>uudecode: fix to base64 decode by Jorgen Cederlof &lt;jcz at google.com&gt;
407 <li>vi: multiple fixes by Natanael Copa &lt;natanael.copa at gmail.com&gt;
Denis Vlasenkoe1022a92007-08-24 10:28:55 +0000408 <li>wget: fix bug in base64 encoding (bug 1404). +10 bytes
409 <li>wget: lift 256 chars limitation on terminal width
410 <li>wget, zcip: use monotonic_sec instead of gettimeofday
411 </ul>
412 </p>
413 </li>
414
Denis Vlasenko16b7cb42007-06-30 17:12:14 +0000415 <li><b>30 June 2007 -- BusyBox 1.6.1 (stable)</b>
416 <p><a href=http://busybox.net/downloads/busybox-1.6.1.tar.bz2>BusyBox 1.6.1</a>.
417 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
418 <a href=http://busybox.net/downloads/fixes-1.6.1/>patches</a>,
419 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
420
421 <p>This is a bugfix-only release, with fixes to echo, hush, and wget.</p>
422 </li>
423
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000424 <li><b>1 June 2007 -- BusyBox 1.6.0 (unstable)</b>
425 <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 +0000426 (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
427 <a href=http://busybox.net/downloads/fixes-1.6.0/>patches</a>,
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000428 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
429
430 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
431 label. Please help making 1.6.1 stable by testing 1.6.0.</p>
432 <p>Note that hush shell had many changes and (hopefully) is much improved now,
433 but there is a possibility that it regressed in some obscure cases. Please
434 report any such cases.</p>
435 <p>lash users please note: lash is going to be deprecated in busybox 1.7.0
436 and removed in the more distant future. Please migrate to hush.</p>
437 <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>
438 <p>Other changes since previous release:
439 <ul>
440<li>NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
441<li>NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
442<li>NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
443<li>NOMMU: random fixes; compressed --help now works for NOMMU
444<li>SELinux: load_policy applet
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000445<li>[u]mount: extend -t option (Roy Marples &lt;uberlord at gentoo.org&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000446<li>addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000447<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 +0000448<li>applet.c: do not even try to read config if run by real root; fix suid config handling
449<li>ash: fix infinite loop on exit if tty is not there anymore
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000450<li>ash: fix kill -l (by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
451<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 +0000452<li>awk: don't segfault on printf(%*s). Closes bug 1337
453<li>awk: guard against empty environment
454<li>awk: some 'lineno' vars were shorts, made them ints (code got smaller)
455<li>cat: stop using stdio.h opens
456<li>config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000457<li>cryptpw: new applet (by Thomas Lundquist &lt;lists at zelow.no&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000458<li>cttyhack: new applet
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000459<li>dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens &lt;develop at cle-mens.de&gt;)
460<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 +0000461<li>diff: fix SEGV (NULL deref) in diff -N
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000462<li>diff: fix segfault on empty dirs (Peter Korsgaard &lt;peter.korsgaard at barco.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000463<li>dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000464<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 +0000465<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 +0000466<li>dumpleases: getopt32()-ization (from Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000467<li>e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
468<li>ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
469<li>ether-wake: save a few more bytes of code
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000470<li>find: -group, -depth (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000471<li>find: add support for -delete, -path (by Natanael Copa)
472<li>find: fix -prune. Add big comment about it
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000473<li>find: improve usage text (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000474<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 +0000475<li>find: un-DESKTOPize (Kai Schwenzfeier &lt;niteblade at gmx.net&gt;)
476<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 +0000477<li>find_root_device: use lstat - don't follow links
478<li>getopt32: fix llist_t options ordering. llist_rev is now unused
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000479<li>getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson &lt;mats.andersson64 at comhem.se&gt;
480<li>hdparm: fix multisector mode setting (from Toni Mirabete &lt;amirabete at catix.cat&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000481<li>hdparm: make -T -t code smaller (-194 bytes), and output prettier
482<li>ifupdown: make it possible to use DHCP clients different from udhcp
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000483<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 +0000484<li>ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
485<li>ip: fix compilation if FEATURE_TR_CLASSES is off
486<li>ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
487<li>ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
488<li>ip: set the scope properly. Thanks to Jean Wolter
489<li>iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
490<li>iproute: shrink a bit (-200 bytes)
491<li>kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
492<li>klogd: remove dependency on syslogd
493<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.
494<li>lash: fix kill buglet (didn't properly recognize ESRCH)
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000495<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 +0000496<li>lash: recognize and use NOFORK applets
497<li>less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less &lt;HUGEFILE + [End] busy loop
498<li>libbb: add xsendto, xunlink, xpipe
499<li>libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
500<li>libbb: make pidfile writing configurable
501<li>libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
502<li>libbb: rework NOMMU helper API so that it makes more sense and easier to use
503<li>libiproute: audit callgraph, shortcut error paths into die() functions
504<li>lineedit: do not try to open NULL history file
505<li>lineedit: nuke two unused variables and code which sets them
506<li>login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
507<li>login: shrink login and set_environment by ~100 bytes
508<li>mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
509<li>mount: fix mounting of symlinks (mount from util-linux allows that)
510<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
511<li>nc: port nc 1.10 to busybox
512<li>netstat: fix for bogus state value for raw sockets
513<li>netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
514<li>nmeter: should die if stdout doesn't like him anymore
515<li>patch: do not try to delete same file twice
516<li>ping: fix wrong sign extension of packet id (bug 1373)
517<li>ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
518<li>run_parts: rewrite
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000519<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 +0000520<li>sed: fix escaped newlines in -f
521<li>split: new applet
522<li>stat: remove superfluous bss user (flags) and manually unswitch some areas
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000523<li>stty: fix option parsing bug (spotted by Sascha Hauer &lt;s.hauer at pengutronix.de&gt;)
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000524<li>svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
525<li>tail: fix SEGV on "tail -N"
Bernhard Reutner-Fischer6a7b7ce2007-08-24 14:30:59 +0000526<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 +0000527<li>test: close bug 1371; plug a memory leak; code size reduction
528<li>tftp: code diet, and I think retransmits were broken
529<li>tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
530<li>udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
531<li>udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
532<li>xargs: shrink code, ~80 bytes; simplify word list management
533<li>zcip: make it work on NOMMU (+ improve NOMMU support machinery)
534 </ul>
535 </p>
536 </li>
537
538 <li><b>20 May 2007 -- BusyBox 1.5.1 (stable)</b>
Denis Vlasenkofe52a742007-05-20 17:12:43 +0000539 <p><a href=http://busybox.net/downloads/busybox-1.5.1.tar.bz2>BusyBox 1.5.1</a>.
540 (<a href=http://busybox.net/downloads/fixes-1.5.1/>patches</a>,
541 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
542
543 <p>This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
544 and sed.</p>
545 </li>
546
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000547 <li><b>23 March 2007 -- BusyBox 1.5.0 (unstable)</b>
Denis Vlasenko7d108232007-03-22 23:31:29 +0000548 <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 +0000549 (<a href=http://busybox.net/downloads/fixes-1.5.0/>patches</a>,
550 <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
Denis Vlasenko9eb51ad2007-03-31 10:32:27 +0000551
Denis Vlasenko7d108232007-03-22 23:31:29 +0000552 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
553 label. Please help making 1.5.1 stable by testing 1.5.0.</p>
554 <p>Notable changes since previous release:
555 <ul>
556 <li>find: added support for -user, -not, fixed -mtime, -mmin, -perm
557 <li>[de]archivers: merge common logic into one module
558 <li>ping[6]: unified code for both
559 <li>less: regex search improved
560 <li>ash: more readable code, testsuite added
561 <li>sed: several very obscure bugs fixed
562 <li>chown: -H, -L, -P support (required by POSIX)
563 <li>tar: handle (broken) checksums a-la Sun; tar restores mode again
564 <li>grep: implement -w, "implement" -a and -I by ignoring them
565 <li>cp: more sane behavior when overwriting existing files
566 <li>init: stop doing silly things with the console (-400 bytes)
567 <li>httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
568 <li>httpd: run interpreter for configured file extensions in any dir,
569 not only in /cgi-bin/
570 <li>chrt: new applet
571 <li>SELinux: SELinux-related code and -Z option added to several applets,
572 new SELinux-specific applets: chcon, runcon.
573 <li>Build system: produces link map, uses -Wwrite-strings to catch
574 improper usage of string constants.
575 <li>Data and bss section usage audited and reduced - should help NOMMU
576 targets.
577 <li>Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
578 sv, printf, diff, awk, sort, dpkg, diff, tftp
579 <li>Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
580 udhcpd, start_stop_daemon, cmp
581 <li>Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
582 syslogd, swapon, runsv, svlogd, klogd
583 </ul>
584 </p>
585 </li>
586
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000587 <li><b>18 March 2007 -- BusyBox 1.4.2 (stable)</b>
Denis Vlasenko1c86a292007-03-18 18:21:44 +0000588 <p><a href=http://busybox.net/downloads/busybox-1.4.2.tar.bz2>BusyBox 1.4.2</a>.
589 </p>
590
591 <p>This release includes only trivial fixes accumulated since 1.4.1.
592 </p>
593 </li>
594
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000595 <li><b>25 January 2007 -- BusyBox 1.4.1 (stable)</b>
Denis Vlasenko5ff8f3d2007-01-26 23:35:12 +0000596 <p><a href=http://busybox.net/downloads/busybox-1.4.1.tar.bz2>BusyBox 1.4.1</a>.
597 (<a href=http://busybox.net/downloads/fixes-1.4.1/>patches</a>)</p>
Denis Vlasenko30abe972007-01-25 21:10:43 +0000598
599 <p>This release includes only trivial fixes accumulated since 1.4.0.
600 </p>
601 </li>
602
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000603 <li><b>20 January 2007 -- BusyBox 1.4.0 (stable)</b>
Denis Vlasenko52848ee2007-01-22 23:39:08 +0000604 <p><a href=http://busybox.net/downloads/busybox-1.4.0.tar.bz2>BusyBox 1.4.0</a>.
605 (<a href=http://busybox.net/downloads/fixes-1.4.0/>patches</a>)</p>
Denis Vlasenko31273582007-01-20 20:38:57 +0000606
607 <p>Since this is a x.x.0 release, it probably is a bit less "stable"
608 than usual.</p>
609 <p>Changes since previous release:
610 <ul>
611 <li>e2fsprogs are mostly removed from busybox. Some smaller parts remain,
612 the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
613 it's too bloated. Really. I'm afraid it's about the only way we can
614 ever get e2fsprogs cleaned up.
615 <li>less: many improvements. Now can display binary files
616 (although I expect it to have trouble with displays where 8bit chars
617 don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
618 anymore. Less does not read entire input up-front. Reads input
619 as it appears (yay!). Works rather nice as man pager. I recommend it
620 for general use now.
621 <li>IPv6: generic support is in place, many networking applets are
622 upgraded to be IPv6 capable. Probably some work remains, but it is
623 already much better than what we had previously.
624 <li>arp: new applet (thanks to Eric Spakman).
625 <li>fakeidentd: non-forking standalone server part was taking ~90%
626 of the applet. Factored it out (in fact, rewrote it).
627 <li>syslogd: mostly rewritten.
628 <li>decompress_unzip, gzip: sanitized a bit.
629 <li>sed: better hadling of NULs
630 <li>httpd: stop adding our own "Content-type:" to CGI output
631 <li>chown: user.grp works again.
632 <li>minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
633 ps, ifupdown, time, su, stty, awk, ping[6], sort,...
634 </ul>
635 </p>
636 </li>
637
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000638 <li><b>20 January 2007 -- BusyBox 1.3.2 (stable)</b>
Bernhard Reutner-Fischerb3f3c232007-01-20 21:46:20 +0000639 <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 +0000640
641 <p>This release includes only one trivial fix accumulated since 1.3.1
642 </p>
643 </li>
644
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000645 <li><b>27 December 2006 -- BusyBox 1.3.1 (stable)</b>
Denis Vlasenko9cd7a242006-12-27 07:57:29 +0000646 <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 +0000647 (<a href=http://busybox.net/downloads/fixes-1.3.1/>patches</a>)</p>
Denis Vlasenkof959bee2006-12-27 05:06:27 +0000648
649 <p>Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
650 </p>
651 </li>
652
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000653 <li><b>14 December 2006 -- BusyBox 1.3.0 (stable)</b>
Denis Vlasenko79e77cd2006-12-15 22:10:07 +0000654 <p><a href=http://busybox.net/downloads/busybox-1.3.0.tar.bz2>BusyBox 1.3.0</a>.
655 (<a href=http://busybox.net/downloads/fixes-1.3.0/>patches</a>)</p>
Denis Vlasenkof7b0d4a2006-12-14 00:22:51 +0000656
657 <p>This release has CONFIG_DESKTOP option which enables features
658 needed for busybox usage on desktop machine. For example, find, chmod
659 and chown get several less frequently used options, od is significantly
660 bigger but matches GNU coreutils, etc. Intended to eventually make
661 busybox a viable alternative for "standard" utilities for slightly
662 adventurous desktop users.
663 <p>Changes since previous release:
664 <ul>
665 <li>find: taking many more of standard options
666 <li>ps: POSIX-compliant -o implemented
667 <li>cp: added -s, -l
668 <li>grep: added -r, fixed -h
669 <li>watch: make it exec child like standard one does (was totally
670 incompatible)
Denis Vlasenkof7996f32007-01-11 17:20:00 +0000671 <li>tar: fix limitations which were preventing bbox tar usage
Denis Vlasenkoba092332006-12-27 09:47:53 +0000672 on big directories: long names and linknames, pax headers
Denis Vlasenkof7b0d4a2006-12-14 00:22:51 +0000673 (Linux kernel tarballs have that). Fixed a number of obscure bugs.
674 Raised max file limit (now 64Gb). Security fixes (/../ attacks).
675 <li>httpd: added -i (inetd), -f (foreground), support for
676 directory indexer CGI (example is included), bugfixes.
677 <li>telnetd: fixed/improved IPv6 support, inetd+standalone support,
678 other fixes. Useful IPv6 stuff factored out into libbb.
679 <li>runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
680 (these are my personal favorite small-and-beautiful toys)
681 <li>minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
682 fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
683 </ul>
684 <p>Note that GnuPG key used to sign this release is different.
685 1.2.2.1 is also signed post-factum now. Sorry for the mess.
686 </p>
687 </li>
688
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000689 <li><b>29 October 2006 -- BusyBox 1.2.2.1 (fix)</b>
Denis Vlasenko41be5b82006-10-29 19:34:49 +0000690 <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 +0000691
692 <p>Added compile-time warning that static linking against glibc
693 produces buggy executables.
694 </li>
695
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000696 <li><b>24 October 2006 -- BusyBox 1.2.2 (stable)</b>
Rob Landley44c79172006-10-24 21:46:19 +0000697 <p>It's a bit overdue, but
698 <a href=http://busybox.net/downloads/busybox-1.2.2.tar.bz2>here is
699 BusyBox 1.2.2</a>.</p>
700
701 <p>This release has dozens of fixes backported from the ongoing development
702 branch. There are a couple of bugfixes to sed, two fixes to documentation
703 generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
704 umount to report the right errno on failure and to umount block devices by
705 name with newer kernels, fix mount to handle symlinks properly, make mdev
706 delete device nodes when called for hotplug remove, fix a segfault
707 in traceroute, a minor portability fix to md5sum option parsing, a build
708 fix for httpd with old gccs, an options parsing tweak to hdparm, make test
709 fail gracefully when getgroups() returns -1, fix a race condition in
710 modprobe when two instances run at once (hotplug does this), make "tar xf
711 foo.tar dir/dir" extract all subdirectories, make our getty initialize the
712 terminal more like mingetty, an selinux build fix, an endianness fix in
713 ping6, fix for zcip defending addresses, clean up some global variables in
714 gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
715 fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.</p>
716
717 <p>As <a href=http://lwn.net/Articles/202106/>Linux Weekly News noted</a>,
718 this is my (Rob's) last release of BusyBox. The new maintainer is Denis
719 Vlasenko, I'm off to do <a href=http://landley.net/code>other things</a>.
720 </p>
721 </li>
722
Denis Vlasenkoa0d75082007-06-01 14:40:03 +0000723 <li><b>29 September 2006 -- New license email address.</b>
Rob Landley530c3ef2006-09-29 22:43:12 +0000724 <p>The email address gpl@busybox.net is now the recommended way to contact
725 the Software Freedom Law Center to report BusyBox license violations.</p>
726
Rob Landley2aced7e2006-07-31 23:56:26 +0000727 <li><b>31 July 2006 -- BusyBox 1.2.1 (stable)</b>
728 <p>Since nobody seems to have objected too loudly over the weekend, I
729 might as well point you all at
730 <a href="http://busybox.net/downloads/busybox-1.2.1.tar.bz2">Busybox
731 1.2.1</a>, a bugfix-only release with no new features.</p>
732
733 <p>It has three shell fixes (two to lash: going "var=value" without
734 saying "export" should now work, plus a missing null pointer check, and
735 one to ash when redirecting output to a file that fills up.) Fix three
736 embarassing thinkos in the new dmesg command. Two build tweaks
737 (dependencies for the compressed usage messages and running make in the
738 libbb subdirectory). One fix to tar so it can extract git-generated
739 tarballs (rather than barfing on the pax extensions). And a partridge
740 in a pear... Ahem.</p>
741
742 <p>But wait, there's more! A passwd changing fix so an empty
743 gecos field doesn't trigger a false objection that the new passwd contains
744 the gecos field. Make all our setuid() and setgid() calls check the return
745 value in case somebody's using per-process resource limits that prevent
746 a user from having too many processes (and thus prevent a process from
747 switching away from root, in which case the process will now _die_ rather
748 than continue with root privileges). A fix to adduser to make sure that
749 /etc/group gets updated. And a fix to modprobe to look for modules.conf
750 in the right place on 2.6 kernels.</p>
751
Rob Landley01772ae2006-06-30 22:40:13 +0000752 <li><b>30 June 2006 -- BusyBox 1.2.0</b>
753 <p>The -devel branch has been stabilized and the result is
754 <a href="http://busybox.net/downloads/busybox-1.2.0.tar.bz2">Busybox
755 1.2.0</a>. Lots of stuff changed, I need to work up a decent changelog
756 over the weekend.</p>
757
758 <p>I'm still experimenting with how long is best for the development
759 cycle, and since we've got some largeish projects queued up I'm going to
760 try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
761 we fix enough bugs. :)</p>
762
Rob Landley1df45cf2006-07-08 18:11:00 +0000763 <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>
764
Rob Landleyc27c04c2006-05-17 19:59:24 +0000765 <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
Rob Landleyd2ccc2b2006-05-17 21:04:53 +0000766 <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
Rob Landleyc27c04c2006-05-17 19:59:24 +0000767 1.1.3</a> is another bugfix release. It makes passwd use salt, fixes a
768 memory freeing bug in ls, fixes "build all sources at once" mode, makes
769 mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
770 background processes, makes patch work with patch hunks that don't have a
771 timestamp, make less's text search a lot more robust (the old one could
772 segfault), and fixes readlink -f when built against uClibc.</p>
773
774 <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
775
Rob Landleybb5b2ff2006-04-10 20:04:32 +0000776 <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
777 <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
778 backported from the development branch: Some build fixes, several fixes
779 for mount and nfsmount, a fix for insmod on big endian systems, a fix for
780 find -xdev, and a fix for comm. Check the file "changelog" in the tarball
781 for more info.</p>
782
783 <p>The next new development release (1.2.0) is slated for June. A 1.1.3
784 will be released before then if more bug fixes crop up. (The new plan is
785 to have a 1.x.0 new development release every 3 months, with 1.x.y stable
786 bugfix only releases based on that as appropriate.)</p>
Denis Vlasenko9213a9e2006-09-17 16:28:10 +0000787
Rob Landley0949d302006-03-27 22:43:40 +0000788 <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
789 <p>One issue Erik Andersen wanted to resolve when handing off BusyBox
790 maintainership to Rob Landley was license enforcement. BusyBox and
791 uClibc's existing license enforcement efforts (pro-bono representation
792 by Erik's father's law firm, and the
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000793 <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), haven't
Rob Landley0949d302006-03-27 22:43:40 +0000794 scaled to match the popularity of the projects. So we put our heads
795 together and did the obvious thing: ask Pamela Jones of
796 <a href="http://www.groklaw.net">Groklaw</a> for suggestions. She
797 referred us to the fine folks at softwarefreedom.org.</p>
798
799 <p>As a result, we're pleased to announce that the
800 <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
801 has agreed to represent BusyBox and uClibc. We join a number of other
802 free and open source software projects (such as
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000803 <a href="http://lwn.net/Articles/141806/">X.org</a>,
Rob Landley0949d302006-03-27 22:43:40 +0000804 <a href="http://lwn.net/Articles/135413/">Wine</a>, and
Bernhard Reutner-Fischeraf07a002006-04-16 20:56:03 +0000805 <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
Rob Landley0949d302006-03-27 22:43:40 +0000806 in being represented by a fairly cool bunch of lawyers, which is not a
807 phrase you get to use every day.</p>
808
Rob Landley5fba2502006-03-23 03:08:09 +0000809 <li><b>22 March 2006 -- BusyBox 1.1.1</b>
810 <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 +0000811 <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
812 the various small fixes have been collected together into a
813 <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
Rob Landley28ff9662006-03-27 23:22:16 +0000814 and new fixes will be appended to that as needed. Expect 1.1.2 around
815 June.</p>
Rob Landley5fba2502006-03-23 03:08:09 +0000816 </li>
Rob Landley734a7792006-01-14 07:43:22 +0000817 <li><b>11 January 2006 -- 1.1.0 is out</b>
818 <p>The new stable release is
819 <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
820 1.1.0</a>. It has a number of improvements, including several new applets.
Bernhard Reutner-Fischer3515f6e2006-04-10 19:16:50 +0000821 (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 +0000822 but we're trying out a "release early, release often" strategy to see how
823 that works. Expect 1.1.1 sometime in March.)</p>
Eric Andersen539eef62003-12-10 12:08:20 +0000824
Eric Andersenc7bda1c2004-03-15 08:29:22 +0000825 <li><b>Old News</b><p>
Eric Andersen539eef62003-12-10 12:08:20 +0000826 <a href="/oldnews.html">Click here to read older news</a>
Rob Landleyd879ffb2006-06-27 21:29:56 +0000827 </p>
828 </li>
Eric Andersen539eef62003-12-10 12:08:20 +0000829
830
831</ul>
832
833<!--#include file="footer.html" -->
834