1 | <!--#include file="header.html" -->
|
---|
2 |
|
---|
3 | <ul>
|
---|
4 | <li><b>24 August 2007 -- BusyBox 1.7.0 (unstable)</b>
|
---|
5 | <p><a href=http://busybox.net/downloads/busybox-1.7.0.tar.bz2>BusyBox 1.7.0</a>.
|
---|
6 | (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
|
---|
7 | <a href=http://busybox.net/downloads/fixes-1.7.0/>patches</a>,
|
---|
8 | <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
|
---|
9 |
|
---|
10 | <p>Applets which had many changes since 1.6.x:
|
---|
11 | <p>httpd:
|
---|
12 | <ul>
|
---|
13 | <li>works in standalone mode on NOMMU machines now (partly by Alex Landau <landau_alex@yahoo.com>)
|
---|
14 | <li>indexer example is rewritten in C
|
---|
15 | <li>optional support for error pages (by Pierre Metras <genepi@sympatico.ca>)
|
---|
16 | <li>stop reading headers using 1-byte reads
|
---|
17 | <li>new option -v[v]: prints client addresses, HTTP codes returned, URLs
|
---|
18 | <li>extended -p PORT to -p [IP[v6]:]PORT
|
---|
19 | <li>sendfile support
|
---|
20 | <li>add support for Status: CGI header
|
---|
21 | <li>fix CGI handling bug (we were closing wrong fd)
|
---|
22 | <li>CGI I/O loop still doesn't look 100% ok to me...
|
---|
23 | </ul>
|
---|
24 |
|
---|
25 | <p>udhcp[cd]:
|
---|
26 | <ul>
|
---|
27 | <li>add -f "foreground" and -S "syslog" options
|
---|
28 | <li>fixed "ifupdown + udhcpc_without_pidpile_creation" bug
|
---|
29 | <li>new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson <mats@blue2net.com> (Blue2Net AB))
|
---|
30 | <li>consistently treat server_config.start/end IPs as host-order
|
---|
31 | <li>fix IP parsing for 64bit machines
|
---|
32 | <li>fix unsafe hton macro usage in read_opt()
|
---|
33 | <li>do not chdir to / when daemonizing
|
---|
34 | </ul>
|
---|
35 |
|
---|
36 | <p>top, ps, killall, pidof
|
---|
37 | <ul>
|
---|
38 | <li>simpler loadavg processing
|
---|
39 | <li>truncate usernames to 8 chars
|
---|
40 | <li>fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
|
---|
41 | <li>improve /proc/PID/cmdinfo reading code
|
---|
42 | <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)
|
---|
43 | <li>reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
|
---|
44 | <li>make percentile (0.1%) calculations configurable
|
---|
45 | <li>add config option and code for global CPU% display
|
---|
46 | <li>reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
|
---|
47 | </ul>
|
---|
48 |
|
---|
49 | <p>Build system improvements: doesn't link against libraries we don't need,
|
---|
50 | generates verbose link output and map file, allows for custom link
|
---|
51 | stripts (useful for removing extra padding, among other things).
|
---|
52 |
|
---|
53 | <p>Code and data size in comparison with 1.6.1:<pre>
|
---|
54 | Equivalent .config, i386 glibc dynamic builds:
|
---|
55 | text data bss dec hex filename
|
---|
56 | 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
|
---|
57 | 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
|
---|
58 | 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
|
---|
59 |
|
---|
60 | Same .config built against static uclibc:
|
---|
61 | 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc</pre>
|
---|
62 |
|
---|
63 | <p>Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
|
---|
64 | test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
|
---|
65 | runit/*, in libbb.
|
---|
66 |
|
---|
67 | <p>New applets:
|
---|
68 | <ul>
|
---|
69 | <li>pscan, expand, unexpand (from Tito <farmatito@tiscali.it>)
|
---|
70 | <li>setfiles, restorecon (by Yuichi Nakamura <ynakam@hitachisoft.jp>)
|
---|
71 | <li>chpasswd (by Alexander Shishkin <virtuoso@slind.org>)
|
---|
72 | <li>slattach, ttysize
|
---|
73 | </ul>
|
---|
74 |
|
---|
75 | <p>Unfortunately, not much work is done on shells. This was mostly stalled
|
---|
76 | by lack of time (read: laziness) on my part to learn how to adapt existing
|
---|
77 | qemu-runnable image for a NOMMU architechture (available on qemu website)
|
---|
78 | for local testing of cross-compiled busybox on my machine.
|
---|
79 |
|
---|
80 | <p>Other changes since previous release (abridged):
|
---|
81 | <ul>
|
---|
82 | <li>addgroup: disallow addgroup -g num user group; make -g 0 work (Tito <farmatito@tiscali.it>)
|
---|
83 | <li>adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa <natanael.copa@gmail.com>
|
---|
84 | <li>arping: -i should be -I, fixed
|
---|
85 | <li>ash: make "jobs | cat" work like in bash (was giving empty output)
|
---|
86 | <li>ash: recognize -l as --login equivalent; do not recognize +-login
|
---|
87 | <li>ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds@gmail.com>)
|
---|
88 | <li>ash: fix SEGV if type has zero parameters
|
---|
89 | <li>awk: fix -F 'regex' bug (miscounted fields if last field is empty)
|
---|
90 | <li>catv: catv without arguments was trying to use environ as argv (Alex Landau <landau_alex@yahoo.com>)
|
---|
91 | <li>catv: don't die on open error (emit warning)
|
---|
92 | <li>chown/chgrp: completely match coreutils 6.8 wrt symlink handling
|
---|
93 | <li>correct_password: do not print "no shadow passwd..." message
|
---|
94 | <li>crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
|
---|
95 | <li>dd: fix bug where we assume count=INT_MAX when count is unspecified
|
---|
96 | <li>devfsd: sanitization by Tito <farmatito@tiscali.it>
|
---|
97 | <li>echo: fix non-fancy echo
|
---|
98 | <li>fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
|
---|
99 | <li>find: -context support for SELinux (KaiGai Kohei <kaigai@kaigai.gr.jp>)
|
---|
100 | <li>find: add conditional support for -maxdepth and -regex, make -size match GNU find
|
---|
101 | <li>find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>)
|
---|
102 | <li>fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
|
---|
103 | <li>grep: implement -m MAX_MATCHES, fix buglets with context printing
|
---|
104 | <li>grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon <mbizon@freebox.fr> (Freebox))
|
---|
105 | <li>hush: add missing dependencies (Maxime Bizon <mbizon@freebox.fr> (Freebox))
|
---|
106 | <li>hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
|
---|
107 | <li>ifconfig: make it work with ifaces with interface no. > 255
|
---|
108 | <li>ifup/ifdown: make location of ifstate configurable
|
---|
109 | <li>ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
|
---|
110 | <li>install: fix -s (strip) option, fix install a b /a/link/to/dir
|
---|
111 | <li>libbb: consolidate ARRAY_SIZE macro (Walter Harms <wharms@bfs.de>)
|
---|
112 | <li>libbb: make /etc/network parsing configurable. -200 bytes when off
|
---|
113 | <li>libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
|
---|
114 | <li>libbb: xioctl and friends by Tito <farmatito@tiscali.it>
|
---|
115 | <li>login: optional support for PAM
|
---|
116 | <li>login: make /etc/nologin support configurable (-240 bytes)
|
---|
117 | <li>login: ask passwords even for wrong usernames
|
---|
118 | <li>md5_sha1_sum: fix mishandling when run as /bin/md5sum
|
---|
119 | <li>mdev: add support for firmware loading
|
---|
120 | <li>mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
|
---|
121 | <li>modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN)
|
---|
122 | <li>more: fixes by Tristan Schmelcher <tpkschme@engmail.uwaterloo.ca>
|
---|
123 | <li>nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
|
---|
124 | <li>passwd: fix bug "updating shadow even if user's record is in passwd"
|
---|
125 | <li>patch: fix -p -1 handling
|
---|
126 | <li>patch: fix bad line ending handling (Nguyen Thai Ngoc Duy <pclouds@gmail.com>)
|
---|
127 | <li>ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
|
---|
128 | <li>ping: fix incorrect handling of -I (Iouri Kharon <bc-info@styx.cabel.net>>)
|
---|
129 | <li>ping: fix non-fancy ping6
|
---|
130 | <li>printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni <kalyanatejaswi@yahoo.co.in>)
|
---|
131 | <li>ps: fix -Z (by Yuichi Nakamura <ynakam@hitachisoft.jp>)
|
---|
132 | <li>rpm: add optional support for bz2 data. +50 bytes of code
|
---|
133 | <li>rpm: fix bogus "package is not installed" case
|
---|
134 | <li>sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy <pclouds@gmail.com>)
|
---|
135 | <li>start_stop_daemon: NOMMU fixes by Alex Landau <landau_alex@yahoo.com>
|
---|
136 | <li>stat: fix option -Z SEGV
|
---|
137 | <li>strings: strings a b was processing a twice, fix that
|
---|
138 | <li>svlogd: fix timestamping, do not warn if config is missing
|
---|
139 | <li>syslogd, logread: get rid of head pointer, fix logread bug in the process
|
---|
140 | <li>syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
|
---|
141 | <li>tar: improve OLDGNU compat, make old SUN compat configurable
|
---|
142 | <li>test: fix testing primary expressions like '"-u" = "-u"'
|
---|
143 | <li>uudecode: fix to base64 decode by Jorgen Cederlof <jcz@google.com>
|
---|
144 | <li>vi: multiple fixes by Natanael Copa <natanael.copa@gmail.com>
|
---|
145 | <li>wget: fix bug in base64 encoding (bug 1404). +10 bytes
|
---|
146 | <li>wget: lift 256 chars limitation on terminal width
|
---|
147 | <li>wget, zcip: use monotonic_sec instead of gettimeofday
|
---|
148 | </ul>
|
---|
149 | </p>
|
---|
150 | </li>
|
---|
151 |
|
---|
152 | <li><b>30 June 2007 -- BusyBox 1.6.1 (stable)</b>
|
---|
153 | <p><a href=http://busybox.net/downloads/busybox-1.6.1.tar.bz2>BusyBox 1.6.1</a>.
|
---|
154 | (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
|
---|
155 | <a href=http://busybox.net/downloads/fixes-1.6.1/>patches</a>,
|
---|
156 | <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
|
---|
157 |
|
---|
158 | <p>This is a bugfix-only release, with fixes to echo, hush, and wget.</p>
|
---|
159 | </li>
|
---|
160 |
|
---|
161 | <li><b>1 June 2007 -- BusyBox 1.6.0 (unstable)</b>
|
---|
162 | <p><a href=http://busybox.net/downloads/busybox-1.6.0.tar.bz2>BusyBox 1.6.0</a>.
|
---|
163 | (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/>svn</a>,
|
---|
164 | <a href=http://busybox.net/downloads/fixes-1.6.0/>patches</a>,
|
---|
165 | <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
|
---|
166 |
|
---|
167 | <p>Since this is a x.x.0 release, it probably does not deserve "stable"
|
---|
168 | label. Please help making 1.6.1 stable by testing 1.6.0.</p>
|
---|
169 | <p>Note that hush shell had many changes and (hopefully) is much improved now,
|
---|
170 | but there is a possibility that it regressed in some obscure cases. Please
|
---|
171 | report any such cases.</p>
|
---|
172 | <p>lash users please note: lash is going to be deprecated in busybox 1.7.0
|
---|
173 | and removed in the more distant future. Please migrate to hush.</p>
|
---|
174 | <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>
|
---|
175 | <p>Other changes since previous release:
|
---|
176 | <ul>
|
---|
177 | <li>NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
|
---|
178 | <li>NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
|
---|
179 | <li>NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
|
---|
180 | <li>NOMMU: random fixes; compressed --help now works for NOMMU
|
---|
181 | <li>SELinux: load_policy applet
|
---|
182 | <li>[u]mount: extend -t option (Roy Marples <uberlord@gentoo.org>)
|
---|
183 | <li>addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
|
---|
184 | <li>adduser: don't bomb out if shadow password file doesn't exist (from Tito <farmatito@tiscali.it>)
|
---|
185 | <li>applet.c: do not even try to read config if run by real root; fix suid config handling
|
---|
186 | <li>ash: fix infinite loop on exit if tty is not there anymore
|
---|
187 | <li>ash: fix kill -l (by Mats Erik Andersson <mats.andersson64@comhem.se>)
|
---|
188 | <li>ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson <mats.andersson64@comhem.se>)
|
---|
189 | <li>awk: don't segfault on printf(%*s). Closes bug 1337
|
---|
190 | <li>awk: guard against empty environment
|
---|
191 | <li>awk: some 'lineno' vars were shorts, made them ints (code got smaller)
|
---|
192 | <li>cat: stop using stdio.h opens
|
---|
193 | <li>config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
|
---|
194 | <li>cryptpw: new applet (by Thomas Lundquist <lists@zelow.no>)
|
---|
195 | <li>cttyhack: new applet
|
---|
196 | <li>dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens <develop@cle-mens.de>)
|
---|
197 | <li>deluser: add optional support for removing users from groups (by Tito <farmatito@tiscali.it>)
|
---|
198 | <li>diff: fix SEGV (NULL deref) in diff -N
|
---|
199 | <li>diff: fix segfault on empty dirs (Peter Korsgaard <peter.korsgaard@barco.com>)
|
---|
200 | <li>dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
|
---|
201 | <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@bluegiga.com>)
|
---|
202 | <li>dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
|
---|
203 | <li>dumpleases: getopt32()-ization (from Mats Erik Andersson <mats.andersson64@comhem.se>)
|
---|
204 | <li>e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
|
---|
205 | <li>ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
|
---|
206 | <li>ether-wake: save a few more bytes of code
|
---|
207 | <li>find: -group, -depth (Natanael Copa <natanael.copa@gmail.com>)
|
---|
208 | <li>find: add support for -delete, -path (by Natanael Copa)
|
---|
209 | <li>find: fix -prune. Add big comment about it
|
---|
210 | <li>find: improve usage text (Natanael Copa <natanael.copa@gmail.com>)
|
---|
211 | <li>find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
|
---|
212 | <li>find: un-DESKTOPize (Kai Schwenzfeier <niteblade@gmx.net>)
|
---|
213 | <li>find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov <lich@math.spbu.ru>)
|
---|
214 | <li>find_root_device: use lstat - don't follow links
|
---|
215 | <li>getopt32: fix llist_t options ordering. llist_rev is now unused
|
---|
216 | <li>getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson <mats.andersson64@comhem.se>
|
---|
217 | <li>hdparm: fix multisector mode setting (from Toni Mirabete <amirabete@catix.cat>)
|
---|
218 | <li>hdparm: make -T -t code smaller (-194 bytes), and output prettier
|
---|
219 | <li>ifupdown: make it possible to use DHCP clients different from udhcp
|
---|
220 | <li>ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa <natanael.copa@gmail.com>
|
---|
221 | <li>ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
|
---|
222 | <li>ip: fix compilation if FEATURE_TR_CLASSES is off
|
---|
223 | <li>ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
|
---|
224 | <li>ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
|
---|
225 | <li>ip: set the scope properly. Thanks to Jean Wolter
|
---|
226 | <li>iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
|
---|
227 | <li>iproute: shrink a bit (-200 bytes)
|
---|
228 | <li>kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
|
---|
229 | <li>klogd: remove dependency on syslogd
|
---|
230 | <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.
|
---|
231 | <li>lash: fix kill buglet (didn't properly recognize ESRCH)
|
---|
232 | <li>lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson <mats.andersson64@comhem.se>)
|
---|
233 | <li>lash: recognize and use NOFORK applets
|
---|
234 | <li>less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less <HUGEFILE + [End] busy loop
|
---|
235 | <li>libbb: add xsendto, xunlink, xpipe
|
---|
236 | <li>libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
|
---|
237 | <li>libbb: make pidfile writing configurable
|
---|
238 | <li>libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
|
---|
239 | <li>libbb: rework NOMMU helper API so that it makes more sense and easier to use
|
---|
240 | <li>libiproute: audit callgraph, shortcut error paths into die() functions
|
---|
241 | <li>lineedit: do not try to open NULL history file
|
---|
242 | <li>lineedit: nuke two unused variables and code which sets them
|
---|
243 | <li>login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
|
---|
244 | <li>login: shrink login and set_environment by ~100 bytes
|
---|
245 | <li>mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
|
---|
246 | <li>mount: fix mounting of symlinks (mount from util-linux allows that)
|
---|
247 | <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
|
---|
248 | <li>nc: port nc 1.10 to busybox
|
---|
249 | <li>netstat: fix for bogus state value for raw sockets
|
---|
250 | <li>netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
|
---|
251 | <li>nmeter: should die if stdout doesn't like him anymore
|
---|
252 | <li>patch: do not try to delete same file twice
|
---|
253 | <li>ping: fix wrong sign extension of packet id (bug 1373)
|
---|
254 | <li>ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
|
---|
255 | <li>run_parts: rewrite
|
---|
256 | <li>run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo <somlo@cmu.edu>
|
---|
257 | <li>sed: fix escaped newlines in -f
|
---|
258 | <li>split: new applet
|
---|
259 | <li>stat: remove superfluous bss user (flags) and manually unswitch some areas
|
---|
260 | <li>stty: fix option parsing bug (spotted by Sascha Hauer <s.hauer@pengutronix.de>)
|
---|
261 | <li>svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
|
---|
262 | <li>tail: fix SEGV on "tail -N"
|
---|
263 | <li>ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape <pape@smarden.org>, http://smarden.sunsite.dk/ipsvd/
|
---|
264 | <li>test: close bug 1371; plug a memory leak; code size reduction
|
---|
265 | <li>tftp: code diet, and I think retransmits were broken
|
---|
266 | <li>tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
|
---|
267 | <li>udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
|
---|
268 | <li>udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
|
---|
269 | <li>xargs: shrink code, ~80 bytes; simplify word list management
|
---|
270 | <li>zcip: make it work on NOMMU (+ improve NOMMU support machinery)
|
---|
271 | </ul>
|
---|
272 | </p>
|
---|
273 | </li>
|
---|
274 |
|
---|
275 | <li><b>20 May 2007 -- BusyBox 1.5.1 (stable)</b>
|
---|
276 | <p><a href=http://busybox.net/downloads/busybox-1.5.1.tar.bz2>BusyBox 1.5.1</a>.
|
---|
277 | (<a href=http://busybox.net/downloads/fixes-1.5.1/>patches</a>,
|
---|
278 | <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
|
---|
279 |
|
---|
280 | <p>This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
|
---|
281 | and sed.</p>
|
---|
282 | </li>
|
---|
283 |
|
---|
284 | <li><b>23 March 2007 -- BusyBox 1.5.0 (unstable)</b>
|
---|
285 | <p><a href=http://busybox.net/downloads/busybox-1.5.0.tar.bz2>BusyBox 1.5.0</a>.
|
---|
286 | (<a href=http://busybox.net/downloads/fixes-1.5.0/>patches</a>,
|
---|
287 | <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
|
---|
288 |
|
---|
289 | <p>Since this is a x.x.0 release, it probably does not deserve "stable"
|
---|
290 | label. Please help making 1.5.1 stable by testing 1.5.0.</p>
|
---|
291 | <p>Notable changes since previous release:
|
---|
292 | <ul>
|
---|
293 | <li>find: added support for -user, -not, fixed -mtime, -mmin, -perm
|
---|
294 | <li>[de]archivers: merge common logic into one module
|
---|
295 | <li>ping[6]: unified code for both
|
---|
296 | <li>less: regex search improved
|
---|
297 | <li>ash: more readable code, testsuite added
|
---|
298 | <li>sed: several very obscure bugs fixed
|
---|
299 | <li>chown: -H, -L, -P support (required by POSIX)
|
---|
300 | <li>tar: handle (broken) checksums a-la Sun; tar restores mode again
|
---|
301 | <li>grep: implement -w, "implement" -a and -I by ignoring them
|
---|
302 | <li>cp: more sane behavior when overwriting existing files
|
---|
303 | <li>init: stop doing silly things with the console (-400 bytes)
|
---|
304 | <li>httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
|
---|
305 | <li>httpd: run interpreter for configured file extensions in any dir,
|
---|
306 | not only in /cgi-bin/
|
---|
307 | <li>chrt: new applet
|
---|
308 | <li>SELinux: SELinux-related code and -Z option added to several applets,
|
---|
309 | new SELinux-specific applets: chcon, runcon.
|
---|
310 | <li>Build system: produces link map, uses -Wwrite-strings to catch
|
---|
311 | improper usage of string constants.
|
---|
312 | <li>Data and bss section usage audited and reduced - should help NOMMU
|
---|
313 | targets.
|
---|
314 | <li>Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
|
---|
315 | sv, printf, diff, awk, sort, dpkg, diff, tftp
|
---|
316 | <li>Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
|
---|
317 | udhcpd, start_stop_daemon, cmp
|
---|
318 | <li>Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
|
---|
319 | syslogd, swapon, runsv, svlogd, klogd
|
---|
320 | </ul>
|
---|
321 | </p>
|
---|
322 | </li>
|
---|
323 |
|
---|
324 | <li><b>18 March 2007 -- BusyBox 1.4.2 (stable)</b>
|
---|
325 | <p><a href=http://busybox.net/downloads/busybox-1.4.2.tar.bz2>BusyBox 1.4.2</a>.
|
---|
326 | </p>
|
---|
327 |
|
---|
328 | <p>This release includes only trivial fixes accumulated since 1.4.1.
|
---|
329 | </p>
|
---|
330 | </li>
|
---|
331 |
|
---|
332 | <li><b>25 January 2007 -- BusyBox 1.4.1 (stable)</b>
|
---|
333 | <p><a href=http://busybox.net/downloads/busybox-1.4.1.tar.bz2>BusyBox 1.4.1</a>.
|
---|
334 | (<a href=http://busybox.net/downloads/fixes-1.4.1/>patches</a>)</p>
|
---|
335 |
|
---|
336 | <p>This release includes only trivial fixes accumulated since 1.4.0.
|
---|
337 | </p>
|
---|
338 | </li>
|
---|
339 |
|
---|
340 | <li><b>20 January 2007 -- BusyBox 1.4.0 (stable)</b>
|
---|
341 | <p><a href=http://busybox.net/downloads/busybox-1.4.0.tar.bz2>BusyBox 1.4.0</a>.
|
---|
342 | (<a href=http://busybox.net/downloads/fixes-1.4.0/>patches</a>)</p>
|
---|
343 |
|
---|
344 | <p>Since this is a x.x.0 release, it probably is a bit less "stable"
|
---|
345 | than usual.</p>
|
---|
346 | <p>Changes since previous release:
|
---|
347 | <ul>
|
---|
348 | <li>e2fsprogs are mostly removed from busybox. Some smaller parts remain,
|
---|
349 | the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
|
---|
350 | it's too bloated. Really. I'm afraid it's about the only way we can
|
---|
351 | ever get e2fsprogs cleaned up.
|
---|
352 | <li>less: many improvements. Now can display binary files
|
---|
353 | (although I expect it to have trouble with displays where 8bit chars
|
---|
354 | don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
|
---|
355 | anymore. Less does not read entire input up-front. Reads input
|
---|
356 | as it appears (yay!). Works rather nice as man pager. I recommend it
|
---|
357 | for general use now.
|
---|
358 | <li>IPv6: generic support is in place, many networking applets are
|
---|
359 | upgraded to be IPv6 capable. Probably some work remains, but it is
|
---|
360 | already much better than what we had previously.
|
---|
361 | <li>arp: new applet (thanks to Eric Spakman).
|
---|
362 | <li>fakeidentd: non-forking standalone server part was taking ~90%
|
---|
363 | of the applet. Factored it out (in fact, rewrote it).
|
---|
364 | <li>syslogd: mostly rewritten.
|
---|
365 | <li>decompress_unzip, gzip: sanitized a bit.
|
---|
366 | <li>sed: better hadling of NULs
|
---|
367 | <li>httpd: stop adding our own "Content-type:" to CGI output
|
---|
368 | <li>chown: user.grp works again.
|
---|
369 | <li>minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
|
---|
370 | ps, ifupdown, time, su, stty, awk, ping[6], sort,...
|
---|
371 | </ul>
|
---|
372 | </p>
|
---|
373 | </li>
|
---|
374 |
|
---|
375 | <li><b>20 January 2007 -- BusyBox 1.3.2 (stable)</b>
|
---|
376 | <p><a href=http://busybox.net/downloads/busybox-1.3.2.tar.bz2>BusyBox 1.3.2</a>.</p>
|
---|
377 |
|
---|
378 | <p>This release includes only one trivial fix accumulated since 1.3.1
|
---|
379 | </p>
|
---|
380 | </li>
|
---|
381 |
|
---|
382 | <li><b>27 December 2006 -- BusyBox 1.3.1 (stable)</b>
|
---|
383 | <p><a href=http://busybox.net/downloads/busybox-1.3.1.tar.bz2>BusyBox 1.3.1</a>.
|
---|
384 | (<a href=http://busybox.net/downloads/fixes-1.3.1/>patches</a>)</p>
|
---|
385 |
|
---|
386 | <p>Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
|
---|
387 | </p>
|
---|
388 | </li>
|
---|
389 |
|
---|
390 | <li><b>14 December 2006 -- BusyBox 1.3.0 (stable)</b>
|
---|
391 | <p><a href=http://busybox.net/downloads/busybox-1.3.0.tar.bz2>BusyBox 1.3.0</a>.
|
---|
392 | (<a href=http://busybox.net/downloads/fixes-1.3.0/>patches</a>)</p>
|
---|
393 |
|
---|
394 | <p>This release has CONFIG_DESKTOP option which enables features
|
---|
395 | needed for busybox usage on desktop machine. For example, find, chmod
|
---|
396 | and chown get several less frequently used options, od is significantly
|
---|
397 | bigger but matches GNU coreutils, etc. Intended to eventually make
|
---|
398 | busybox a viable alternative for "standard" utilities for slightly
|
---|
399 | adventurous desktop users.
|
---|
400 | <p>Changes since previous release:
|
---|
401 | <ul>
|
---|
402 | <li>find: taking many more of standard options
|
---|
403 | <li>ps: POSIX-compliant -o implemented
|
---|
404 | <li>cp: added -s, -l
|
---|
405 | <li>grep: added -r, fixed -h
|
---|
406 | <li>watch: make it exec child like standard one does (was totally
|
---|
407 | incompatible)
|
---|
408 | <li>tar: fix limitations which were preventing bbox tar usage
|
---|
409 | on big directories: long names and linknames, pax headers
|
---|
410 | (Linux kernel tarballs have that). Fixed a number of obscure bugs.
|
---|
411 | Raised max file limit (now 64Gb). Security fixes (/../ attacks).
|
---|
412 | <li>httpd: added -i (inetd), -f (foreground), support for
|
---|
413 | directory indexer CGI (example is included), bugfixes.
|
---|
414 | <li>telnetd: fixed/improved IPv6 support, inetd+standalone support,
|
---|
415 | other fixes. Useful IPv6 stuff factored out into libbb.
|
---|
416 | <li>runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
|
---|
417 | (these are my personal favorite small-and-beautiful toys)
|
---|
418 | <li>minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
|
---|
419 | fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
|
---|
420 | </ul>
|
---|
421 | <p>Note that GnuPG key used to sign this release is different.
|
---|
422 | 1.2.2.1 is also signed post-factum now. Sorry for the mess.
|
---|
423 | </p>
|
---|
424 | </li>
|
---|
425 |
|
---|
426 | <li><b>29 October 2006 -- BusyBox 1.2.2.1 (fix)</b>
|
---|
427 | <p><a href=http://busybox.net/downloads/busybox-1.2.2.1.tar.bz2>BusyBox 1.2.2.1</a>.</p>
|
---|
428 |
|
---|
429 | <p>Added compile-time warning that static linking against glibc
|
---|
430 | produces buggy executables.
|
---|
431 | </li>
|
---|
432 |
|
---|
433 | <li><b>24 October 2006 -- BusyBox 1.2.2 (stable)</b>
|
---|
434 | <p>It's a bit overdue, but
|
---|
435 | <a href=http://busybox.net/downloads/busybox-1.2.2.tar.bz2>here is
|
---|
436 | BusyBox 1.2.2</a>.</p>
|
---|
437 |
|
---|
438 | <p>This release has dozens of fixes backported from the ongoing development
|
---|
439 | branch. There are a couple of bugfixes to sed, two fixes to documentation
|
---|
440 | generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
|
---|
441 | umount to report the right errno on failure and to umount block devices by
|
---|
442 | name with newer kernels, fix mount to handle symlinks properly, make mdev
|
---|
443 | delete device nodes when called for hotplug remove, fix a segfault
|
---|
444 | in traceroute, a minor portability fix to md5sum option parsing, a build
|
---|
445 | fix for httpd with old gccs, an options parsing tweak to hdparm, make test
|
---|
446 | fail gracefully when getgroups() returns -1, fix a race condition in
|
---|
447 | modprobe when two instances run at once (hotplug does this), make "tar xf
|
---|
448 | foo.tar dir/dir" extract all subdirectories, make our getty initialize the
|
---|
449 | terminal more like mingetty, an selinux build fix, an endianness fix in
|
---|
450 | ping6, fix for zcip defending addresses, clean up some global variables in
|
---|
451 | gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
|
---|
452 | fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.</p>
|
---|
453 |
|
---|
454 | <p>As <a href=http://lwn.net/Articles/202106/>Linux Weekly News noted</a>,
|
---|
455 | this is my (Rob's) last release of BusyBox. The new maintainer is Denis
|
---|
456 | Vlasenko, I'm off to do <a href=http://landley.net/code>other things</a>.
|
---|
457 | </p>
|
---|
458 | </li>
|
---|
459 |
|
---|
460 | <li><b>29 September 2006 -- New license email address.</b>
|
---|
461 | <p>The email address gpl@busybox.net is now the recommended way to contact
|
---|
462 | the Software Freedom Law Center to report BusyBox license violations.</p>
|
---|
463 |
|
---|
464 | <li><b>31 July 2006 -- BusyBox 1.2.1 (stable)</b>
|
---|
465 | <p>Since nobody seems to have objected too loudly over the weekend, I
|
---|
466 | might as well point you all at
|
---|
467 | <a href="http://busybox.net/downloads/busybox-1.2.1.tar.bz2">Busybox
|
---|
468 | 1.2.1</a>, a bugfix-only release with no new features.</p>
|
---|
469 |
|
---|
470 | <p>It has three shell fixes (two to lash: going "var=value" without
|
---|
471 | saying "export" should now work, plus a missing null pointer check, and
|
---|
472 | one to ash when redirecting output to a file that fills up.) Fix three
|
---|
473 | embarassing thinkos in the new dmesg command. Two build tweaks
|
---|
474 | (dependencies for the compressed usage messages and running make in the
|
---|
475 | libbb subdirectory). One fix to tar so it can extract git-generated
|
---|
476 | tarballs (rather than barfing on the pax extensions). And a partridge
|
---|
477 | in a pear... Ahem.</p>
|
---|
478 |
|
---|
479 | <p>But wait, there's more! A passwd changing fix so an empty
|
---|
480 | gecos field doesn't trigger a false objection that the new passwd contains
|
---|
481 | the gecos field. Make all our setuid() and setgid() calls check the return
|
---|
482 | value in case somebody's using per-process resource limits that prevent
|
---|
483 | a user from having too many processes (and thus prevent a process from
|
---|
484 | switching away from root, in which case the process will now _die_ rather
|
---|
485 | than continue with root privileges). A fix to adduser to make sure that
|
---|
486 | /etc/group gets updated. And a fix to modprobe to look for modules.conf
|
---|
487 | in the right place on 2.6 kernels.</p>
|
---|
488 |
|
---|
489 | <li><b>30 June 2006 -- BusyBox 1.2.0</b>
|
---|
490 | <p>The -devel branch has been stabilized and the result is
|
---|
491 | <a href="http://busybox.net/downloads/busybox-1.2.0.tar.bz2">Busybox
|
---|
492 | 1.2.0</a>. Lots of stuff changed, I need to work up a decent changelog
|
---|
493 | over the weekend.</p>
|
---|
494 |
|
---|
495 | <p>I'm still experimenting with how long is best for the development
|
---|
496 | cycle, and since we've got some largeish projects queued up I'm going to
|
---|
497 | try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
|
---|
498 | we fix enough bugs. :)</p>
|
---|
499 |
|
---|
500 | <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>
|
---|
501 |
|
---|
502 | <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
|
---|
503 | <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
|
---|
504 | 1.1.3</a> is another bugfix release. It makes passwd use salt, fixes a
|
---|
505 | memory freeing bug in ls, fixes "build all sources at once" mode, makes
|
---|
506 | mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
|
---|
507 | background processes, makes patch work with patch hunks that don't have a
|
---|
508 | timestamp, make less's text search a lot more robust (the old one could
|
---|
509 | segfault), and fixes readlink -f when built against uClibc.</p>
|
---|
510 |
|
---|
511 | <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
|
---|
512 |
|
---|
513 | <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
|
---|
514 | <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
|
---|
515 | backported from the development branch: Some build fixes, several fixes
|
---|
516 | for mount and nfsmount, a fix for insmod on big endian systems, a fix for
|
---|
517 | find -xdev, and a fix for comm. Check the file "changelog" in the tarball
|
---|
518 | for more info.</p>
|
---|
519 |
|
---|
520 | <p>The next new development release (1.2.0) is slated for June. A 1.1.3
|
---|
521 | will be released before then if more bug fixes crop up. (The new plan is
|
---|
522 | to have a 1.x.0 new development release every 3 months, with 1.x.y stable
|
---|
523 | bugfix only releases based on that as appropriate.)</p>
|
---|
524 |
|
---|
525 | <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
|
---|
526 | <p>One issue Erik Andersen wanted to resolve when handing off BusyBox
|
---|
527 | maintainership to Rob Landley was license enforcement. BusyBox and
|
---|
528 | uClibc's existing license enforcement efforts (pro-bono representation
|
---|
529 | by Erik's father's law firm, and the
|
---|
530 | <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), haven't
|
---|
531 | scaled to match the popularity of the projects. So we put our heads
|
---|
532 | together and did the obvious thing: ask Pamela Jones of
|
---|
533 | <a href="http://www.groklaw.net">Groklaw</a> for suggestions. She
|
---|
534 | referred us to the fine folks at softwarefreedom.org.</p>
|
---|
535 |
|
---|
536 | <p>As a result, we're pleased to announce that the
|
---|
537 | <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
|
---|
538 | has agreed to represent BusyBox and uClibc. We join a number of other
|
---|
539 | free and open source software projects (such as
|
---|
540 | <a href="http://lwn.net/Articles/141806/">X.org</a>,
|
---|
541 | <a href="http://lwn.net/Articles/135413/">Wine</a>, and
|
---|
542 | <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
|
---|
543 | in being represented by a fairly cool bunch of lawyers, which is not a
|
---|
544 | phrase you get to use every day.</p>
|
---|
545 |
|
---|
546 | <li><b>22 March 2006 -- BusyBox 1.1.1</b>
|
---|
547 | <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>
|
---|
548 | <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
|
---|
549 | the various small fixes have been collected together into a
|
---|
550 | <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
|
---|
551 | and new fixes will be appended to that as needed. Expect 1.1.2 around
|
---|
552 | June.</p>
|
---|
553 | </li>
|
---|
554 | <li><b>11 January 2006 -- 1.1.0 is out</b>
|
---|
555 | <p>The new stable release is
|
---|
556 | <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
|
---|
557 | 1.1.0</a>. It has a number of improvements, including several new applets.
|
---|
558 | (It also has <a href="http://www.busybox.net/lists/busybox/2006-January/017733.html">a few rough spots</a>,
|
---|
559 | but we're trying out a "release early, release often" strategy to see how
|
---|
560 | that works. Expect 1.1.1 sometime in March.)</p>
|
---|
561 |
|
---|
562 | <li><b>Old News</b><p>
|
---|
563 | <a href="/oldnews.html">Click here to read older news</a>
|
---|
564 | </p>
|
---|
565 | </li>
|
---|
566 |
|
---|
567 |
|
---|
568 | </ul>
|
---|
569 |
|
---|
570 | <!--#include file="footer.html" -->
|
---|
571 |
|
---|