Announce 1.8.0

This commit is contained in:
Denis Vlasenko 2007-11-04 15:43:26 +00:00
parent 360362dc57
commit 6cee58e9cf
7 changed files with 132 additions and 23 deletions

View File

@ -186,10 +186,10 @@ config FEATURE_SUID_CONFIG
The file has to be owned by user root, group root and has to be The file has to be owned by user root, group root and has to be
writeable only by root: writeable only by root:
(chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf)
The busybox executable has to be owned by user root, group The busybox executable has to be owned by user root, group
root and has to be setuid root for this to work: root and has to be setuid root for this to work:
(chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox)
Robert 'sandman' Griebl has more information here: Robert 'sandman' Griebl has more information here:
<url: http://www.softforge.de/bb/suid.html >. <url: http://www.softforge.de/bb/suid.html >.

View File

@ -1,7 +1,7 @@
VERSION = 1 VERSION = 1
PATCHLEVEL = 8 PATCHLEVEL = 8
SUBLEVEL = 0 SUBLEVEL = 0
EXTRAVERSION = .svn EXTRAVERSION =
NAME = Unnamed NAME = Unnamed
# *DOCUMENTATION* # *DOCUMENTATION*

View File

@ -703,17 +703,17 @@ void mainQSort3(uint32_t* ptr,
/*---------------------------------------------*/ /*---------------------------------------------*/
/* Pre: /* Pre:
* nblock > N_OVERSHOOT * nblock > N_OVERSHOOT
* block32 exists for [0 .. nblock-1 +N_OVERSHOOT] * block32 exists for [0 .. nblock-1 +N_OVERSHOOT]
* ((uint8_t*)block32) [0 .. nblock-1] holds block * ((uint8_t*)block32) [0 .. nblock-1] holds block
* ptr exists for [0 .. nblock-1] * ptr exists for [0 .. nblock-1]
* *
* Post: * Post:
* ((uint8_t*)block32) [0 .. nblock-1] holds block * ((uint8_t*)block32) [0 .. nblock-1] holds block
* All other areas of block32 destroyed * All other areas of block32 destroyed
* ftab[0 .. 65536] destroyed * ftab[0 .. 65536] destroyed
* ptr [0 .. nblock-1] holds sorted order * ptr [0 .. nblock-1] holds sorted order
* if (*budget < 0), sorting was abandoned * if (*budget < 0), sorting was abandoned
*/ */
#define BIGFREQ(b) (ftab[((b)+1) << 8] - ftab[(b) << 8]) #define BIGFREQ(b) (ftab[((b)+1) << 8] - ftab[(b) << 8])

View File

@ -1,6 +1,116 @@
<!--#include file="header.html" --> <!--#include file="header.html" -->
<ul> <ul>
<li><b>4 November 2007 -- BusyBox 1.8.0 (unstable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.8.0.tar.bz2>BusyBox 1.8.0</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.8.0/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
<p>Applets which had many changes since 1.7.x:
<p>httpd:
<ul>
<li>does not clear environment, CGIs will see all environment variables which were set for httpd
<li>fix bug where we were trying to read more POSTDATA than content-length
<li>fix trivial bug (spotted by Alex Landau)
<li>optional support for partial downloads
<li>simplified CGI i/o loop (now it looks good to me)
<li>small auth and IPv6 fixes (Kim B. Heino &lt;Kim.Heino at bluegiga.com>)
<li>support for proxying connection to other http server (by Alex Landau &lt;landau_alex at yahoo.com>)
</ul>
<p>top:
<ul>
<li>TOPMEM feature - 's(how sizes)' command
<li>don't wait before final bailout (try top -b -n1)
<li>fix for command line wrapping
</ul>
<p>Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
<p>Code and data size in comparison with 1.7.3:<pre>
Equivalent .config, i386 uclibc static builds:
text data bss dec hex filename
768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
759693 974 9420 770087 bc027 busybox-1.8.0/busybox</pre>
<p>New applets:
<ul>
<li>microcom: new applet by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;
<li>kbd_mode: new applet by Loic Grenie &lt;loic.grenie at gmail.com&gt;
<li>bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
<li>pgrep, pkill: new applets by Loic Grenie &lt;loic.grenie at gmail.com&gt;
<li>setsebool: new applet (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
</ul>
<p>Other changes since previous release (abridged):
<ul>
<li>cp: -r and -R imply -d (coreutils compat)
<li>cp: detect and prevent infinite recursion
<li>cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
<li>hdparm: reduce possibility of numeric overflow in -T
<li>hdparm: simplify timing measurement
<li>wget: -O FILE is allowed to overwrite existing file (compat)
<li>wget: allow dots in header field names.
<li>telnetd: add -K option to close sessions as soon as child exits.
<li>telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
<li>ed: large cleanup, add line editing
<li>hush: feeble attempt at making it more NOMMU-friendly
<li>hush: fix glob()
<li>hush: stop doing manual accounting of open fd's, kernel can do it for us
<li>adduser: implement -S and fix uid selection
<li>ash: fix prompt expansion (Natanael Copa &lt;natanael.copa at gmail.com&gt;)
<li>ash: revert "cat | jobs" fix, it causes more problems than good
<li>find: fix -xdev behavior in the presence of two or more nested mount points
<li>grep: fix grep -F -e str1 -e str2 (was matching str2 only)
<li>grep: optimization: stop on first -e match
<li>gunzip: support concatenated gz files
<li>inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
<li>install: 'support' (by ignoring) -v and -b
<li>install: fix bug in "install -c file dir" (tried to copy dir into dir too)
<li>ip: tunnel parameter parsing fix by Jean Wolter &lt;jw5 at os.inf.tu-dresden.de&gt;
<li>isrv: use monotonic_sec
<li>less: make 'f' key page forward
<li>libiproute: add missing break statements
<li>load_policy: update (Yuichi Nakamura &lt;ynakam at hitachisoft.jp&gt;)
<li>logger: fix a problem of losing all argv except first
<li>login: do reject wrong passwords with PAM auth
<li>losetup: support -f (Loic Grenie &lt;loic.grenie at gmail.com&gt;)
<li>fdisk: make fdisk compile on libc without llseek64
<li>libbb: by popular request allow PATH to be customized at build time
<li>mkswap: selinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
<li>mount: allow (and ignore) -i
<li>mount: ignore NFS bg option on NOMMU machines
<li>mount: mount helpers support (by Vladimir Dronnikov &lt;dronnikov at gmail.ru&gt;)
<li>passwd: handle Ctrl-C, restore termios on Ctrl-C
<li>passwd: SELinux support by KaiGai Kohei &lt;kaigai at ak.jp.nec.com&gt;
<li>ping: make -I ethN work too (-I addr already worked)
<li>ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
<li>read_line_input: fix it to not do any fancy editing if echoing is disabled
<li>run_parts: make it sort executables by name (required by API)
<li>runsv: do not use clock_gettime if !MONOTONIC_CLOCK
<li>runsvdir: fix "linear wait time" bug
<li>sulogin: remove alarm handling, it is redundant there
<li>svlogd: compat: svlogd -tt should timestanp stderr too
<li>syslogd: bail out if you see null read from Unix socket
<li>syslogd: do not need to poll(), we can just block in read()
<li>tail: work correctly on /proc files (Kazuo TAKADA &lt;kztakada at sm.sony.co.jp&gt;)
<li>tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau &lt;landau_alex at yahoo.com&gt;)
<li>tar: strip leading '/' BEFORE memorizing hardlink's name
<li>tftp: fix infinite retry bug
<li>umount: support (by ignoring) -i; style fixes
<li>unzip: fix endianness bugs
<li>vi: don't wait 50 ms before reading ESC sequences
<li>watchdog: allow millisecond spec (-t 250ms)
<li>zcip: fix unaligned trap on ARM
</ul>
</p>
<p><a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a></p>
</li>
<li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b> <li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.7.3.tar.bz2>BusyBox 1.7.3</a>. <p><a href=http://busybox.net/downloads/busybox-1.7.3.tar.bz2>BusyBox 1.7.3</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>, (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/>svn</a>,
@ -8,7 +118,6 @@
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p> <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.</p> <p>This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.</p>
<p><a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a></p>
</li> </li>
<li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b> <li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b>

View File

@ -35,7 +35,7 @@ static void passwd_study(struct passwd *p)
/* check for a free uid (and maybe gid) */ /* check for a free uid (and maybe gid) */
while (getpwuid(p->pw_uid) || (!p->pw_gid && getgrgid(p->pw_uid))) while (getpwuid(p->pw_uid) || (!p->pw_gid && getgrgid(p->pw_uid)))
p->pw_uid++; p->pw_uid++;
if (!p->pw_gid) { if (!p->pw_gid) {
/* new gid = uid */ /* new gid = uid */
p->pw_gid = p->pw_uid; p->pw_gid = p->pw_uid;
@ -146,7 +146,7 @@ int adduser_main(int argc, char **argv)
if (mkdir(pw.pw_dir, 0755) if (mkdir(pw.pw_dir, 0755)
|| chown(pw.pw_dir, pw.pw_uid, pw.pw_gid) || chown(pw.pw_dir, pw.pw_uid, pw.pw_gid)
|| chmod(pw.pw_dir, 02755) /* set setgid bit on homedir */ || chmod(pw.pw_dir, 02755) /* set setgid bit on homedir */
) { ) {
bb_simple_perror_msg(pw.pw_dir); bb_simple_perror_msg(pw.pw_dir);
} }
} }

View File

@ -2983,7 +2983,7 @@ obj_string_patch(struct obj_file *f, int secidx, ElfW(Addr) offset,
memcpy(loc, string, len); memcpy(loc, string, len);
} }
static void static void
obj_symbol_patch(struct obj_file *f, int secidx, ElfW(Addr) offset, obj_symbol_patch(struct obj_file *f, int secidx, ElfW(Addr) offset,
struct obj_symbol *sym) struct obj_symbol *sym)
{ {

View File

@ -329,13 +329,13 @@ config FEATURE_IFUPDOWN_IPV6
If you need support for IPv6, turn this option on. If you need support for IPv6, turn this option on.
### UNUSED ### UNUSED
### config FEATURE_IFUPDOWN_IPX ###config FEATURE_IFUPDOWN_IPX
### bool "Enable support for IPX" ### bool "Enable support for IPX"
### default n ### default n
### depends on IFUPDOWN ### depends on IFUPDOWN
### help ### help
### If this option is selected you can use busybox to work with IPX ### If this option is selected you can use busybox to work with IPX
### networks. ### networks.
config FEATURE_IFUPDOWN_MAPPING config FEATURE_IFUPDOWN_MAPPING
bool "Enable mapping support" bool "Enable mapping support"