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