BUSYBOX Changelog

New in version 1.22.1

January 20th, 2014
  • Bug fix release. 1.22.1 has fixes for find (was requiring the path argument in some cases, unlike GNU find), grep (fixes for -w handling), ntpd (wasn't slewing time after large negative step), compile fixes for some configurations.

New in version 1.22.0 (January 3rd, 2014)

  • Aaro Koskinen (9):
  • fdisk_sun: fix corrupted partition data with blank disk
  • fdisk_sun: fix partition alignment
  • sendmail: avoid sending mail to wrong addresses
  • sendmail: don't mangle e-mail headers
  • sendmail: support addresses inside angle brackets
  • sendmail: support address lists
  • sendmail: support long header fields for recipients
  • sendmail: don't add To: header if it already exists
  • sendmail: don't add multiple To: headers
  • Alexander Shiyan (2):
  • nanddump: fix build if nandwrite isn't enabled
  • flash_eraseall: implement -N
  • Bartosz Golaszewski (6):
  • grep: don't bail out on first mismatch if '-w' option is set
  • networking: code shrink
  • date: accept 'yyyy-mm-dd HH' and 'yyyy-mm-dd' date formats
  • Refactor catv. Move visible() from stty to libbb.
  • tail compat: fix header printing for tail -f
  • bloat-o-meter: add usage info
  • Bernhard Reutner-Fischer (11):
  • awk: Fix handling of functions with empty body
  • setserial: Fix typo: s/baund_rate/baud_rate/g
  • chrt: remove warning for _POSIX_PRIORITY_SCHEDULING
  • buildsys: Add helper to list suid applets
  • awk: Fix handling of functions with empty body
  • swaponoff: shrink
  • ash: Use setvar2 some more
  • ash: Set SHLVL in ASH_BASH_COMPAT
  • fstrim: -17b
  • fstrim: Indicate failure on error
  • fstrim: Needs to fire at the mp, not bd
  • Bernhard Walle:
  • pgrep: fix -x option
  • Bogdan Purcareata:
  • init: halt on SIGPWR too
  • Cristian Ionescu-Idbohrn:
  • foo*sum: Correct syntax error
  • Cédric Cabessa:
  • syslogd: use _PATH_LOG when available
  • Daniel Borca (4):
  • platform: strchrnul is missing if __APPLE__
  • dpkg-deb: cosmetic correction to usage text
  • ping: try SOCK_DGRAM if no root privileges
  • build system: fix make gconfig
  • David A. Wheeler (2):
  • sed: accept -E as a synonym for -r
  • sed: accept s///i as a synonym for s///I ("ignore case")
  • Denys Vlasenko:
  • Call setlocale("") , not "C", if we want to set the default one
  • Commonalize typical [b,]k,m suffix struct
  • Make smart_ulltoa return pointer to end (allows for code shink in callers)
  • Makefile.custom: make "make release" delete .gitignore files too
  • Move create_icmp[6]_socket to its only user, and simplify it
  • Use unsigned printf/scanf conversion where more appropriate
  • adduser: check whether run with no USERNAME. Closes 6728
  • ash: add comment about failures in source builtin. No code changes.
  • awk: fix a bug in argc counting in recent change
  • awk: fix length(array)
  • awk: use "long long" as integer type, not "int"
  • bootchartd: warn if .config looks wrong
  • build system: use od -b instead of od -t x1
  • bunzip2: fix off-by-one check
  • chpst: fix a bug where -U USER was using wrong USER (one from -u USER)
  • cryptpw: do not segfault on EOF. Closes 6350
  • dd: do not reuse local variables for unrelated values.
  • dd: fail if swab is attempted on odd-sized block
  • dd: fix example in a comment. No code changes.
  • dd: support conv=swab
  • decompress_unlzma: 10% speedup in "small" code
  • decompress_unlzma: make "fast" version a bit smaller
  • decompress_unlzma: move function, no code changes
  • devfsd: remove static variable
  • ether-wake: shorten help text, reduce packet buffer size
  • find: support -HLP
  • find: get rid of nested function (it's a gcc-ism)
  • fix assorted unused code and wrong format specs found by cppcheck (bug 6716)
  • fix build error with musl libc due to if_slip.h
  • fix error message on failure to open /dev/null; fix zcat's help text
  • flashcp: pad output to BUFSIZE. Hopefully closes 5882
  • foo*sum: report I/O errors, don't merely exit with 1.
  • head,tail: use common suffix struct. simplify help text.
  • head: support -n -NUM and -c -NUM
  • hexdump: don't unconditionally limit the usable address range
  • hexdump: need to use xstrtoull for off_t
  • hostid: do not output sign-extended host id. Closes 6056
  • httpd: don't allow tabs and multiple spaces in request string
  • httpd: make sure pfd[TO_CGI].revents is cleared before poll()
  • httpd: treat errors from stdin correctly.
  • hush: fix build failure if FEATURE_EDITING=y && !HUSH_INTERACTIVE
  • hush: fix for "while false && true; do echo BUG; break; done". closes 6170
  • hush: source builtin should override $N only if it has args
  • hush: typo fixes in comments
  • ifplugd: make -k send SIGINT, not SIGQUIT
  • ifupdown: support "source" stanza in /etc/network/interfaces
  • init: don't use fixed size buffer for command
  • init: remove special-case code for machines with less tham 1 MB of RAM.
  • iplink: comment out include
  • iplink: fix build error (IFLA_VLAN_PROTOCOL defined before include)
  • less: support "less 1TTY"
  • libbb: introduce and use strftime_[YYYYMMDD]HHMMSS()
  • lineedit: \W on "/bin" should show "bin", not "/bin"
  • lineedit: add handling of \H in prompt
  • lineedit: fix multi-line PS1 handling: calculate PS1 length from last \n
  • lineedit: implement \T \t \A \@ prompts escapes, fix \W escape, drop \!
  • lineedit: improve Unicode handling (still buggy though)
  • lineedit: use unicode_strwidth instead of unicode_strlen
  • loadkmap: explain what happens with K_ALLOCATED key value
  • logread: don't call shmdt() before exit, kernel does it for us.
  • logread: flush output. closes 6710
  • logread: intercept all fatal signals, not just SIGINT
  • losetup: assorted fixes. Closes 6314
  • lzop: fiq -q and OPTION_DECOMPRESS mismatch
  • make --help return exitcode 0. Closes 5612
  • man: install to /usr/bin, not /sbin
  • md5/sha512: a better fix for strict aliasing warnings
  • mdev: add environment variable match
  • mdev: call index_in_strings on $ACTION only after we checked it for NULL
  • mdev: chdir back to /dev after trying to read firmware
  • mdev: extend debug logging output
  • mdev: improve $SEQ handling; improve debug logging
  • mkfs_minix: use get_volume_size_in_bytes instead of local version
  • nc: don't redirect stderr to network in -e PROG mode
  • nc: exit when both stdin and network are closed.
  • nc: fix build failure ("subscripted value is neither array nor pointer")
  • nc: remove some dead code
  • nc: remove unnecessary "errno = 0"
  • nc: use symbolic SHUT_WR instead of literal 1
  • nc_bloaty: support -ll and -lk. Closes 2245
  • nslookup: set default DNS server again. Hopefully helps with 675
  • ntpd: do not invalidate datapoints after step
  • ntpd: drop delay outliers; run "unsync" handler if no replies for some time
  • ntpd: let user know if spike was detected
  • ntpd: make "unsync" code actually work.
  • ntpd: promote log level 3 to production
  • ntpd: set G.last_script_run even if script isn't configured
  • ntpd: set offset to 0.0 in "usync" event
  • ntpd: speed up resyncing if our clock is seriously off
  • ping[6]: accept and ignore -n. Code shrink
  • ps: fix sscanf format specifier (%l); make uptime unsigned
  • ps: seconds_since_boot: uint64_t -> ulong
  • pstree: fix theoretically unsafe code
  • rfkill: use new-style config/kbuild/applet
  • rpm: make -ql display more compatible; improve help text
  • rpm: stop using statics; move main() to the end of the source file
  • rpm: unmap rpm file before working with next one
  • rpm: use "create+rename" method of replacing existing files
  • run-parts: stop providing incompatible short options
  • sed: document where we are more liberal then GNU
  • sed: fix "sed clusternewline" testcase
  • sed: fix matching of newlines by $
  • sed: fix memory leak in 'r FILE' command
  • sed: open input files sequentially to avoid EMFILE
  • sed: remove now-redundant backslash-newline handling
  • stty: disable CIBAUD leak check - it is not necessary on Linux
  • sulogin: use common password-checking routine
  • tail: track file size only in -f mode
  • tar: add a testcase for previous commit
  • tar: fix exitcode check for MMU-spawned unpacking helpers
  • tar: prevent empty file to be treated as valid tarball
  • testsuite: fix false positives for du
  • touch: add conditional support for -h
  • ubi_tools: add forgotten argv++
  • ubi_tools: enhance -s option to allow size multiplier to match mtd-utils
  • ubi_tools: extend supported volume size to 64 bits; shrink code
  • udhcpc6: fix port numbers used if !FEATURE_UDHCP_PORT
  • udhcpc: allow zero server-id. Closes 6614.
  • udhcpc: fix a problem with binary-encoded options #2
  • udhcpd: add -I LOCAL_ADDR option
  • unicode: check $LC_ALL to detect Unicode mode, not only $LANG
  • unicode: check $LC_CTYPE too to detect Unicode mode
  • unpackers: by users' request, print compression percentage if -v and DESKTOP
  • unzip: increase PEEK_FROM_END from 16k to 64k
  • unzip: survive lack of CDF on non-streaming zip files
  • vasprintf: do not use xmalloc, it will deadlock on OOM
  • vasprintf: return -1 on strdup failure
  • vi: make regexp search case-insensitive if ":set ignorecase" is active
  • volume_id_internal.h: drop unoptimized byteswap routines
  • wall: access FILE under real user's credentials
  • wget: do not abort if "_" is encountered in a HTTP header
  • zcat: fix "zcat FILE" trying to do detection twice
  • zcat: if seamless uncompressors are defined, autodetect file's format
  • Flemming Madsen:
  • ash,hush: history builtin
  • Guilherme Maciel Ferreira (2):
  • traceroute: free some memory allocated by xzalloc()
  • wget: if FEATURE_CLEAN_UP, free(ptr_to_globals)
  • James Hogan:
  • grep: fix grep -x to not set REG_NOSUB
  • Jeremy Kerr:
  • udhcp: add PXELINUX config file option (code 209) definition
  • Jody Bruchon:
  • fdisk: fix GPT size math errors
  • Johannes Stezenbach:
  • udhcpc: make DHCP packets to have at least 300 DHCP bytes
  • John Spencer:
  • man: find posix man pages
  • Jonathan Liu:
  • sulogin: allow system maintenance login if root password is empty
  • Kang Kai:
  • testsuite/du/du-k-works: fix false positive
  • Kuleshov Aleksey:
  • arp: fix -H/-t handling.
  • Lasse Collin (11):
  • xz: omit explicit \0 from HEADER_MAGIC
  • xz: update README
  • xz: avoid "NOTE:" in xz.h
  • xz: add a comment about using uint32_t as vli_type
  • xz: make bcj_x86_test_msbyte() an inline function
  • xz: remove an empty line from xz_dec_lzma2.c
  • xz: add C++ support to xz.h
  • xz: fix decoding of LZMA2 streams having no uncompressed data.
  • xz: fix incorrect XZ_BUF_ERROR
  • xz: mention xzminidec.c in README
  • xz: support concatenated .xz streams
  • Lauri Kasanen (2):
  • wget: add support for connect timeout
  • wget: user-friendly fallback to http
  • Leonid Lisovskiy:
  • xz: fix put_unaligned_{l,b}e32
  • Malek Degachi:
  • fstrim: New applet
  • Mandeep Singh Baines:
  • losetup: fix util-linux compatibility
  • Michael Tokarev (4):
  • fix bashisms in testsuite/
  • expand: use printable_string instead of hard-coding implementation
  • do not fail build if MAXSYMLINKS isn't defined
  • hostname: do not use gethostbyname() for "hostname -s"
  • Mike Frysinger (12):
  • udhcpc: support resolv.conf symlinks
  • udhcpc: tweak math shell style with the metric var
  • bbunzip: ignore the -q flag with the decompressors
  • bbunzip: fix order of flags vs bit defines
  • archival: note implicit dependencies between lzop & bbunzip
  • udhcpc: use readlink rather than realpath
  • platform: use KERNEL_VERSION to simplify uClibc version checking
  • readlink: uClibc supports automatic allocation too now
  • readlink: note that our -f is really -e
  • pstree: stop truncating thread names
  • md5/sha512: fix strict aliasing warnings
  • trylink: only prefix libs with -l
  • Nicolas Dichtel:
  • networking: fix potential overflow in ife_print6()
  • Nikolaus Voss:
  • mdev: use $DEVNAME in uevent sysfs file for device node name
  • Oliver Metz:
  • volume_id: fix ntfs attribute search
  • Patrick McHardy:
  • ip link: add VLAN support
  • Paul B. Henson (2):
  • ubimkvol: add -m option to create volume of maximum size
  • ubi_tools: fix typo in strcpy
  • Paulius Zaleckas:
  • init: don't srop unterminated processes' entries during inittab reload
  • Peter Korsgaard (3):
  • run-parts: add --exit-on-error | -e support
  • run-parts: fix unicode creep in --help
  • ar: read_num(): fix reading fields using the entire width
  • Rich Felker:
  • *: change execl sentinels from NULL to (char*)0
  • Ron Yorston:
  • vi: fix adjustment of buffer on partial file read
  • Ryan Mallon (2):
  • libbb: Add xsetegid(), xseteuid(), xopen_as_uid_gid() functions
  • wall,crontab: use xopen_as_uid_gid()
  • SASAKI Suguru:
  • tar: fix tar -T to add entries in the exact order as the input list
  • Shawn J. Goff:
  • lineedit: initialize delptr
  • Stefan Hellermann (2):
  • ash: move code to allow setting $HOME in /etc/profile
  • ash: read $HOME/.profile instead of $(pwd)/.profile
  • Sven-Göran Bergh (5):
  • volume_id: Adopt to new kbuild style.
  • volume_id: Adopt to new config style.
  • volume_id: nilfs config description.
  • volume_id: add f2fs detection
  • awk: optionally support -e AWK_PROG
  • Thomas De Schampheleire (2):
  • nameif: fix use-after-free in ENABLE_FEATURE_CLEAN_UP code
  • lsof: correct check for symbolic link
  • Thomas Petazzoni:
  • libbb: use instead of
  • Tito Ragusa (2):
  • ifplugd: use a larger netlink buffer
  • swapon: support "pri=NNN" in fstab
  • Uros Vampl:
  • killall5: return 2 if no processes got killed
  • Yuan-Hsiang Lee:
  • init: fix illegal memory access when max message length is reached

New in version 1.21.1 (July 1st, 2013)

  • 1.21.1 has fixes for ntfs detection (big-endian fix), xz decompression of concatenated streams, mdev acquired a [ENV=regex;] extension instead of undocumented subsystem match hack it used to have prior to 1.21.x.

New in version 1.19.4 (February 6th, 2012)

  • Bug fix release. 1.19.4 has fixes for getty (build fix for systems without CBAUD), mdev (error in mdev.seq handling if sequence number is >999), modinfo (made it select PLATFORM_LINUX), wget (fixed use-after-free on redirect).

New in version 1.19.3 (November 29th, 2011)

  • Bug fix release. 1.19.3 has fixes for build system, chpasswd, crond, inetd (fix open fd leak), syslogd (fix problem with in-memory log buffer), tail (fix for 'tail: -c +N' with large N), tftp (made mode check case-insensitive).

New in version 1.18.4 (June 9th, 2011)

  • Bug fix release. 1.18.4 has fixes for cksum, klogd (fix "delayed" death on signals), modutils (handling of spaces in module arguments for Linux 2.4), wget (fix for downloads encoded using chunked encoding), build system fix for "make install" and "make menuconfig".

New in version 1.17.3 (October 11th, 2010)

  • Bug fix release. 1.17.3 has fixes for ip (build fix for older systems), hush (fix for handlind of backslashes in unquoted $var expansion), line editing (fixed handling of EIO error and tab expansion for non-ASCII filenames).

New in version 1.17.2 (August 31st, 2010)

  • Bug fix release. 1.17.2 has fixes for build system (now works with make 3.82), grep (zero length match could loop forever with -o), mdev (/dev nodes were never deleted), mktemp (fix for patterns with slashes), sed (fixes to -i option and N command), shell ($! was sometimes set to a wrong value; ulimit without both -H and -S now sets both hard and soft limits)
  • Patch applet is completely replaced by a more capable implementation from toybox (Rob Landley's code). Aboriginal Linux needs it.

New in version 1.17.0 (July 7th, 2010)

  • New applets:
  • conspy by Pascal Bellard (pascal.bellard AT ads-lu.com),
  • rev by Marek Polacek (mmpolacek AT gmail.com),
  • ubiattach,ubidetach by Baruch Siach (baruch AT tkos.co.il),
  • modinfo by Pascal Bellard (pascal.bellard AT ads-lu.com),
  • fgconsole by Grigory Batalov (bga AT altlinux.org),
  • fkill by Souf Oued (souf_oued AT yahoo.fr),
  • flock by Timo Teras (timo.teras AT iki.fi),
  • smemcap, bootchartd, unxz (complete with xzcat and xz -d aliases)
  • Other changes:
  • build system: make it possible to have include/applets.h-esque entries in .c files, to keep Config/Kbuild snippets in *.c files, to keep usage texts in .c files
  • build system: gold may not support --sort-common (yet)
  • unicode: support for it is significantly improved, by Tomas Heinrich (heinrich.tomas AT gmail.com)
  • libbb: teach tar et. al. to understand .xz
  • libbb: fix bb_ask() to operate on correct fd
  • libbb: locate PAGE_SIZE on Hurd
  • libbb: make index_in_substrings return -1 on ambiguous matches
  • libbb/copyfd.c: don't mmap a largish buffer if we only want to copy a few kb
  • libbb/read_key: fix buffer length calculation
  • *: hurd compat fixes by Jérémie Koenig (jk AT jk.fr.eu.org)
  • *: s/"/bin/sh"/DEFAULT_SHELL by Ladislav Michl (Ladislav.Michl AT seznam.cz)
  • ash,hush: make it possible to alias one of shells to "bash"
  • ash,hush: make "source" a synonym for . if bash compat is on
  • ash,hush: make bare "." set exitcode to 2
  • ash: FILE does not truncate FILE anymore. By Andreas Bühmann (buehmann AT users.berlios.de)
  • ash: fix ". EMPTY_FILE" exitcode
  • ash: fix bug which causes signal6.tests to fail
  • ash: fix SEGV on empty command with redirection (bug 1087). Fix by Leonid (lly.dev AT gmail.com)
  • ash: fix cubic matching slowdown is ${v/*foo*/repl} (really bad one)
  • ash: fix obscure case of replacing + globbing + backslashes
  • ash: fix redirection of fd 0 in scripts are sourced from interactive ash
  • ash: fix signal5.tests
  • ash: fix unset in standalone mode
  • ash: fix var_leak testcase
  • ash: fix var_leak.tests so that it actually catches the NOFORK bug
  • ash: refresh stack pointers after makestrspace in rmescapes. By Colin Watson (cjwatson AT ubuntu.com)
  • ash: make trap with bad signal name not abort
  • ash: use CONFIG_FEATURE_EDITING_MAX_LEN
  • hush: fix "hush -c 'echo $#'" showing -1
  • hush: fix a=abc; c=c; echo ${a%${c}}
  • hush: fix hush -c 'echo $0' - was showing empty string
  • hush: fix hush-bugs/parse_err.tests
  • hush: fix more obscure ${var%...} cases
  • hush: fix segfault in ${?:N:M}
  • hush: fix var=`exit 2` not setting $? to 2
  • hush: handle expansions in ${var?expanded_word} constructs
  • hush: optional support for ${var:N:M} bashism
  • hush: support "cd -- DIR" and other such double-dash constructs in builtins
  • hush: support ${var:EXPR:EXPR}
  • hush: use ash's ulimit builtin; make it more more bash-like while at it
  • adduser: copy /etc/skel to mew homes. +100 bytes
  • ar: add archive creation support. By Alexander Shishkin (virtuoso AT slind.org)
  • ar: fix a regression: "ar t arch.a" stopped showing files. By Nguyá»…n Thái Ngọc Duy (pclouds AT gmail.com)
  • awk: be more paranoid when freeing loop variable; make code less obfuscated
  • awk: don't append bogus data after NUL in sub()
  • awk: fix the case where nested "for" loops with the same variable misbehave
  • awk: skip whitespace between array name and subscript. By Alexander Shishkin (virtuoso AT slind.org)
  • beep: the -d option takes milliseconds, not microseconds. By Natanael Copa (natanael.copa AT gmail.com)
  • brctl: fix parsing of timespec to allow 0 (setfd, sethello..), fix stp parameters incompatibility. By Maciek Borzecki (maciek.borzecki AT gmail.com)
  • busybox --list option. +140 bytes. Rob wanted it
  • cmp: ifdefectomy by Rob Landley (rob AT landley.net)
  • cpio: "NNN blocks" message should go to stderr. By Matheus Izvekov (mizvekov AT gmail.com)
  • cttyhack: don't do anything if ctty is already available
  • data_extract_all(): do not chmod symlink. Closes bug 2053
  • date,touch: accept "Jan 7 00:00:00 2010" format. By Alexander Shishkin (virtuoso AT slind.org)
  • date: optional support for %N. Closes bug 1861
  • date: support -d @SECONDS_SINCE_1970
  • devmem: map two pages only if it is necessary
  • dnsd: add -s option. This allows (clumsy) operation with real DNS servers
  • dnsd: enforce alignment on packet buffer
  • dnsd: fix one big-endian goof; add a TODO about RA bit
  • dnsd: fix unaligned access problem
  • dpkg: add support for lzma compression, by Pascal Bellard (pascal.bellard AT ads-lu.com)
  • dpkg: better check for validity of options
  • dpkg: support config file overwrite options. By Kim B. Heino (Kim.Heino AT bluegiga.com)
  • dpkg: enable tar compability even if tar applet is not enabled
  • [un]expand: account for different character widths
  • fbsplash: reinstate drawing of over/undersized images
  • fdisk: do not treat names ending in '0' as partitions
  • fdisk: make 'b' command optionally adjust C/H/S; "fdisk IMAGE_FILE" sets cylinders
  • find: fix -name matching for dotfiles. -1 byte
  • ftpd: work around LIST -aXYZ too, not only LIST -lXYZ
  • fuser: fix default signal, exitcode and PID display. By Maksym Kryzhanovskyy (xmaks AT email.cz)
  • getty: do not emit bogus error message on EOF
  • grep: fix -Fi. By Ian Wienand (ianw AT vmware.com)
  • grep: make -w support unconditional
  • gunzip: inflate_codes(): add fix from upstream gzip to prevent false CRC error
  • head,tail: make suffixes unconditional for head too
  • hexdump: fix "hexdump NONEXISTENT_FILE" handling
  • hexdump: make -s 0xNNNNN work
  • httpd: fix proxy mode bug (annoying but harmless)
  • ifconfig: do not truncate interface names. Closes bug 1795
  • ifdown: use /var/run/udhcpc.%iface%.pid only if it exists
  • ifplugd: more robust interface name match check
  • ifplugd: replace potentially-leaking setenv with malloc/putenv/free
  • init: clear utmp entries for dead processes, if they (entries) exist
  • ip a: fix SEGV if "dev IFACE" is not specified
  • ip addr/rule/tunnel: unify parsing args. By Bernhard Reutner-Fischer (rep.dot.nop AT gmail.com)
  • ip link: add qlen. By Bernhard Reutner-Fischer (rep.dot.nop AT gmail.com)
  • ipaddress: print OPERSTATEs and NO-CARRIER. By Bernhard Reutner-Fischer (rep.dot.nop AT gmail.com)
  • ipcalc: more correct checking for proper number of arguments
  • iplink: support add/delete. By Bernhard Reutner-Fischer (rep.dot.nop AT gmail.com)
  • loadfont/setfont: optional PSF2 font support
  • loop: correct minor device number limit
  • losetup: support /dev/loop10 and higher. Closes bug 1627
  • lsusb: 2.6.32 compat. By Souf Oued (souf_oued AT yahoo.fr)
  • mdev: add "!" syntax support
  • mdev: fix a SEGV when subsystem is not known
  • mdev: fix subsystem passing (new kernels broke it again). Closes bugs 639, 721
  • mkswap: support [KBYTES] parameter
  • mkXXXX: unify [KBYTES] parameter handling
  • mkfs_ext2: fix handling of -I argument. By Bernhard Reutner-Fischer (rep.dot.nop AT gmail.com)
  • mktemp: be more compatible: bare "mktemp" creates tempfile in /tmp, not cwd
  • modinfo: needs DEFAULT_MODULES_DIR and DEFAULT_DEPMOD_FILE
  • modinfo: support relative paths in modules.dep
  • modprobe: add support for -l and -s. By Pascal Bellard (pascal.bellard AT ads-lu.com)
  • modprobe: pick up module options from /proc/cmdline too
  • modprobe: remove 2k limit on /proc/cmdline
  • modutils-24: [mips] modutlis-24 segfault fix for 2.4 kernel modules, by Ralf Rösch (ralf.roesch AT rw-gmbh.de)
  • mount: add an optional capability to create new /dev/loopN as needed. By Lauri Kasanen (curaga AT operamail.com)
  • mount: fix a case when sometimes error message is not printed
  • mount: handle EDQUOT > 255 properly. Closes bug 1579
  • nc: introduce CONFIG_NC_110_COMPAT option
  • tftp/tftp: make tftp/tftpd-related options less confusing in config. Closes bug 2017
  • ntpd: step correction to variables had wrong sign, fixing
  • passwd: make 'echo -e "foo\nfoo" | passwd USER' work
  • ping: do not leak data from stack
  • provide safe_gethostname() for non-linux systems
  • ps: fix non-DESKTOP option handling code
  • ps: make "ps -o BAD" emit list of good -o params
  • rpm: use open_zipped's logic (factored out into setup_unzip_on_fd())
  • rpm: make rpm -i SRPM.rpm install it to surrent dir
  • rpm2cpio: teach it to understand xz format
  • sed: fix a case when one-line range matches past lines. Closes bug 1867
  • sed: fix a command with multiple trailing backslashes
  • sed: fix c cmd
  • sed: fix nested {} case
  • setkeycodes: fix handling of 0exx scancodes
  • setsid: check for setsid error directly
  • shaNNNsum: accept and ignore -b and -t
  • stat: make output more similar to GNU stat. By Seb (sbb AT tuxfamily.org)
  • swapon: skip noauto entries. By Lauri Kasanen (curaga AT operamail.com)
  • syslogd: allow multiple -R options. By Thomas Geulig (geulig AT nentec.de)
  • syslogd: remove stray umask(0) - was giving log files bad mode
  • syslogd: make maximum message length configurable. By Janne Kiviluoto (janne.kiviluoto AT bluegiga.com)
  • tail: document FANCY flags in helptext
  • tar: fix "hardlinks to symlinks chown" bug 1519
  • tar: fix mishandling of repeated hardlink in tarball
  • tar: make typical extraction less memory-hungry
  • tar: optional support for --to-command. By Ladislav Michl (Ladislav.Michl AT seznam.cz)
  • tar: optional support for restoring selinux context. By J. Tang (tang AT jtang.org)
  • tar: support GNU 256-bit encoding in all numeric fields
  • telnet: prevent SEGV if we are requested TELOPT_NEW_ENVIRON
  • telnetd: fill hostname field in utmp/wtmp records
  • telnetd: write LOGIN/DEAD_PROCESS utmp records. Closes bug 1363
  • test: "" is not a valid number. Closes bug 1915
  • tftp: do not show progress bar if we get error right away. +13 bytes
  • tftp: increase initial retry timeout from 50 to 100 ms
  • tftp: make message about 512 byte block less confusing
  • tftpd: fix file creation with bogus mode. Closes bug 1021
  • top: make 's' display easier to understand
  • touch: do not ignore argument of -d/-t option. By Mikhail Gusarov (dottedmag AT dottedmag.net)
  • udhcp: abort if we see unknown option, and show valid options if so
  • udhcp: disable time and log server options
  • udhcp: fix DNS domain codec bug: bad compression flag checks
  • udhcp: handle errors in read_staticlease
  • udhcp: implement "raw" binary options. Closes bug 735
  • udhcp: remove support for some really old and odd options
  • udhcp: s/sipservers/sipsrv/ to match other similar option names
  • udhcp: we call DNS name encoder with NULL, this can SEGV. added a check
  • udhcp: truncate packets instead of padding them to 574 bytes. Closes bug 1849
  • udhcpc: add -x OPT:VAL option
  • udhcpc: make it possible to disable vendor id
  • udhcpd: apparently, sometimes IP is in ciaddr, not requested_ip
  • udhcpd: fix -v/-P mixup
  • udhcpd: fix daemonize crash on nommu systems. By Mike Frysinger (vapier AT gentoo.org)
  • udhcpd: fix hostname truncation bug 1663
  • udhcpd: support decoding of option 120 "SIP servers". Closes bug 737
  • udhcpd: untangle incredibly messy handling of DHCPREQUEST
  • unexpand: fix "a b"\n" input case. By Tomas Heinrich (heinrich.tomas AT gmail.com)
  • unlzma: add "lzma -d" alias, add -t support, rename lzmacat to lzcat
  • unzip: restore unix file mode if possible. Closes bug 1045
  • unzip: improve handling of stream ZIP files
  • vi: save/restore errno in signal handlers
  • vi: discover window size even on serial consoles (optional)
  • vi: fix "set ic" command. Closes bug 1765
  • vi: fix NUM + "$" handling
  • volume_id/linux_swap: detect suspended image signatures too
  • wc: compat: make "wc -c ONE_FILE" not print leading spaces. +2 bytes
  • wget: fix bug 1057 "busybox wget segfaults with http_proxy environment set"
  • wget: ignore --no-check-certificate
  • who: fix attempts to open '/dev/dev/ttyX'; make columns a bit wider, add -H
  • xargs: bump default -sNUM up to 32k. Use sysconf() to trim it down if necessary
  • xargs: make -s NUM accept practically unlimited range