1.18.0 and 1.17.4 are released

Denys Vlasenko vda.linux at googlemail.com
Tue Nov 23 10:52:37 UTC 2010


* 22 November 2010 -- BusyBox 1.17.4 (stable)

Bug fix release. 1.17.4 has fixes for dnsd (fix for 64-bit builds),
ip route (fixed bug of misplaced argv++), ls (-g was showing
user instead of group), sort (fix for -o FILE not creating FILE),
unicode (fixed bug in build with disabled unicode support).



* 22 November 2010 -- BusyBox 1.18.0 (unstable)

Sizes of busybox-1.17.4 and busybox-1.18.0 (with equivalent config,
static uclibc build):

   text    data     bss     dec     hex filename
 831950     453    7224  839627   ccfcb busybox-1.17.4/busybox
 832282     450    7212  839944   cd108 busybox-1.18.0/busybox

Changes since previous release:

Alexander Shishkin:
      pmap: new applet. +1k
      add-shell, remove-shell: new applets
      *: introduce and use xmkstemp. -65 bytes
      fix out-of-tree build's recursion
      ash: fix $! value when traps are set
      ulimit: set both hard and soft limits by default
      stat: remove superfluous setXXent() calls, plug memory leak
      tail: free tailbuf upon cleaning up
      smemcap: close /proc handle upon cleaning up
      login: free fromhost upon cleaning up
      mount: pass NULL, not "", as "data" to mount syscall if we have no opts

Baruch Siach:
      nandwrite: new applet
      nanddump: new applet

Bernhard Reutner-Fischer:
      find_stray_empty_lines: make it work

Bradley M. Kuhn:
      wget: implement -T SEC; rework progress meter to not use signals
(it was unsafe)

Carmelo AMOROSO:
      insmod: do not add a pair of "" around the arguments of the module

Christian Hornung:
      ip: fix command line option parsing of "ip route get ..."

Cristian Ionescu-Idbohrn:
      remove redundant ENABLE_DESKTOP in procps/ps.c

Dan Fandrich:
      improve portability of tests
      rename a struct member from "interrupt"
      testsuite: show the number of failures after a test run
      fix some test cases
      tar: add a test for extraction of read-only directory
      avoid side effects in putc(), which may be implemented as a macro
      fix a couple of failing tar tests
      fix build failure for pmap
      mark some more applets NOEXEC/NOFORK

Daniel Dickinson:
      syslogd: close/re-resolve/reopen remote sockets on some sendto() errors

Denys Vlasenko:
      base64: new applet
      platform.h: regularize endian detection
      md5 and shaN: big shrink
      libbb/process_escape_sequence.c: fix recently broken handling of \\
      libbb: add xfstat function
      libbb: factor out common code from mpstat/iostat
      libbb: fix fallout from last patch to obscure() (my mistake). +143 bytes
      libbb: introduce and use common crc32 routine
      libbb: introduce and use strcpy_and_process_escape_sequences
      libbb: merge mail and uudecode's base64 decoders
      lineedit: partially rewrite and clean up tab completion code
      lineedit: do not hang on error, but return error indicator
      lineedit: limit ASK_TERMINAL to the case when we can't find out the width
      *: deinline SWAP_xE64 on 32-bit CPUs. Wins !90 bytes both on 32
and 64 bits
      *: pass md5/shaN context pointer as 1st arg, not last
      *: use SWAP_BE64 instead of open-coding it
      shell/math.c: rename arith_eval_hooks to arith_state, put error
code into it
      shell/math.c: stop using bss variable
      shell/math: deconvolute and explain ?: handling
      shell/math: return string error indicator, not integer
      shell: remove lash and bbsh
      shell: unify endofname() in hush and ash
      ash: add a testcase for bug 2281 (currently fails)
      ash: add another ${v/a/b} test we currently fail
      ash: add missing casts to match CTLfoo
      ash: fix another bit of var_bash4 bug
      ash: fix another bug detected by var_bash4.tests
      ash: fix dequoting error detected by var_bash4 test
      ash: fix signal and "set -e" interaction
      hush: add support for "set -o pipefail"
      hush: add support for ${var/pattern/repl}, conditional on bash compat
      hush: add support for set -x
      hush: fix EXIT trap display inside exit trap handler
      hush: fix another corner case with backslashes in heredocs
      hush: fix backslash and terminator handling in <<[-]["]heredoc["]
      hush: fix globbing+backslashes in unquoted $var expansion
      hush: fix handling of \" in quoted/unquoted `cmd`
      hush: fix handling of backslashes in variable assignment
      hush: fix improper handling of newline and hash chars in a few
corner cases
      hush: fix multiple dependent variable expansion cases
      hush: fix set -- q w e; (IFS='' echo "$*"; IFS=''; echo "$*"); echo "$*"
      hush: fix var_bash3.tests failure
      hush: fix var_bash5.tests failure
      hush: implement brace expansion
      hush: make pun_pipe loop clearer; fix "cmd | var=`cmd` | cmd" handling
      hush: make set -x support optional
      hush: optional support for history saving
      awk: 00.123 is not a octal constant; neither is 009.123 - fixed
      awk: fix SEGV on closing non-opened file
      bbconfig: add COMPRESS_BBCONFIG option
      build system: make 3.82 compat fix. Closes bug 2323
      cmp: with -s, do not report open errors
      crond: check mtime on crontab dir every minute, and reread if changed
      dc: make it use long longs for integer ops
      decompress_bunzip2: handle concatenated .bz2 files; speedup
      delgroup: correct the check for users who still use the group
      depmod: generate "new-style" modules.dep with relative paths
      diff: make diff -r much less eager to recurse into directories
      dmesg: more correct skipping of <N> perfix
      dnsd: fix 64-bit bug 2539
      dos2unix: fix SEGV when run w/o parameters
      find: add rudimentary support for -exec {} +
      free: add -b/k/m/g options; remove 4 TB limitation. +100 bytes
      free: more compatible output. +16 bytes. Closes bug 2383
      grep: cap insane -B NUM values to MAX_INT / 8. Fixes bug 2653
      grep: fix -o match with empty string (suggested by Colin Watson
(cjwatson at ubuntu.com))
      ifupdown: %client%, not %clientid%
      ifupdown: add manual method for IPv6. Closes bug 2497
      init: do not clear CRTSCTS (fix from Debian bug 528560)
      init: do not sleep forever on usage errors
      init: if PID!=1, show clearer error message
      ip: fix "ip r" breakage
      klogd: do not log partial lines
      ls: fix -lg to show group (was showing user)
      lzop: fix misordered "v=NULL; free(v)"
      man: add compatibility with man-db
      mdev: fix non-working device deletion, add a test for that
      mkswap: clear 1st kilobyte. Closes bug 1831
      mktemp: fix "mktemp /path/to/tempfile.XXXXXX"
      mktemp: fix for dir/file.XXXXXX param (by Rob). +9 bytes
      modprobe-simple: do not error out on "rmmod module" if module is
unloaded ok
      modutils: explain why we no longer quote params
      move read_base64 to libbb/uuencode.c
      mv: implement -n option
      nandwrite: complain on malformed -s NUM
      nc: fix SEGV on -v when NC_EXTRA is off
      netstat: fix IPv6 problem (garbage in scope_id)
      netstat: was using buffers one byte short for scanf (no place
for NUL) - fixed
      ntpd: allow peer-less (standalone stratum 1 server) operation
      ntpd: with -q, exit after 60 seconds even if time is not synced
      patch: add -N and a test for it (fails for now)
      patch: busyboxify by migrating from toybox to busybox helpers
      patch: fix -N regression
      patch: support "patch [FILE [PATCH]]" format
      sed: fix sed -i: unlike without -i, it does not forget ranges
      sed: make N command behave as in GNU sed
      seq: exit on write errors
      sleep: fix fractional arguments in non-POSIX locale
      sleep: make it non-NOFORK. Fixes ^C in standalone shell
      smemcap: use correct tar magic
      sort: -o FILE should create/truncate FILE
      split: use xopen_stdin()
      telnet: convert CR NUL -> CR on input. Closes bug 2569
      telnet: do not check for 0 return from poll (it's impossible)
      top: add tie breaking for topmem mode
      udhcpc: emit maxsize option in all non-NAK type packets
      udhcpc: exit if iface disappeared; use correct MAC if it changes
      udhcpc: periodically reread our ifindex and mac
      udhcpc: reduce stack usage by de-inlining routines with on-stack pkt buf
      udhcpc: remove -c CLIENTID, it is hard to use, -x 61:hexstring
does the same better
      udhcpc: remove now-unneeded definitions of vendor and client-id opts
      udhcpd: reduce stack usage by ~700 bytes. +28 bytes code size
      umount: do not (ab)use PATH_MAX as mntent buffer size
      unicode: update unicode_width on !unicode branch too. Closes bug 2593
      vi: fix "ask terminal" code
      wc: add support for -m

Eric Lammerts:
      stat: fix mtime/ctime/atime

Gilles Espinasse:
      patch: implement -E option

Harald Becker:
      deluser: make it simpler, fix inability to delete user from group

Holger Blasum:
      update docs/new-applet-HOWTO.txt

Javier Viguera:
      find_stray_empty_lines: fix tail "invalid context" error

Jeremie Koenig:
      readlink: use xmalloc_realpath()
      mark Linux-specific configuration options
      init,loginutils: termios portability fixes
      init,halt: portability improvements
      init: make the initial $TERM value configurable
      libbb.h: add device names for Hurd and FreeBSD
      mkdir: fix -p on FreeBSD
      libbb: conditionalize AF_* usage in error reporting
      tcpsvd,udpsvd: conditionalize usage of SO_ORIGINAL_DST
      less: remove misguided dependency on PLATFORM_LINUX
      bootchartd: mounting tmpfs is Linux-specific
      vlock: disable linux console calls on other systems
      cttyhack: serial console detection is Linux-specific
      klogd: make it work on non-linux systems
      stty: sort out preprocessor conditionals

Kevin Cernekee:
      docs: change CVS references to git
      docs: sync up AUTHORS and busybox_footer.pod
      fdisk: initial stab at GPT partition support

Lauri Kasanen:
      modprobe: make -l open the right file
      libbb: remove unused variable

Lukas Huba:
      patch: implement -E option

Macpaul Lin:
      fdisk: add support for NDS32 architecture
      modutils: add support for NDS32 architecture

Marek Polacek:
      mpstat: new applet. ~5.5k
      iostat: new applet. 2800 bytes
      powertop: new applet
      *: s/perror/bb_simple_perror_msg/g
      *: use _exit() in sighandlers
      showkey: do not use exit-thru-sighandler
      bloat-o-meter: make it python3 compliant

Matheus Izvekov:
      diff: fix "diff dir1 dir2/". Closes bug 2203

Mike Frysinger:
      depmod.pl: add recursive sanity check
      build system: allow SKIP_STRIP to be set in the env
      gen_build_files.sh: rewrite with sed
      inetd: if argv[0] is not specified, set it to program name

Mike Shal:
      lineedit: fix tab-completion of file names with spaces

Nguyen Thai Ngoc Duy:
      wget: flush output to network before receving reply

Pascal Bellard:
      depmod: accept and ignore -u, -q, -C FILE
      cpio: avoid 'not created: newer or same age file exists' message for dirs

Peter Korsgaard:
      httpd: optional support for gzip-compressed pages
      httpd: simplified "gzip" test

Richard Braun:
      tune2fs: implement -c and -i options

Rob Landley:
      nbd-client: new applet
      patch: replace it with toybox's implementation
      patch: deal with omitted ",len" in hunk headers (default len to 1)
      awk: reduce ifdef forest

Sergey Naumov:
      blockdev: new applet

Souf Oued:
      acpid: add config file and map file

Thomas Chou:
      mkmakefile: make 3.82 fix

Tito Ragusa:
      deluser: 2nd attempt at deluser/delgroup size reduction and improvements
      deluser: do not warn spuriously when deleting group by deluser

Vladimir Dronnikov:
      sendmail: fix assumption that headers should have a space after the colon

Vladislav Grishenko:
      udhcp: add support for 0x21 ROUTES and 0xf9 MS_STATIC_ROUTES options
      udhcpc: fix OPTION_IP_PAIR parsing

Waldemar Brodkorb:
      OpenBSD compatibility

Wolfram Sang:
      lineedit: create history files with mode 0600

-- 
vda


More information about the busybox mailing list