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