busybox: update to 1.26.2
authorMagnus Kroken <mkroken@gmail.com>
Sun, 15 Jan 2017 01:21:41 +0000 (02:21 +0100)
committerFelix Fietkau <nbd@nbd.name>
Sun, 29 Jan 2017 13:09:38 +0000 (14:09 +0100)
Refresh patches, delete patches that have been applied upstream.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [fix defaults]
31 files changed:
package/utils/busybox/Config-defaults.in
package/utils/busybox/Makefile
package/utils/busybox/config/Config.in
package/utils/busybox/config/archival/Config.in
package/utils/busybox/config/console-tools/Config.in
package/utils/busybox/config/coreutils/Config.in
package/utils/busybox/config/findutils/Config.in
package/utils/busybox/config/init/Config.in
package/utils/busybox/config/libbb/Config.in
package/utils/busybox/config/mailutils/Config.in
package/utils/busybox/config/miscutils/Config.in
package/utils/busybox/config/modutils/Config.in
package/utils/busybox/config/networking/Config.in
package/utils/busybox/config/networking/udhcp/Config.in
package/utils/busybox/config/procps/Config.in
package/utils/busybox/config/runit/Config.in
package/utils/busybox/config/selinux/Config.in
package/utils/busybox/config/shell/Config.in
package/utils/busybox/config/sysklogd/Config.in
package/utils/busybox/config/util-linux/Config.in
package/utils/busybox/config/util-linux/volume_id/Config.in
package/utils/busybox/patches/002-libbb-send_to_from-do-not-require-that-to-should-hav.patch [deleted file]
package/utils/busybox/patches/102-trylink_mktemp_fix.patch [deleted file]
package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch
package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch
package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch
package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch
package/utils/busybox/patches/240-telnetd_intr.patch
package/utils/busybox/patches/250-date-k-flag.patch
package/utils/busybox/patches/302-netlink-alignment.patch [deleted file]
package/utils/busybox/patches/303-ip-route-fix-high-table-ids.patch [deleted file]

index 11cce03..141f08e 100644 (file)
@@ -16,15 +16,6 @@ config BUSYBOX_DEFAULT_USE_PORTABLE_CODE
 config BUSYBOX_DEFAULT_PLATFORM_LINUX
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_BUFFERS_USE_MALLOC
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_ON_STACK
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_IN_BSS
-       bool
-       default n
 config BUSYBOX_DEFAULT_SHOW_USAGE
        bool
        default y
@@ -43,45 +34,9 @@ config BUSYBOX_DEFAULT_FEATURE_INSTALLER
 config BUSYBOX_DEFAULT_INSTALL_NO_USR
        bool
        default n
-config BUSYBOX_DEFAULT_LOCALE_SUPPORT
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_SUPPORT
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_USING_LOCALE
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV
-       bool
-       default n
-config BUSYBOX_DEFAULT_SUBST_WCHAR
-       int
-       default 0
-config BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR
-       int
-       default 0
-config BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
-       bool
-       default n
 config BUSYBOX_DEFAULT_PAM
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
-       bool
-       default n
 config BUSYBOX_DEFAULT_LONG_OPTS
        bool
        default y
@@ -163,6 +118,30 @@ config BUSYBOX_DEFAULT_EXTRA_LDFLAGS
 config BUSYBOX_DEFAULT_EXTRA_LDLIBS
        string
        default ""
+config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS
+       bool
+       default y
+config BUSYBOX_DEFAULT_INSTALL_APPLET_HARDLINKS
+       bool
+       default n
+config BUSYBOX_DEFAULT_INSTALL_APPLET_SCRIPT_WRAPPERS
+       bool
+       default n
+config BUSYBOX_DEFAULT_INSTALL_APPLET_DONT
+       bool
+       default n
+config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SYMLINK
+       bool
+       default n
+config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_HARDLINK
+       bool
+       default n
+config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER
+       bool
+       default n
+config BUSYBOX_DEFAULT_PREFIX
+       string
+       default "./_install"
 config BUSYBOX_DEFAULT_DEBUG
        bool
        default n
@@ -187,34 +166,19 @@ config BUSYBOX_DEFAULT_DMALLOC
 config BUSYBOX_DEFAULT_EFENCE
        bool
        default n
-config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS
-       bool
-       default y
-config BUSYBOX_DEFAULT_INSTALL_APPLET_HARDLINKS
-       bool
-       default n
-config BUSYBOX_DEFAULT_INSTALL_APPLET_SCRIPT_WRAPPERS
-       bool
-       default n
-config BUSYBOX_DEFAULT_INSTALL_APPLET_DONT
-       bool
-       default n
-config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SYMLINK
+config BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL
        bool
        default n
-config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_HARDLINK
+config BUSYBOX_DEFAULT_FEATURE_RTMINMAX
        bool
        default n
-config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER
+config BUSYBOX_DEFAULT_FEATURE_BUFFERS_USE_MALLOC
        bool
        default n
-config BUSYBOX_DEFAULT_PREFIX
-       string
-       default "./_install"
-config BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL
+config BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_ON_STACK
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_RTMINMAX
+       default y
+config BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_IN_BSS
        bool
        default n
 config BUSYBOX_DEFAULT_PASSWORD_MINLEN
@@ -268,12 +232,48 @@ config BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT
 config BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL
        bool
        default n
+config BUSYBOX_DEFAULT_LOCALE_SUPPORT
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_SUPPORT
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_USING_LOCALE
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV
+       bool
+       default n
+config BUSYBOX_DEFAULT_SUBST_WCHAR
+       int
+       default 0
+config BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR
+       int
+       default 0
+config BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
+       bool
+       default n
+config BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
+       bool
+       default n
 config BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP
        bool
        default y
 config BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE
        bool
        default n
+config BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
+       bool
+       default n
 config BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB
        int
        default 4
@@ -319,24 +319,36 @@ config BUSYBOX_DEFAULT_UNCOMPRESS
 config BUSYBOX_DEFAULT_GUNZIP
        bool
        default y
+config BUSYBOX_DEFAULT_ZCAT
+       bool
+       default y
 config BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS
        bool
        default n
 config BUSYBOX_DEFAULT_BUNZIP2
        bool
        default y
+config BUSYBOX_DEFAULT_BZCAT
+       bool
+       default y
 config BUSYBOX_DEFAULT_UNLZMA
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
+config BUSYBOX_DEFAULT_LZCAT
        bool
        default n
 config BUSYBOX_DEFAULT_LZMA
        bool
        default n
+config BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
+       bool
+       default n
 config BUSYBOX_DEFAULT_UNXZ
        bool
        default n
+config BUSYBOX_DEFAULT_XZCAT
+       bool
+       default n
 config BUSYBOX_DEFAULT_XZ
        bool
        default n
@@ -358,9 +370,6 @@ config BUSYBOX_DEFAULT_DPKG
 config BUSYBOX_DEFAULT_DPKG_DEB
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_DPKG_DEB_EXTRACT_ONLY
-       bool
-       default n
 config BUSYBOX_DEFAULT_GZIP
        bool
        default y
@@ -376,6 +385,12 @@ config BUSYBOX_DEFAULT_FEATURE_GZIP_LEVELS
 config BUSYBOX_DEFAULT_LZOP
        bool
        default n
+config BUSYBOX_DEFAULT_UNLZOP
+       bool
+       default n
+config BUSYBOX_DEFAULT_LZOPCAT
+       bool
+       default n
 config BUSYBOX_DEFAULT_LZOP_COMPR_HIGH
        bool
        default n
@@ -427,9 +442,45 @@ config BUSYBOX_DEFAULT_UNZIP
 config BUSYBOX_DEFAULT_BASENAME
        bool
        default y
+config BUSYBOX_DEFAULT_CAL
+       bool
+       default n
 config BUSYBOX_DEFAULT_CAT
        bool
        default y
+config BUSYBOX_DEFAULT_CATV
+       bool
+       default n
+config BUSYBOX_DEFAULT_CHGRP
+       bool
+       default y
+config BUSYBOX_DEFAULT_CHMOD
+       bool
+       default y
+config BUSYBOX_DEFAULT_CHOWN
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS
+       bool
+       default n
+config BUSYBOX_DEFAULT_CHROOT
+       bool
+       default y
+config BUSYBOX_DEFAULT_CKSUM
+       bool
+       default n
+config BUSYBOX_DEFAULT_COMM
+       bool
+       default n
+config BUSYBOX_DEFAULT_CP
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS
+       bool
+       default n
+config BUSYBOX_DEFAULT_CUT
+       bool
+       default y
 config BUSYBOX_DEFAULT_DATE
        bool
        default y
@@ -457,168 +508,81 @@ config BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS
 config BUSYBOX_DEFAULT_FEATURE_DD_STATUS
        bool
        default n
-config BUSYBOX_DEFAULT_HOSTID
-       bool
-       default n
-config BUSYBOX_DEFAULT_ID
+config BUSYBOX_DEFAULT_DF
        bool
        default y
-config BUSYBOX_DEFAULT_GROUPS
-       bool
-       default n
-config BUSYBOX_DEFAULT_SHUF
-       bool
-       default n
-config BUSYBOX_DEFAULT_STAT
+config BUSYBOX_DEFAULT_FEATURE_DF_FANCY
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT
+config BUSYBOX_DEFAULT_DIRNAME
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM
+       default y
+config BUSYBOX_DEFAULT_DOS2UNIX
        bool
        default n
-config BUSYBOX_DEFAULT_SYNC
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY
+config BUSYBOX_DEFAULT_UNIX2DOS
        bool
        default n
-config BUSYBOX_DEFAULT_TEST
+config BUSYBOX_DEFAULT_DU
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TEST_64
+config BUSYBOX_DEFAULT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K
        bool
        default y
-config BUSYBOX_DEFAULT_TOUCH
+config BUSYBOX_DEFAULT_ECHO
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3
+config BUSYBOX_DEFAULT_FEATURE_FANCY_ECHO
        bool
        default y
-config BUSYBOX_DEFAULT_TR
+config BUSYBOX_DEFAULT_ENV
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TR_CLASSES
+config BUSYBOX_DEFAULT_FEATURE_ENV_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_TR_EQUIV
+config BUSYBOX_DEFAULT_EXPAND
        bool
        default n
-config BUSYBOX_DEFAULT_TRUNCATE
+config BUSYBOX_DEFAULT_FEATURE_EXPAND_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_UNLINK
+config BUSYBOX_DEFAULT_UNEXPAND
        bool
        default n
-config BUSYBOX_DEFAULT_BASE64
+config BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_WHO
+config BUSYBOX_DEFAULT_EXPR
        bool
-       default n
-config BUSYBOX_DEFAULT_USERS
+       default y
+config BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64
        bool
-       default n
-config BUSYBOX_DEFAULT_CAL
+       default y
+config BUSYBOX_DEFAULT_FALSE
        bool
-       default n
-config BUSYBOX_DEFAULT_CATV
+       default y
+config BUSYBOX_DEFAULT_FOLD
        bool
        default n
-config BUSYBOX_DEFAULT_CHGRP
+config BUSYBOX_DEFAULT_FSYNC
        bool
        default y
-config BUSYBOX_DEFAULT_CHMOD
+config BUSYBOX_DEFAULT_HEAD
        bool
        default y
-config BUSYBOX_DEFAULT_CHOWN
+config BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS
+config BUSYBOX_DEFAULT_HOSTID
        bool
        default n
-config BUSYBOX_DEFAULT_CHROOT
+config BUSYBOX_DEFAULT_ID
        bool
        default y
-config BUSYBOX_DEFAULT_CKSUM
-       bool
-       default n
-config BUSYBOX_DEFAULT_COMM
-       bool
-       default n
-config BUSYBOX_DEFAULT_CP
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS
-       bool
-       default n
-config BUSYBOX_DEFAULT_CUT
-       bool
-       default y
-config BUSYBOX_DEFAULT_DF
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_DF_FANCY
-       bool
-       default n
-config BUSYBOX_DEFAULT_DIRNAME
-       bool
-       default y
-config BUSYBOX_DEFAULT_DOS2UNIX
-       bool
-       default n
-config BUSYBOX_DEFAULT_UNIX2DOS
-       bool
-       default n
-config BUSYBOX_DEFAULT_DU
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K
-       bool
-       default y
-config BUSYBOX_DEFAULT_ECHO
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_FANCY_ECHO
-       bool
-       default y
-config BUSYBOX_DEFAULT_ENV
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_ENV_LONG_OPTIONS
-       bool
-       default n
-config BUSYBOX_DEFAULT_EXPAND
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_EXPAND_LONG_OPTIONS
-       bool
-       default n
-config BUSYBOX_DEFAULT_EXPR
-       bool
-       default y
-config BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64
-       bool
-       default y
-config BUSYBOX_DEFAULT_FALSE
-       bool
-       default y
-config BUSYBOX_DEFAULT_FOLD
+config BUSYBOX_DEFAULT_GROUPS
        bool
        default n
-config BUSYBOX_DEFAULT_FSYNC
-       bool
-       default y
-config BUSYBOX_DEFAULT_HEAD
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD
-       bool
-       default y
 config BUSYBOX_DEFAULT_INSTALL
        bool
        default n
@@ -661,6 +625,21 @@ config BUSYBOX_DEFAULT_FEATURE_LS_COLOR_IS_DEFAULT
 config BUSYBOX_DEFAULT_MD5SUM
        bool
        default y
+config BUSYBOX_DEFAULT_SHA1SUM
+       bool
+       default n
+config BUSYBOX_DEFAULT_SHA256SUM
+       bool
+       default y
+config BUSYBOX_DEFAULT_SHA512SUM
+       bool
+       default n
+config BUSYBOX_DEFAULT_SHA3SUM
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK
+       bool
+       default y
 config BUSYBOX_DEFAULT_MKDIR
        bool
        default y
@@ -718,16 +697,7 @@ config BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS
 config BUSYBOX_DEFAULT_SEQ
        bool
        default y
-config BUSYBOX_DEFAULT_SHA1SUM
-       bool
-       default n
-config BUSYBOX_DEFAULT_SHA256SUM
-       bool
-       default y
-config BUSYBOX_DEFAULT_SHA512SUM
-       bool
-       default n
-config BUSYBOX_DEFAULT_SHA3SUM
+config BUSYBOX_DEFAULT_SHUF
        bool
        default n
 config BUSYBOX_DEFAULT_SLEEP
@@ -751,12 +721,27 @@ config BUSYBOX_DEFAULT_SPLIT
 config BUSYBOX_DEFAULT_FEATURE_SPLIT_FANCY
        bool
        default n
+config BUSYBOX_DEFAULT_STAT
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM
+       bool
+       default n
 config BUSYBOX_DEFAULT_STTY
        bool
        default n
 config BUSYBOX_DEFAULT_SUM
        bool
        default n
+config BUSYBOX_DEFAULT_SYNC
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY
+       bool
+       default n
 config BUSYBOX_DEFAULT_TAC
        bool
        default n
@@ -772,9 +757,42 @@ config BUSYBOX_DEFAULT_TEE
 config BUSYBOX_DEFAULT_FEATURE_TEE_USE_BLOCK_IO
        bool
        default y
+config BUSYBOX_DEFAULT_TEST
+       bool
+       default y
+config BUSYBOX_DEFAULT_TEST1
+       bool
+       default y
+config BUSYBOX_DEFAULT_TEST2
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_TEST_64
+       bool
+       default y
+config BUSYBOX_DEFAULT_TOUCH
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3
+       bool
+       default y
+config BUSYBOX_DEFAULT_TR
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_TR_CLASSES
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_TR_EQUIV
+       bool
+       default n
 config BUSYBOX_DEFAULT_TRUE
        bool
        default y
+config BUSYBOX_DEFAULT_TRUNCATE
+       bool
+       default n
 config BUSYBOX_DEFAULT_TTY
        bool
        default n
@@ -784,21 +802,21 @@ config BUSYBOX_DEFAULT_UNAME
 config BUSYBOX_DEFAULT_UNAME_OSNAME
        string
        default "GNU/Linux"
-config BUSYBOX_DEFAULT_UNEXPAND
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS
-       bool
-       default n
 config BUSYBOX_DEFAULT_UNIQ
        bool
        default y
+config BUSYBOX_DEFAULT_UNLINK
+       bool
+       default n
 config BUSYBOX_DEFAULT_USLEEP
        bool
        default n
 config BUSYBOX_DEFAULT_UUDECODE
        bool
        default n
+config BUSYBOX_DEFAULT_BASE64
+       bool
+       default n
 config BUSYBOX_DEFAULT_UUENCODE
        bool
        default n
@@ -808,6 +826,12 @@ config BUSYBOX_DEFAULT_WC
 config BUSYBOX_DEFAULT_FEATURE_WC_LARGE
        bool
        default n
+config BUSYBOX_DEFAULT_WHO
+       bool
+       default n
+config BUSYBOX_DEFAULT_USERS
+       bool
+       default n
 config BUSYBOX_DEFAULT_WHOAMI
        bool
        default n
@@ -826,15 +850,9 @@ config BUSYBOX_DEFAULT_FEATURE_AUTOWIDTH
 config BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK
-       bool
-       default y
 config BUSYBOX_DEFAULT_CHVT
        bool
        default n
-config BUSYBOX_DEFAULT_FGCONSOLE
-       bool
-       default n
 config BUSYBOX_DEFAULT_CLEAR
        bool
        default y
@@ -844,12 +862,30 @@ config BUSYBOX_DEFAULT_DEALLOCVT
 config BUSYBOX_DEFAULT_DUMPKMAP
        bool
        default n
+config BUSYBOX_DEFAULT_FGCONSOLE
+       bool
+       default n
 config BUSYBOX_DEFAULT_KBD_MODE
        bool
        default n
 config BUSYBOX_DEFAULT_LOADFONT
        bool
        default n
+config BUSYBOX_DEFAULT_SETFONT
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP
+       bool
+       default n
+config BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR
+       string
+       default ""
+config BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW
+       bool
+       default n
 config BUSYBOX_DEFAULT_LOADKMAP
        bool
        default n
@@ -871,15 +907,6 @@ config BUSYBOX_DEFAULT_SETCONSOLE
 config BUSYBOX_DEFAULT_FEATURE_SETCONSOLE_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_SETFONT
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP
-       bool
-       default n
-config BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR
-       string
-       default ""
 config BUSYBOX_DEFAULT_SETKEYCODES
        bool
        default n
@@ -889,12 +916,6 @@ config BUSYBOX_DEFAULT_SETLOGCONS
 config BUSYBOX_DEFAULT_SHOWKEY
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW
-       bool
-       default n
 config BUSYBOX_DEFAULT_MKTEMP
        bool
        default y
@@ -1081,10 +1102,10 @@ config BUSYBOX_DEFAULT_FEATURE_FIND_LINKS
 config BUSYBOX_DEFAULT_GREP
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_GREP_EGREP_ALIAS
+config BUSYBOX_DEFAULT_EGREP
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_GREP_FGREP_ALIAS
+config BUSYBOX_DEFAULT_FGREP
        bool
        default y
 config BUSYBOX_DEFAULT_FEATURE_GREP_CONTEXT
@@ -1120,6 +1141,12 @@ config BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_CONFIG_FILE
 config BUSYBOX_DEFAULT_HALT
        bool
        default y
+config BUSYBOX_DEFAULT_POWEROFF
+       bool
+       default y
+config BUSYBOX_DEFAULT_REBOOT
+       bool
+       default y
 config BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT
        bool
        default n
@@ -1285,28 +1312,28 @@ config BUSYBOX_DEFAULT_LSATTR
 config BUSYBOX_DEFAULT_TUNE2FS
        bool
        default n
-config BUSYBOX_DEFAULT_MODINFO
+config BUSYBOX_DEFAULT_MODPROBE_SMALL
        bool
        default n
-config BUSYBOX_DEFAULT_MODPROBE_SMALL
+config BUSYBOX_DEFAULT_DEPMOD
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
+config BUSYBOX_DEFAULT_INSMOD
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
+config BUSYBOX_DEFAULT_LSMOD
        bool
        default n
-config BUSYBOX_DEFAULT_INSMOD
+config BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
        bool
        default n
-config BUSYBOX_DEFAULT_RMMOD
+config BUSYBOX_DEFAULT_MODINFO
        bool
        default n
-config BUSYBOX_DEFAULT_LSMOD
+config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
+config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
        bool
        default n
 config BUSYBOX_DEFAULT_MODPROBE
@@ -1315,7 +1342,7 @@ config BUSYBOX_DEFAULT_MODPROBE
 config BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST
        bool
        default n
-config BUSYBOX_DEFAULT_DEPMOD
+config BUSYBOX_DEFAULT_RMMOD
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_2_4_MODULES
@@ -1354,154 +1381,148 @@ config BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR
 config BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE
        string
        default ""
-config BUSYBOX_DEFAULT_BLKDISCARD
+config BUSYBOX_DEFAULT_ACPID
        bool
        default n
-config BUSYBOX_DEFAULT_BLOCKDEV
+config BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT
        bool
        default n
-config BUSYBOX_DEFAULT_FATATTR
+config BUSYBOX_DEFAULT_BLKDISCARD
        bool
        default n
-config BUSYBOX_DEFAULT_FSTRIM
+config BUSYBOX_DEFAULT_BLKID
        bool
        default n
-config BUSYBOX_DEFAULT_MDEV
+config BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MDEV_CONF
+config BUSYBOX_DEFAULT_BLOCKDEV
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME
+config BUSYBOX_DEFAULT_DMESG
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP
+       default y
+config BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC
+       default y
+config BUSYBOX_DEFAULT_FATATTR
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE
+config BUSYBOX_DEFAULT_FBSET
        bool
        default n
-config BUSYBOX_DEFAULT_MOUNT
+config BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE
+       default n
+config BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE
+config BUSYBOX_DEFAULT_FDFORMAT
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL
+config BUSYBOX_DEFAULT_FDISK
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS
+config BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS
+config BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS
+       default n
+config BUSYBOX_DEFAULT_FEATURE_AIX_LABEL
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB
+       default n
+config BUSYBOX_DEFAULT_FEATURE_SGI_LABEL
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB
+       default n
+config BUSYBOX_DEFAULT_FEATURE_SUN_LABEL
        bool
        default n
-config BUSYBOX_DEFAULT_NSENTER
+config BUSYBOX_DEFAULT_FEATURE_OSF_LABEL
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS
+config BUSYBOX_DEFAULT_FEATURE_GPT_LABEL
        bool
        default n
-config BUSYBOX_DEFAULT_REV
+config BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED
        bool
        default n
-config BUSYBOX_DEFAULT_SETARCH
+config BUSYBOX_DEFAULT_FINDFS
        bool
        default n
-config BUSYBOX_DEFAULT_UEVENT
+config BUSYBOX_DEFAULT_FLOCK
        bool
        default n
-config BUSYBOX_DEFAULT_UNSHARE
+config BUSYBOX_DEFAULT_FDFLUSH
        bool
        default n
-config BUSYBOX_DEFAULT_ACPID
+config BUSYBOX_DEFAULT_FREERAMDISK
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT
+config BUSYBOX_DEFAULT_FSCK_MINIX
        bool
        default n
-config BUSYBOX_DEFAULT_BLKID
+config BUSYBOX_DEFAULT_FSTRIM
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE
+config BUSYBOX_DEFAULT_GETOPT
        bool
        default n
-config BUSYBOX_DEFAULT_DMESG
+config BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY
+       default n
+config BUSYBOX_DEFAULT_HEXDUMP
        bool
        default y
-config BUSYBOX_DEFAULT_FBSET
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY
+config BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE
+config BUSYBOX_DEFAULT_HD
        bool
        default n
-config BUSYBOX_DEFAULT_FDFLUSH
+config BUSYBOX_DEFAULT_HWCLOCK
        bool
-       default n
-config BUSYBOX_DEFAULT_FDFORMAT
+       default y
+config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_FDISK
+config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS
        bool
        default n
-config BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS
+config BUSYBOX_DEFAULT_IPCRM
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE
+config BUSYBOX_DEFAULT_IPCS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_AIX_LABEL
+config BUSYBOX_DEFAULT_LOSETUP
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_SGI_LABEL
+config BUSYBOX_DEFAULT_LSPCI
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_SUN_LABEL
+config BUSYBOX_DEFAULT_LSUSB
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_OSF_LABEL
+config BUSYBOX_DEFAULT_MDEV
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_GPT_LABEL
+config BUSYBOX_DEFAULT_FEATURE_MDEV_CONF
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED
+config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME
        bool
        default n
-config BUSYBOX_DEFAULT_FINDFS
+config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP
        bool
        default n
-config BUSYBOX_DEFAULT_FLOCK
+config BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC
        bool
        default n
-config BUSYBOX_DEFAULT_FREERAMDISK
+config BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE
        bool
        default n
-config BUSYBOX_DEFAULT_FSCK_MINIX
+config BUSYBOX_DEFAULT_MKE2FS
        bool
        default n
 config BUSYBOX_DEFAULT_MKFS_EXT2
@@ -1516,55 +1537,55 @@ config BUSYBOX_DEFAULT_FEATURE_MINIX2
 config BUSYBOX_DEFAULT_MKFS_REISER
        bool
        default n
-config BUSYBOX_DEFAULT_MKFS_VFAT
-       bool
-       default n
-config BUSYBOX_DEFAULT_GETOPT
+config BUSYBOX_DEFAULT_MKDOSFS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG
+config BUSYBOX_DEFAULT_MKFS_VFAT
        bool
        default n
-config BUSYBOX_DEFAULT_HEXDUMP
+config BUSYBOX_DEFAULT_MKSWAP
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE
+config BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID
        bool
        default n
-config BUSYBOX_DEFAULT_HD
+config BUSYBOX_DEFAULT_MORE
        bool
        default n
-config BUSYBOX_DEFAULT_HWCLOCK
+config BUSYBOX_DEFAULT_MOUNT
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE
        bool
        default n
-config BUSYBOX_DEFAULT_IPCRM
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS
        bool
-       default n
-config BUSYBOX_DEFAULT_IPCS
+       default y
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL
        bool
        default n
-config BUSYBOX_DEFAULT_LOSETUP
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS
        bool
        default n
-config BUSYBOX_DEFAULT_LSPCI
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS
        bool
-       default n
-config BUSYBOX_DEFAULT_LSUSB
+       default y
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS
        bool
-       default n
-config BUSYBOX_DEFAULT_MKSWAP
+       default y
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID
+config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB
        bool
        default n
-config BUSYBOX_DEFAULT_MORE
+config BUSYBOX_DEFAULT_NSENTER
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS
        bool
        default n
 config BUSYBOX_DEFAULT_PIVOT_ROOT
@@ -1579,6 +1600,9 @@ config BUSYBOX_DEFAULT_RDEV
 config BUSYBOX_DEFAULT_READPROFILE
        bool
        default n
+config BUSYBOX_DEFAULT_REV
+       bool
+       default n
 config BUSYBOX_DEFAULT_RTCWAKE
        bool
        default n
@@ -1588,7 +1612,16 @@ config BUSYBOX_DEFAULT_SCRIPT
 config BUSYBOX_DEFAULT_SCRIPTREPLAY
        bool
        default n
-config BUSYBOX_DEFAULT_SWAPONOFF
+config BUSYBOX_DEFAULT_SETARCH
+       bool
+       default n
+config BUSYBOX_DEFAULT_LINUX32
+       bool
+       default n
+config BUSYBOX_DEFAULT_LINUX64
+       bool
+       default n
+config BUSYBOX_DEFAULT_SWAPON
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD
@@ -1597,15 +1630,24 @@ config BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD
 config BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI
        bool
        default n
+config BUSYBOX_DEFAULT_SWAPOFF
+       bool
+       default n
 config BUSYBOX_DEFAULT_SWITCH_ROOT
        bool
        default y
+config BUSYBOX_DEFAULT_UEVENT
+       bool
+       default n
 config BUSYBOX_DEFAULT_UMOUNT
        bool
        default y
 config BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL
        bool
        default y
+config BUSYBOX_DEFAULT_UNSHARE
+       bool
+       default n
 config BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP
        bool
        default y
@@ -1678,112 +1720,13 @@ config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SQUASHFS
 config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SYSV
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS
-       bool
-       default n
-config BUSYBOX_DEFAULT_CONSPY
-       bool
-       default n
-config BUSYBOX_DEFAULT_CROND
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_CROND_D
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_CROND_DIR
-       string
-       default "/etc"
-config BUSYBOX_DEFAULT_I2CGET
-       bool
-       default n
-config BUSYBOX_DEFAULT_I2CSET
-       bool
-       default n
-config BUSYBOX_DEFAULT_I2CDUMP
-       bool
-       default n
-config BUSYBOX_DEFAULT_I2CDETECT
-       bool
-       default n
-config BUSYBOX_DEFAULT_LESS
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES
-       int
-       default 9999999
-config BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_MARKS
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_WINCH
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS
-       bool
-       default n
-config BUSYBOX_DEFAULT_NANDWRITE
-       bool
-       default n
-config BUSYBOX_DEFAULT_NANDDUMP
-       bool
-       default n
-config BUSYBOX_DEFAULT_RFKILL
+config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UBIFS
        bool
        default n
-config BUSYBOX_DEFAULT_SETSERIAL
-       bool
-       default n
-config BUSYBOX_DEFAULT_TASKSET
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIATTACH
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIDETACH
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIMKVOL
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIRMVOL
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIRSVOL
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIUPDATEVOL
-       bool
-       default n
-config BUSYBOX_DEFAULT_UBIRENAME
+config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF
        bool
        default n
-config BUSYBOX_DEFAULT_WALL
+config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS
        bool
        default n
 config BUSYBOX_DEFAULT_ADJTIMEX
@@ -1831,6 +1774,21 @@ config BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT
 config BUSYBOX_DEFAULT_CHRT
        bool
        default n
+config BUSYBOX_DEFAULT_CONSPY
+       bool
+       default n
+config BUSYBOX_DEFAULT_CROND
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_CROND_D
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_CROND_DIR
+       string
+       default "/etc"
 config BUSYBOX_DEFAULT_CRONTAB
        bool
        default y
@@ -1867,7 +1825,7 @@ config BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI
 config BUSYBOX_DEFAULT_FBSPLASH
        bool
        default n
-config BUSYBOX_DEFAULT_FLASHCP
+config BUSYBOX_DEFAULT_FLASH_ERASEALL
        bool
        default n
 config BUSYBOX_DEFAULT_FLASH_LOCK
@@ -1876,40 +1834,85 @@ config BUSYBOX_DEFAULT_FLASH_LOCK
 config BUSYBOX_DEFAULT_FLASH_UNLOCK
        bool
        default n
-config BUSYBOX_DEFAULT_FLASH_ERASEALL
+config BUSYBOX_DEFAULT_FLASHCP
        bool
        default n
-config BUSYBOX_DEFAULT_IONICE
+config BUSYBOX_DEFAULT_HDPARM
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_GETSET_DMA
+       bool
+       default n
+config BUSYBOX_DEFAULT_I2CGET
+       bool
+       default n
+config BUSYBOX_DEFAULT_I2CSET
+       bool
+       default n
+config BUSYBOX_DEFAULT_I2CDUMP
+       bool
+       default n
+config BUSYBOX_DEFAULT_I2CDETECT
        bool
        default n
 config BUSYBOX_DEFAULT_INOTIFYD
        bool
        default n
+config BUSYBOX_DEFAULT_IONICE
+       bool
+       default n
 config BUSYBOX_DEFAULT_LAST
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_LAST_FANCY
        bool
        default n
-config BUSYBOX_DEFAULT_HDPARM
+config BUSYBOX_DEFAULT_LESS
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES
+       int
+       default 9999999
+config BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY
+config BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF
+config BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF
+config BUSYBOX_DEFAULT_FEATURE_LESS_MARKS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET
+config BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF
+config BUSYBOX_DEFAULT_FEATURE_LESS_WINCH
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_GETSET_DMA
+config BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS
        bool
        default n
 config BUSYBOX_DEFAULT_LOCK
@@ -1936,91 +1939,79 @@ config BUSYBOX_DEFAULT_MOUNTPOINT
 config BUSYBOX_DEFAULT_MT
        bool
        default n
-config BUSYBOX_DEFAULT_RAIDAUTORUN
+config BUSYBOX_DEFAULT_NANDWRITE
        bool
        default n
-config BUSYBOX_DEFAULT_READAHEAD
+config BUSYBOX_DEFAULT_NANDDUMP
        bool
        default n
-config BUSYBOX_DEFAULT_RUNLEVEL
+config BUSYBOX_DEFAULT_RAIDAUTORUN
        bool
        default n
-config BUSYBOX_DEFAULT_RX
+config BUSYBOX_DEFAULT_READAHEAD
        bool
        default n
-config BUSYBOX_DEFAULT_SETSID
+config BUSYBOX_DEFAULT_RFKILL
        bool
        default n
-config BUSYBOX_DEFAULT_STRINGS
-       bool
-       default y
-config BUSYBOX_DEFAULT_TIME
-       bool
-       default y
-config BUSYBOX_DEFAULT_TIMEOUT
+config BUSYBOX_DEFAULT_RUNLEVEL
        bool
        default n
-config BUSYBOX_DEFAULT_TTYSIZE
+config BUSYBOX_DEFAULT_RX
        bool
        default n
-config BUSYBOX_DEFAULT_VOLNAME
+config BUSYBOX_DEFAULT_SETSERIAL
        bool
        default n
-config BUSYBOX_DEFAULT_WATCHDOG
+config BUSYBOX_DEFAULT_SETSID
        bool
        default n
-config BUSYBOX_DEFAULT_NAMEIF
+config BUSYBOX_DEFAULT_STRINGS
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED
+       default y
+config BUSYBOX_DEFAULT_TASKSET
        bool
        default n
-config BUSYBOX_DEFAULT_NBDCLIENT
+config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY
        bool
        default n
-config BUSYBOX_DEFAULT_NC
+config BUSYBOX_DEFAULT_TIME
        bool
        default y
-config BUSYBOX_DEFAULT_NC_SERVER
+config BUSYBOX_DEFAULT_TIMEOUT
        bool
        default n
-config BUSYBOX_DEFAULT_NC_EXTRA
+config BUSYBOX_DEFAULT_TTYSIZE
        bool
        default n
-config BUSYBOX_DEFAULT_NC_110_COMPAT
+config BUSYBOX_DEFAULT_UBIATTACH
        bool
        default n
-config BUSYBOX_DEFAULT_PING
-       bool
-       default y
-config BUSYBOX_DEFAULT_PING6
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_FANCY_PING
+config BUSYBOX_DEFAULT_UBIDETACH
        bool
-       default y
-config BUSYBOX_DEFAULT_WGET
+       default n
+config BUSYBOX_DEFAULT_UBIMKVOL
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR
+config BUSYBOX_DEFAULT_UBIRMVOL
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION
+config BUSYBOX_DEFAULT_UBIRSVOL
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS
+config BUSYBOX_DEFAULT_UBIUPDATEVOL
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT
+config BUSYBOX_DEFAULT_UBIRENAME
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL
+config BUSYBOX_DEFAULT_VOLNAME
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_WGET_SSL_HELPER
+config BUSYBOX_DEFAULT_WALL
        bool
        default n
-config BUSYBOX_DEFAULT_WHOIS
+config BUSYBOX_DEFAULT_WATCHDOG
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_IPV6
@@ -2056,19 +2047,16 @@ config BUSYBOX_DEFAULT_DNSD
 config BUSYBOX_DEFAULT_ETHER_WAKE
        bool
        default n
-config BUSYBOX_DEFAULT_FAKEIDENTD
-       bool
-       default n
 config BUSYBOX_DEFAULT_FTPD
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_FTP_WRITE
+config BUSYBOX_DEFAULT_FEATURE_FTPD_WRITE
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_FTPD_ACCEPT_BROKEN_LIST
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_FTP_AUTHENTICATION
+config BUSYBOX_DEFAULT_FEATURE_FTPD_AUTHENTICATION
        bool
        default n
 config BUSYBOX_DEFAULT_FTPGET
@@ -2083,6 +2071,9 @@ config BUSYBOX_DEFAULT_FEATURE_FTPGETPUT_LONG_OPTIONS
 config BUSYBOX_DEFAULT_HOSTNAME
        bool
        default n
+config BUSYBOX_DEFAULT_DNSDOMAINNAME
+       bool
+       default n
 config BUSYBOX_DEFAULT_HTTPD
        bool
        default n
@@ -2143,19 +2134,16 @@ config BUSYBOX_DEFAULT_IFENSLAVE
 config BUSYBOX_DEFAULT_IFPLUGD
        bool
        default n
-config BUSYBOX_DEFAULT_IFUPDOWN
-       bool
-       default n
-config BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH
-       string
-       default ""
-config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP
+config BUSYBOX_DEFAULT_IFUP
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP_BUILTIN
+config BUSYBOX_DEFAULT_IFDOWN
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
+config BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH
+       string
+       default ""
+config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP
        bool
        default n
 config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4
@@ -2194,6 +2182,24 @@ config BUSYBOX_DEFAULT_FEATURE_INETD_RPC
 config BUSYBOX_DEFAULT_IP
        bool
        default y
+config BUSYBOX_DEFAULT_IPADDR
+       bool
+       default n
+config BUSYBOX_DEFAULT_IPLINK
+       bool
+       default n
+config BUSYBOX_DEFAULT_IPROUTE
+       bool
+       default n
+config BUSYBOX_DEFAULT_IPTUNNEL
+       bool
+       default n
+config BUSYBOX_DEFAULT_IPRULE
+       bool
+       default n
+config BUSYBOX_DEFAULT_IPNEIGH
+       bool
+       default n
 config BUSYBOX_DEFAULT_FEATURE_IP_ADDRESS
        bool
        default y
@@ -2215,37 +2221,40 @@ config BUSYBOX_DEFAULT_FEATURE_IP_RULE
 config BUSYBOX_DEFAULT_FEATURE_IP_NEIGH
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS
+config BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS
+config BUSYBOX_DEFAULT_IPCALC
        bool
        default n
-config BUSYBOX_DEFAULT_IPADDR
+config BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY
        bool
        default n
-config BUSYBOX_DEFAULT_IPLINK
+config BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS
        bool
        default n
-config BUSYBOX_DEFAULT_IPROUTE
+config BUSYBOX_DEFAULT_FAKEIDENTD
        bool
        default n
-config BUSYBOX_DEFAULT_IPTUNNEL
+config BUSYBOX_DEFAULT_NAMEIF
        bool
        default n
-config BUSYBOX_DEFAULT_IPRULE
+config BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED
        bool
        default n
-config BUSYBOX_DEFAULT_IPNEIGH
+config BUSYBOX_DEFAULT_NBDCLIENT
        bool
        default n
-config BUSYBOX_DEFAULT_IPCALC
+config BUSYBOX_DEFAULT_NC
+       bool
+       default y
+config BUSYBOX_DEFAULT_NC_SERVER
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY
+config BUSYBOX_DEFAULT_NC_EXTRA
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS
+config BUSYBOX_DEFAULT_NC_110_COMPAT
        bool
        default n
 config BUSYBOX_DEFAULT_NETMSG
@@ -2272,6 +2281,15 @@ config BUSYBOX_DEFAULT_FEATURE_NTPD_SERVER
 config BUSYBOX_DEFAULT_FEATURE_NTPD_CONF
        bool
        default n
+config BUSYBOX_DEFAULT_PING
+       bool
+       default y
+config BUSYBOX_DEFAULT_PING6
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_FANCY_PING
+       bool
+       default y
 config BUSYBOX_DEFAULT_PSCAN
        bool
        default n
@@ -2284,6 +2302,9 @@ config BUSYBOX_DEFAULT_SLATTACH
 config BUSYBOX_DEFAULT_TCPSVD
        bool
        default n
+config BUSYBOX_DEFAULT_UDPSVD
+       bool
+       default n
 config BUSYBOX_DEFAULT_TELNET
        bool
        default n
@@ -2332,9 +2353,6 @@ config BUSYBOX_DEFAULT_TRACEROUTE6
 config BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_VERBOSE
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_SOURCE_ROUTE
-       bool
-       default n
 config BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_USE_ICMP
        bool
        default n
@@ -2344,6 +2362,36 @@ config BUSYBOX_DEFAULT_TUNCTL
 config BUSYBOX_DEFAULT_FEATURE_TUNCTL_UG
        bool
        default n
+config BUSYBOX_DEFAULT_VCONFIG
+       bool
+       default n
+config BUSYBOX_DEFAULT_WGET
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL
+       bool
+       default n
+config BUSYBOX_DEFAULT_FEATURE_WGET_SSL_HELPER
+       bool
+       default n
+config BUSYBOX_DEFAULT_WHOIS
+       bool
+       default n
+config BUSYBOX_DEFAULT_ZCIP
+       bool
+       default n
 config BUSYBOX_DEFAULT_UDHCPC6
        bool
        default n
@@ -2395,15 +2443,6 @@ config BUSYBOX_DEFAULT_UDHCPC_SLACK_FOR_BUGGY_SERVERS
 config BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS
        string
        default ""
-config BUSYBOX_DEFAULT_UDPSVD
-       bool
-       default n
-config BUSYBOX_DEFAULT_VCONFIG
-       bool
-       default n
-config BUSYBOX_DEFAULT_ZCIP
-       bool
-       default n
 config BUSYBOX_DEFAULT_LPD
        bool
        default n
@@ -2416,9 +2455,6 @@ config BUSYBOX_DEFAULT_LPQ
 config BUSYBOX_DEFAULT_MAKEMIME
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
-       string
-       default ""
 config BUSYBOX_DEFAULT_POPMAILDIR
        bool
        default n
@@ -2434,120 +2470,123 @@ config BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT
 config BUSYBOX_DEFAULT_SENDMAIL
        bool
        default n
-config BUSYBOX_DEFAULT_IOSTAT
+config BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
+       string
+       default ""
+config BUSYBOX_DEFAULT_FREE
        bool
-       default n
-config BUSYBOX_DEFAULT_LSOF
+       default y
+config BUSYBOX_DEFAULT_FUSER
        bool
        default n
-config BUSYBOX_DEFAULT_MPSTAT
+config BUSYBOX_DEFAULT_IOSTAT
        bool
        default n
-config BUSYBOX_DEFAULT_NMETER
+config BUSYBOX_DEFAULT_KILL
        bool
-       default n
-config BUSYBOX_DEFAULT_PMAP
+       default y
+config BUSYBOX_DEFAULT_KILLALL
        bool
-       default n
-config BUSYBOX_DEFAULT_POWERTOP
+       default y
+config BUSYBOX_DEFAULT_KILLALL5
        bool
        default n
-config BUSYBOX_DEFAULT_PSTREE
+config BUSYBOX_DEFAULT_LSOF
        bool
        default n
-config BUSYBOX_DEFAULT_PWDX
+config BUSYBOX_DEFAULT_MPSTAT
        bool
        default n
-config BUSYBOX_DEFAULT_SMEMCAP
+config BUSYBOX_DEFAULT_NMETER
        bool
        default n
-config BUSYBOX_DEFAULT_TOP
+config BUSYBOX_DEFAULT_PGREP
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+config BUSYBOX_DEFAULT_PKILL
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS
+       default n
+config BUSYBOX_DEFAULT_PIDOF
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU
+config BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS
+config BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS
+config BUSYBOX_DEFAULT_PMAP
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_TOPMEM
+config BUSYBOX_DEFAULT_POWERTOP
        bool
        default n
-config BUSYBOX_DEFAULT_UPTIME
+config BUSYBOX_DEFAULT_PS
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT
-       bool
-       default n
-config BUSYBOX_DEFAULT_FREE
+config BUSYBOX_DEFAULT_FEATURE_PS_WIDE
        bool
        default y
-config BUSYBOX_DEFAULT_FUSER
+config BUSYBOX_DEFAULT_FEATURE_PS_LONG
        bool
        default n
-config BUSYBOX_DEFAULT_KILL
-       bool
-       default y
-config BUSYBOX_DEFAULT_KILLALL
+config BUSYBOX_DEFAULT_FEATURE_PS_TIME
        bool
-       default y
-config BUSYBOX_DEFAULT_KILLALL5
+       default n
+config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS
        bool
        default n
-config BUSYBOX_DEFAULT_PGREP
+config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS
        bool
-       default y
-config BUSYBOX_DEFAULT_PIDOF
+       default n
+config BUSYBOX_DEFAULT_PSTREE
        bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE
+       default n
+config BUSYBOX_DEFAULT_PWDX
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT
+config BUSYBOX_DEFAULT_RENICE
        bool
        default n
-config BUSYBOX_DEFAULT_PKILL
+config BUSYBOX_DEFAULT_SMEMCAP
        bool
        default n
-config BUSYBOX_DEFAULT_PS
+config BUSYBOX_DEFAULT_BB_SYSCTL
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_PS_WIDE
+config BUSYBOX_DEFAULT_TOP
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_PS_LONG
+config BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE
        bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_PS_TIME
+       default y
+config BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS
+       bool
+       default y
+config BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS
+config BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS
+config BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS
        bool
        default n
-config BUSYBOX_DEFAULT_RENICE
+config BUSYBOX_DEFAULT_FEATURE_TOPMEM
        bool
        default n
-config BUSYBOX_DEFAULT_BB_SYSCTL
+config BUSYBOX_DEFAULT_UPTIME
        bool
        default y
-config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
+config BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT
        bool
        default n
 config BUSYBOX_DEFAULT_WATCH
        bool
        default n
+config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
+       bool
+       default n
 config BUSYBOX_DEFAULT_CHPST
        bool
        default n
@@ -2578,6 +2617,9 @@ config BUSYBOX_DEFAULT_SV
 config BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR
        string
        default ""
+config BUSYBOX_DEFAULT_SVC
+       bool
+       default n
 config BUSYBOX_DEFAULT_SVLOGD
        bool
        default n
@@ -2599,9 +2641,6 @@ config BUSYBOX_DEFAULT_LOAD_POLICY
 config BUSYBOX_DEFAULT_MATCHPATHCON
        bool
        default n
-config BUSYBOX_DEFAULT_RESTORECON
-       bool
-       default n
 config BUSYBOX_DEFAULT_RUNCON
        bool
        default n
@@ -2611,6 +2650,9 @@ config BUSYBOX_DEFAULT_FEATURE_RUNCON_LONG_OPTIONS
 config BUSYBOX_DEFAULT_SELINUXENABLED
        bool
        default n
+config BUSYBOX_DEFAULT_SESTATUS
+       bool
+       default n
 config BUSYBOX_DEFAULT_SETENFORCE
        bool
        default n
@@ -2620,15 +2662,45 @@ config BUSYBOX_DEFAULT_SETFILES
 config BUSYBOX_DEFAULT_FEATURE_SETFILES_CHECK_OPTION
        bool
        default n
+config BUSYBOX_DEFAULT_RESTORECON
+       bool
+       default n
 config BUSYBOX_DEFAULT_SETSEBOOL
        bool
        default n
-config BUSYBOX_DEFAULT_SESTATUS
+config BUSYBOX_DEFAULT_SH_IS_ASH
+       bool
+       default y
+config BUSYBOX_DEFAULT_SH_IS_HUSH
        bool
        default n
+config BUSYBOX_DEFAULT_SH_IS_NONE
+       bool
+       default n
+config BUSYBOX_DEFAULT_BASH_IS_ASH
+       bool
+       default n
+config BUSYBOX_DEFAULT_BASH_IS_HUSH
+       bool
+       default n
+config BUSYBOX_DEFAULT_BASH_IS_NONE
+       bool
+       default y
 config BUSYBOX_DEFAULT_ASH
        bool
        default y
+config BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
+       bool
+       default n
+config BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB
+       bool
+       default y
+config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
+       bool
+       default n
+config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
+       bool
+       default y
 config BUSYBOX_DEFAULT_ASH_BASH_COMPAT
        bool
        default y
@@ -2662,15 +2734,6 @@ config BUSYBOX_DEFAULT_ASH_CMDCMD
 config BUSYBOX_DEFAULT_ASH_MAIL
        bool
        default n
-config BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
-       bool
-       default n
-config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
-       bool
-       default n
-config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
-       bool
-       default y
 config BUSYBOX_DEFAULT_CTTYHACK
        bool
        default n
@@ -2725,28 +2788,10 @@ config BUSYBOX_DEFAULT_HUSH_MODE_X
 config BUSYBOX_DEFAULT_MSH
        bool
        default n
-config BUSYBOX_DEFAULT_FEATURE_SH_IS_ASH
-       bool
-       default y
-config BUSYBOX_DEFAULT_FEATURE_SH_IS_HUSH
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_SH_IS_NONE
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_BASH_IS_ASH
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_BASH_IS_HUSH
-       bool
-       default n
-config BUSYBOX_DEFAULT_FEATURE_BASH_IS_NONE
-       bool
-       default y
-config BUSYBOX_DEFAULT_SH_MATH_SUPPORT
+config BUSYBOX_DEFAULT_FEATURE_SH_MATH
        bool
        default y
-config BUSYBOX_DEFAULT_SH_MATH_SUPPORT_64
+config BUSYBOX_DEFAULT_FEATURE_SH_MATH_64
        bool
        default y
 config BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET
index e4f159e..0937ef9 100644 (file)
@@ -8,14 +8,14 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=busybox
-PKG_VERSION:=1.25.1
-PKG_RELEASE:=2
+PKG_VERSION:=1.26.2
+PKG_RELEASE:=1
 PKG_FLAGS:=essential
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=https://www.busybox.net/downloads \
                http://sources.buildroot.net
-PKG_HASH:=27667e0f2328fdbd79cfd622e4453e5c57e58f781c5da97c9be337d93aa2a02e
+PKG_HASH:=da3e44913fc1a9c9b7c5337ea5292da518683cbff32be630777f565d6036af16
 
 PKG_BUILD_DEPENDS:=BUSYBOX_USE_LIBRPC:librpc BUSYBOX_CONFIG_PAM:libpam
 PKG_BUILD_PARALLEL:=1
index 3bf67c5..3ee3aa2 100644 (file)
@@ -10,15 +10,18 @@ config BUSYBOX_CONFIG_HAVE_DOT_CONFIG
 
 menu "Busybox Settings"
 
-menu "General Configuration"
-
 config BUSYBOX_CONFIG_DESKTOP
        bool "Enable options for full-blown desktop systems"
        default BUSYBOX_DEFAULT_DESKTOP
        help
          Enable options and features which are not essential.
-         Select this only if you plan to use busybox on full-blown
-         desktop machine with common Linux distro, not on an embedded box.
+         Select this if you plan to use busybox on full-blown desktop machine
+         with common Linux distro, which needs higher level of command-line
+         compatibility.
+
+         If you are preparing your build to be used on an embedded box
+         where you have tighter control over the entire set of userspace
+         tools, you can unselect this option for smaller code size.
 
 config BUSYBOX_CONFIG_EXTRA_COMPAT
        bool "Provide compatible behavior for rare corner cases (bigger code)"
@@ -57,30 +60,6 @@ config BUSYBOX_CONFIG_PLATFORM_LINUX
          Answering 'N' here will disable such applets and hide the
          corresponding configuration options.
 
-choice
-       prompt "Buffer allocation policy"
-       default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
-       help
-         There are 3 ways BusyBox can handle buffer allocations:
-         - Use malloc. This costs code size for the call to xmalloc.
-         - Put them on stack. For some very small machines with limited stack
-           space, this can be deadly. For most folks, this works just fine.
-         - Put them in BSS. This works beautifully for computers with a real
-           MMU (and OS support), but wastes runtime RAM for uCLinux. This
-           behavior was the only one available for BusyBox versions 0.48 and
-           earlier.
-
-config BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC
-       bool "Allocate with Malloc"
-
-config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
-       bool "Allocate on the Stack"
-
-config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS
-       bool "Allocate in the .bss section"
-
-endchoice
-
 config BUSYBOX_CONFIG_SHOW_USAGE
        bool "Show applet usage messages"
        default BUSYBOX_DEFAULT_SHOW_USAGE
@@ -143,131 +122,6 @@ config BUSYBOX_CONFIG_INSTALL_NO_USR
          will install applets only to /bin and /sbin,
          never to /usr/bin or /usr/sbin.
 
-config BUSYBOX_CONFIG_LOCALE_SUPPORT
-       bool "Enable locale support (system needs locale for this to work)"
-       default BUSYBOX_DEFAULT_LOCALE_SUPPORT
-       help
-         Enable this if your system has locale support and you would like
-         busybox to support locale settings.
-
-config BUSYBOX_CONFIG_UNICODE_SUPPORT
-       bool "Support Unicode"
-       default BUSYBOX_DEFAULT_UNICODE_SUPPORT
-       help
-         This makes various applets aware that one byte is not
-         one character on screen.
-
-         Busybox aims to eventually work correctly with Unicode displays.
-         Any older encodings are not guaranteed to work.
-         Probably by the time when busybox will be fully Unicode-clean,
-         other encodings will be mainly of historic interest.
-
-config BUSYBOX_CONFIG_UNICODE_USING_LOCALE
-       bool "Use libc routines for Unicode (else uses internal ones)"
-       default BUSYBOX_DEFAULT_UNICODE_USING_LOCALE
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && BUSYBOX_CONFIG_LOCALE_SUPPORT
-       help
-         With this option on, Unicode support is implemented using libc
-         routines. Otherwise, internal implementation is used.
-         Internal implementation is smaller.
-
-config BUSYBOX_CONFIG_FEATURE_CHECK_UNICODE_IN_ENV
-       bool "Check $LC_ALL, $LC_CTYPE and $LANG environment variables"
-       default BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
-       help
-         With this option on, Unicode support is activated
-         only if locale-related variables have the value of the form
-         "xxxx.utf8"
-
-         Otherwise, Unicode support will be always enabled and active.
-
-config BUSYBOX_CONFIG_SUBST_WCHAR
-       int "Character code to substitute unprintable characters with"
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
-       default BUSYBOX_DEFAULT_SUBST_WCHAR
-       help
-         Typical values are 63 for '?' (works with any output device),
-         30 for ASCII substitute control code,
-         65533 (0xfffd) for Unicode replacement character.
-
-config BUSYBOX_CONFIG_LAST_SUPPORTED_WCHAR
-       int "Range of supported Unicode characters"
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
-       default BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR
-       help
-         Any character with Unicode value bigger than this is assumed
-         to be non-printable on output device. Many applets replace
-         such chars with substitution character.
-
-         The idea is that many valid printable Unicode chars are
-         nevertheless are not displayed correctly. Think about
-         combining charachers, double-wide hieroglyphs, obscure
-         characters in dozens of ancient scripts...
-         Many terminals, terminal emulators, xterms etc will fail
-         to handle them correctly. Choose the smallest value
-         which suits your needs.
-
-         Typical values are:
-         126 - ASCII only
-         767 (0x2ff) - there are no combining chars in [0..767] range
-                       (the range includes Latin 1, Latin Ext. A and B),
-                       code is ~700 bytes smaller for this case.
-         4351 (0x10ff) - there are no double-wide chars in [0..4351] range,
-                       code is ~300 bytes smaller for this case.
-         12799 (0x31ff) - nearly all non-ideographic characters are
-                       available in [0..12799] range, including
-                       East Asian scripts like katakana, hiragana, hangul,
-                       bopomofo...
-         0 - off, any valid printable Unicode character will be printed.
-
-config BUSYBOX_CONFIG_UNICODE_COMBINING_WCHARS
-       bool "Allow zero-width Unicode characters on output"
-       default BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
-       help
-         With this option off, any Unicode char with width of 0
-         is substituted on output.
-
-config BUSYBOX_CONFIG_UNICODE_WIDE_WCHARS
-       bool "Allow wide Unicode characters on output"
-       default BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
-       help
-         With this option off, any Unicode char with width > 1
-         is substituted on output.
-
-config BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
-       bool "Bidirectional character-aware line input"
-       default BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
-       help
-         With this option on, right-to-left Unicode characters
-         are treated differently on input (e.g. cursor movement).
-
-config BUSYBOX_CONFIG_UNICODE_NEUTRAL_TABLE
-       bool "In bidi input, support non-ASCII neutral chars too"
-       default BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
-       depends on BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
-       help
-         In most cases it's enough to treat only ASCII non-letters
-         (i.e. punctuation, numbers and space) as characters
-         with neutral directionality.
-         With this option on, more extensive (and bigger) table
-         of neutral chars will be used.
-
-config BUSYBOX_CONFIG_UNICODE_PRESERVE_BROKEN
-       bool "Make it possible to enter sequences of chars which are not Unicode"
-       default BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
-       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
-       help
-         With this option on, on line-editing input (such as used by shells)
-         invalid UTF-8 bytes are not substituted with the selected
-         substitution character.
-         For example, this means that entering 'l', 's', ' ', 0xff, [Enter]
-         at shell prompt will list file named 0xff (single char name
-         with char value 255), not file named '?'.
-
 config BUSYBOX_CONFIG_PAM
        bool "Support for PAM (Pluggable Authentication Modules)"
        default BUSYBOX_DEFAULT_PAM
@@ -275,19 +129,6 @@ config BUSYBOX_CONFIG_PAM
          Use PAM in some busybox applets (currently login and httpd) instead
          of direct access to password database.
 
-config BUSYBOX_CONFIG_FEATURE_USE_SENDFILE
-       bool "Use sendfile system call"
-       default BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         When enabled, busybox will use the kernel sendfile() function
-         instead of read/write loops to copy data between file descriptors
-         (for example, cp command does this a lot).
-         If sendfile() doesn't work, copying code falls back to read/write
-         loop. sendfile() was originally implemented for faster I/O
-         from files to sockets, but since Linux 2.6.33 it was extended
-         to work for many more file types.
-
 config BUSYBOX_CONFIG_LONG_OPTS
        bool "Support for --long-options"
        default BUSYBOX_DEFAULT_LONG_OPTS
@@ -496,9 +337,7 @@ config BUSYBOX_CONFIG_FEATURE_HAVE_RPC
        #  This is automatically selected if any of enabled applets need it.
        #  You do not need to select it manually.
 
-endmenu
-
-menu 'Build Options'
+comment 'Build Options'
 
 config BUSYBOX_CONFIG_STATIC
        bool "Build BusyBox as a static binary (no shared libs)"
@@ -673,9 +512,73 @@ config BUSYBOX_CONFIG_EXTRA_LDLIBS
        help
          Additional LDLIBS to pass to the linker with -l.
 
-endmenu
+comment 'Installation Options ("make install" behavior)'
+
+choice
+       prompt "What kind of applet links to install"
+       default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
+       help
+         Choose what kind of links to applets are created by "make install".
+
+config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
+       bool "as soft-links"
+       help
+         Install applets as soft-links to the busybox binary. This needs some
+         free inodes on the filesystem, but might help with filesystem
+         generators that can't cope with hard-links.
+
+config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS
+       bool "as hard-links"
+       help
+         Install applets as hard-links to the busybox binary. This might
+         count on a filesystem with few inodes.
+
+config BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
+       bool "as script wrappers"
+       help
+         Install applets as script wrappers that call the busybox binary.
+
+config BUSYBOX_CONFIG_INSTALL_APPLET_DONT
+       bool "not installed"
+       help
+         Do not install applet links. Useful when you plan to use
+         busybox --install for installing links, or plan to use
+         a standalone shell and thus don't need applet links.
+
+endchoice
+
+choice
+       prompt "/bin/sh applet link"
+       default BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
+       depends on BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
+       help
+         Choose how you install /bin/sh applet link.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
+       bool "as soft-link"
+       help
+         Install /bin/sh applet as soft-link to the busybox binary.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_HARDLINK
+       bool "as hard-link"
+       help
+         Install /bin/sh applet as hard-link to the busybox binary.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER
+       bool "as script wrapper"
+       help
+         Install /bin/sh applet as script wrapper that calls
+         the busybox binary.
+
+endchoice
 
-menu 'Debugging Options'
+config BUSYBOX_CONFIG_PREFIX
+       string "BusyBox installation prefix"
+       default BUSYBOX_DEFAULT_PREFIX
+       help
+         Define your directory to install BusyBox files/subdirs in.
+
+comment 'Debugging Options'
 
 config BUSYBOX_CONFIG_DEBUG
        bool "Build BusyBox with extra Debugging symbols"
@@ -769,78 +672,8 @@ endchoice
 
 endmenu
 
-menu 'Installation Options ("make install" behavior)'
-
-choice
-       prompt "What kind of applet links to install"
-       default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
-       help
-         Choose what kind of links to applets are created by "make install".
-
-config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
-       bool "as soft-links"
-       help
-         Install applets as soft-links to the busybox binary. This needs some
-         free inodes on the filesystem, but might help with filesystem
-         generators that can't cope with hard-links.
-
-config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS
-       bool "as hard-links"
-       help
-         Install applets as hard-links to the busybox binary. This might
-         count on a filesystem with few inodes.
-
-config BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
-       bool "as script wrappers"
-       help
-         Install applets as script wrappers that call the busybox binary.
-
-config BUSYBOX_CONFIG_INSTALL_APPLET_DONT
-       bool "not installed"
-       help
-         Do not install applet links. Useful when you plan to use
-         busybox --install for installing links, or plan to use
-         a standalone shell and thus don't need applet links.
-
-endchoice
-
-choice
-       prompt "/bin/sh applet link"
-       default BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
-       depends on BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
-       help
-         Choose how you install /bin/sh applet link.
-
-config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
-       bool "as soft-link"
-       help
-         Install /bin/sh applet as soft-link to the busybox binary.
-
-config BUSYBOX_CONFIG_INSTALL_SH_APPLET_HARDLINK
-       bool "as hard-link"
-       help
-         Install /bin/sh applet as hard-link to the busybox binary.
-
-config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER
-       bool "as script wrapper"
-       help
-         Install /bin/sh applet as script wrapper that calls
-         the busybox binary.
-
-endchoice
-
-config BUSYBOX_CONFIG_PREFIX
-       string "BusyBox installation prefix"
-       default BUSYBOX_DEFAULT_PREFIX
-       help
-         Define your directory to install BusyBox files/subdirs in.
-
-endmenu
-
 source libbb/Config.in
 
-endmenu
-
 comment "Applets"
 
 source archival/Config.in
index ff4c2cf..cf47e65 100644 (file)
@@ -31,7 +31,7 @@ config BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ
          Make tar, rpm, modprobe etc understand .gz data.
 
 config BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z
-       bool "tar, rpm, modprobe etc understand .Z data"
+       bool "Make tar, rpm, modprobe etc understand .Z data"
        default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z  # it is ancient
        help
          Make tar, rpm, modprobe etc understand .Z data.
@@ -79,10 +79,16 @@ config BUSYBOX_CONFIG_GUNZIP
          You can use the `-t' option to test the integrity of
          an archive, without decompressing it.
 
+config BUSYBOX_CONFIG_ZCAT
+       bool "zcat"
+       default BUSYBOX_DEFAULT_ZCAT
+       help
+         Alias to "gunzip -c".
+
 config BUSYBOX_CONFIG_FEATURE_GUNZIP_LONG_OPTIONS
        bool "Enable long options"
        default BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS
-       depends on BUSYBOX_CONFIG_GUNZIP && BUSYBOX_CONFIG_LONG_OPTS
+       depends on (BUSYBOX_CONFIG_GUNZIP || BUSYBOX_CONFIG_ZCAT) && BUSYBOX_CONFIG_LONG_OPTS
        help
          Enable use of long options.
 config BUSYBOX_CONFIG_BUNZIP2
@@ -97,6 +103,12 @@ config BUSYBOX_CONFIG_BUNZIP2
 
          Unless you have a specific application which requires bunzip2, you
          should probably say N here.
+
+config BUSYBOX_CONFIG_BZCAT
+       bool "bzcat"
+       default BUSYBOX_DEFAULT_BZCAT
+       help
+         Alias to "bunzip2 -c".
 config BUSYBOX_CONFIG_UNLZMA
        bool "unlzma"
        default BUSYBOX_DEFAULT_UNLZMA
@@ -109,31 +121,47 @@ config BUSYBOX_CONFIG_UNLZMA
          The BusyBox unlzma applet is limited to decompression only.
          On an x86 system, this applet adds about 4K.
 
-config BUSYBOX_CONFIG_FEATURE_LZMA_FAST
-       bool "Optimize unlzma for speed"
-       default BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
-       depends on BUSYBOX_CONFIG_UNLZMA
+config BUSYBOX_CONFIG_LZCAT
+       bool "lzcat"
+       default BUSYBOX_DEFAULT_LZCAT
        help
-         This option reduces decompression time by about 25% at the cost of
-         a 1K bigger binary.
+         unlzma is a compression utility using the Lempel-Ziv-Markov chain
+         compression algorithm, and range coding. Compression
+         is generally considerably better than that achieved by the bzip2
+         compressors.
+
+         The BusyBox unlzma applet is limited to decompression only.
+         On an x86 system, this applet adds about 4K.
 
 config BUSYBOX_CONFIG_LZMA
-       bool "Provide lzma alias which supports only unpacking"
+       bool "lzma -d"
        default BUSYBOX_DEFAULT_LZMA
-       depends on BUSYBOX_CONFIG_UNLZMA
        help
          Enable this option if you want commands like "lzma -d" to work.
          IOW: you'll get lzma applet, but it will always require -d option.
+
+config BUSYBOX_CONFIG_FEATURE_LZMA_FAST
+       bool "Optimize unlzma for speed"
+       default BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
+       depends on BUSYBOX_CONFIG_UNLZMA || BUSYBOX_CONFIG_LZCAT || BUSYBOX_CONFIG_LZMA
+       help
+         This option reduces decompression time by about 25% at the cost of
+         a 1K bigger binary.
 config BUSYBOX_CONFIG_UNXZ
        bool "unxz"
        default BUSYBOX_DEFAULT_UNXZ
        help
          unxz is a unlzma successor.
 
+config BUSYBOX_CONFIG_XZCAT
+       bool "xzcat"
+       default BUSYBOX_DEFAULT_XZCAT
+       help
+         Alias to "unxz -c".
+
 config BUSYBOX_CONFIG_XZ
-       bool "Provide xz alias which supports only unpacking"
+       bool "xz -d"
        default BUSYBOX_DEFAULT_XZ
-       depends on BUSYBOX_CONFIG_UNXZ
        help
          Enable this option if you want commands like "xz -d" to work.
          IOW: you'll get xz applet, but it will always require -d option.
@@ -158,7 +186,7 @@ config BUSYBOX_CONFIG_CPIO
          cpio has 110 bytes of overheads for every stored file.
 
          This implementation of cpio can extract cpio archives created in the
-         "newc" or "crc" format, it cannot create or modify them.
+         "newc" or "crc" format.
 
          Unless you have a specific application which requires cpio, you
          should probably say N here.
@@ -198,16 +226,6 @@ config BUSYBOX_CONFIG_DPKG_DEB
 
          Unless you have a specific application which requires dpkg-deb,
          say N here.
-
-config BUSYBOX_CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY
-       bool "Extract only (-x)"
-       default BUSYBOX_DEFAULT_FEATURE_DPKG_DEB_EXTRACT_ONLY
-       depends on BUSYBOX_CONFIG_DPKG_DEB
-       help
-         This reduces dpkg-deb to the equivalent of
-         "ar -p <deb> data.tar.gz | tar -zx". However it saves space as none
-         of the extra dpkg-deb, ar or tar options are needed, they are linked
-         to internally.
 config BUSYBOX_CONFIG_GZIP
        bool "gzip"
        default BUSYBOX_DEFAULT_GZIP
@@ -249,10 +267,22 @@ config BUSYBOX_CONFIG_LZOP
        help
          Lzop compression/decompresion.
 
+config BUSYBOX_CONFIG_UNLZOP
+       bool "unlzop"
+       default BUSYBOX_DEFAULT_UNLZOP
+       help
+         Lzop decompresion.
+
+config BUSYBOX_CONFIG_LZOPCAT
+       bool "lzopcat"
+       default BUSYBOX_DEFAULT_LZOPCAT
+       help
+         Alias to "unlzop -c".
+
 config BUSYBOX_CONFIG_LZOP_COMPR_HIGH
        bool "lzop compression levels 7,8,9 (not very useful)"
        default BUSYBOX_DEFAULT_LZOP_COMPR_HIGH
-       depends on BUSYBOX_CONFIG_LZOP
+       depends on BUSYBOX_CONFIG_LZOP || BUSYBOX_CONFIG_UNLZOP || BUSYBOX_CONFIG_LZOPCAT
        help
          High levels (7,8,9) of lzop compression. These levels
          are actually slower than gzip at equivalent compression ratios
index 53937d2..e5a4bfb 100644 (file)
@@ -6,7 +6,6 @@
 
 menu "Console Utilities"
 
-
 config BUSYBOX_CONFIG_CHVT
        bool "chvt"
        default BUSYBOX_DEFAULT_CHVT
@@ -14,27 +13,17 @@ config BUSYBOX_CONFIG_CHVT
        help
          This program is used to change to another terminal.
          Example: chvt 4 (change to terminal /dev/tty4)
-
-config BUSYBOX_CONFIG_FGCONSOLE
-       bool "fgconsole"
-       default BUSYBOX_DEFAULT_FGCONSOLE
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         This program prints active (foreground) console number.
-
 config BUSYBOX_CONFIG_CLEAR
        bool "clear"
        default BUSYBOX_DEFAULT_CLEAR
        help
          This program clears the terminal screen.
-
 config BUSYBOX_CONFIG_DEALLOCVT
        bool "deallocvt"
        default BUSYBOX_DEFAULT_DEALLOCVT
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          This program deallocates unused virtual consoles.
-
 config BUSYBOX_CONFIG_DUMPKMAP
        bool "dumpkmap"
        default BUSYBOX_DEFAULT_DUMPKMAP
@@ -42,14 +31,18 @@ config BUSYBOX_CONFIG_DUMPKMAP
        help
          This program dumps the kernel's keyboard translation table to
          stdout, in binary format. You can then use loadkmap to load it.
-
+config BUSYBOX_CONFIG_FGCONSOLE
+       bool "fgconsole"
+       default BUSYBOX_DEFAULT_FGCONSOLE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         This program prints active (foreground) console number.
 config BUSYBOX_CONFIG_KBD_MODE
        bool "kbd_mode"
        default BUSYBOX_DEFAULT_KBD_MODE
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          This program reports and sets keyboard mode.
-
 config BUSYBOX_CONFIG_LOADFONT
        bool "loadfont"
        default BUSYBOX_DEFAULT_LOADFONT
@@ -57,6 +50,44 @@ config BUSYBOX_CONFIG_LOADFONT
        help
          This program loads a console font from standard input.
 
+config BUSYBOX_CONFIG_SETFONT
+       bool "setfont"
+       default BUSYBOX_DEFAULT_SETFONT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Allows to load console screen map. Useful for i18n.
+
+config BUSYBOX_CONFIG_FEATURE_SETFONT_TEXTUAL_MAP
+       bool "Support reading textual screen maps"
+       default BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP
+       depends on BUSYBOX_CONFIG_SETFONT
+       help
+         Support reading textual screen maps.
+
+config BUSYBOX_CONFIG_DEFAULT_SETFONT_DIR
+       string "Default directory for console-tools files"
+       default BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR
+       depends on BUSYBOX_CONFIG_SETFONT
+       help
+         Directory to use if setfont's params are simple filenames
+         (not /path/to/file or ./file). Default is "" (no default directory).
+
+comment "Common options for loadfont and setfont"
+       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
+
+config BUSYBOX_CONFIG_FEATURE_LOADFONT_PSF2
+       bool "Support for PSF2 console fonts"
+       default BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2
+       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
+       help
+         Support PSF2 console fonts.
+
+config BUSYBOX_CONFIG_FEATURE_LOADFONT_RAW
+       bool "Support for old (raw) console fonts"
+       default BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW
+       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
+       help
+         Support old (raw) console fonts.
 config BUSYBOX_CONFIG_LOADKMAP
        bool "loadkmap"
        default BUSYBOX_DEFAULT_LOADKMAP
@@ -64,7 +95,6 @@ config BUSYBOX_CONFIG_LOADKMAP
        help
          This program loads a keyboard translation table from
          standard input.
-
 config BUSYBOX_CONFIG_OPENVT
        bool "openvt"
        default BUSYBOX_DEFAULT_OPENVT
@@ -72,14 +102,12 @@ config BUSYBOX_CONFIG_OPENVT
        help
          This program is used to start a command on an unused
          virtual terminal.
-
 config BUSYBOX_CONFIG_RESET
        bool "reset"
        default BUSYBOX_DEFAULT_RESET
        help
          This program is used to reset the terminal screen, if it
          gets messed up.
-
 config BUSYBOX_CONFIG_RESIZE
        bool "resize"
        default BUSYBOX_DEFAULT_RESIZE
@@ -96,7 +124,6 @@ config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT
          the terminal.
          E.g.:
          COLUMNS=80;LINES=44;export COLUMNS LINES;
-
 config BUSYBOX_CONFIG_SETCONSOLE
        bool "setconsole"
        default BUSYBOX_DEFAULT_SETCONSOLE
@@ -111,29 +138,6 @@ config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_SETCONSOLE && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the setconsole applet.
-
-config BUSYBOX_CONFIG_SETFONT
-       bool "setfont"
-       default BUSYBOX_DEFAULT_SETFONT
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Allows to load console screen map. Useful for i18n.
-
-config BUSYBOX_CONFIG_FEATURE_SETFONT_TEXTUAL_MAP
-       bool "Support reading textual screen maps"
-       default BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP
-       depends on BUSYBOX_CONFIG_SETFONT
-       help
-         Support reading textual screen maps.
-
-config BUSYBOX_CONFIG_DEFAULT_SETFONT_DIR
-       string "Default directory for console-tools files"
-       default BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR
-       depends on BUSYBOX_CONFIG_SETFONT
-       help
-         Directory to use if setfont's params are simple filenames
-         (not /path/to/file or ./file). Default is "" (no default directory).
-
 config BUSYBOX_CONFIG_SETKEYCODES
        bool "setkeycodes"
        default BUSYBOX_DEFAULT_SETKEYCODES
@@ -141,14 +145,12 @@ config BUSYBOX_CONFIG_SETKEYCODES
        help
          This program loads entries into the kernel's scancode-to-keycode
          map, allowing unusual keyboards to generate usable keycodes.
-
 config BUSYBOX_CONFIG_SETLOGCONS
        bool "setlogcons"
        default BUSYBOX_DEFAULT_SETLOGCONS
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          This program redirects the output console of kernel messages.
-
 config BUSYBOX_CONFIG_SHOWKEY
        bool "showkey"
        default BUSYBOX_DEFAULT_SHOWKEY
@@ -156,21 +158,4 @@ config BUSYBOX_CONFIG_SHOWKEY
        help
          Shows keys pressed.
 
-comment "Common options for loadfont and setfont"
-       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
-
-config BUSYBOX_CONFIG_FEATURE_LOADFONT_PSF2
-       bool "Support for PSF2 console fonts"
-       default BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2
-       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
-       help
-         Support PSF2 console fonts.
-
-config BUSYBOX_CONFIG_FEATURE_LOADFONT_RAW
-       bool "Support for old (raw) console fonts"
-       default BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW
-       depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT
-       help
-         Support old (raw) console fonts.
-
 endmenu
index ec5611b..855bcd1 100644 (file)
@@ -13,12 +13,82 @@ config BUSYBOX_CONFIG_BASENAME
          basename is used to strip the directory and suffix from filenames,
          leaving just the filename itself. Enable this option if you wish
          to enable the 'basename' utility.
+config BUSYBOX_CONFIG_CAL
+       bool "cal"
+       default BUSYBOX_DEFAULT_CAL
+       help
+         cal is used to display a monthly calendar.
 config BUSYBOX_CONFIG_CAT
        bool "cat"
        default BUSYBOX_DEFAULT_CAT
        help
          cat is used to concatenate files and print them to the standard
          output. Enable this option if you wish to enable the 'cat' utility.
+config BUSYBOX_CONFIG_CATV
+       bool "catv"
+       default BUSYBOX_DEFAULT_CATV
+       help
+         Display nonprinting characters as escape sequences (like some
+         implementations' cat -v option).
+config BUSYBOX_CONFIG_CHGRP
+       bool "chgrp"
+       default BUSYBOX_DEFAULT_CHGRP
+       help
+         chgrp is used to change the group ownership of files.
+config BUSYBOX_CONFIG_CHMOD
+       bool "chmod"
+       default BUSYBOX_DEFAULT_CHMOD
+       help
+         chmod is used to change the access permission of files.
+config BUSYBOX_CONFIG_CHOWN
+       bool "chown"
+       default BUSYBOX_DEFAULT_CHOWN
+       help
+         chown is used to change the user and/or group ownership
+         of files.
+
+config BUSYBOX_CONFIG_FEATURE_CHOWN_LONG_OPTIONS
+       bool "Enable long options"
+       default BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS
+       depends on BUSYBOX_CONFIG_CHOWN && BUSYBOX_CONFIG_LONG_OPTS
+       help
+         Enable use of long options
+config BUSYBOX_CONFIG_CHROOT
+       bool "chroot"
+       default BUSYBOX_DEFAULT_CHROOT
+       help
+         chroot is used to change the root directory and run a command.
+         The default command is `/bin/sh'.
+config BUSYBOX_CONFIG_CKSUM
+       bool "cksum"
+       default BUSYBOX_DEFAULT_CKSUM
+       help
+         cksum is used to calculate the CRC32 checksum of a file.
+config BUSYBOX_CONFIG_COMM
+       bool "comm"
+       default BUSYBOX_DEFAULT_COMM
+       help
+         comm is used to compare two files line by line and return
+         a three-column output.
+config BUSYBOX_CONFIG_CP
+       bool "cp"
+       default BUSYBOX_DEFAULT_CP
+       help
+         cp is used to copy files and directories.
+
+config BUSYBOX_CONFIG_FEATURE_CP_LONG_OPTIONS
+       bool "Enable long options for cp"
+       default BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS
+       depends on BUSYBOX_CONFIG_CP && BUSYBOX_CONFIG_LONG_OPTS
+       help
+         Enable long options for cp.
+         Also add support for --parents option.
+config BUSYBOX_CONFIG_CUT
+       bool "cut"
+       default BUSYBOX_DEFAULT_CUT
+       help
+         cut is used to print selected parts of lines from
+         each file to stdout.
 config BUSYBOX_CONFIG_DATE
        bool "date"
        default BUSYBOX_DEFAULT_DATE
@@ -102,231 +172,6 @@ config BUSYBOX_CONFIG_FEATURE_DD_STATUS
        depends on BUSYBOX_CONFIG_DD
        help
          Enables support for status=noxfer/none option.
-config BUSYBOX_CONFIG_HOSTID
-       bool "hostid"
-       default BUSYBOX_DEFAULT_HOSTID
-       help
-         hostid prints the numeric identifier (in hexadecimal) for
-         the current host.
-config BUSYBOX_CONFIG_ID
-       bool "id"
-       default BUSYBOX_DEFAULT_ID
-       help
-         id displays the current user and group ID names.
-config BUSYBOX_CONFIG_GROUPS
-       bool "groups"
-       default BUSYBOX_DEFAULT_GROUPS
-       help
-         Print the group names associated with current user id.
-config BUSYBOX_CONFIG_SHUF
-       bool "shuf"
-       default BUSYBOX_DEFAULT_SHUF
-       help
-         Generate random permutations
-config BUSYBOX_CONFIG_STAT
-       bool "stat"
-       default BUSYBOX_DEFAULT_STAT
-       help
-         display file or filesystem status.
-
-config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT
-       bool "Enable custom formats (-c)"
-       default BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT
-       depends on BUSYBOX_CONFIG_STAT
-       help
-         Without this, stat will not support the '-c format' option where
-         users can pass a custom format string for output. This adds about
-         7k to a nonstatic build on amd64.
-
-config BUSYBOX_CONFIG_FEATURE_STAT_FILESYSTEM
-       bool "Enable display of filesystem status (-f)"
-       default BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM
-       depends on BUSYBOX_CONFIG_STAT
-       select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs()
-       help
-         Without this, stat will not support the '-f' option to display
-         information about filesystem status.
-config BUSYBOX_CONFIG_SYNC
-       bool "sync"
-       default BUSYBOX_DEFAULT_SYNC
-       help
-         sync is used to flush filesystem buffers.
-config BUSYBOX_CONFIG_FEATURE_SYNC_FANCY
-       bool "Enable -d and -f flags (requres syncfs(2) in libc)"
-       default BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY
-       depends on BUSYBOX_CONFIG_SYNC
-       help
-         sync -d FILE... executes fdatasync() on each FILE.
-         sync -f FILE... executes syncfs() on each FILE.
-config BUSYBOX_CONFIG_TEST
-       bool "test"
-       default BUSYBOX_DEFAULT_TEST
-       help
-         test is used to check file types and compare values,
-         returning an appropriate exit code. The bash shell
-         has test built in, ash can build it in optionally.
-
-config BUSYBOX_CONFIG_FEATURE_TEST_64
-       bool "Extend test to 64 bit"
-       default BUSYBOX_DEFAULT_FEATURE_TEST_64
-       depends on BUSYBOX_CONFIG_TEST || BUSYBOX_CONFIG_ASH_BUILTIN_TEST || BUSYBOX_CONFIG_HUSH
-       help
-         Enable 64-bit support in test.
-config BUSYBOX_CONFIG_TOUCH
-       bool "touch"
-       default BUSYBOX_DEFAULT_TOUCH
-       help
-         touch is used to create or change the access and/or
-         modification timestamp of specified files.
-
-config BUSYBOX_CONFIG_FEATURE_TOUCH_NODEREF
-       bool "Add support for -h"
-       default BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF
-       depends on BUSYBOX_CONFIG_TOUCH
-       help
-         Enable touch to have the -h option.
-         This requires libc support for lutimes() function.
-
-config BUSYBOX_CONFIG_FEATURE_TOUCH_SUSV3
-       bool "Add support for SUSV3 features (-d -t -r)"
-       default BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3
-       depends on BUSYBOX_CONFIG_TOUCH
-       help
-         Enable touch to use a reference file or a given date/time argument.
-config BUSYBOX_CONFIG_TR
-       bool "tr"
-       default BUSYBOX_DEFAULT_TR
-       help
-         tr is used to squeeze, and/or delete characters from standard
-         input, writing to standard output.
-
-config BUSYBOX_CONFIG_FEATURE_TR_CLASSES
-       bool "Enable character classes (such as [:upper:])"
-       default BUSYBOX_DEFAULT_FEATURE_TR_CLASSES
-       depends on BUSYBOX_CONFIG_TR
-       help
-         Enable character classes, enabling commands such as:
-         tr [:upper:] [:lower:] to convert input into lowercase.
-
-config BUSYBOX_CONFIG_FEATURE_TR_EQUIV
-       bool "Enable equivalence classes"
-       default BUSYBOX_DEFAULT_FEATURE_TR_EQUIV
-       depends on BUSYBOX_CONFIG_TR
-       help
-         Enable equivalence classes, which essentially add the enclosed
-         character to the current set. For instance, tr [=a=] xyz would
-         replace all instances of 'a' with 'xyz'. This option is mainly
-         useful for cases when no other way of expressing a character
-         is possible.
-config BUSYBOX_CONFIG_TRUNCATE
-       bool "truncate"
-       default BUSYBOX_DEFAULT_TRUNCATE
-       help
-         truncate truncates files to a given size. If a file does
-         not exist, it is created unless told otherwise.
-config BUSYBOX_CONFIG_UNLINK
-       bool "unlink"
-       default BUSYBOX_DEFAULT_UNLINK
-       help
-         unlink deletes a file by calling unlink()
-config BUSYBOX_CONFIG_BASE64
-       bool "base64"
-       default BUSYBOX_DEFAULT_BASE64
-       help
-         Base64 encode and decode
-config BUSYBOX_CONFIG_WHO
-      bool "who"
-      default BUSYBOX_DEFAULT_WHO
-      depends on BUSYBOX_CONFIG_FEATURE_UTMP
-      help
-        who is used to show who is logged on.
-config BUSYBOX_CONFIG_USERS
-      bool "users"
-      default BUSYBOX_DEFAULT_USERS
-      depends on BUSYBOX_CONFIG_FEATURE_UTMP
-      help
-        Print users currently logged on.
-
-config BUSYBOX_CONFIG_CAL
-       bool "cal"
-       default BUSYBOX_DEFAULT_CAL
-       help
-         cal is used to display a monthly calendar.
-
-config BUSYBOX_CONFIG_CATV
-       bool "catv"
-       default BUSYBOX_DEFAULT_CATV
-       help
-         Display nonprinting characters as escape sequences (like some
-         implementations' cat -v option).
-
-config BUSYBOX_CONFIG_CHGRP
-       bool "chgrp"
-       default BUSYBOX_DEFAULT_CHGRP
-       help
-         chgrp is used to change the group ownership of files.
-
-config BUSYBOX_CONFIG_CHMOD
-       bool "chmod"
-       default BUSYBOX_DEFAULT_CHMOD
-       help
-         chmod is used to change the access permission of files.
-
-config BUSYBOX_CONFIG_CHOWN
-       bool "chown"
-       default BUSYBOX_DEFAULT_CHOWN
-       help
-         chown is used to change the user and/or group ownership
-         of files.
-
-config BUSYBOX_CONFIG_FEATURE_CHOWN_LONG_OPTIONS
-       bool "Enable long options"
-       default BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS
-       depends on BUSYBOX_CONFIG_CHOWN && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Enable use of long options
-
-config BUSYBOX_CONFIG_CHROOT
-       bool "chroot"
-       default BUSYBOX_DEFAULT_CHROOT
-       help
-         chroot is used to change the root directory and run a command.
-         The default command is `/bin/sh'.
-
-config BUSYBOX_CONFIG_CKSUM
-       bool "cksum"
-       default BUSYBOX_DEFAULT_CKSUM
-       help
-         cksum is used to calculate the CRC32 checksum of a file.
-
-config BUSYBOX_CONFIG_COMM
-       bool "comm"
-       default BUSYBOX_DEFAULT_COMM
-       help
-         comm is used to compare two files line by line and return
-         a three-column output.
-
-config BUSYBOX_CONFIG_CP
-       bool "cp"
-       default BUSYBOX_DEFAULT_CP
-       help
-         cp is used to copy files and directories.
-
-config BUSYBOX_CONFIG_FEATURE_CP_LONG_OPTIONS
-       bool "Enable long options for cp"
-       default BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS
-       depends on BUSYBOX_CONFIG_CP && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Enable long options for cp.
-         Also add support for --parents option.
-
-config BUSYBOX_CONFIG_CUT
-       bool "cut"
-       default BUSYBOX_DEFAULT_CUT
-       help
-         cut is used to print selected parts of lines from
-         each file to stdout.
-
 config BUSYBOX_CONFIG_DF
        bool "df"
        default BUSYBOX_DEFAULT_DF
@@ -344,29 +189,25 @@ config BUSYBOX_CONFIG_FEATURE_DF_FANCY
            -a Show all filesystems
            -i Inodes
            -B <SIZE> Blocksize
-
 config BUSYBOX_CONFIG_DIRNAME
        bool "dirname"
        default BUSYBOX_DEFAULT_DIRNAME
        help
          dirname is used to strip a non-directory suffix from
          a file name.
-
 config BUSYBOX_CONFIG_DOS2UNIX
-       bool "dos2unix/unix2dos"
+       bool "dos2unix"
        default BUSYBOX_DEFAULT_DOS2UNIX
        help
          dos2unix is used to convert a text file from DOS format to
          UNIX format, and vice versa.
 
 config BUSYBOX_CONFIG_UNIX2DOS
-       bool
+       bool "unix2dos"
        default BUSYBOX_DEFAULT_UNIX2DOS
-       depends on BUSYBOX_CONFIG_DOS2UNIX
        help
          unix2dos is used to convert a text file from UNIX format to
          DOS format, and vice versa.
-
 config BUSYBOX_CONFIG_DU
        bool "du (default blocksize of 512 bytes)"
        default BUSYBOX_DEFAULT_DU
@@ -380,7 +221,6 @@ config BUSYBOX_CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K
        depends on BUSYBOX_CONFIG_DU
        help
          Use a blocksize of (1K) instead of the default 512b.
-
 config BUSYBOX_CONFIG_ECHO
        bool "echo (basic SuSv3 version taking no options)"
        default BUSYBOX_DEFAULT_ECHO
@@ -394,7 +234,6 @@ config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO
        depends on BUSYBOX_CONFIG_ECHO || BUSYBOX_CONFIG_ASH_BUILTIN_ECHO || BUSYBOX_CONFIG_HUSH
        help
          This adds options (-n and -e) to echo.
-
 config BUSYBOX_CONFIG_ENV
        bool "env"
        default BUSYBOX_DEFAULT_ENV
@@ -409,7 +248,6 @@ config BUSYBOX_CONFIG_FEATURE_ENV_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_ENV && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the env applet.
-
 config BUSYBOX_CONFIG_EXPAND
        bool "expand"
        default BUSYBOX_DEFAULT_EXPAND
@@ -423,6 +261,18 @@ config BUSYBOX_CONFIG_FEATURE_EXPAND_LONG_OPTIONS
        help
          Support long options for the expand applet.
 
+config BUSYBOX_CONFIG_UNEXPAND
+       bool "unexpand"
+       default BUSYBOX_DEFAULT_UNEXPAND
+       help
+         By default, convert only leading sequences of blanks to tabs.
+
+config BUSYBOX_CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS
+       bool "Enable long options"
+       default BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS
+       depends on BUSYBOX_CONFIG_UNEXPAND && BUSYBOX_CONFIG_LONG_OPTS
+       help
+         Support long options for the unexpand applet.
 config BUSYBOX_CONFIG_EXPR
        bool "expr"
        default BUSYBOX_DEFAULT_EXPR
@@ -438,25 +288,21 @@ config BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64
          Enable 64-bit math support in the expr applet. This will make
          the applet slightly larger, but will allow computation with very
          large numbers.
-
 config BUSYBOX_CONFIG_FALSE
        bool "false"
        default BUSYBOX_DEFAULT_FALSE
        help
          false returns an exit code of FALSE (1).
-
 config BUSYBOX_CONFIG_FOLD
        bool "fold"
        default BUSYBOX_DEFAULT_FOLD
        help
          Wrap text to fit a specific width.
-
 config BUSYBOX_CONFIG_FSYNC
        bool "fsync"
        default BUSYBOX_DEFAULT_FSYNC
        help
          fsync is used to flush file-related cached blocks to disk.
-
 config BUSYBOX_CONFIG_HEAD
        bool "head"
        default BUSYBOX_DEFAULT_HEAD
@@ -469,8 +315,24 @@ config BUSYBOX_CONFIG_FEATURE_FANCY_HEAD
        default BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD
        depends on BUSYBOX_CONFIG_HEAD
        help
-         This enables the head options (-c, -q, and -v).
+         This enables the head options (-c, -q, and -v).
+config BUSYBOX_CONFIG_HOSTID
+       bool "hostid"
+       default BUSYBOX_DEFAULT_HOSTID
+       help
+         hostid prints the numeric identifier (in hexadecimal) for
+         the current host.
+config BUSYBOX_CONFIG_ID
+       bool "id"
+       default BUSYBOX_DEFAULT_ID
+       help
+         id displays the current user and group ID names.
 
+config BUSYBOX_CONFIG_GROUPS
+       bool "groups"
+       default BUSYBOX_DEFAULT_GROUPS
+       help
+         Print the group names associated with current user id.
 config BUSYBOX_CONFIG_INSTALL
        bool "install"
        default BUSYBOX_DEFAULT_INSTALL
@@ -483,25 +345,16 @@ config BUSYBOX_CONFIG_FEATURE_INSTALL_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_INSTALL && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the install applet.
-
-####config LENGTH
-####   bool "length"
-####   default y
-####   help
-####     length is used to print out the length of a specified string.
-
 config BUSYBOX_CONFIG_LN
        bool "ln"
        default BUSYBOX_DEFAULT_LN
        help
          ln is used to create hard or soft links between files.
-
 config BUSYBOX_CONFIG_LOGNAME
        bool "logname"
        default BUSYBOX_DEFAULT_LOGNAME
        help
          logname is used to print the current user's login name.
-
 config BUSYBOX_CONFIG_LS
        bool "ls"
        default BUSYBOX_DEFAULT_LS
@@ -567,13 +420,48 @@ config BUSYBOX_CONFIG_FEATURE_LS_COLOR_IS_DEFAULT
          This is not recommended, since the colors are not
          configurable, and the output may not be legible on
          many output screens.
-
 config BUSYBOX_CONFIG_MD5SUM
        bool "md5sum"
        default BUSYBOX_DEFAULT_MD5SUM
        help
          md5sum is used to print or check MD5 checksums.
 
+config BUSYBOX_CONFIG_SHA1SUM
+       bool "sha1sum"
+       default BUSYBOX_DEFAULT_SHA1SUM
+       help
+         Compute and check SHA1 message digest
+
+config BUSYBOX_CONFIG_SHA256SUM
+       bool "sha256sum"
+       default BUSYBOX_DEFAULT_SHA256SUM
+       help
+         Compute and check SHA256 message digest
+
+config BUSYBOX_CONFIG_SHA512SUM
+       bool "sha512sum"
+       default BUSYBOX_DEFAULT_SHA512SUM
+       help
+         Compute and check SHA512 message digest
+
+config BUSYBOX_CONFIG_SHA3SUM
+       bool "sha3sum"
+       default BUSYBOX_DEFAULT_SHA3SUM
+       help
+         Compute and check SHA3 message digest
+
+comment "Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum"
+       depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM || BUSYBOX_CONFIG_SHA256SUM || BUSYBOX_CONFIG_SHA512SUM || BUSYBOX_CONFIG_SHA3SUM
+
+config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK
+       bool "Enable -c, -s and -w options"
+       default BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK
+       depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM || BUSYBOX_CONFIG_SHA256SUM || BUSYBOX_CONFIG_SHA512SUM || BUSYBOX_CONFIG_SHA3SUM
+       help
+         Enabling the -c options allows files to be checked
+         against pre-calculated hash values.
+
+         -s and -w are useful options when verifying checksums.
 config BUSYBOX_CONFIG_MKDIR
        bool "mkdir"
        default BUSYBOX_DEFAULT_MKDIR
@@ -586,21 +474,18 @@ config BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_MKDIR && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the mkdir applet.
-
 config BUSYBOX_CONFIG_MKFIFO
        bool "mkfifo"
        default BUSYBOX_DEFAULT_MKFIFO
        help
          mkfifo is used to create FIFOs (named pipes).
-         The `mknod' program can also create FIFOs.
-
+         The 'mknod' program can also create FIFOs.
 config BUSYBOX_CONFIG_MKNOD
        bool "mknod"
        default BUSYBOX_DEFAULT_MKNOD
        help
          mknod is used to create FIFOs or block/character special
          files with the specified names.
-
 config BUSYBOX_CONFIG_MV
        bool "mv"
        default BUSYBOX_DEFAULT_MV
@@ -613,44 +498,37 @@ config BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_MV && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the mv applet.
-
 config BUSYBOX_CONFIG_NICE
        bool "nice"
        default BUSYBOX_DEFAULT_NICE
        help
          nice runs a program with modified scheduling priority.
-
 config BUSYBOX_CONFIG_NOHUP
        bool "nohup"
        default BUSYBOX_DEFAULT_NOHUP
        help
          run a command immune to hangups, with output to a non-tty.
-
 config BUSYBOX_CONFIG_OD
        bool "od"
        default BUSYBOX_DEFAULT_OD
        help
          od is used to dump binary files in octal and other formats.
-
 config BUSYBOX_CONFIG_PRINTENV
        bool "printenv"
        default BUSYBOX_DEFAULT_PRINTENV
        help
          printenv is used to print all or part of environment.
-
 config BUSYBOX_CONFIG_PRINTF
        bool "printf"
        default BUSYBOX_DEFAULT_PRINTF
        help
          printf is used to format and print specified strings.
          It's similar to `echo' except it has more options.
-
 config BUSYBOX_CONFIG_PWD
        bool "pwd"
        default BUSYBOX_DEFAULT_PWD
        help
          pwd is used to print the current directory.
-
 config BUSYBOX_CONFIG_READLINK
        bool "readlink"
        default BUSYBOX_DEFAULT_READLINK
@@ -664,20 +542,17 @@ config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW
        depends on BUSYBOX_CONFIG_READLINK
        help
          Enable the readlink option (-f).
-
 config BUSYBOX_CONFIG_REALPATH
        bool "realpath"
        default BUSYBOX_DEFAULT_REALPATH
        help
          Return the canonicalized absolute pathname.
          This isn't provided by GNU shellutils, but where else does it belong.
-
 config BUSYBOX_CONFIG_RM
        bool "rm"
        default BUSYBOX_DEFAULT_RM
        help
          rm is used to remove files or directories.
-
 config BUSYBOX_CONFIG_RMDIR
        bool "rmdir"
        default BUSYBOX_DEFAULT_RMDIR
@@ -691,37 +566,16 @@ config BUSYBOX_CONFIG_FEATURE_RMDIR_LONG_OPTIONS
        help
          Support long options for the rmdir applet, including
          --ignore-fail-on-non-empty for compatibility with GNU rmdir.
-
 config BUSYBOX_CONFIG_SEQ
        bool "seq"
        default BUSYBOX_DEFAULT_SEQ
        help
          print a sequence of numbers
-
-config BUSYBOX_CONFIG_SHA1SUM
-       bool "sha1sum"
-       default BUSYBOX_DEFAULT_SHA1SUM
-       help
-         Compute and check SHA1 message digest
-
-config BUSYBOX_CONFIG_SHA256SUM
-       bool "sha256sum"
-       default BUSYBOX_DEFAULT_SHA256SUM
-       help
-         Compute and check SHA256 message digest
-
-config BUSYBOX_CONFIG_SHA512SUM
-       bool "sha512sum"
-       default BUSYBOX_DEFAULT_SHA512SUM
-       help
-         Compute and check SHA512 message digest
-
-config BUSYBOX_CONFIG_SHA3SUM
-       bool "sha3sum"
-       default BUSYBOX_DEFAULT_SHA3SUM
+config BUSYBOX_CONFIG_SHUF
+       bool "shuf"
+       default BUSYBOX_DEFAULT_SHUF
        help
-         Compute and check SHA3 (512-bit) message digest
-
+         Generate random permutations
 config BUSYBOX_CONFIG_SLEEP
        bool "sleep"
        default BUSYBOX_DEFAULT_SLEEP
@@ -749,7 +603,6 @@ config BUSYBOX_CONFIG_FEATURE_FLOAT_SLEEP
        depends on BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP
        help
          Allow for fractional numeric parameters.
-
 config BUSYBOX_CONFIG_SORT
        bool "sort"
        default BUSYBOX_DEFAULT_SORT
@@ -767,7 +620,6 @@ config BUSYBOX_CONFIG_FEATURE_SORT_BIG
 
          The SuSv3 sort standard is available at:
          http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html
-
 config BUSYBOX_CONFIG_SPLIT
        bool "split"
        default BUSYBOX_DEFAULT_SPLIT
@@ -782,25 +634,56 @@ config BUSYBOX_CONFIG_FEATURE_SPLIT_FANCY
          Add support for features not required by SUSv3.
          Supports additional suffixes 'b' for 512 bytes,
          'g' for 1GiB for the -b option.
+config BUSYBOX_CONFIG_STAT
+       bool "stat"
+       default BUSYBOX_DEFAULT_STAT
+       help
+         display file or filesystem status.
+
+config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT
+       bool "Enable custom formats (-c)"
+       default BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT
+       depends on BUSYBOX_CONFIG_STAT
+       help
+         Without this, stat will not support the '-c format' option where
+         users can pass a custom format string for output. This adds about
+         7k to a nonstatic build on amd64.
 
+config BUSYBOX_CONFIG_FEATURE_STAT_FILESYSTEM
+       bool "Enable display of filesystem status (-f)"
+       default BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM
+       depends on BUSYBOX_CONFIG_STAT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs()
+       help
+         Without this, stat will not support the '-f' option to display
+         information about filesystem status.
 config BUSYBOX_CONFIG_STTY
        bool "stty"
        default BUSYBOX_DEFAULT_STTY
        help
          stty is used to change and print terminal line settings.
-
 config BUSYBOX_CONFIG_SUM
        bool "sum"
        default BUSYBOX_DEFAULT_SUM
        help
          checksum and count the blocks in a file
-
+config BUSYBOX_CONFIG_SYNC
+       bool "sync"
+       default BUSYBOX_DEFAULT_SYNC
+       help
+         sync is used to flush filesystem buffers.
+config BUSYBOX_CONFIG_FEATURE_SYNC_FANCY
+       bool "Enable -d and -f flags (requires syncfs(2) in libc)"
+       default BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY
+       depends on BUSYBOX_CONFIG_SYNC
+       help
+         sync -d FILE... executes fdatasync() on each FILE.
+         sync -f FILE... executes syncfs() on each FILE.
 config BUSYBOX_CONFIG_TAC
        bool "tac"
        default BUSYBOX_DEFAULT_TAC
        help
          tac is used to concatenate and print files in reverse.
-
 config BUSYBOX_CONFIG_TAIL
        bool "tail"
        default BUSYBOX_DEFAULT_TAIL
@@ -820,7 +703,6 @@ config BUSYBOX_CONFIG_FEATURE_FANCY_TAIL
            -s SEC  Wait SEC seconds between reads with -f
            -v      Always output headers giving file names
            -F      Same as -f, but keep retrying
-
 config BUSYBOX_CONFIG_TEE
        bool "tee"
        default BUSYBOX_DEFAULT_TEE
@@ -834,20 +716,95 @@ config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO
        depends on BUSYBOX_CONFIG_TEE
        help
          Enable this option for a faster tee, at expense of size.
+config BUSYBOX_CONFIG_TEST
+       bool "test"
+       default BUSYBOX_DEFAULT_TEST
+       help
+         test is used to check file types and compare values,
+         returning an appropriate exit code. The bash shell
+         has test built in, ash can build it in optionally.
+
+config BUSYBOX_CONFIG_TEST1
+       bool "test as ["
+       default BUSYBOX_DEFAULT_TEST1
+       help
+         Provide test command in the "[ EXPR ]" form
+
+config BUSYBOX_CONFIG_TEST2
+       bool "test as [["
+       default BUSYBOX_DEFAULT_TEST2
+       help
+         Provide test command in the "[[ EXPR ]]" form
+
+config BUSYBOX_CONFIG_FEATURE_TEST_64
+       bool "Extend test to 64 bit"
+       default BUSYBOX_DEFAULT_FEATURE_TEST_64
+       depends on BUSYBOX_CONFIG_TEST || BUSYBOX_CONFIG_TEST1 || BUSYBOX_CONFIG_TEST2 || BUSYBOX_CONFIG_ASH_BUILTIN_TEST || BUSYBOX_CONFIG_HUSH
+       help
+         Enable 64-bit support in test.
+config BUSYBOX_CONFIG_TOUCH
+       bool "touch"
+       default BUSYBOX_DEFAULT_TOUCH
+       help
+         touch is used to create or change the access and/or
+         modification timestamp of specified files.
+
+config BUSYBOX_CONFIG_FEATURE_TOUCH_NODEREF
+       bool "Add support for -h"
+       default BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF
+       depends on BUSYBOX_CONFIG_TOUCH
+       help
+         Enable touch to have the -h option.
+         This requires libc support for lutimes() function.
+
+config BUSYBOX_CONFIG_FEATURE_TOUCH_SUSV3
+       bool "Add support for SUSV3 features (-d -t -r)"
+       default BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3
+       depends on BUSYBOX_CONFIG_TOUCH
+       help
+         Enable touch to use a reference file or a given date/time argument.
+config BUSYBOX_CONFIG_TR
+       bool "tr"
+       default BUSYBOX_DEFAULT_TR
+       help
+         tr is used to squeeze, and/or delete characters from standard
+         input, writing to standard output.
 
+config BUSYBOX_CONFIG_FEATURE_TR_CLASSES
+       bool "Enable character classes (such as [:upper:])"
+       default BUSYBOX_DEFAULT_FEATURE_TR_CLASSES
+       depends on BUSYBOX_CONFIG_TR
+       help
+         Enable character classes, enabling commands such as:
+         tr [:upper:] [:lower:] to convert input into lowercase.
+
+config BUSYBOX_CONFIG_FEATURE_TR_EQUIV
+       bool "Enable equivalence classes"
+       default BUSYBOX_DEFAULT_FEATURE_TR_EQUIV
+       depends on BUSYBOX_CONFIG_TR
+       help
+         Enable equivalence classes, which essentially add the enclosed
+         character to the current set. For instance, tr [=a=] xyz would
+         replace all instances of 'a' with 'xyz'. This option is mainly
+         useful for cases when no other way of expressing a character
+         is possible.
 config BUSYBOX_CONFIG_TRUE
        bool "true"
        default BUSYBOX_DEFAULT_TRUE
        help
          true returns an exit code of TRUE (0).
-
+config BUSYBOX_CONFIG_TRUNCATE
+       bool "truncate"
+       default BUSYBOX_DEFAULT_TRUNCATE
+       help
+         truncate truncates files to a given size. If a file does
+         not exist, it is created unless told otherwise.
 config BUSYBOX_CONFIG_TTY
        bool "tty"
        default BUSYBOX_DEFAULT_TTY
        help
          tty is used to print the name of the current terminal to
          standard output.
-
 config BUSYBOX_CONFIG_UNAME
        bool "uname"
        default BUSYBOX_DEFAULT_UNAME
@@ -861,44 +818,36 @@ config BUSYBOX_CONFIG_UNAME_OSNAME
        help
          Sets the operating system name reported by uname -o.  The
          default BUSYBOX_DEFAULT_UNAME_OSNAME "GNU/Linux".
-
-config BUSYBOX_CONFIG_UNEXPAND
-       bool "unexpand"
-       default BUSYBOX_DEFAULT_UNEXPAND
-       help
-         By default, convert only leading sequences of blanks to tabs.
-
-config BUSYBOX_CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS
-       bool "Enable long options"
-       default BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS
-       depends on BUSYBOX_CONFIG_UNEXPAND && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Support long options for the unexpand applet.
-
 config BUSYBOX_CONFIG_UNIQ
        bool "uniq"
        default BUSYBOX_DEFAULT_UNIQ
        help
          uniq is used to remove duplicate lines from a sorted file.
-
+config BUSYBOX_CONFIG_UNLINK
+       bool "unlink"
+       default BUSYBOX_DEFAULT_UNLINK
+       help
+         unlink deletes a file by calling unlink()
 config BUSYBOX_CONFIG_USLEEP
        bool "usleep"
        default BUSYBOX_DEFAULT_USLEEP
        help
          usleep is used to pause for a specified number of microseconds.
-
 config BUSYBOX_CONFIG_UUDECODE
        bool "uudecode"
        default BUSYBOX_DEFAULT_UUDECODE
        help
          uudecode is used to decode a uuencoded file.
-
+config BUSYBOX_CONFIG_BASE64
+       bool "base64"
+       default BUSYBOX_DEFAULT_BASE64
+       help
+         Base64 encode and decode
 config BUSYBOX_CONFIG_UUENCODE
        bool "uuencode"
        default BUSYBOX_DEFAULT_UUENCODE
        help
          uuencode is used to uuencode a file.
-
 config BUSYBOX_CONFIG_WC
        bool "wc"
        default BUSYBOX_DEFAULT_WC
@@ -912,14 +861,25 @@ config BUSYBOX_CONFIG_FEATURE_WC_LARGE
        depends on BUSYBOX_CONFIG_WC
        help
          Use "unsigned long long" in wc for counter variables.
+config BUSYBOX_CONFIG_WHO
+      bool "who"
+      default BUSYBOX_DEFAULT_WHO
+      depends on BUSYBOX_CONFIG_FEATURE_UTMP
+      help
+        who is used to show who is logged on.
 
+config BUSYBOX_CONFIG_USERS
+      bool "users"
+      default BUSYBOX_DEFAULT_USERS
+      depends on BUSYBOX_CONFIG_FEATURE_UTMP
+      help
+        Print users currently logged on.
 config BUSYBOX_CONFIG_WHOAMI
        bool "whoami"
        default BUSYBOX_DEFAULT_WHOAMI
        help
          whoami is used to print the username of the current
          user id (same as id -un).
-
 config BUSYBOX_CONFIG_YES
        bool "yes"
        default BUSYBOX_DEFAULT_YES
@@ -971,17 +931,4 @@ config BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE
        help
          Allow df, du, and ls to have human readable output.
 
-comment "Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum"
-       depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM || BUSYBOX_CONFIG_SHA256SUM || BUSYBOX_CONFIG_SHA512SUM || BUSYBOX_CONFIG_SHA3SUM
-
-config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK
-       bool "Enable -c, -s and -w options"
-       default BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK
-       depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM || BUSYBOX_CONFIG_SHA256SUM || BUSYBOX_CONFIG_SHA512SUM || BUSYBOX_CONFIG_SHA3SUM
-       help
-         Enabling the -c options allows files to be checked
-         against pre-calculated hash values.
-
-         -s and -w are useful options when verifying checksums.
-
 endmenu
index 85ee1db..7d636d1 100644 (file)
@@ -194,28 +194,22 @@ config BUSYBOX_CONFIG_GREP
        help
          grep is used to search files for a specified pattern.
 
-config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS
-       bool "Enable extended regular expressions (egrep & grep -E)"
-       default BUSYBOX_DEFAULT_FEATURE_GREP_EGREP_ALIAS
-       depends on BUSYBOX_CONFIG_GREP
+config BUSYBOX_CONFIG_EGREP
+       bool "egrep"
+       default BUSYBOX_DEFAULT_EGREP
        help
-         Enabled support for extended regular expressions. Extended
-         regular expressions allow for alternation (foo|bar), grouping,
-         and various repetition operators.
+         Alias to "grep -E"
 
-config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS
-       bool "Alias fgrep to grep -F"
-       default BUSYBOX_DEFAULT_FEATURE_GREP_FGREP_ALIAS
-       depends on BUSYBOX_CONFIG_GREP
+config BUSYBOX_CONFIG_FGREP
+       bool "fgrep"
+       default BUSYBOX_DEFAULT_FGREP
        help
-         fgrep sees the search pattern as a normal string rather than
-         regular expressions.
-         grep -F always works, this just creates the fgrep alias.
+         Alias to "grep -F"
 
 config BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT
        bool "Enable before and after context flags (-A, -B and -C)"
        default BUSYBOX_DEFAULT_FEATURE_GREP_CONTEXT
-       depends on BUSYBOX_CONFIG_GREP
+       depends on BUSYBOX_CONFIG_GREP || BUSYBOX_CONFIG_EGREP
        help
          Print the specified number of leading (-B) and/or trailing (-A)
          context surrounding our matching lines.
index 021656d..cd1a345 100644 (file)
@@ -45,15 +45,27 @@ config BUSYBOX_CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE
          Enable reading and parsing of $PWD/bootchartd.conf
          and /etc/bootchartd.conf files.
 config BUSYBOX_CONFIG_HALT
-       bool "poweroff, halt, and reboot"
+       bool "halt"
        default BUSYBOX_DEFAULT_HALT
        help
-         Stop all processes and either halt, reboot, or power off the system.
+         Stop all processes and halt the system.
+
+config BUSYBOX_CONFIG_POWEROFF
+       bool "poweroff"
+       default BUSYBOX_DEFAULT_POWEROFF
+       help
+         Stop all processes and power off the system.
+
+config BUSYBOX_CONFIG_REBOOT
+       bool "reboot"
+       default BUSYBOX_DEFAULT_REBOOT
+       help
+         Stop all processes and reboot the system.
 
 config BUSYBOX_CONFIG_FEATURE_CALL_TELINIT
        bool "Call telinit on shutdown and reboot"
        default BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT
-       depends on BUSYBOX_CONFIG_HALT && !BUSYBOX_CONFIG_INIT
+       depends on (BUSYBOX_CONFIG_HALT || BUSYBOX_CONFIG_POWEROFF || BUSYBOX_CONFIG_REBOOT) && !BUSYBOX_CONFIG_INIT
        help
          Call an external program (normally telinit) to facilitate
          a switch to a proper runlevel.
@@ -143,7 +155,7 @@ config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET
 
 config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS
        bool "Support dumping core for child processes (debugging only)"
-       default BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS
+       default BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS  # not Y because this is a debug option
        depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC
        help
          If this option is enabled and the file /.init_enable_core
index 0695f9b..ec08351 100644 (file)
@@ -45,6 +45,30 @@ config BUSYBOX_CONFIG_FEATURE_RTMINMAX
          Support RTMIN[+n] and RTMAX[-n] signal names
          in kill, killall etc. This costs ~250 bytes.
 
+choice
+       prompt "Buffer allocation policy"
+       default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
+       help
+         There are 3 ways BusyBox can handle buffer allocations:
+         - Use malloc. This costs code size for the call to xmalloc.
+         - Put them on stack. For some very small machines with limited stack
+           space, this can be deadly. For most folks, this works just fine.
+         - Put them in BSS. This works beautifully for computers with a real
+           MMU (and OS support), but wastes runtime RAM for uCLinux. This
+           behavior was the only one available for BusyBox versions 0.48 and
+           earlier.
+
+config BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC
+       bool "Allocate with Malloc"
+
+config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
+       bool "Allocate on the Stack"
+
+config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS
+       bool "Allocate in the .bss section"
+
+endchoice
+
 config BUSYBOX_CONFIG_PASSWORD_MINLEN
        int "Minimum password length"
        default BUSYBOX_DEFAULT_PASSWORD_MINLEN
@@ -191,6 +215,131 @@ config BUSYBOX_CONFIG_FEATURE_EDITING_ASK_TERMINAL
          correctly, or want to save on code size (about 400 bytes),
          then do not turn this option on.
 
+config BUSYBOX_CONFIG_LOCALE_SUPPORT
+       bool "Enable locale support (system needs locale for this to work)"
+       default BUSYBOX_DEFAULT_LOCALE_SUPPORT
+       help
+         Enable this if your system has locale support and you would like
+         busybox to support locale settings.
+
+config BUSYBOX_CONFIG_UNICODE_SUPPORT
+       bool "Support Unicode"
+       default BUSYBOX_DEFAULT_UNICODE_SUPPORT
+       help
+         This makes various applets aware that one byte is not
+         one character on screen.
+
+         Busybox aims to eventually work correctly with Unicode displays.
+         Any older encodings are not guaranteed to work.
+         Probably by the time when busybox will be fully Unicode-clean,
+         other encodings will be mainly of historic interest.
+
+config BUSYBOX_CONFIG_UNICODE_USING_LOCALE
+       bool "Use libc routines for Unicode (else uses internal ones)"
+       default BUSYBOX_DEFAULT_UNICODE_USING_LOCALE
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && BUSYBOX_CONFIG_LOCALE_SUPPORT
+       help
+         With this option on, Unicode support is implemented using libc
+         routines. Otherwise, internal implementation is used.
+         Internal implementation is smaller.
+
+config BUSYBOX_CONFIG_FEATURE_CHECK_UNICODE_IN_ENV
+       bool "Check $LC_ALL, $LC_CTYPE and $LANG environment variables"
+       default BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
+       help
+         With this option on, Unicode support is activated
+         only if locale-related variables have the value of the form
+         "xxxx.utf8"
+
+         Otherwise, Unicode support will be always enabled and active.
+
+config BUSYBOX_CONFIG_SUBST_WCHAR
+       int "Character code to substitute unprintable characters with"
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
+       default BUSYBOX_DEFAULT_SUBST_WCHAR
+       help
+         Typical values are 63 for '?' (works with any output device),
+         30 for ASCII substitute control code,
+         65533 (0xfffd) for Unicode replacement character.
+
+config BUSYBOX_CONFIG_LAST_SUPPORTED_WCHAR
+       int "Range of supported Unicode characters"
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
+       default BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR
+       help
+         Any character with Unicode value bigger than this is assumed
+         to be non-printable on output device. Many applets replace
+         such characters with substitution character.
+
+         The idea is that many valid printable Unicode chars
+         nevertheless are not displayed correctly. Think about
+         combining charachers, double-wide hieroglyphs, obscure
+         characters in dozens of ancient scripts...
+         Many terminals, terminal emulators, xterms etc will fail
+         to handle them correctly. Choose the smallest value
+         which suits your needs.
+
+         Typical values are:
+         126 - ASCII only
+         767 (0x2ff) - there are no combining chars in [0..767] range
+                       (the range includes Latin 1, Latin Ext. A and B),
+                       code is ~700 bytes smaller for this case.
+         4351 (0x10ff) - there are no double-wide chars in [0..4351] range,
+                       code is ~300 bytes smaller for this case.
+         12799 (0x31ff) - nearly all non-ideographic characters are
+                       available in [0..12799] range, including
+                       East Asian scripts like katakana, hiragana, hangul,
+                       bopomofo...
+         0 - off, any valid printable Unicode character will be printed.
+
+config BUSYBOX_CONFIG_UNICODE_COMBINING_WCHARS
+       bool "Allow zero-width Unicode characters on output"
+       default BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
+       help
+         With this option off, any Unicode char with width of 0
+         is substituted on output.
+
+config BUSYBOX_CONFIG_UNICODE_WIDE_WCHARS
+       bool "Allow wide Unicode characters on output"
+       default BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
+       help
+         With this option off, any Unicode char with width > 1
+         is substituted on output.
+
+config BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
+       bool "Bidirectional character-aware line input"
+       default BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
+       help
+         With this option on, right-to-left Unicode characters
+         are treated differently on input (e.g. cursor movement).
+
+config BUSYBOX_CONFIG_UNICODE_NEUTRAL_TABLE
+       bool "In bidi input, support non-ASCII neutral chars too"
+       default BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
+       depends on BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
+       help
+         In most cases it's enough to treat only ASCII non-letters
+         (i.e. punctuation, numbers and space) as characters
+         with neutral directionality.
+         With this option on, more extensive (and bigger) table
+         of neutral chars will be used.
+
+config BUSYBOX_CONFIG_UNICODE_PRESERVE_BROKEN
+       bool "Make it possible to enter sequences of chars which are not Unicode"
+       default BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
+       depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
+       help
+         With this option on, on line-editing input (such as used by shells)
+         invalid UTF-8 bytes are not substituted with the selected
+         substitution character.
+         For example, this means that entering 'l', 's', ' ', 0xff, [Enter]
+         at shell prompt will list file named 0xff (single char name
+         with char value 255), not file named '?'.
+
 config BUSYBOX_CONFIG_FEATURE_NON_POSIX_CP
        bool "Non-POSIX, but safer, copying to special nodes"
        default BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP
@@ -215,6 +364,19 @@ config BUSYBOX_CONFIG_FEATURE_VERBOSE_CP_MESSAGE
            cp: cannot stat '/vmlinuz/file': Not a directory
          This will cost you ~60 bytes.
 
+config BUSYBOX_CONFIG_FEATURE_USE_SENDFILE
+       bool "Use sendfile system call"
+       default BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         When enabled, busybox will use the kernel sendfile() function
+         instead of read/write loops to copy data between file descriptors
+         (for example, cp command does this a lot).
+         If sendfile() doesn't work, copying code falls back to read/write
+         loop. sendfile() was originally implemented for faster I/O
+         from files to sockets, but since Linux 2.6.33 it was extended
+         to work for many more file types.
+
 config BUSYBOX_CONFIG_FEATURE_COPYBUF_KB
        int "Copy buffer size, in kilobytes"
        range 1 1024
index 64b9a2b..7e77407 100644 (file)
@@ -1,20 +1,11 @@
 # DO NOT EDIT. This file is generated from Config.src
 menu "Mail Utilities"
 
-
 config BUSYBOX_CONFIG_MAKEMIME
        bool "makemime"
        default BUSYBOX_DEFAULT_MAKEMIME
        help
          Create MIME-formatted messages.
-
-config BUSYBOX_CONFIG_FEATURE_MIME_CHARSET
-       string "Default charset"
-       default BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
-       depends on BUSYBOX_CONFIG_MAKEMIME || BUSYBOX_CONFIG_REFORMIME || BUSYBOX_CONFIG_SENDMAIL
-       help
-         Default charset of the message.
-
 config BUSYBOX_CONFIG_POPMAILDIR
        bool "popmaildir"
        default BUSYBOX_DEFAULT_POPMAILDIR
@@ -31,7 +22,6 @@ config BUSYBOX_CONFIG_FEATURE_POPMAILDIR_DELIVERY
          of the message before actual delivery (-F "prog [args...]").
          Allow to use a custom program for message actual delivery
          (-M "prog [args...]").
-
 config BUSYBOX_CONFIG_REFORMIME
        bool "reformime"
        default BUSYBOX_DEFAULT_REFORMIME
@@ -45,11 +35,17 @@ config BUSYBOX_CONFIG_FEATURE_REFORMIME_COMPAT
        help
          Accept (for compatibility only) and ignore options
          other than -x and -X.
-
 config BUSYBOX_CONFIG_SENDMAIL
        bool "sendmail"
        default BUSYBOX_DEFAULT_SENDMAIL
        help
          Barebones sendmail.
 
+config BUSYBOX_CONFIG_FEATURE_MIME_CHARSET
+       string "Default charset"
+       default BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET
+       depends on BUSYBOX_CONFIG_MAKEMIME || BUSYBOX_CONFIG_REFORMIME || BUSYBOX_CONFIG_SENDMAIL
+       help
+         Default charset of the message.
+
 endmenu
index 3465df4..817a514 100644 (file)
@@ -6,259 +6,6 @@
 
 menu "Miscellaneous Utilities"
 
-config BUSYBOX_CONFIG_CONSPY
-       bool "conspy"
-       default BUSYBOX_DEFAULT_CONSPY
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         A text-mode VNC like program for Linux virtual terminals.
-         example:  conspy NUM      shared access to console num
-         or        conspy -nd NUM  screenshot of console num
-         or        conspy -cs NUM  poor man's GNU screen like
-config BUSYBOX_CONFIG_CROND
-       bool "crond"
-       default BUSYBOX_DEFAULT_CROND
-       select BUSYBOX_CONFIG_FEATURE_SYSLOG
-       help
-         Crond is a background daemon that parses individual crontab
-         files and executes commands on behalf of the users in question.
-         This is a port of dcron from slackware. It uses files of the
-         format /var/spool/cron/crontabs/<username> files, for example:
-             $ cat /var/spool/cron/crontabs/root
-             # Run daily cron jobs at 4:40 every day:
-             40 4 * * * /etc/cron/daily > /dev/null 2>&1
-
-config BUSYBOX_CONFIG_FEATURE_CROND_D
-       bool "Support option -d to redirect output to stderr"
-       depends on BUSYBOX_CONFIG_CROND
-       default BUSYBOX_DEFAULT_FEATURE_CROND_D
-       help
-         -d N sets loglevel (0:most verbose) and directs all output to stderr.
-
-config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
-       bool "Report command output via email (using sendmail)"
-       default BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL
-       depends on BUSYBOX_CONFIG_CROND
-       help
-         Command output will be sent to corresponding user via email.
-
-config BUSYBOX_CONFIG_FEATURE_CROND_DIR
-       string "crond spool directory"
-       default BUSYBOX_DEFAULT_FEATURE_CROND_DIR
-       depends on BUSYBOX_CONFIG_CROND || BUSYBOX_CONFIG_CRONTAB
-       help
-         Location of crond spool.
-config BUSYBOX_CONFIG_I2CGET
-       bool "i2cget"
-       default BUSYBOX_DEFAULT_I2CGET
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Read from I2C/SMBus chip registers.
-
-config BUSYBOX_CONFIG_I2CSET
-       bool "i2cset"
-       default BUSYBOX_DEFAULT_I2CSET
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Set I2C registers.
-
-config BUSYBOX_CONFIG_I2CDUMP
-       bool "i2cdump"
-       default BUSYBOX_DEFAULT_I2CDUMP
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Examine I2C registers.
-
-config BUSYBOX_CONFIG_I2CDETECT
-       bool "i2cdetect"
-       default BUSYBOX_DEFAULT_I2CDETECT
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Detect I2C chips.
-
-config BUSYBOX_CONFIG_LESS
-       bool "less"
-       default BUSYBOX_DEFAULT_LESS
-       help
-         'less' is a pager, meaning that it displays text files. It possesses
-         a wide array of features, and is an improvement over 'more'.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES
-       int "Max number of input lines less will try to eat"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES
-       depends on BUSYBOX_CONFIG_LESS
-
-config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
-       bool "Enable bracket searching"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         This option adds the capability to search for matching left and right
-         brackets, facilitating programming.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
-       bool "Enable -m/-M"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         The -M/-m flag enables a more sophisticated status line.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_TRUNCATE
-       bool "Enable -S"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         The -S flag causes long lines to be truncated rather than
-         wrapped.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
-       bool "Enable marks"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_MARKS
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Marks enable positions in a file to be stored for easy reference.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
-       bool "Enable regular expressions"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Enable regular expressions, allowing complex file searches.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
-       bool "Enable automatic resizing on window size changes"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_WINCH
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Makes less track window size changes.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_ASK_TERMINAL
-       bool "Use 'tell me cursor position' ESC sequence to measure window"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL
-       depends on BUSYBOX_CONFIG_FEATURE_LESS_WINCH
-       help
-         Makes less track window size changes.
-         If terminal size can't be retrieved and $LINES/$COLUMNS are not set,
-         this option makes less perform a last-ditch effort to find it:
-         position cursor to 999,999 and ask terminal to report real
-         cursor position using "ESC [ 6 n" escape sequence, then read stdin.
-
-         This is not clean but helps a lot on serial lines and such.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
-       bool "Enable flag changes ('-' command)"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         This enables the ability to change command-line flags within
-         less itself ('-' keyboard command).
-
-config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
-       bool "Enable dynamic switching of line numbers"
-       default BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS
-       depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
-       help
-         Enables "-N" command.
-config BUSYBOX_CONFIG_NANDWRITE
-       bool "nandwrite"
-       default BUSYBOX_DEFAULT_NANDWRITE
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Write to the specified MTD device, with bad blocks awareness
-
-config BUSYBOX_CONFIG_NANDDUMP
-       bool "nanddump"
-       default BUSYBOX_DEFAULT_NANDDUMP
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Dump the content of raw NAND chip
-config BUSYBOX_CONFIG_RFKILL
-       bool "rfkill"
-       default BUSYBOX_DEFAULT_RFKILL # doesn't build on Ubuntu 9.04
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Enable/disable wireless devices.
-
-         rfkill list : list all wireless devices
-         rfkill list bluetooth : list all bluetooth devices
-         rfkill list 1 : list device corresponding to the given index
-         rfkill block|unblock wlan : block/unblock all wlan(wifi) devices
-
-config BUSYBOX_CONFIG_SETSERIAL
-       bool "setserial"
-       default BUSYBOX_DEFAULT_SETSERIAL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Retrieve or set Linux serial port.
-config BUSYBOX_CONFIG_TASKSET
-       bool "taskset"
-       default BUSYBOX_DEFAULT_TASKSET  # doesn't build on some non-x86 targets (m68k)
-       help
-         Retrieve or set a processes's CPU affinity.
-         This requires sched_{g,s}etaffinity support in your libc.
-
-config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY
-       bool "Fancy output"
-       default BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY
-       depends on BUSYBOX_CONFIG_TASKSET
-       help
-         Add code for fancy output. This merely silences a compiler-warning
-         and adds about 135 Bytes. May be needed for machines with alot
-         of CPUs.
-config BUSYBOX_CONFIG_UBIATTACH
-       bool "ubiattach"
-       default BUSYBOX_DEFAULT_UBIATTACH
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Attach MTD device to an UBI device.
-
-config BUSYBOX_CONFIG_UBIDETACH
-       bool "ubidetach"
-       default BUSYBOX_DEFAULT_UBIDETACH
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Detach MTD device from an UBI device.
-
-config BUSYBOX_CONFIG_UBIMKVOL
-       bool "ubimkvol"
-       default BUSYBOX_DEFAULT_UBIMKVOL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Create a UBI volume.
-
-config BUSYBOX_CONFIG_UBIRMVOL
-       bool "ubirmvol"
-       default BUSYBOX_DEFAULT_UBIRMVOL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Delete a UBI volume.
-
-config BUSYBOX_CONFIG_UBIRSVOL
-       bool "ubirsvol"
-       default BUSYBOX_DEFAULT_UBIRSVOL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Resize a UBI volume.
-
-config BUSYBOX_CONFIG_UBIUPDATEVOL
-       bool "ubiupdatevol"
-       default BUSYBOX_DEFAULT_UBIUPDATEVOL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Update a UBI volume.
-config BUSYBOX_CONFIG_UBIRENAME
-       bool "ubirename"
-       default BUSYBOX_DEFAULT_UBIRENAME
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Utility to rename UBI volumes
-config BUSYBOX_CONFIG_WALL
-       bool "wall"
-       default BUSYBOX_DEFAULT_WALL
-       depends on BUSYBOX_CONFIG_FEATURE_UTMP
-       help
-         Write a message to all users that are logged in.
-
 config BUSYBOX_CONFIG_ADJTIMEX
        bool "adjtimex"
        default BUSYBOX_DEFAULT_ADJTIMEX
@@ -266,7 +13,6 @@ config BUSYBOX_CONFIG_ADJTIMEX
        help
          Adjtimex reads and optionally sets adjustment parameters for
          the Linux clock adjustment algorithm.
-
 config BUSYBOX_CONFIG_BBCONFIG
        bool "bbconfig"
        default BUSYBOX_DEFAULT_BBCONFIG
@@ -287,7 +33,6 @@ config BUSYBOX_CONFIG_FEATURE_COMPRESS_BBCONFIG
          be noticeable. Also, if you run executables directly from ROM
          and have very little memory, this might not be a win. Otherwise,
          you probably want this.
-
 config BUSYBOX_CONFIG_BEEP
        bool "beep"
        default BUSYBOX_DEFAULT_BEEP
@@ -310,7 +55,6 @@ config BUSYBOX_CONFIG_FEATURE_BEEP_LENGTH_MS
        depends on BUSYBOX_CONFIG_BEEP
        help
          Length in ms for default beep.
-
 config BUSYBOX_CONFIG_CHAT
        bool "chat"
        default BUSYBOX_DEFAULT_CHAT
@@ -377,14 +121,54 @@ config BUSYBOX_CONFIG_FEATURE_CHAT_CLR_ABORT
        default BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT
        help
          Support CLR_ABORT directive.
-
 config BUSYBOX_CONFIG_CHRT
        bool "chrt"
        default BUSYBOX_DEFAULT_CHRT
        help
          manipulate real-time attributes of a process.
          This requires sched_{g,s}etparam support in your libc.
+config BUSYBOX_CONFIG_CONSPY
+       bool "conspy"
+       default BUSYBOX_DEFAULT_CONSPY
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         A text-mode VNC like program for Linux virtual terminals.
+         example:  conspy NUM      shared access to console num
+         or        conspy -nd NUM  screenshot of console num
+         or        conspy -cs NUM  poor man's GNU screen like
+config BUSYBOX_CONFIG_CROND
+       bool "crond"
+       default BUSYBOX_DEFAULT_CROND
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
+       help
+         Crond is a background daemon that parses individual crontab
+         files and executes commands on behalf of the users in question.
+         This is a port of dcron from slackware. It uses files of the
+         format /var/spool/cron/crontabs/<username> files, for example:
+             $ cat /var/spool/cron/crontabs/root
+             # Run daily cron jobs at 4:40 every day:
+             40 4 * * * /etc/cron/daily > /dev/null 2>&1
 
+config BUSYBOX_CONFIG_FEATURE_CROND_D
+       bool "Support option -d to redirect output to stderr"
+       depends on BUSYBOX_CONFIG_CROND
+       default BUSYBOX_DEFAULT_FEATURE_CROND_D
+       help
+         -d N sets loglevel (0:most verbose) and directs all output to stderr.
+
+config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
+       bool "Report command output via email (using sendmail)"
+       default BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL
+       depends on BUSYBOX_CONFIG_CROND
+       help
+         Command output will be sent to corresponding user via email.
+
+config BUSYBOX_CONFIG_FEATURE_CROND_DIR
+       string "crond spool directory"
+       default BUSYBOX_DEFAULT_FEATURE_CROND_DIR
+       depends on BUSYBOX_CONFIG_CROND || BUSYBOX_CONFIG_CRONTAB
+       help
+         Location of crond spool.
 config BUSYBOX_CONFIG_CRONTAB
        bool "crontab"
        default BUSYBOX_DEFAULT_CRONTAB
@@ -393,7 +177,6 @@ config BUSYBOX_CONFIG_CRONTAB
          the superuser may specify a different user and/or crontab directory.
          Note that Busybox binary must be setuid root for this applet to
          work properly.
-
 config BUSYBOX_CONFIG_DC
        bool "dc"
        default BUSYBOX_DEFAULT_DC
@@ -408,7 +191,6 @@ config BUSYBOX_CONFIG_FEATURE_DC_LIBM
        help
          Enable power and exp functions.
          NOTE: This will require libm to be present for linking.
-
 config BUSYBOX_CONFIG_DEVFSD
        bool "devfsd (obsolete)"
        default BUSYBOX_DEFAULT_DEVFSD
@@ -465,14 +247,12 @@ config BUSYBOX_CONFIG_FEATURE_DEVFS
          tells busybox to look for names like /dev/loop/0 instead of
          /dev/loop0. If your /dev directory has normal names instead of
          devfs names, you don't want this.
-
 config BUSYBOX_CONFIG_DEVMEM
        bool "devmem"
        default BUSYBOX_DEFAULT_DEVMEM
        help
          devmem is a small program that reads and writes from physical
          memory using /dev/mem.
-
 config BUSYBOX_CONFIG_EJECT
        bool "eject"
        default BUSYBOX_DEFAULT_EJECT
@@ -487,7 +267,6 @@ config BUSYBOX_CONFIG_FEATURE_EJECT_SCSI
        help
          Add the -s option to eject, this allows to eject SCSI-Devices and
          usb-storage devices.
-
 config BUSYBOX_CONFIG_FBSPLASH
        bool "fbsplash"
        default BUSYBOX_DEFAULT_FBSPLASH
@@ -509,65 +288,31 @@ config BUSYBOX_CONFIG_FBSPLASH
          - commands for fifo:
            "NN" (ASCII decimal number) - percentage to show on progress bar
            "exit" - well you guessed it
-
-config BUSYBOX_CONFIG_FLASHCP
-       bool "flashcp"
-       default BUSYBOX_DEFAULT_FLASHCP  # doesn't build on Ubuntu 8.04
-       help
-         The flashcp binary, inspired by mtd-utils as of git head 5eceb74f7.
-         This utility is used to copy images into a MTD device.
-
-config BUSYBOX_CONFIG_FLASH_LOCK
-       bool "flash_lock"
-       default BUSYBOX_DEFAULT_FLASH_LOCK  # doesn't build on Ubuntu 8.04
-       help
-         The flash_lock binary from mtd-utils as of git head 5ec0c10d0. This
-         utility locks part or all of the flash device.
-
-config BUSYBOX_CONFIG_FLASH_UNLOCK
-       bool "flash_unlock"
-       default BUSYBOX_DEFAULT_FLASH_UNLOCK  # doesn't build on Ubuntu 8.04
-       help
-         The flash_unlock binary from mtd-utils as of git head 5ec0c10d0. This
-         utility unlocks part or all of the flash device.
-
 config BUSYBOX_CONFIG_FLASH_ERASEALL
        bool "flash_eraseall"
        default BUSYBOX_DEFAULT_FLASH_ERASEALL  # doesn't build on Ubuntu 8.04
        help
          The flash_eraseall binary from mtd-utils as of git head c4c6a59eb.
          This utility is used to erase the whole MTD device.
-
-config BUSYBOX_CONFIG_IONICE
-       bool "ionice"
-       default BUSYBOX_DEFAULT_IONICE
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Set/set program io scheduling class and priority
-         Requires kernel >= 2.6.13
-
-config BUSYBOX_CONFIG_INOTIFYD
-       bool "inotifyd"
-       default BUSYBOX_DEFAULT_INOTIFYD  # doesn't build on Knoppix 5
-       help
-         Simple inotify daemon. Reports filesystem changes. Requires
-         kernel >= 2.6.13
-
-config BUSYBOX_CONFIG_LAST
-       bool "last"
-       default BUSYBOX_DEFAULT_LAST
-       depends on BUSYBOX_CONFIG_FEATURE_WTMP
-       help
-         'last' displays a list of the last users that logged into the system.
-
-config BUSYBOX_CONFIG_FEATURE_LAST_FANCY
-       bool "Turn on output of extra information"
-       default BUSYBOX_DEFAULT_FEATURE_LAST_FANCY
-       depends on BUSYBOX_CONFIG_LAST
+config BUSYBOX_CONFIG_FLASH_LOCK
+       bool "flash_lock"
+       default BUSYBOX_DEFAULT_FLASH_LOCK  # doesn't build on Ubuntu 8.04
        help
-         'last' displays detailed information about the last users that
-         logged into the system (mimics sysvinit last). +900 bytes.
+         The flash_lock binary from mtd-utils as of git head 5ec0c10d0. This
+         utility locks part or all of the flash device.
 
+config BUSYBOX_CONFIG_FLASH_UNLOCK
+       bool "flash_unlock"
+       default BUSYBOX_DEFAULT_FLASH_UNLOCK  # doesn't build on Ubuntu 8.04
+       help
+         The flash_unlock binary from mtd-utils as of git head 5ec0c10d0. This
+         utility unlocks part or all of the flash device.
+config BUSYBOX_CONFIG_FLASHCP
+       bool "flashcp"
+       default BUSYBOX_DEFAULT_FLASHCP  # doesn't build on Ubuntu 8.04
+       help
+         The flashcp binary, inspired by mtd-utils as of git head 5eceb74f7.
+         This utility is used to copy images into a MTD device.
 config BUSYBOX_CONFIG_HDPARM
        bool "hdparm"
        default BUSYBOX_DEFAULT_HDPARM
@@ -626,13 +371,149 @@ config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA
        depends on BUSYBOX_CONFIG_HDPARM
        help
          Enables the 'hdparm -d' option to get/set using_dma flag.
+config BUSYBOX_CONFIG_I2CGET
+       bool "i2cget"
+       default BUSYBOX_DEFAULT_I2CGET
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Read from I2C/SMBus chip registers.
+
+config BUSYBOX_CONFIG_I2CSET
+       bool "i2cset"
+       default BUSYBOX_DEFAULT_I2CSET
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Set I2C registers.
+
+config BUSYBOX_CONFIG_I2CDUMP
+       bool "i2cdump"
+       default BUSYBOX_DEFAULT_I2CDUMP
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Examine I2C registers.
+
+config BUSYBOX_CONFIG_I2CDETECT
+       bool "i2cdetect"
+       default BUSYBOX_DEFAULT_I2CDETECT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Detect I2C chips.
+
+config BUSYBOX_CONFIG_INOTIFYD
+       bool "inotifyd"
+       default BUSYBOX_DEFAULT_INOTIFYD  # doesn't build on Knoppix 5
+       help
+         Simple inotify daemon. Reports filesystem changes. Requires
+         kernel >= 2.6.13
+config BUSYBOX_CONFIG_IONICE
+       bool "ionice"
+       default BUSYBOX_DEFAULT_IONICE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Set/set program io scheduling class and priority
+         Requires kernel >= 2.6.13
+config BUSYBOX_CONFIG_LAST
+       bool "last"
+       default BUSYBOX_DEFAULT_LAST
+       depends on BUSYBOX_CONFIG_FEATURE_WTMP
+       help
+         'last' displays a list of the last users that logged into the system.
+
+config BUSYBOX_CONFIG_FEATURE_LAST_FANCY
+       bool "Turn on output of extra information"
+       default BUSYBOX_DEFAULT_FEATURE_LAST_FANCY
+       depends on BUSYBOX_CONFIG_LAST
+       help
+         'last' displays detailed information about the last users that
+         logged into the system (mimics sysvinit last). +900 bytes.
+config BUSYBOX_CONFIG_LESS
+       bool "less"
+       default BUSYBOX_DEFAULT_LESS
+       help
+         'less' is a pager, meaning that it displays text files. It possesses
+         a wide array of features, and is an improvement over 'more'.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES
+       int "Max number of input lines less will try to eat"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES
+       depends on BUSYBOX_CONFIG_LESS
+
+config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
+       bool "Enable bracket searching"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         This option adds the capability to search for matching left and right
+         brackets, facilitating programming.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
+       bool "Enable -m/-M"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         The -M/-m flag enables a more sophisticated status line.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_TRUNCATE
+       bool "Enable -S"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         The -S flag causes long lines to be truncated rather than
+         wrapped.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
+       bool "Enable marks"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_MARKS
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Marks enable positions in a file to be stored for easy reference.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
+       bool "Enable regular expressions"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Enable regular expressions, allowing complex file searches.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
+       bool "Enable automatic resizing on window size changes"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_WINCH
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Makes less track window size changes.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_ASK_TERMINAL
+       bool "Use 'tell me cursor position' ESC sequence to measure window"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL
+       depends on BUSYBOX_CONFIG_FEATURE_LESS_WINCH
+       help
+         Makes less track window size changes.
+         If terminal size can't be retrieved and $LINES/$COLUMNS are not set,
+         this option makes less perform a last-ditch effort to find it:
+         position cursor to 999,999 and ask terminal to report real
+         cursor position using "ESC [ 6 n" escape sequence, then read stdin.
+
+         This is not clean but helps a lot on serial lines and such.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
+       bool "Enable flag changes ('-' command)"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         This enables the ability to change command-line flags within
+         less itself ('-' keyboard command).
 
+config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
+       bool "Enable dynamic switching of line numbers"
+       default BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS
+       depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
+       help
+         Enables "-N" command.
 config BUSYBOX_CONFIG_LOCK
        bool "lock"
        default BUSYBOX_DEFAULT_LOCK
        help
          Small utility for using locks in scripts
-
 config BUSYBOX_CONFIG_MAKEDEVS
        bool "makedevs"
        default BUSYBOX_DEFAULT_MAKEDEVS
@@ -664,25 +545,21 @@ config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE
        bool "table"
 
 endchoice
-
 config BUSYBOX_CONFIG_MAN
        bool "man"
        default BUSYBOX_DEFAULT_MAN
        help
          Format and display manual pages.
-
 config BUSYBOX_CONFIG_MICROCOM
        bool "microcom"
        default BUSYBOX_DEFAULT_MICROCOM
        help
          The poor man's minicom utility for chatting with serial port devices.
-
 config BUSYBOX_CONFIG_MOUNTPOINT
        bool "mountpoint"
        default BUSYBOX_DEFAULT_MOUNTPOINT
        help
          mountpoint checks if the directory is a mountpoint.
-
 config BUSYBOX_CONFIG_MT
        bool "mt"
        default BUSYBOX_DEFAULT_MT
@@ -690,7 +567,19 @@ config BUSYBOX_CONFIG_MT
          mt is used to control tape devices. You can use the mt utility
          to advance or rewind a tape past a specified number of archive
          files on the tape.
+config BUSYBOX_CONFIG_NANDWRITE
+       bool "nandwrite"
+       default BUSYBOX_DEFAULT_NANDWRITE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Write to the specified MTD device, with bad blocks awareness
 
+config BUSYBOX_CONFIG_NANDDUMP
+       bool "nanddump"
+       default BUSYBOX_DEFAULT_NANDDUMP
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Dump the content of raw NAND chip
 config BUSYBOX_CONFIG_RAIDAUTORUN
        bool "raidautorun"
        default BUSYBOX_DEFAULT_RAIDAUTORUN
@@ -698,7 +587,6 @@ config BUSYBOX_CONFIG_RAIDAUTORUN
        help
          raidautorun tells the kernel md driver to
          search and start RAID arrays.
-
 config BUSYBOX_CONFIG_READAHEAD
        bool "readahead"
        default BUSYBOX_DEFAULT_READAHEAD
@@ -716,6 +604,17 @@ config BUSYBOX_CONFIG_READAHEAD
 
          As readahead(2) blocks until each file has been read, it is best to
          run this applet as a background job.
+config BUSYBOX_CONFIG_RFKILL
+       bool "rfkill"
+       default BUSYBOX_DEFAULT_RFKILL # doesn't build on Ubuntu 9.04
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Enable/disable wireless devices.
+
+         rfkill list : list all wireless devices
+         rfkill list bluetooth : list all bluetooth devices
+         rfkill list 1 : list device corresponding to the given index
+         rfkill block|unblock wlan : block/unblock all wlan(wifi) devices
 
 config BUSYBOX_CONFIG_RUNLEVEL
        bool "runlevel"
@@ -726,27 +625,44 @@ config BUSYBOX_CONFIG_RUNLEVEL
 
          This applet uses utmp but does not rely on busybox supporing
          utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc.
-
 config BUSYBOX_CONFIG_RX
        bool "rx"
        default BUSYBOX_DEFAULT_RX
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Receive files using the Xmodem protocol.
-
+config BUSYBOX_CONFIG_SETSERIAL
+       bool "setserial"
+       default BUSYBOX_DEFAULT_SETSERIAL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Retrieve or set Linux serial port.
 config BUSYBOX_CONFIG_SETSID
        bool "setsid"
        default BUSYBOX_DEFAULT_SETSID
        help
          setsid runs a program in a new session
-
 config BUSYBOX_CONFIG_STRINGS
        bool "strings"
        default BUSYBOX_DEFAULT_STRINGS
        help
          strings prints the printable character sequences for each file
          specified.
+config BUSYBOX_CONFIG_TASKSET
+       bool "taskset"
+       default BUSYBOX_DEFAULT_TASKSET  # doesn't build on some non-x86 targets (m68k)
+       help
+         Retrieve or set a processes's CPU affinity.
+         This requires sched_{g,s}etaffinity support in your libc.
 
+config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY
+       bool "Fancy output"
+       default BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY
+       depends on BUSYBOX_CONFIG_TASKSET
+       help
+         Add code for fancy output. This merely silences a compiler-warning
+         and adds about 135 Bytes. May be needed for machines with alot
+         of CPUs.
 config BUSYBOX_CONFIG_TIME
        bool "time"
        default BUSYBOX_DEFAULT_TIME
@@ -754,14 +670,12 @@ config BUSYBOX_CONFIG_TIME
          The time command runs the specified program with the given arguments.
          When the command finishes, time writes a message to standard output
          giving timing statistics about this program run.
-
 config BUSYBOX_CONFIG_TIMEOUT
        bool "timeout"
        default BUSYBOX_DEFAULT_TIMEOUT
        help
          Runs a program and watches it. If it does not terminate in
          specified number of seconds, it is sent a signal.
-
 config BUSYBOX_CONFIG_TTYSIZE
        bool "ttysize"
        default BUSYBOX_DEFAULT_TTYSIZE
@@ -770,13 +684,64 @@ config BUSYBOX_CONFIG_TTYSIZE
          only height, or both, in any order. It also does not complain on
          error, but returns default 80x24.
          Usage in shell scripts: width=`ttysize w`.
+config BUSYBOX_CONFIG_UBIATTACH
+       bool "ubiattach"
+       default BUSYBOX_DEFAULT_UBIATTACH
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Attach MTD device to an UBI device.
+
+config BUSYBOX_CONFIG_UBIDETACH
+       bool "ubidetach"
+       default BUSYBOX_DEFAULT_UBIDETACH
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Detach MTD device from an UBI device.
+
+config BUSYBOX_CONFIG_UBIMKVOL
+       bool "ubimkvol"
+       default BUSYBOX_DEFAULT_UBIMKVOL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Create a UBI volume.
+
+config BUSYBOX_CONFIG_UBIRMVOL
+       bool "ubirmvol"
+       default BUSYBOX_DEFAULT_UBIRMVOL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Delete a UBI volume.
+
+config BUSYBOX_CONFIG_UBIRSVOL
+       bool "ubirsvol"
+       default BUSYBOX_DEFAULT_UBIRSVOL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Resize a UBI volume.
 
+config BUSYBOX_CONFIG_UBIUPDATEVOL
+       bool "ubiupdatevol"
+       default BUSYBOX_DEFAULT_UBIUPDATEVOL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Update a UBI volume.
+config BUSYBOX_CONFIG_UBIRENAME
+       bool "ubirename"
+       default BUSYBOX_DEFAULT_UBIRENAME
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Utility to rename UBI volumes
 config BUSYBOX_CONFIG_VOLNAME
        bool "volname"
        default BUSYBOX_DEFAULT_VOLNAME
        help
          Prints a CD-ROM volume name.
-
+config BUSYBOX_CONFIG_WALL
+       bool "wall"
+       default BUSYBOX_DEFAULT_WALL
+       depends on BUSYBOX_CONFIG_FEATURE_UTMP
+       help
+         Write a message to all users that are logged in.
 config BUSYBOX_CONFIG_WATCHDOG
        bool "watchdog"
        default BUSYBOX_DEFAULT_WATCHDOG
index 8e0e2af..5203db8 100644 (file)
@@ -6,13 +6,6 @@
 
 menu "Linux Module Utilities"
 
-config BUSYBOX_CONFIG_MODINFO
-       bool "modinfo"
-       default BUSYBOX_DEFAULT_MODINFO
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Show information about a Linux Kernel module
-
 config BUSYBOX_CONFIG_MODPROBE_SMALL
        bool "Simplified modutils"
        default BUSYBOX_DEFAULT_MODPROBE_SMALL
@@ -44,41 +37,23 @@ config BUSYBOX_CONFIG_MODPROBE_SMALL
          - rmmod is an alias to modprobe -r
          - depmod generates modules.dep.bb
 
-config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
-       bool "Accept module options on modprobe command line"
-       default BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
-       depends on BUSYBOX_CONFIG_MODPROBE_SMALL
+config BUSYBOX_CONFIG_DEPMOD
+       bool "depmod"
+       default BUSYBOX_DEFAULT_DEPMOD
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
-         Allow insmod and modprobe take module options from command line.
-
-config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
-       bool "Skip loading of already loaded modules"
-       default BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
-       depends on BUSYBOX_CONFIG_MODPROBE_SMALL
-       help
-         Check if the module is already loaded.
-
+         depmod generates modules.dep (and potentially modules.alias
+         and modules.symbols) that contain dependency information
+         for modprobe.
 config BUSYBOX_CONFIG_INSMOD
        bool "insmod"
        default BUSYBOX_DEFAULT_INSMOD
-       depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          insmod is used to load specified modules in the running kernel.
-
-config BUSYBOX_CONFIG_RMMOD
-       bool "rmmod"
-       default BUSYBOX_DEFAULT_RMMOD
-       depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         rmmod is used to unload specified modules from the kernel.
-
 config BUSYBOX_CONFIG_LSMOD
        bool "lsmod"
        default BUSYBOX_DEFAULT_LSMOD
-       depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          lsmod is used to display a list of loaded modules.
@@ -86,17 +61,35 @@ config BUSYBOX_CONFIG_LSMOD
 config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
        bool "Pretty output"
        default BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
-       depends on BUSYBOX_CONFIG_LSMOD
+       depends on BUSYBOX_CONFIG_LSMOD && !BUSYBOX_CONFIG_MODPROBE_SMALL
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          This option makes output format of lsmod adjusted to
          the format of module-init-tools for Linux kernel 2.6.
          Increases size somewhat.
+config BUSYBOX_CONFIG_MODINFO
+       bool "modinfo"
+       default BUSYBOX_DEFAULT_MODINFO
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Show information about a Linux Kernel module
+config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
+       bool "Accept module options on modprobe command line"
+       default BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
+       depends on BUSYBOX_CONFIG_MODPROBE_SMALL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Allow insmod and modprobe take module options from command line.
 
+config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
+       bool "Skip loading of already loaded modules"
+       default BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
+       depends on BUSYBOX_CONFIG_MODPROBE_SMALL
+       help
+         Check if the module is already loaded.
 config BUSYBOX_CONFIG_MODPROBE
        bool "modprobe"
        default BUSYBOX_DEFAULT_MODPROBE
-       depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Handle the loading of modules, and their dependencies on a high
@@ -105,7 +98,7 @@ config BUSYBOX_CONFIG_MODPROBE
 config BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST
        bool "Blacklist support"
        default BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST
-       depends on BUSYBOX_CONFIG_MODPROBE
+       depends on BUSYBOX_CONFIG_MODPROBE && !BUSYBOX_CONFIG_MODPROBE_SMALL
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Say 'y' here to enable support for the 'blacklist' command in
@@ -113,16 +106,12 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST
          blacklisted modules. This is useful if you want to prevent your
          hardware autodetection scripts to load modules like evdev, frame
          buffer drivers etc.
-
-config BUSYBOX_CONFIG_DEPMOD
-       bool "depmod"
-       default BUSYBOX_DEFAULT_DEPMOD
-       depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
+config BUSYBOX_CONFIG_RMMOD
+       bool "rmmod"
+       default BUSYBOX_DEFAULT_RMMOD
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
-         depmod generates modules.dep (and potentially modules.alias
-         and modules.symbols) that contain dependency information
-         for modprobe.
+         rmmod is used to unload specified modules from the kernel.
 
 comment "Options common to multiple modutils"
 
index 407ddd3..bc2f127 100644 (file)
@@ -6,183 +6,6 @@
 
 menu "Networking Utilities"
 
-config BUSYBOX_CONFIG_NAMEIF
-       bool "nameif"
-       default BUSYBOX_DEFAULT_NAMEIF
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       select BUSYBOX_CONFIG_FEATURE_SYSLOG
-       help
-         nameif is used to rename network interface by its MAC address.
-         Renamed interfaces MUST be in the down state.
-         It is possible to use a file (default: /etc/mactab)
-         with list of new interface names and MACs.
-         Maximum interface name length: IFNAMSIZ = 16
-         File fields are separated by space or tab.
-         File format:
-         # Comment
-         new_interface_name    XX:XX:XX:XX:XX:XX
-
-config BUSYBOX_CONFIG_FEATURE_NAMEIF_EXTENDED
-       bool "Extended nameif"
-       default BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED
-       depends on BUSYBOX_CONFIG_NAMEIF
-       help
-         This extends the nameif syntax to support the bus_info, driver,
-         phyaddr selectors. The syntax is compatible to the normal nameif.
-         File format:
-           new_interface_name  driver=asix bus=usb-0000:00:08.2-3
-           new_interface_name  bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
-           new_interface_name  phy_address=2 00:80:C8:38:91:B5
-           new_interface_name  mac=00:80:C8:38:91:B5
-           new_interface_name  00:80:C8:38:91:B5
-config BUSYBOX_CONFIG_NBDCLIENT
-       bool "nbd-client"
-       default BUSYBOX_DEFAULT_NBDCLIENT
-       help
-         Network block device client
-config BUSYBOX_CONFIG_NC
-       bool "nc"
-       default BUSYBOX_DEFAULT_NC
-       help
-         A simple Unix utility which reads and writes data across network
-         connections.
-
-config BUSYBOX_CONFIG_NC_SERVER
-       bool "Netcat server options (-l)"
-       default BUSYBOX_DEFAULT_NC_SERVER
-       depends on BUSYBOX_CONFIG_NC
-       help
-         Allow netcat to act as a server.
-
-config BUSYBOX_CONFIG_NC_EXTRA
-       bool "Netcat extensions (-eiw and -f FILE)"
-       default BUSYBOX_DEFAULT_NC_EXTRA
-       depends on BUSYBOX_CONFIG_NC
-       help
-         Add -e (support for executing the rest of the command line after
-         making or receiving a successful connection), -i (delay interval for
-         lines sent), -w (timeout for initial connection).
-
-config BUSYBOX_CONFIG_NC_110_COMPAT
-       bool "Netcat 1.10 compatibility (+2.5k)"
-       default BUSYBOX_DEFAULT_NC_110_COMPAT  # off specially for Rob
-       depends on BUSYBOX_CONFIG_NC
-       help
-         This option makes nc closely follow original nc-1.10.
-         The code is about 2.5k bigger. It enables
-         -s ADDR, -n, -u, -v, -o FILE, -z options, but loses
-         busybox-specific extensions: -f FILE.
-config BUSYBOX_CONFIG_PING
-       bool "ping"
-       default BUSYBOX_DEFAULT_PING
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
-         elicit an ICMP ECHO_RESPONSE from a host or gateway.
-
-config BUSYBOX_CONFIG_PING6
-       bool "ping6"
-       default BUSYBOX_DEFAULT_PING6
-       depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_PING
-       help
-         This will give you a ping that can talk IPv6.
-
-config BUSYBOX_CONFIG_FEATURE_FANCY_PING
-       bool "Enable fancy ping output"
-       default BUSYBOX_DEFAULT_FEATURE_FANCY_PING
-       depends on BUSYBOX_CONFIG_PING
-       help
-         Make the output from the ping applet include statistics, and at the
-         same time provide full support for ICMP packets.
-config BUSYBOX_CONFIG_WGET
-       bool "wget"
-       default BUSYBOX_DEFAULT_WGET
-       help
-         wget is a utility for non-interactive download of files from HTTP
-         and FTP servers.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR
-       bool "Enable a nifty process meter (+2k)"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR
-       depends on BUSYBOX_CONFIG_WGET
-       help
-         Enable the transfer progress bar for wget transfers.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION
-       bool "Enable HTTP authentication"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION
-       depends on BUSYBOX_CONFIG_WGET
-       help
-         Support authenticated HTTP transfers.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS
-       bool "Enable long options"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS
-       depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Support long options for the wget applet.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_TIMEOUT
-       bool "Enable timeout option -T SEC"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT
-       depends on BUSYBOX_CONFIG_WGET
-       help
-         Supports network read and connect timeouts for wget,
-         so that wget will give up and timeout, through the -T
-         command line option.
-
-         Currently only connect and network data read timeout are
-         supported (i.e., timeout is not applied to the DNS query). When
-         FEATURE_WGET_LONG_OPTIONS is also enabled, the --timeout option
-         will work in addition to -T.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_OPENSSL
-       bool "Try to connect to HTTPS using openssl"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL
-       depends on BUSYBOX_CONFIG_WGET
-       help
-         Choose how wget establishes SSL connection for https:// URLs.
-
-         Busybox itself contains no SSL code. wget will spawn
-         a helper program to talk over HTTPS.
-
-         OpenSSL has a simple SSL client for debug purposes.
-         If you select "openssl" helper, wget will effectively call
-         "openssl s_client -quiet -connect IP:443 2>/dev/null"
-         and pipe its data through it.
-         Note inconvenient API: host resolution is done twice,
-         and there is no guarantee openssl's idea of IPv6 address
-         format is the same as ours.
-         Another problem is that s_client prints debug information
-         to stderr, and it needs to be suppressed. This means
-         all error messages get suppressed too.
-         openssl is also a big binary, often dynamically linked
-         against ~15 libraries.
-
-config BUSYBOX_CONFIG_FEATURE_WGET_SSL_HELPER
-       bool "Try to connect to HTTPS using ssl_helper"
-       default BUSYBOX_DEFAULT_FEATURE_WGET_SSL_HELPER
-       depends on BUSYBOX_CONFIG_WGET
-       help
-         Choose how wget establishes SSL connection for https:// URLs.
-
-         Busybox itself contains no SSL code. wget will spawn
-         a helper program to talk over HTTPS.
-
-         ssl_helper is a tool which can be built statically
-         from busybox sources against a small embedded SSL library.
-         Please see networking/ssl_helper/README.
-         It does not require double host resolution and emits
-         error messages to stderr.
-
-         Precompiled static binary may be available at
-         http://busybox.net/downloads/binaries/
-config BUSYBOX_CONFIG_WHOIS
-       bool "whois"
-       default BUSYBOX_DEFAULT_WHOIS
-       help
-         whois is a client for the whois directory service
-
 config BUSYBOX_CONFIG_FEATURE_IPV6
        bool "Enable IPv6 support"
        default BUSYBOX_DEFAULT_FEATURE_IPV6
@@ -230,7 +53,6 @@ config BUSYBOX_CONFIG_ARP
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Manipulate the system ARP cache.
-
 config BUSYBOX_CONFIG_ARPING
        bool "arping"
        default BUSYBOX_DEFAULT_ARPING
@@ -264,37 +86,26 @@ config BUSYBOX_CONFIG_FEATURE_BRCTL_SHOW
        help
          Add support for option which prints the current config:
            show
-
 config BUSYBOX_CONFIG_DNSD
        bool "dnsd"
        default BUSYBOX_DEFAULT_DNSD
        help
          Small and static DNS server daemon.
-
 config BUSYBOX_CONFIG_ETHER_WAKE
        bool "ether-wake"
        default BUSYBOX_DEFAULT_ETHER_WAKE
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Send a magic packet to wake up sleeping machines.
-
-config BUSYBOX_CONFIG_FAKEIDENTD
-       bool "fakeidentd"
-       default BUSYBOX_DEFAULT_FAKEIDENTD
-       select BUSYBOX_CONFIG_FEATURE_SYSLOG
-       help
-         fakeidentd listens on the ident port and returns a predefined
-         fake value on any query.
-
 config BUSYBOX_CONFIG_FTPD
        bool "ftpd"
        default BUSYBOX_DEFAULT_FTPD
        help
          simple FTP daemon. You have to run it via inetd.
 
-config BUSYBOX_CONFIG_FEATURE_FTP_WRITE
+config BUSYBOX_CONFIG_FEATURE_FTPD_WRITE
        bool "Enable upload commands"
-       default BUSYBOX_DEFAULT_FEATURE_FTP_WRITE
+       default BUSYBOX_DEFAULT_FEATURE_FTPD_WRITE
        depends on BUSYBOX_CONFIG_FTPD
        help
          Enable all kinds of FTP upload commands (-w option)
@@ -310,13 +121,12 @@ config BUSYBOX_CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST
          it increases the code size by ~40 bytes.
          Most other ftp servers seem to behave similar to this.
 
-config BUSYBOX_CONFIG_FEATURE_FTP_AUTHENTICATION
+config BUSYBOX_CONFIG_FEATURE_FTPD_AUTHENTICATION
        bool "Enable authentication"
-       default BUSYBOX_DEFAULT_FEATURE_FTP_AUTHENTICATION
+       default BUSYBOX_DEFAULT_FEATURE_FTPD_AUTHENTICATION
        depends on BUSYBOX_CONFIG_FTPD
        help
          Enable basic system login as seen in telnet etc.
-
 config BUSYBOX_CONFIG_FTPGET
        bool "ftpget"
        default BUSYBOX_DEFAULT_FTPGET
@@ -335,13 +145,17 @@ config BUSYBOX_CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_LONG_OPTS && (BUSYBOX_CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT)
        help
          Support long options for the ftpget/ftpput applet.
-
 config BUSYBOX_CONFIG_HOSTNAME
        bool "hostname"
        default BUSYBOX_DEFAULT_HOSTNAME
        help
          Show or set the system's host name.
 
+config BUSYBOX_CONFIG_DNSDOMAINNAME
+       bool "dnsdomainname"
+       default BUSYBOX_DEFAULT_DNSDOMAINNAME
+       help
+         Alias to "hostname -d".
 config BUSYBOX_CONFIG_HTTPD
        bool "httpd"
        default BUSYBOX_DEFAULT_HTTPD
@@ -460,7 +274,6 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_GZIP
        help
          Makes httpd send files using GZIP content encoding if the
          client supports it and a pre-compressed <file>.gz exists.
-
 config BUSYBOX_CONFIG_IFCONFIG
        bool "ifconfig"
        default BUSYBOX_DEFAULT_IFCONFIG
@@ -508,7 +321,6 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
        help
          Setting this will make ifconfig attempt to find the broadcast
          automatically if the value '+' is used.
-
 config BUSYBOX_CONFIG_IFENSLAVE
        bool "ifenslave"
        default BUSYBOX_DEFAULT_IFENSLAVE
@@ -516,20 +328,18 @@ config BUSYBOX_CONFIG_IFENSLAVE
        help
          Userspace application to bind several interfaces
          to a logical interface (use with kernel bonding driver).
-
 config BUSYBOX_CONFIG_IFPLUGD
        bool "ifplugd"
        default BUSYBOX_DEFAULT_IFPLUGD
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Network interface plug detection daemon.
-
-config BUSYBOX_CONFIG_IFUPDOWN
-       bool "ifupdown"
-       default BUSYBOX_DEFAULT_IFUPDOWN
+config BUSYBOX_CONFIG_IFUP
+       bool "ifup"
+       default BUSYBOX_DEFAULT_IFUP
        help
-         Activate or deactivate the specified interfaces. This applet makes
-         use of either "ifconfig" and "route" or the "ip" command to actually
+         Activate the specified interfaces. This applet makes use
+         of either "ifconfig" and "route" or the "ip" command to actually
          configure network interfaces. Therefore, you will probably also want
          to enable either IFCONFIG and ROUTE, or enable
          FEATURE_IFUPDOWN_IP and the various IP options. Of
@@ -540,10 +350,16 @@ config BUSYBOX_CONFIG_IFUPDOWN
          "ifconfig", "route" and "run-parts" or the "ip" command, either
          via busybox or via standalone utilities.
 
+config BUSYBOX_CONFIG_IFDOWN
+       bool "ifdown"
+       default BUSYBOX_DEFAULT_IFDOWN
+       help
+         Deactivate the specified interfaces.
+
 config BUSYBOX_CONFIG_IFUPDOWN_IFSTATE_PATH
        string "Absolute path to ifstate file"
        default BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH
-       depends on BUSYBOX_CONFIG_IFUPDOWN
+       depends on BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN
        help
          ifupdown keeps state information in a file called ifstate.
          Typically it is located in /var/run/ifstate, however
@@ -552,69 +368,39 @@ config BUSYBOX_CONFIG_IFUPDOWN_IFSTATE_PATH
          This config option defines location of ifstate.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
-       bool "Use ip applet"
+       bool "Use ip tool (else ifconfig/route is used)"
        default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP
-       depends on BUSYBOX_CONFIG_IFUPDOWN
+       depends on BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN
        help
          Use the iproute "ip" command to implement "ifup" and "ifdown", rather
-         than the default of using the older 'ifconfig' and 'route' utilities.
-
-config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
-       bool "Use busybox ip applet"
-       default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP_BUILTIN
-       depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       select BUSYBOX_CONFIG_IP
-       select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
-       select BUSYBOX_CONFIG_FEATURE_IP_LINK
-       select BUSYBOX_CONFIG_FEATURE_IP_ROUTE
-       help
-         Use the busybox iproute "ip" applet to implement "ifupdown".
+         than the default of using the older "ifconfig" and "route" utilities.
 
-         If left disabled, you must install the full-blown iproute2
-         utility or the  "ifup" and "ifdown" applets will not work.
-
-config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
-       bool "Use busybox ifconfig and route applets"
-       default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
-       depends on BUSYBOX_CONFIG_IFUPDOWN && !BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
-       select BUSYBOX_CONFIG_IFCONFIG
-       select BUSYBOX_CONFIG_ROUTE
-       help
-         Use the busybox iproute "ifconfig" and "route" applets to
-         implement the "ifup" and "ifdown" utilities.
+         If Y: you must install either the full-blown iproute2 package
+         or enable "ip" applet in Busybox, or the "ifup" and "ifdown" applets
+         will not work.
 
-         If left disabled, you must install the full-blown ifconfig
-         and route utilities, or the  "ifup" and "ifdown" applets will not
-         work.
+         If N: you must install either the full-blown ifconfig and route
+         utilities, or enable these applets in Busybox.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4
        bool "Support for IPv4"
        default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4
-       depends on BUSYBOX_CONFIG_IFUPDOWN
+       depends on BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN
        help
          If you want ifup/ifdown to talk IPv4, leave this on.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6
        bool "Support for IPv6"
        default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV6
-       depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_FEATURE_IPV6
+       depends on (BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN) && BUSYBOX_CONFIG_FEATURE_IPV6
        help
          If you need support for IPv6, turn this option on.
 
-### UNUSED
-###config FEATURE_IFUPDOWN_IPX
-###    bool "Support for IPX"
-###    default y
-###    depends on IFUPDOWN
-###    help
-###      If this option is selected you can use busybox to work with IPX
-###      networks.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
        bool "Enable mapping support"
        default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_MAPPING
-       depends on BUSYBOX_CONFIG_IFUPDOWN
+       depends on BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN
        help
          This enables support for the "mapping" stanza, unless you have
          a weird network setup you don't need it.
@@ -622,13 +408,12 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP
        bool "Support for external dhcp clients"
        default BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_EXTERNAL_DHCP
-       depends on BUSYBOX_CONFIG_IFUPDOWN
+       depends on BUSYBOX_CONFIG_IFUP || BUSYBOX_CONFIG_IFDOWN
        help
          This enables support for the external dhcp clients. Clients are
          tried in the following order: dhcpcd, dhclient, pump and udhcpc.
          Otherwise, if udhcpc applet is enabled, it is used.
          Otherwise, ifup/ifdown will have no support for DHCP.
-
 config BUSYBOX_CONFIG_INETD
        bool "inetd"
        default BUSYBOX_DEFAULT_INETD
@@ -678,7 +463,6 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC
        select BUSYBOX_CONFIG_FEATURE_HAVE_RPC
        help
          Support Sun-RPC based services
-
 config BUSYBOX_CONFIG_IP
        bool "ip"
        default BUSYBOX_DEFAULT_IP
@@ -688,24 +472,72 @@ config BUSYBOX_CONFIG_IP
          utility. You generally don't need "ip" to use busybox with
          TCP/IP.
 
+config BUSYBOX_CONFIG_IPADDR
+       bool "ipaddr"
+       default BUSYBOX_DEFAULT_IPADDR
+       select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip addr: ipaddr
+
+config BUSYBOX_CONFIG_IPLINK
+       bool "iplink"
+       default BUSYBOX_DEFAULT_IPLINK
+       select BUSYBOX_CONFIG_FEATURE_IP_LINK
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip link: iplink
+
+config BUSYBOX_CONFIG_IPROUTE
+       bool "iproute"
+       default BUSYBOX_DEFAULT_IPROUTE
+       select BUSYBOX_CONFIG_FEATURE_IP_ROUTE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip route: iproute
+
+config BUSYBOX_CONFIG_IPTUNNEL
+       bool "iptunnel"
+       default BUSYBOX_DEFAULT_IPTUNNEL
+       select BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip tunnel: iptunnel
+
+config BUSYBOX_CONFIG_IPRULE
+       bool "iprule"
+       default BUSYBOX_DEFAULT_IPRULE
+       select BUSYBOX_CONFIG_FEATURE_IP_RULE
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip rule: iprule
+
+config BUSYBOX_CONFIG_IPNEIGH
+       bool "ipneigh"
+       default BUSYBOX_DEFAULT_IPNEIGH
+       select BUSYBOX_CONFIG_FEATURE_IP_NEIGH
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Support short form of ip neigh: ipneigh
+
 config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
        bool "ip address"
        default BUSYBOX_DEFAULT_FEATURE_IP_ADDRESS
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPADDR
        help
          Address manipulation support for the "ip" applet.
 
 config BUSYBOX_CONFIG_FEATURE_IP_LINK
        bool "ip link"
        default BUSYBOX_DEFAULT_FEATURE_IP_LINK
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPLINK
        help
          Configure network devices with "ip".
 
 config BUSYBOX_CONFIG_FEATURE_IP_ROUTE
        bool "ip route"
        default BUSYBOX_DEFAULT_FEATURE_IP_ROUTE
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPROUTE
        help
          Add support for routing table management to "ip".
 
@@ -719,80 +551,33 @@ config BUSYBOX_CONFIG_FEATURE_IP_ROUTE_DIR
 config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
        bool "ip tunnel"
        default BUSYBOX_DEFAULT_FEATURE_IP_TUNNEL
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPTUNNEL
        help
          Add support for tunneling commands to "ip".
 
 config BUSYBOX_CONFIG_FEATURE_IP_RULE
        bool "ip rule"
        default BUSYBOX_DEFAULT_FEATURE_IP_RULE
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPRULE
        help
          Add support for rule commands to "ip".
 
 config BUSYBOX_CONFIG_FEATURE_IP_NEIGH
        bool "ip neighbor"
        default BUSYBOX_DEFAULT_FEATURE_IP_NEIGH
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPNEIGH
        help
          Add support for neighbor commands to "ip".
 
-config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS
-       bool "Support short forms of ip commands"
-       default BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS
-       depends on BUSYBOX_CONFIG_IP
-       help
-         Also support short-form of ip <OBJECT> commands:
-         ip addr   -> ipaddr
-         ip link   -> iplink
-         ip route  -> iproute
-         ip tunnel -> iptunnel
-         ip rule   -> iprule
-         ip neigh  -> ipneigh
-
-         Say N unless you desparately need the short form of the ip
-         object commands.
-
 config BUSYBOX_CONFIG_FEATURE_IP_RARE_PROTOCOLS
        bool "Support displaying rarely used link types"
        default BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS
-       depends on BUSYBOX_CONFIG_IP
+       depends on BUSYBOX_CONFIG_IP || BUSYBOX_CONFIG_IPADDR || BUSYBOX_CONFIG_IPLINK || BUSYBOX_CONFIG_IPROUTE || BUSYBOX_CONFIG_IPTUNNEL || BUSYBOX_CONFIG_IPRULE || BUSYBOX_CONFIG_IPNEIGH
        help
          If you are not going to use links of type "frad", "econet",
          "bif" etc, you probably don't need to enable this.
          Ethernet, wireless, infrared, ppp/slip, ip tunnelling
          link types are supported without this option selected.
-
-config BUSYBOX_CONFIG_IPADDR
-       bool
-       default BUSYBOX_DEFAULT_IPADDR
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
-
-config BUSYBOX_CONFIG_IPLINK
-       bool
-       default BUSYBOX_DEFAULT_IPLINK
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_LINK
-
-config BUSYBOX_CONFIG_IPROUTE
-       bool
-       default BUSYBOX_DEFAULT_IPROUTE
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ROUTE
-
-config BUSYBOX_CONFIG_IPTUNNEL
-       bool
-       default BUSYBOX_DEFAULT_IPTUNNEL
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
-
-config BUSYBOX_CONFIG_IPRULE
-       bool
-       default BUSYBOX_DEFAULT_IPRULE
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_RULE
-
-config BUSYBOX_CONFIG_IPNEIGH
-       bool
-       default BUSYBOX_DEFAULT_IPNEIGH
-       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_NEIGH
-
 config BUSYBOX_CONFIG_IPCALC
        bool "ipcalc"
        default BUSYBOX_DEFAULT_IPCALC
@@ -814,13 +599,84 @@ config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_IPCALC && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the ipcalc applet.
+config BUSYBOX_CONFIG_FAKEIDENTD
+       bool "fakeidentd"
+       default BUSYBOX_DEFAULT_FAKEIDENTD
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
+       help
+         fakeidentd listens on the ident port and returns a predefined
+         fake value on any query.
+config BUSYBOX_CONFIG_NAMEIF
+       bool "nameif"
+       default BUSYBOX_DEFAULT_NAMEIF
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
+       help
+         nameif is used to rename network interface by its MAC address.
+         Renamed interfaces MUST be in the down state.
+         It is possible to use a file (default: /etc/mactab)
+         with list of new interface names and MACs.
+         Maximum interface name length: IFNAMSIZ = 16
+         File fields are separated by space or tab.
+         File format:
+         # Comment
+         new_interface_name    XX:XX:XX:XX:XX:XX
 
+config BUSYBOX_CONFIG_FEATURE_NAMEIF_EXTENDED
+       bool "Extended nameif"
+       default BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED
+       depends on BUSYBOX_CONFIG_NAMEIF
+       help
+         This extends the nameif syntax to support the bus_info, driver,
+         phyaddr selectors. The syntax is compatible to the normal nameif.
+         File format:
+           new_interface_name  driver=asix bus=usb-0000:00:08.2-3
+           new_interface_name  bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
+           new_interface_name  phy_address=2 00:80:C8:38:91:B5
+           new_interface_name  mac=00:80:C8:38:91:B5
+           new_interface_name  00:80:C8:38:91:B5
+config BUSYBOX_CONFIG_NBDCLIENT
+       bool "nbd-client"
+       default BUSYBOX_DEFAULT_NBDCLIENT
+       help
+         Network block device client
+config BUSYBOX_CONFIG_NC
+       bool "nc"
+       default BUSYBOX_DEFAULT_NC
+       help
+         A simple Unix utility which reads and writes data across network
+         connections.
+
+config BUSYBOX_CONFIG_NC_SERVER
+       bool "Netcat server options (-l)"
+       default BUSYBOX_DEFAULT_NC_SERVER
+       depends on BUSYBOX_CONFIG_NC
+       help
+         Allow netcat to act as a server.
+
+config BUSYBOX_CONFIG_NC_EXTRA
+       bool "Netcat extensions (-eiw and -f FILE)"
+       default BUSYBOX_DEFAULT_NC_EXTRA
+       depends on BUSYBOX_CONFIG_NC
+       help
+         Add -e (support for executing the rest of the command line after
+         making or receiving a successful connection), -i (delay interval for
+         lines sent), -w (timeout for initial connection).
+
+config BUSYBOX_CONFIG_NC_110_COMPAT
+       bool "Netcat 1.10 compatibility (+2.5k)"
+       default BUSYBOX_DEFAULT_NC_110_COMPAT  # off specially for Rob
+       depends on BUSYBOX_CONFIG_NC
+       help
+         This option makes nc closely follow original nc-1.10.
+         The code is about 2.5k bigger. It enables
+         -s ADDR, -n, -u, -v, -o FILE, -z options, but loses
+         busybox-specific extensions: -f FILE.
 config BUSYBOX_CONFIG_NETMSG
        bool "netmsg"
        default BUSYBOX_DEFAULT_NETMSG
        help
          simple program for sending udp broadcast messages
-
 config BUSYBOX_CONFIG_NETSTAT
        bool "netstat"
        default BUSYBOX_DEFAULT_NETSTAT
@@ -843,13 +699,11 @@ config BUSYBOX_CONFIG_FEATURE_NETSTAT_PRG
        help
          Add support for -p flag to print out PID and program name.
          +700 bytes of code.
-
 config BUSYBOX_CONFIG_NSLOOKUP
        bool "nslookup"
        default BUSYBOX_DEFAULT_NSLOOKUP
        help
          nslookup is a tool to query Internet name servers.
-
 config BUSYBOX_CONFIG_NTPD
        bool "ntpd"
        default BUSYBOX_DEFAULT_NTPD
@@ -872,20 +726,39 @@ config BUSYBOX_CONFIG_FEATURE_NTPD_CONF
        help
          Make ntpd look in /etc/ntp.conf for peers. Only "server address"
          is supported.
+config BUSYBOX_CONFIG_PING
+       bool "ping"
+       default BUSYBOX_DEFAULT_PING
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
+         elicit an ICMP ECHO_RESPONSE from a host or gateway.
 
+config BUSYBOX_CONFIG_PING6
+       bool "ping6"
+       default BUSYBOX_DEFAULT_PING6
+       depends on BUSYBOX_CONFIG_FEATURE_IPV6
+       help
+         This will give you a ping that can talk IPv6.
+
+config BUSYBOX_CONFIG_FEATURE_FANCY_PING
+       bool "Enable fancy ping output"
+       default BUSYBOX_DEFAULT_FEATURE_FANCY_PING
+       depends on BUSYBOX_CONFIG_PING || BUSYBOX_CONFIG_PING6
+       help
+         Make the output from the ping applet include statistics, and at the
+         same time provide full support for ICMP packets.
 config BUSYBOX_CONFIG_PSCAN
        bool "pscan"
        default BUSYBOX_DEFAULT_PSCAN
        help
          Simple network port scanner.
-
 config BUSYBOX_CONFIG_ROUTE
        bool "route"
        default BUSYBOX_DEFAULT_ROUTE
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Route displays or manipulates the kernel's IP routing tables.
-
 config BUSYBOX_CONFIG_SLATTACH
        bool "slattach"
        default BUSYBOX_DEFAULT_SLATTACH
@@ -893,17 +766,6 @@ config BUSYBOX_CONFIG_SLATTACH
        help
          slattach is a small utility to attach network interfaces to serial
          lines.
-
-#config TC
-#      bool "tc"
-#      default y
-#      help
-#        show / manipulate traffic control settings
-#
-#config FEATURE_TC_INGRESS
-#      def_bool n
-#      depends on TC
-
 config BUSYBOX_CONFIG_TCPSVD
        bool "tcpsvd"
        default BUSYBOX_DEFAULT_TCPSVD
@@ -911,6 +773,12 @@ config BUSYBOX_CONFIG_TCPSVD
          tcpsvd listens on a TCP port and runs a program for each new
          connection.
 
+config BUSYBOX_CONFIG_UDPSVD
+       bool "udpsvd"
+       default BUSYBOX_DEFAULT_UDPSVD
+       help
+         udpsvd listens on an UDP port and runs a program for each new
+         connection.
 config BUSYBOX_CONFIG_TELNET
        bool "telnet"
        default BUSYBOX_DEFAULT_TELNET
@@ -936,7 +804,6 @@ config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN
          remote host you are connecting to. This is useful when you need to
          log into a machine without telling the username (autologin). This
          option enables `-a' and `-l USER' arguments.
-
 config BUSYBOX_CONFIG_TELNETD
        bool "telnetd"
        default BUSYBOX_DEFAULT_TELNETD
@@ -978,7 +845,6 @@ config BUSYBOX_CONFIG_TELNETD
 
          with all that done, telnetd _should_ work....
 
-
 config BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE
        bool "Support standalone telnetd (not inetd only)"
        default BUSYBOX_DEFAULT_FEATURE_TELNETD_STANDALONE
@@ -1006,7 +872,6 @@ config BUSYBOX_CONFIG_FEATURE_TELNETD_INETD_WAIT
          This option is rarely used. "tcp nowait" is much more usual
          way of running tcp services, including telnetd.
          You most probably want to say N here.
-
 config BUSYBOX_CONFIG_TFTP
        bool "tftp"
        default BUSYBOX_DEFAULT_TFTP
@@ -1071,7 +936,6 @@ config BUSYBOX_CONFIG_TFTP_DEBUG
        help
          Make tftp[d] print debugging messages on stderr.
          This is useful if you are diagnosing a bug in tftp[d].
-
 config BUSYBOX_CONFIG_TRACEROUTE
        bool "traceroute"
        default BUSYBOX_DEFAULT_TRACEROUTE
@@ -1082,33 +946,24 @@ config BUSYBOX_CONFIG_TRACEROUTE
 config BUSYBOX_CONFIG_TRACEROUTE6
        bool "traceroute6"
        default BUSYBOX_DEFAULT_TRACEROUTE6
-       depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_TRACEROUTE
+       depends on BUSYBOX_CONFIG_FEATURE_IPV6
        help
          Utility to trace the route of IPv6 packets.
 
 config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE
        bool "Enable verbose output"
        default BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_VERBOSE
-       depends on BUSYBOX_CONFIG_TRACEROUTE
+       depends on BUSYBOX_CONFIG_TRACEROUTE || BUSYBOX_CONFIG_TRACEROUTE6
        help
          Add some verbosity to traceroute. This includes among other things
          hostnames and ICMP response types.
 
-config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE
-       bool "Enable loose source route"
-       default BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_SOURCE_ROUTE
-       depends on BUSYBOX_CONFIG_TRACEROUTE
-       help
-         Add option to specify a loose source route gateway
-         (8 maximum).
-
 config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP
-       bool "Use ICMP instead of UDP"
+       bool "Enable -I option (use ICMP instead of UDP)"
        default BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_USE_ICMP
-       depends on BUSYBOX_CONFIG_TRACEROUTE
+       depends on BUSYBOX_CONFIG_TRACEROUTE || BUSYBOX_CONFIG_TRACEROUTE6
        help
          Add option -I to use ICMP ECHO instead of UDP datagrams.
-
 config BUSYBOX_CONFIG_TUNCTL
        bool "tunctl"
        default BUSYBOX_DEFAULT_TUNCTL
@@ -1123,32 +978,101 @@ config BUSYBOX_CONFIG_FEATURE_TUNCTL_UG
        help
          Allow to specify owner and group of newly created interface.
          340 bytes of pure bloat. Say no here.
+config BUSYBOX_CONFIG_VCONFIG
+       bool "vconfig"
+       default BUSYBOX_DEFAULT_VCONFIG
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Creates, removes, and configures VLAN interfaces
+config BUSYBOX_CONFIG_WGET
+       bool "wget"
+       default BUSYBOX_DEFAULT_WGET
+       help
+         wget is a utility for non-interactive download of files from HTTP
+         and FTP servers.
 
-source udhcp/Config.in
+config BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR
+       bool "Enable a nifty process meter (+2k)"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR
+       depends on BUSYBOX_CONFIG_WGET
+       help
+         Enable the transfer progress bar for wget transfers.
 
-config BUSYBOX_CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS
-       string "ifup udhcpc command line options"
-       default BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS
-       depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_UDHCPC
+config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION
+       bool "Enable HTTP authentication"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION
+       depends on BUSYBOX_CONFIG_WGET
        help
-         Command line options to pass to udhcpc from ifup.
-         Intended to alter options not available in /etc/network/interfaces.
-         (IE: --syslog --background etc...)
+         Support authenticated HTTP transfers.
 
-config BUSYBOX_CONFIG_UDPSVD
-       bool "udpsvd"
-       default BUSYBOX_DEFAULT_UDPSVD
+config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS
+       bool "Enable long options"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS
+       depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_LONG_OPTS
        help
-         udpsvd listens on an UDP port and runs a program for each new
-         connection.
+         Support long options for the wget applet.
 
-config BUSYBOX_CONFIG_VCONFIG
-       bool "vconfig"
-       default BUSYBOX_DEFAULT_VCONFIG
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
+config BUSYBOX_CONFIG_FEATURE_WGET_TIMEOUT
+       bool "Enable timeout option -T SEC"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT
+       depends on BUSYBOX_CONFIG_WGET
        help
-         Creates, removes, and configures VLAN interfaces
+         Supports network read and connect timeouts for wget,
+         so that wget will give up and timeout, through the -T
+         command line option.
+
+         Currently only connect and network data read timeout are
+         supported (i.e., timeout is not applied to the DNS query). When
+         FEATURE_WGET_LONG_OPTIONS is also enabled, the --timeout option
+         will work in addition to -T.
+
+config BUSYBOX_CONFIG_FEATURE_WGET_OPENSSL
+       bool "Try to connect to HTTPS using openssl"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL
+       depends on BUSYBOX_CONFIG_WGET
+       help
+         Choose how wget establishes SSL connection for https:// URLs.
+
+         Busybox itself contains no SSL code. wget will spawn
+         a helper program to talk over HTTPS.
+
+         OpenSSL has a simple SSL client for debug purposes.
+         If you select "openssl" helper, wget will effectively run:
+         "openssl s_client -quiet -connect hostname:443
+         -servername hostname 2>/dev/null" and pipe its data
+         through it. -servername is not used if hostname is numeric.
+         Note inconvenient API: host resolution is done twice,
+         and there is no guarantee openssl's idea of IPv6 address
+         format is the same as ours.
+         Another problem is that s_client prints debug information
+         to stderr, and it needs to be suppressed. This means
+         all error messages get suppressed too.
+         openssl is also a big binary, often dynamically linked
+         against ~15 libraries.
+
+config BUSYBOX_CONFIG_FEATURE_WGET_SSL_HELPER
+       bool "Try to connect to HTTPS using ssl_helper"
+       default BUSYBOX_DEFAULT_FEATURE_WGET_SSL_HELPER
+       depends on BUSYBOX_CONFIG_WGET
+       help
+         Choose how wget establishes SSL connection for https:// URLs.
+
+         Busybox itself contains no SSL code. wget will spawn
+         a helper program to talk over HTTPS.
 
+         ssl_helper is a tool which can be built statically
+         from busybox sources against a small embedded SSL library.
+         Please see networking/ssl_helper/README.
+         It does not require double host resolution and emits
+         error messages to stderr.
+
+         Precompiled static binary may be available at
+         http://busybox.net/downloads/binaries/
+config BUSYBOX_CONFIG_WHOIS
+       bool "whois"
+       default BUSYBOX_DEFAULT_WHOIS
+       help
+         whois is a client for the whois directory service
 config BUSYBOX_CONFIG_ZCIP
        bool "zcip"
        default BUSYBOX_DEFAULT_ZCIP
@@ -1162,4 +1086,15 @@ config BUSYBOX_CONFIG_ZCIP
          See http://www.zeroconf.org for further details, and "zcip.script"
          in the busybox examples.
 
+source udhcp/Config.in
+
+config BUSYBOX_CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS
+       string "ifup udhcpc command line options"
+       default BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS
+       depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_UDHCPC
+       help
+         Command line options to pass to udhcpc from ifup.
+         Intended to alter options not available in /etc/network/interfaces.
+         (IE: --syslog --background etc...)
+
 endmenu
index 4f48400..cdba5d5 100644 (file)
@@ -22,7 +22,6 @@ config BUSYBOX_CONFIG_UDHCPD
 config BUSYBOX_CONFIG_DHCPRELAY
        bool "dhcprelay"
        default BUSYBOX_DEFAULT_DHCPRELAY
-       depends on BUSYBOX_CONFIG_UDHCPD
        help
          dhcprelay listens for dhcp requests on one or more interfaces
          and forwards these requests to a different interface or dhcp
@@ -31,7 +30,6 @@ config BUSYBOX_CONFIG_DHCPRELAY
 config BUSYBOX_CONFIG_DUMPLEASES
        bool "Lease display utility (dumpleases)"
        default BUSYBOX_DEFAULT_DUMPLEASES
-       depends on BUSYBOX_CONFIG_UDHCPD
        help
          dumpleases displays the leases written out by the udhcpd server.
          Lease times are stored in the file by time remaining in lease, or
index 6eafbda..6bc5ec0 100644 (file)
@@ -6,122 +6,6 @@
 
 menu "Process Utilities"
 
-config BUSYBOX_CONFIG_IOSTAT
-       bool "iostat"
-       default BUSYBOX_DEFAULT_IOSTAT
-       help
-         Report CPU and I/O statistics
-config BUSYBOX_CONFIG_LSOF
-       bool "lsof"
-       default BUSYBOX_DEFAULT_LSOF
-       help
-         Show open files in the format of:
-         PID <TAB> /path/to/executable <TAB> /path/to/opened/file
-config BUSYBOX_CONFIG_MPSTAT
-       bool "mpstat"
-       default BUSYBOX_DEFAULT_MPSTAT
-       help
-         Per-processor statistics
-config BUSYBOX_CONFIG_NMETER
-       bool "nmeter"
-       default BUSYBOX_DEFAULT_NMETER
-       help
-         Prints selected system stats continuously, one line per update.
-config BUSYBOX_CONFIG_PMAP
-       bool "pmap"
-       default BUSYBOX_DEFAULT_PMAP
-       help
-         Display processes' memory mappings.
-config BUSYBOX_CONFIG_POWERTOP
-       bool "powertop"
-       default BUSYBOX_DEFAULT_POWERTOP
-       help
-         Analyze power consumption on Intel-based laptops
-config BUSYBOX_CONFIG_PSTREE
-       bool "pstree"
-       default BUSYBOX_DEFAULT_PSTREE
-       help
-         Display a tree of processes.
-config BUSYBOX_CONFIG_PWDX
-       bool "pwdx"
-       default BUSYBOX_DEFAULT_PWDX
-       help
-         Report current working directory of a process
-config BUSYBOX_CONFIG_SMEMCAP
-       bool "smemcap"
-       default BUSYBOX_DEFAULT_SMEMCAP
-       help
-         smemcap is a tool for capturing process data for smem,
-         a memory usage statistic tool.
-config BUSYBOX_CONFIG_TOP
-       bool "top"
-       default BUSYBOX_DEFAULT_TOP
-       help
-         The top program provides a dynamic real-time view of a running
-         system.
-
-config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
-       bool "Show CPU per-process usage percentage"
-       default BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE
-       depends on BUSYBOX_CONFIG_TOP
-       help
-         Make top display CPU usage for each process.
-         This adds about 2k.
-
-config BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS
-       bool "Show CPU global usage percentage"
-       default BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS
-       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
-       help
-         Makes top display "CPU: NN% usr NN% sys..." line.
-         This adds about 0.5k.
-
-config BUSYBOX_CONFIG_FEATURE_TOP_SMP_CPU
-       bool "SMP CPU usage display ('c' key)"
-       default BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU
-       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS
-       help
-         Allow 'c' key to switch between individual/cumulative CPU stats
-         This adds about 0.5k.
-
-config BUSYBOX_CONFIG_FEATURE_TOP_DECIMALS
-       bool "Show 1/10th of a percent in CPU/mem statistics"
-       default BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS
-       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
-       help
-         Show 1/10th of a percent in CPU/mem statistics.
-         This adds about 0.3k.
-
-config BUSYBOX_CONFIG_FEATURE_TOP_SMP_PROCESS
-       bool "Show CPU process runs on ('j' field)"
-       default BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS
-       depends on BUSYBOX_CONFIG_TOP
-       help
-         Show CPU where process was last found running on.
-         This is the 'j' field.
-
-config BUSYBOX_CONFIG_FEATURE_TOPMEM
-       bool "Topmem command ('s' key)"
-       default BUSYBOX_DEFAULT_FEATURE_TOPMEM
-       depends on BUSYBOX_CONFIG_TOP
-       help
-         Enable 's' in top (gives lots of memory info).
-config BUSYBOX_CONFIG_UPTIME
-       bool "uptime"
-       default BUSYBOX_DEFAULT_UPTIME
-       select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo()
-       help
-         uptime gives a one line display of the current time, how long
-         the system has been running, how many users are currently logged
-         on, and the system load averages for the past 1, 5, and 15 minutes.
-
-config BUSYBOX_CONFIG_FEATURE_UPTIME_UTMP_SUPPORT
-       bool "Support for showing the number of users"
-       default BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT
-       depends on BUSYBOX_CONFIG_UPTIME && BUSYBOX_CONFIG_FEATURE_UTMP
-       help
-         Makes uptime display the number of users currently logged on.
-
 config BUSYBOX_CONFIG_FREE
        bool "free"
        default BUSYBOX_DEFAULT_FREE
@@ -130,7 +14,6 @@ config BUSYBOX_CONFIG_FREE
          free displays the total amount of free and used physical and swap
          memory in the system, as well as the buffers used by the kernel.
          The shared memory column should be ignored; it is obsolete.
-
 config BUSYBOX_CONFIG_FUSER
        bool "fuser"
        default BUSYBOX_DEFAULT_FUSER
@@ -138,7 +21,11 @@ config BUSYBOX_CONFIG_FUSER
          fuser lists all PIDs (Process IDs) that currently have a given
          file open. fuser can also list all PIDs that have a given network
          (TCP or UDP) port open.
-
+config BUSYBOX_CONFIG_IOSTAT
+       bool "iostat"
+       default BUSYBOX_DEFAULT_IOSTAT
+       help
+         Report CPU and I/O statistics
 config BUSYBOX_CONFIG_KILL
        bool "kill"
        default BUSYBOX_DEFAULT_KILL
@@ -150,7 +37,6 @@ config BUSYBOX_CONFIG_KILL
 config BUSYBOX_CONFIG_KILLALL
        bool "killall"
        default BUSYBOX_DEFAULT_KILLALL
-       depends on BUSYBOX_CONFIG_KILL
        help
          killall sends a signal to all processes running any of the
          specified commands. If no signal name is specified, SIGTERM is
@@ -159,14 +45,38 @@ config BUSYBOX_CONFIG_KILLALL
 config BUSYBOX_CONFIG_KILLALL5
        bool "killall5"
        default BUSYBOX_DEFAULT_KILLALL5
-       depends on BUSYBOX_CONFIG_KILL
-
+       help
+         The SystemV killall command. killall5 sends a signal
+         to all processes except kernel threads and the processes
+         in its own session, so it won't kill the shell that is running
+         the script it was called from.
+config BUSYBOX_CONFIG_LSOF
+       bool "lsof"
+       default BUSYBOX_DEFAULT_LSOF
+       help
+         Show open files in the format of:
+         PID <TAB> /path/to/executable <TAB> /path/to/opened/file
+config BUSYBOX_CONFIG_MPSTAT
+       bool "mpstat"
+       default BUSYBOX_DEFAULT_MPSTAT
+       help
+         Per-processor statistics
+config BUSYBOX_CONFIG_NMETER
+       bool "nmeter"
+       default BUSYBOX_DEFAULT_NMETER
+       help
+         Prints selected system stats continuously, one line per update.
 config BUSYBOX_CONFIG_PGREP
        bool "pgrep"
        default BUSYBOX_DEFAULT_PGREP
        help
          Look for processes by name.
 
+config BUSYBOX_CONFIG_PKILL
+       bool "pkill"
+       default BUSYBOX_DEFAULT_PKILL
+       help
+         Send signals to processes by name.
 config BUSYBOX_CONFIG_PIDOF
        bool "pidof"
        default BUSYBOX_DEFAULT_PIDOF
@@ -189,13 +99,16 @@ config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT
          Support argument '-o' for omitting the given pids in output.
          The special pid %PPID can be used to name the parent process
          of the pidof, in other words the calling shell or shell script.
-
-config BUSYBOX_CONFIG_PKILL
-       bool "pkill"
-       default BUSYBOX_DEFAULT_PKILL
+config BUSYBOX_CONFIG_PMAP
+       bool "pmap"
+       default BUSYBOX_DEFAULT_PMAP
+       help
+         Display processes' memory mappings.
+config BUSYBOX_CONFIG_POWERTOP
+       bool "powertop"
+       default BUSYBOX_DEFAULT_POWERTOP
        help
-         Send signals to processes by name.
-
+         Analyze power consumption on Intel-based laptops
 config BUSYBOX_CONFIG_PS
        bool "ps"
        default BUSYBOX_DEFAULT_PS
@@ -241,28 +154,101 @@ config BUSYBOX_CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS
        help
          Include support for measuring HZ on old kernels and non-ELF systems
          (if you are on Linux 2.4.0+ and use ELF, you don't need this)
-
+config BUSYBOX_CONFIG_PSTREE
+       bool "pstree"
+       default BUSYBOX_DEFAULT_PSTREE
+       help
+         Display a tree of processes.
+config BUSYBOX_CONFIG_PWDX
+       bool "pwdx"
+       default BUSYBOX_DEFAULT_PWDX
+       help
+         Report current working directory of a process
 config BUSYBOX_CONFIG_RENICE
        bool "renice"
        default BUSYBOX_DEFAULT_RENICE
        help
          Renice alters the scheduling priority of one or more running
          processes.
-
+config BUSYBOX_CONFIG_SMEMCAP
+       bool "smemcap"
+       default BUSYBOX_DEFAULT_SMEMCAP
+       help
+         smemcap is a tool for capturing process data for smem,
+         a memory usage statistic tool.
 config BUSYBOX_CONFIG_BB_SYSCTL
        bool "sysctl"
        default BUSYBOX_DEFAULT_BB_SYSCTL
        help
          Configure kernel parameters at runtime.
+config BUSYBOX_CONFIG_TOP
+       bool "top"
+       default BUSYBOX_DEFAULT_TOP
+       help
+         The top program provides a dynamic real-time view of a running
+         system.
 
-config BUSYBOX_CONFIG_FEATURE_SHOW_THREADS
-       bool "Support for showing threads in ps/pstree/top"
-       default BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
-       depends on BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_TOP || BUSYBOX_CONFIG_PSTREE
+config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+       bool "Show CPU per-process usage percentage"
+       default BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+       depends on BUSYBOX_CONFIG_TOP
        help
-         Enables the ps -T option, showing of threads in pstree,
-         and 'h' command in top.
+         Make top display CPU usage for each process.
+         This adds about 2k.
+
+config BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS
+       bool "Show CPU global usage percentage"
+       default BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS
+       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+       help
+         Makes top display "CPU: NN% usr NN% sys..." line.
+         This adds about 0.5k.
+
+config BUSYBOX_CONFIG_FEATURE_TOP_SMP_CPU
+       bool "SMP CPU usage display ('c' key)"
+       default BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU
+       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS
+       help
+         Allow 'c' key to switch between individual/cumulative CPU stats
+         This adds about 0.5k.
+
+config BUSYBOX_CONFIG_FEATURE_TOP_DECIMALS
+       bool "Show 1/10th of a percent in CPU/mem statistics"
+       default BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS
+       depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+       help
+         Show 1/10th of a percent in CPU/mem statistics.
+         This adds about 0.3k.
+
+config BUSYBOX_CONFIG_FEATURE_TOP_SMP_PROCESS
+       bool "Show CPU process runs on ('j' field)"
+       default BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS
+       depends on BUSYBOX_CONFIG_TOP
+       help
+         Show CPU where process was last found running on.
+         This is the 'j' field.
+
+config BUSYBOX_CONFIG_FEATURE_TOPMEM
+       bool "Topmem command ('s' key)"
+       default BUSYBOX_DEFAULT_FEATURE_TOPMEM
+       depends on BUSYBOX_CONFIG_TOP
+       help
+         Enable 's' in top (gives lots of memory info).
+config BUSYBOX_CONFIG_UPTIME
+       bool "uptime"
+       default BUSYBOX_DEFAULT_UPTIME
+       select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo()
+       help
+         uptime gives a one line display of the current time, how long
+         the system has been running, how many users are currently logged
+         on, and the system load averages for the past 1, 5, and 15 minutes.
 
+config BUSYBOX_CONFIG_FEATURE_UPTIME_UTMP_SUPPORT
+       bool "Support for showing the number of users"
+       default BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT
+       depends on BUSYBOX_CONFIG_UPTIME && BUSYBOX_CONFIG_FEATURE_UTMP
+       help
+         Makes uptime display the number of users currently logged on.
 config BUSYBOX_CONFIG_WATCH
        bool "watch"
        default BUSYBOX_DEFAULT_WATCH
@@ -270,4 +256,12 @@ config BUSYBOX_CONFIG_WATCH
          watch is used to execute a program periodically, showing
          output to the screen.
 
+config BUSYBOX_CONFIG_FEATURE_SHOW_THREADS
+       bool "Support for showing threads in ps/pstree/top"
+       default BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS
+       depends on BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_TOP || BUSYBOX_CONFIG_PSTREE
+       help
+         Enables the ps -T option, showing of threads in pstree,
+         and 'h' command in top.
+
 endmenu
index a322a2c..8750b59 100644 (file)
@@ -73,6 +73,13 @@ config BUSYBOX_CONFIG_SV_DEFAULT_SERVICE_DIR
        help
          Default directory for services.
          Defaults to "/var/service"
+
+config BUSYBOX_CONFIG_SVC
+       bool "svc"
+       default BUSYBOX_DEFAULT_SVC
+       help
+         svc controls the state of services monitored by the runsv supervisor.
+         It is comaptible with daemontools command with the same name.
 config BUSYBOX_CONFIG_SVLOGD
        bool "svlogd"
        default BUSYBOX_DEFAULT_SVLOGD
index 1d23f7d..1aac9f4 100644 (file)
@@ -7,7 +7,6 @@
 menu "SELinux Utilities"
        depends on BUSYBOX_CONFIG_SELINUX
 
-
 config BUSYBOX_CONFIG_CHCON
        bool "chcon"
        default BUSYBOX_DEFAULT_CHCON
@@ -21,28 +20,24 @@ config BUSYBOX_CONFIG_FEATURE_CHCON_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_CHCON && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the chcon applet.
-
 config BUSYBOX_CONFIG_GETENFORCE
        bool "getenforce"
        default BUSYBOX_DEFAULT_GETENFORCE
        depends on BUSYBOX_CONFIG_SELINUX
        help
          Enable support to get the current mode of SELinux.
-
 config BUSYBOX_CONFIG_GETSEBOOL
        bool "getsebool"
        default BUSYBOX_DEFAULT_GETSEBOOL
        depends on BUSYBOX_CONFIG_SELINUX
        help
          Enable support to get SELinux boolean values.
-
 config BUSYBOX_CONFIG_LOAD_POLICY
        bool "load_policy"
        default BUSYBOX_DEFAULT_LOAD_POLICY
        depends on BUSYBOX_CONFIG_SELINUX
        help
          Enable support to load SELinux policy.
-
 config BUSYBOX_CONFIG_MATCHPATHCON
        bool "matchpathcon"
        default BUSYBOX_DEFAULT_MATCHPATHCON
@@ -50,15 +45,6 @@ config BUSYBOX_CONFIG_MATCHPATHCON
        help
          Enable support to get default security context of the
          specified path from the file contexts configuration.
-
-config BUSYBOX_CONFIG_RESTORECON
-       bool "restorecon"
-       default BUSYBOX_DEFAULT_RESTORECON
-       depends on BUSYBOX_CONFIG_SELINUX
-       help
-         Enable support to relabel files. The feature is almost
-         the same as setfiles, but usage is a little different.
-
 config BUSYBOX_CONFIG_RUNCON
        bool "runcon"
        default BUSYBOX_DEFAULT_RUNCON
@@ -72,7 +58,6 @@ config BUSYBOX_CONFIG_FEATURE_RUNCON_LONG_OPTIONS
        depends on BUSYBOX_CONFIG_RUNCON && BUSYBOX_CONFIG_LONG_OPTS
        help
          Support long options for the runcon applet.
-
 config BUSYBOX_CONFIG_SELINUXENABLED
        bool "selinuxenabled"
        default BUSYBOX_DEFAULT_SELINUXENABLED
@@ -80,14 +65,18 @@ config BUSYBOX_CONFIG_SELINUXENABLED
        help
          Enable support for this command to be used within shell scripts
          to determine if selinux is enabled.
-
+config BUSYBOX_CONFIG_SESTATUS
+       bool "sestatus"
+       default BUSYBOX_DEFAULT_SESTATUS
+       depends on BUSYBOX_CONFIG_SELINUX
+       help
+         Displays the status of SELinux.
 config BUSYBOX_CONFIG_SETENFORCE
        bool "setenforce"
        default BUSYBOX_DEFAULT_SETENFORCE
        depends on BUSYBOX_CONFIG_SELINUX
        help
          Enable support to modify the mode SELinux is running in.
-
 config BUSYBOX_CONFIG_SETFILES
        bool "setfiles"
        default BUSYBOX_DEFAULT_SETFILES
@@ -106,6 +95,13 @@ config BUSYBOX_CONFIG_FEATURE_SETFILES_CHECK_OPTION
          Support "-c" option (check the validity of the contexts against
          the specified binary policy) for setfiles. Requires libsepol.
 
+config BUSYBOX_CONFIG_RESTORECON
+       bool "restorecon"
+       default BUSYBOX_DEFAULT_RESTORECON
+       depends on BUSYBOX_CONFIG_SELINUX
+       help
+         Enable support to relabel files. The feature is almost
+         the same as setfiles, but usage is a little different.
 config BUSYBOX_CONFIG_SETSEBOOL
        bool "setsebool"
        default BUSYBOX_DEFAULT_SETSEBOOL
@@ -114,11 +110,4 @@ config BUSYBOX_CONFIG_SETSEBOOL
          Enable support for change boolean.
          semanage and -P option is not supported yet.
 
-config BUSYBOX_CONFIG_SESTATUS
-       bool "sestatus"
-       default BUSYBOX_DEFAULT_SESTATUS
-       depends on BUSYBOX_CONFIG_SELINUX
-       help
-         Displays the status of SELinux.
-
 endmenu
index 69ecf14..4193c18 100644 (file)
@@ -6,6 +6,57 @@
 
 menu "Shells"
 
+
+choice
+       prompt "Choose which shell is aliased to 'sh' name"
+       default BUSYBOX_CONFIG_SH_IS_ASH
+       help
+         Choose which shell you want to be executed by 'sh' alias.
+         The ash shell is the most bash compatible and full featured one.
+
+# note: cannot use "select ASH" here, it breaks "make allnoconfig"
+config BUSYBOX_CONFIG_SH_IS_ASH
+       depends on !BUSYBOX_CONFIG_NOMMU
+       bool "ash"
+
+config BUSYBOX_CONFIG_SH_IS_HUSH
+       bool "hush"
+
+config BUSYBOX_CONFIG_SH_IS_NONE
+       bool "none"
+
+endchoice
+
+choice
+       prompt "Choose which shell is aliased to 'bash' name"
+       default BUSYBOX_CONFIG_BASH_IS_NONE
+       help
+         Choose which shell you want to be executed by 'bash' alias.
+         The ash shell is the most bash compatible and full featured one.
+
+         Note that selecting this option does not switch on any bash
+         compatibility code. It merely makes it possible to install
+         /bin/bash (sym)link and run scripts which start with
+         #!/bin/bash line.
+
+         Many systems use it in scripts which use bash-specific features,
+         even simple ones like $RANDOM. Without this option, busybox
+         can't be used for running them because it won't recongnize
+         "bash" as a supported applet name.
+
+config BUSYBOX_CONFIG_BASH_IS_ASH
+       depends on !BUSYBOX_CONFIG_NOMMU
+       bool "ash"
+
+config BUSYBOX_CONFIG_BASH_IS_HUSH
+       bool "hush"
+
+config BUSYBOX_CONFIG_BASH_IS_NONE
+       bool "none"
+
+endchoice
+
+
 config BUSYBOX_CONFIG_ASH
        bool "ash"
        default BUSYBOX_DEFAULT_ASH
@@ -17,73 +68,109 @@ config BUSYBOX_CONFIG_ASH
          shell (by Herbert Xu), which was created by porting the 'ash' shell
          (written by Kenneth Almquist) from NetBSD.
 
+config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
+       bool "Optimize for size instead of speed"
+       default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
+       help
+         Compile ash for reduced size at the price of speed.
+
+config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB
+       bool "Use internal glob() implementation"
+       default BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB       # Y is bigger, but because of uclibc glob() bug, let Y be default for now
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
+       help
+         Do not use glob() function from libc, use internal implementation.
+         Use this if you are getting "glob.h: No such file or directory"
+         or similar build errors.
+
+config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
+       bool "Pseudorandom generator and $RANDOM variable"
+       default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
+       help
+         Enable pseudorandom generator and dynamic variable "$RANDOM".
+         Each read of "$RANDOM" will generate a new pseudorandom value.
+         You can reset the generator by using a specified start value.
+         After "unset RANDOM" the generator will switch off and this
+         variable will no longer have special treatment.
+
+config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
+       bool "Expand prompt string"
+       default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
+       help
+         "PS#" may contain volatile content, such as backquote commands.
+         This option recreates the prompt string from the environment
+         variable each time it is displayed.
+
 config BUSYBOX_CONFIG_ASH_BASH_COMPAT
        bool "bash-compatible extensions"
        default BUSYBOX_DEFAULT_ASH_BASH_COMPAT
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable bash-compatible extensions.
 
 config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT
        bool "Idle timeout variable"
        default BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enables bash-like auto-logout after $TMOUT seconds of idle time.
 
 config BUSYBOX_CONFIG_ASH_JOB_CONTROL
        bool "Job control"
        default BUSYBOX_DEFAULT_ASH_JOB_CONTROL
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable job control in the ash shell.
 
 config BUSYBOX_CONFIG_ASH_ALIAS
        bool "Alias support"
        default BUSYBOX_DEFAULT_ASH_ALIAS
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable alias support in the ash shell.
 
 config BUSYBOX_CONFIG_ASH_GETOPTS
        bool "Builtin getopt to parse positional parameters"
        default BUSYBOX_DEFAULT_ASH_GETOPTS
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable support for getopts builtin in ash.
 
 config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
        bool "Builtin version of 'echo'"
        default BUSYBOX_DEFAULT_ASH_BUILTIN_ECHO
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable support for echo builtin in ash.
 
 config BUSYBOX_CONFIG_ASH_BUILTIN_PRINTF
        bool "Builtin version of 'printf'"
        default BUSYBOX_DEFAULT_ASH_BUILTIN_PRINTF
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable support for printf builtin in ash.
 
 config BUSYBOX_CONFIG_ASH_BUILTIN_TEST
        bool "Builtin version of 'test'"
        default BUSYBOX_DEFAULT_ASH_BUILTIN_TEST
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable support for test builtin in ash.
 
 config BUSYBOX_CONFIG_ASH_HELP
        bool "help builtin"
        default BUSYBOX_DEFAULT_ASH_HELP
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable help builtin in ash.
 
 config BUSYBOX_CONFIG_ASH_CMDCMD
        bool "'command' command to override shell builtins"
        default BUSYBOX_DEFAULT_ASH_CMDCMD
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable support for the ash 'command' builtin, which allows
          you to run the specified command with the specified arguments,
@@ -92,37 +179,9 @@ config BUSYBOX_CONFIG_ASH_CMDCMD
 config BUSYBOX_CONFIG_ASH_MAIL
        bool "Check for new mail on interactive shells"
        default BUSYBOX_DEFAULT_ASH_MAIL
-       depends on BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
        help
          Enable "check for new mail" function in the ash shell.
-
-config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
-       bool "Optimize for size instead of speed"
-       default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
-       depends on BUSYBOX_CONFIG_ASH
-       help
-         Compile ash for reduced size at the price of speed.
-
-config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
-       bool "Pseudorandom generator and $RANDOM variable"
-       default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
-       depends on BUSYBOX_CONFIG_ASH
-       help
-         Enable pseudorandom generator and dynamic variable "$RANDOM".
-         Each read of "$RANDOM" will generate a new pseudorandom value.
-         You can reset the generator by using a specified start value.
-         After "unset RANDOM" the generator will switch off and this
-         variable will no longer have special treatment.
-
-config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
-       bool "Expand prompt string"
-       default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
-       depends on BUSYBOX_CONFIG_ASH
-       help
-         "PS#" may contain volatile content, such as backquote commands.
-         This option recreates the prompt string from the environment
-         variable each time it is displayed.
-
 config BUSYBOX_CONFIG_CTTYHACK
        bool "cttyhack"
        default BUSYBOX_DEFAULT_CTTYHACK
@@ -183,7 +242,7 @@ config BUSYBOX_CONFIG_HUSH
 config BUSYBOX_CONFIG_HUSH_BASH_COMPAT
        bool "bash-compatible extensions"
        default BUSYBOX_DEFAULT_HUSH_BASH_COMPAT
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable bash-compatible extensions.
 
@@ -197,14 +256,14 @@ config BUSYBOX_CONFIG_HUSH_BRACE_EXPANSION
 config BUSYBOX_CONFIG_HUSH_HELP
        bool "help builtin"
        default BUSYBOX_DEFAULT_HUSH_HELP
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable help builtin in hush. Code size + ~1 kbyte.
 
 config BUSYBOX_CONFIG_HUSH_INTERACTIVE
        bool "Interactive mode"
        default BUSYBOX_DEFAULT_HUSH_INTERACTIVE
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable interactive mode (prompt and command editing).
          Without this, hush simply reads and executes commands
@@ -232,35 +291,35 @@ config BUSYBOX_CONFIG_HUSH_JOB
 config BUSYBOX_CONFIG_HUSH_TICK
        bool "Process substitution"
        default BUSYBOX_DEFAULT_HUSH_TICK
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable process substitution `command` and $(command) in hush.
 
 config BUSYBOX_CONFIG_HUSH_IF
        bool "Support if/then/elif/else/fi"
        default BUSYBOX_DEFAULT_HUSH_IF
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable if/then/elif/else/fi in hush.
 
 config BUSYBOX_CONFIG_HUSH_LOOPS
        bool "Support for, while and until loops"
        default BUSYBOX_DEFAULT_HUSH_LOOPS
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable for, while and until loops in hush.
 
 config BUSYBOX_CONFIG_HUSH_CASE
        bool "Support case ... esac statement"
        default BUSYBOX_DEFAULT_HUSH_CASE
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable case ... esac statement in hush. +400 bytes.
 
 config BUSYBOX_CONFIG_HUSH_FUNCTIONS
        bool "Support funcname() { commands; } syntax"
        default BUSYBOX_DEFAULT_HUSH_FUNCTIONS
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable support for shell functions in hush. +800 bytes.
 
@@ -274,7 +333,7 @@ config BUSYBOX_CONFIG_HUSH_LOCAL
 config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT
        bool "Pseudorandom generator and $RANDOM variable"
        default BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable pseudorandom generator and dynamic variable "$RANDOM".
          Each read of "$RANDOM" will generate a new pseudorandom value.
@@ -282,14 +341,14 @@ config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT
 config BUSYBOX_CONFIG_HUSH_EXPORT_N
        bool "Support 'export -n' option"
        default BUSYBOX_DEFAULT_HUSH_EXPORT_N
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          export -n unexports variables. It is a bash extension.
 
 config BUSYBOX_CONFIG_HUSH_MODE_X
        bool "Support 'hush -x' option and 'set -x' command"
        default BUSYBOX_DEFAULT_HUSH_MODE_X
-       depends on BUSYBOX_CONFIG_HUSH
+       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          This instructs hush to print commands before execution.
          Adds ~300 bytes.
@@ -302,72 +361,17 @@ config BUSYBOX_CONFIG_MSH
          msh is deprecated and will be removed, please migrate to hush.
 
 
-
-choice
-       prompt "Choose which shell is aliased to 'sh' name"
-       default BUSYBOX_CONFIG_FEATURE_SH_IS_ASH
-       help
-         Choose which shell you want to be executed by 'sh' alias.
-         The ash shell is the most bash compatible and full featured one.
-
-# note: cannot use "select ASH" here, it breaks "make allnoconfig"
-config BUSYBOX_CONFIG_FEATURE_SH_IS_ASH
-       depends on BUSYBOX_CONFIG_ASH
-       bool "ash"
-       depends on !BUSYBOX_CONFIG_NOMMU
-
-config BUSYBOX_CONFIG_FEATURE_SH_IS_HUSH
-       depends on BUSYBOX_CONFIG_HUSH
-       bool "hush"
-
-config BUSYBOX_CONFIG_FEATURE_SH_IS_NONE
-       bool "none"
-
-endchoice
-
-choice
-       prompt "Choose which shell is aliased to 'bash' name"
-       default BUSYBOX_CONFIG_FEATURE_BASH_IS_NONE
-       help
-         Choose which shell you want to be executed by 'bash' alias.
-         The ash shell is the most bash compatible and full featured one.
-
-         Note that selecting this option does not switch on any bash
-         compatibility code. It merely makes it possible to install
-         /bin/bash (sym)link and run scripts which start with
-         #!/bin/bash line.
-
-         Many systems use it in scripts which use bash-specific features,
-         even simple ones like $RANDOM. Without this option, busybox
-         can't be used for running them because it won't recongnize
-         "bash" as a supported applet name.
-
-config BUSYBOX_CONFIG_FEATURE_BASH_IS_ASH
-       depends on BUSYBOX_CONFIG_ASH
-       bool "ash"
-       depends on !BUSYBOX_CONFIG_NOMMU
-
-config BUSYBOX_CONFIG_FEATURE_BASH_IS_HUSH
-       depends on BUSYBOX_CONFIG_HUSH
-       bool "hush"
-
-config BUSYBOX_CONFIG_FEATURE_BASH_IS_NONE
-       bool "none"
-
-endchoice
-
-
-config BUSYBOX_CONFIG_SH_MATH_SUPPORT
+config BUSYBOX_CONFIG_FEATURE_SH_MATH
        bool "POSIX math support"
-       default BUSYBOX_DEFAULT_SH_MATH_SUPPORT
-       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH
+       default BUSYBOX_DEFAULT_FEATURE_SH_MATH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Enable math support in the shell via $((...)) syntax.
 
-config BUSYBOX_CONFIG_SH_MATH_SUPPORT_64
+config BUSYBOX_CONFIG_FEATURE_SH_MATH_64
        bool "Extend POSIX math support to 64 bit"
-       default BUSYBOX_DEFAULT_SH_MATH_SUPPORT_64
-       depends on BUSYBOX_CONFIG_SH_MATH_SUPPORT
+       default BUSYBOX_DEFAULT_FEATURE_SH_MATH_64
+       depends on BUSYBOX_CONFIG_FEATURE_SH_MATH
        help
          Enable 64-bit math support in the shell. This will make the shell
          slightly larger, but will allow computation with very large numbers.
@@ -376,14 +380,14 @@ config BUSYBOX_CONFIG_SH_MATH_SUPPORT_64
 config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET
        bool "Hide message on interactive shell startup"
        default BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET
-       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          Remove the busybox introduction when starting a shell.
 
 config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE
        bool "Standalone shell"
        default BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE
-       depends on (BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH) && BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          This option causes busybox shells to use busybox applets
          in preference to executables in the PATH whenever possible. For
@@ -416,7 +420,7 @@ config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE
 config BUSYBOX_CONFIG_FEATURE_SH_NOFORK
        bool "Run 'nofork' applets directly"
        default BUSYBOX_DEFAULT_FEATURE_SH_NOFORK
-       depends on (BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH) && BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          This option causes busybox shells to not execute typical
          fork/exec/wait sequence, but call <applet>_main directly,
@@ -434,7 +438,7 @@ config BUSYBOX_CONFIG_FEATURE_SH_NOFORK
 config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE
        bool "Use $HISTFILESIZE"
        default BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE
-       depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
+       depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
        help
          This option makes busybox shells to use $HISTFILESIZE variable
          to set shell history size. Note that its max value is capped
index 5fcee2c..1f8f3cf 100644 (file)
@@ -47,7 +47,6 @@ config BUSYBOX_CONFIG_LOGGER
 config BUSYBOX_CONFIG_LOGREAD
        bool "logread"
        default BUSYBOX_DEFAULT_LOGREAD
-       depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG
        help
          If you enabled Circular Buffer support, you almost
          certainly want to enable this feature as well. This
index 08bddf8..8df023c 100644 (file)
@@ -6,222 +6,6 @@
 
 menu "Linux System Utilities"
 
-config BUSYBOX_CONFIG_BLKDISCARD
-       bool "blkdiscard"
-       default BUSYBOX_DEFAULT_BLKDISCARD
-       help
-         blkdiscard discards sectors on a given device.
-config BUSYBOX_CONFIG_BLOCKDEV
-       bool "blockdev"
-       default BUSYBOX_DEFAULT_BLOCKDEV
-       help
-         Performs some ioctls with block devices.
-config BUSYBOX_CONFIG_FATATTR
-       bool "fatattr"
-       default BUSYBOX_DEFAULT_FATATTR
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         fatattr lists or changes the file attributes on a fat file system.
-config BUSYBOX_CONFIG_FSTRIM
-       bool "fstrim"
-       default BUSYBOX_DEFAULT_FSTRIM
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Discard unused blocks on a mounted filesystem.
-config BUSYBOX_CONFIG_MDEV
-       bool "mdev"
-       default BUSYBOX_DEFAULT_MDEV
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         mdev is a mini-udev implementation for dynamically creating device
-         nodes in the /dev directory.
-
-         For more information, please see docs/mdev.txt
-
-config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
-       bool "Support /etc/mdev.conf"
-       default BUSYBOX_DEFAULT_FEATURE_MDEV_CONF
-       depends on BUSYBOX_CONFIG_MDEV
-       help
-         Add support for the mdev config file to control ownership and
-         permissions of the device nodes.
-
-         For more information, please see docs/mdev.txt
-
-config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
-       bool "Support subdirs/symlinks"
-       default BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME
-       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
-       help
-         Add support for renaming devices and creating symlinks.
-
-         For more information, please see docs/mdev.txt
-
-config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME_REGEXP
-       bool "Support regular expressions substitutions when renaming device"
-       default BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP
-       depends on BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
-       help
-         Add support for regular expressions substitutions when renaming
-         device.
-
-config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
-       bool "Support command execution at device addition/removal"
-       default BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC
-       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
-       help
-         This adds support for an optional field to /etc/mdev.conf for
-         executing commands when devices are created/removed.
-
-         For more information, please see docs/mdev.txt
-
-config BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE
-       bool "Support loading of firmwares"
-       default BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE
-       depends on BUSYBOX_CONFIG_MDEV
-       help
-         Some devices need to load firmware before they can be usable.
-
-         These devices will request userspace look up the files in
-         /lib/firmware/ and if it exists, send it to the kernel for
-         loading into the hardware.
-config BUSYBOX_CONFIG_MOUNT
-       bool "mount"
-       default BUSYBOX_DEFAULT_MOUNT
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         All files and filesystems in Unix are arranged into one big directory
-         tree. The 'mount' utility is used to graft a filesystem onto a
-         particular part of the tree. A filesystem can either live on a block
-         device, or it can be accessible over the network, as is the case with
-         NFS filesystems. Most people using BusyBox will also want to enable
-         the 'mount' utility.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_FAKE
-       bool "Support option -f"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE
-       depends on BUSYBOX_CONFIG_MOUNT
-       help
-         Enable support for faking a file system mount.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_VERBOSE
-       bool "Support option -v"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE
-       depends on BUSYBOX_CONFIG_MOUNT
-       help
-         Enable multi-level -v[vv...] verbose messages. Useful if you
-         debug mount problems and want to see what is exactly passed
-         to the kernel.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_HELPERS
-       bool "Support mount helpers"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS
-       depends on BUSYBOX_CONFIG_MOUNT
-       help
-         Enable mounting of virtual file systems via external helpers.
-         E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call
-         "obexfs -b00.11.22.33.44.55 /mnt"
-         Also "mount -t sometype [-o opts] fs /mnt" will try
-         "sometype [-o opts] fs /mnt" if simple mount syscall fails.
-         The idea is to use such virtual filesystems in /etc/fstab.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_LABEL
-       bool "Support specifying devices by label or UUID"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL
-       depends on BUSYBOX_CONFIG_MOUNT
-       select BUSYBOX_CONFIG_VOLUMEID
-       help
-         This allows for specifying a device by label or uuid, rather than by
-         name. This feature utilizes the same functionality as blkid/findfs.
-         This also enables label or uuid support for swapon.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
-       bool "Support mounting NFS file systems on Linux < 2.6.23"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS
-       depends on BUSYBOX_CONFIG_MOUNT
-       select BUSYBOX_CONFIG_FEATURE_HAVE_RPC
-       select BUSYBOX_CONFIG_FEATURE_SYSLOG
-       help
-         Enable mounting of NFS file systems on Linux kernels prior
-         to version 2.6.23. Note that in this case mounting of NFS
-         over IPv6 will not be possible.
-
-         Note that this option links in RPC support from libc,
-         which is rather large (~10 kbytes on uclibc).
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS
-       bool "Support mounting CIFS/SMB file systems"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS
-       depends on BUSYBOX_CONFIG_MOUNT
-       help
-         Enable support for samba mounts.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS
-       depends on BUSYBOX_CONFIG_MOUNT
-       bool "Support lots of -o flags in mount"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS
-       help
-         Without this, mount only supports ro/rw/remount. With this, it
-         supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
-         noatime, diratime, nodiratime, loud, bind, move, shared, slave,
-         private, unbindable, rshared, rslave, rprivate, and runbindable.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
-       depends on BUSYBOX_CONFIG_MOUNT
-       bool "Support /etc/fstab and -a"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB
-       help
-         Support mount all and looking for files in /etc/fstab.
-
-config BUSYBOX_CONFIG_FEATURE_MOUNT_OTHERTAB
-       depends on BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
-       bool "Support -T <alt_fstab>"
-       default BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB
-       help
-         Support mount -T (specifying an alternate fstab)
-config BUSYBOX_CONFIG_NSENTER
-       bool "nsenter"
-       default BUSYBOX_DEFAULT_NSENTER
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Run program with namespaces of other processes.
-
-config BUSYBOX_CONFIG_FEATURE_NSENTER_LONG_OPTS
-       bool "Enable long options"
-       default BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS
-       depends on BUSYBOX_CONFIG_NSENTER && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Support long options for the nsenter applet. This makes
-         the busybox implementation more compatible with upstream.
-config BUSYBOX_CONFIG_REV
-       bool "rev"
-       default BUSYBOX_DEFAULT_REV
-       help
-         Reverse lines of a file or files.
-config BUSYBOX_CONFIG_SETARCH
-       bool "setarch"
-       default BUSYBOX_DEFAULT_SETARCH
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         The linux32 utility is used to create a 32bit environment for the
-         specified program (usually a shell). It only makes sense to have
-         this util on a system that supports both 64bit and 32bit userland
-         (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
-config BUSYBOX_CONFIG_UEVENT
-       bool "uevent"
-       default BUSYBOX_DEFAULT_UEVENT
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         uevent is a netlink listener for kernel uevent notifications
-         sent via netlink. It is usually used for dynamic device creation.
-config BUSYBOX_CONFIG_UNSHARE
-       bool "unshare"
-       default BUSYBOX_DEFAULT_UNSHARE
-       depends on BUSYBOX_CONFIG_LONG_OPTS && !BUSYBOX_CONFIG_NOMMU
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Run program with some namespaces unshared from parent.
-
 config BUSYBOX_CONFIG_ACPID
        bool "acpid"
        default BUSYBOX_DEFAULT_ACPID
@@ -244,7 +28,11 @@ config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT
        depends on BUSYBOX_CONFIG_ACPID
        help
          Accept and ignore compatibility options -g -m -s -S -v.
-
+config BUSYBOX_CONFIG_BLKDISCARD
+       bool "blkdiscard"
+       default BUSYBOX_DEFAULT_BLKDISCARD
+       help
+         blkdiscard discards sectors on a given device.
 config BUSYBOX_CONFIG_BLKID
        bool "blkid"
        default BUSYBOX_DEFAULT_BLKID
@@ -261,7 +49,11 @@ config BUSYBOX_CONFIG_FEATURE_BLKID_TYPE
        depends on BUSYBOX_CONFIG_BLKID
        help
          Show TYPE="filesystem type"
-
+config BUSYBOX_CONFIG_BLOCKDEV
+       bool "blockdev"
+       default BUSYBOX_DEFAULT_BLOCKDEV
+       help
+         Performs some ioctls with block devices.
 config BUSYBOX_CONFIG_DMESG
        bool "dmesg"
        default BUSYBOX_DEFAULT_DMESG
@@ -295,7 +87,12 @@ config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY
            <5>Linux version 2.6.17.4 .....
            <6>BIOS-provided physical RAM map:
            <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
-
+config BUSYBOX_CONFIG_FATATTR
+       bool "fatattr"
+       default BUSYBOX_DEFAULT_FATATTR
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         fatattr lists or changes the file attributes on a fat file system.
 config BUSYBOX_CONFIG_FBSET
        bool "fbset"
        default BUSYBOX_DEFAULT_FBSET
@@ -324,27 +121,12 @@ config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
          This option allows fbset to read the video mode database stored by
          default BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE /etc/fb.modes, which can be used to set frame buffer
          device to pre-defined video modes.
-
-config BUSYBOX_CONFIG_FDFLUSH
-       bool "fdflush"
-       default BUSYBOX_DEFAULT_FDFLUSH
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         fdflush is only needed when changing media on slightly-broken
-         removable media drives. It is used to make Linux believe that a
-         hardware disk-change switch has been actuated, which causes Linux to
-         forget anything it has cached from the previous media. If you have
-         such a slightly-broken drive, you will need to run fdflush every time
-         you change a disk. Most people have working hardware and can safely
-         leave this disabled.
-
 config BUSYBOX_CONFIG_FDFORMAT
        bool "fdformat"
        default BUSYBOX_DEFAULT_FDFORMAT
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          fdformat is used to low-level format a floppy disk.
-
 config BUSYBOX_CONFIG_FDISK
        bool "fdisk"
        default BUSYBOX_DEFAULT_FDISK
@@ -421,7 +203,6 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
          define arbitrary drive geometry, move the beginning of data in a
          partition, and similarly evil things. Unless you have a very good
          reason you would be wise to leave this disabled.
-
 config BUSYBOX_CONFIG_FINDFS
        bool "findfs"
        default BUSYBOX_DEFAULT_FINDFS
@@ -431,12 +212,23 @@ config BUSYBOX_CONFIG_FINDFS
          Prints the name of a filesystem with given label or UUID.
          WARNING:
          With all submodules selected, it will add ~8k to busybox.
-
 config BUSYBOX_CONFIG_FLOCK
        bool "flock"
        default BUSYBOX_DEFAULT_FLOCK
        help
          Manage locks from shell scripts
+config BUSYBOX_CONFIG_FDFLUSH
+       bool "fdflush"
+       default BUSYBOX_DEFAULT_FDFLUSH
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         fdflush is only needed when changing media on slightly-broken
+         removable media drives. It is used to make Linux believe that a
+         hardware disk-change switch has been actuated, which causes Linux to
+         forget anything it has cached from the previous media. If you have
+         such a slightly-broken drive, you will need to run fdflush every time
+         you change a disk. Most people have working hardware and can safely
+         leave this disabled.
 
 config BUSYBOX_CONFIG_FREERAMDISK
        bool "freeramdisk"
@@ -449,7 +241,6 @@ config BUSYBOX_CONFIG_FREERAMDISK
          pivot_root, you may want to free the memory that is allocated to the
          ramdisk. If you have no use for freeing memory from a ramdisk, leave
          this disabled.
-
 config BUSYBOX_CONFIG_FSCK_MINIX
        bool "fsck_minix"
        default BUSYBOX_DEFAULT_FSCK_MINIX
@@ -460,47 +251,12 @@ config BUSYBOX_CONFIG_FSCK_MINIX
          power goes off in the middle of a write. This utility allows you to
          check for and attempt to repair any corruption that occurs to a minix
          filesystem.
-
-config BUSYBOX_CONFIG_MKFS_EXT2
-       bool "mkfs_ext2"
-       default BUSYBOX_DEFAULT_MKFS_EXT2
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Utility to create EXT2 filesystems.
-
-config BUSYBOX_CONFIG_MKFS_MINIX
-       bool "mkfs_minix"
-       default BUSYBOX_DEFAULT_MKFS_MINIX
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         The minix filesystem is a nice, small, compact, read-write filesystem
-         with little overhead. If you wish to be able to create minix
-         filesystems this utility will do the job for you.
-
-config BUSYBOX_CONFIG_FEATURE_MINIX2
-       bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
-       default BUSYBOX_DEFAULT_FEATURE_MINIX2
-       depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
-       help
-         If you wish to be able to create version 2 minix filesystems, enable
-         this. If you enabled 'mkfs_minix' then you almost certainly want to
-         be using the version 2 filesystem support.
-
-config BUSYBOX_CONFIG_MKFS_REISER
-       bool "mkfs_reiser"
-       default BUSYBOX_DEFAULT_MKFS_REISER
-       select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Utility to create ReiserFS filesystems.
-         Note: this applet needs a lot of testing and polishing.
-
-config BUSYBOX_CONFIG_MKFS_VFAT
-       bool "mkfs_vfat"
-       default BUSYBOX_DEFAULT_MKFS_VFAT
+config BUSYBOX_CONFIG_FSTRIM
+       bool "fstrim"
+       default BUSYBOX_DEFAULT_FSTRIM
        select BUSYBOX_CONFIG_PLATFORM_LINUX
-       help
-         Utility to create FAT32 filesystems.
-
+       help
+         Discard unused blocks on a mounted filesystem.
 config BUSYBOX_CONFIG_GETOPT
        bool "getopt"
        default BUSYBOX_DEFAULT_GETOPT
@@ -518,7 +274,6 @@ config BUSYBOX_CONFIG_FEATURE_GETOPT_LONG
        depends on BUSYBOX_CONFIG_GETOPT
        help
          Enable support for long options (option -l).
-
 config BUSYBOX_CONFIG_HEXDUMP
        bool "hexdump"
        default BUSYBOX_DEFAULT_HEXDUMP
@@ -539,10 +294,8 @@ config BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE
 config BUSYBOX_CONFIG_HD
        bool "hd"
        default BUSYBOX_DEFAULT_HD
-       depends on BUSYBOX_CONFIG_HEXDUMP
        help
          hd is an alias to hexdump -C.
-
 config BUSYBOX_CONFIG_HWCLOCK
        bool "hwclock"
        default BUSYBOX_DEFAULT_HWCLOCK
@@ -573,7 +326,6 @@ config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
          classic /etc/adjtime path.
 
          pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
-
 config BUSYBOX_CONFIG_IPCRM
        bool "ipcrm"
        default BUSYBOX_DEFAULT_IPCRM
@@ -581,7 +333,6 @@ config BUSYBOX_CONFIG_IPCRM
          The ipcrm utility allows the removal of System V interprocess
          communication (IPC) objects and the associated data structures
          from the system.
-
 config BUSYBOX_CONFIG_IPCS
        bool "ipcs"
        default BUSYBOX_DEFAULT_IPCS
@@ -589,7 +340,6 @@ config BUSYBOX_CONFIG_IPCS
        help
          The ipcs utility is used to provide information on the currently
          allocated System V interprocess (IPC) objects in the system.
-
 config BUSYBOX_CONFIG_LOSETUP
        bool "losetup"
        default BUSYBOX_DEFAULT_LOSETUP
@@ -598,7 +348,6 @@ config BUSYBOX_CONFIG_LOSETUP
          losetup is used to associate or detach a loop device with a regular
          file or block device, and to query the status of a loop device. This
          version does not currently support enabling data encryption.
-
 config BUSYBOX_CONFIG_LSPCI
        bool "lspci"
        default BUSYBOX_DEFAULT_LSPCI
@@ -608,7 +357,6 @@ config BUSYBOX_CONFIG_LSPCI
          system and devices connected to them.
 
          This version uses sysfs (/sys/bus/pci/devices) only.
-
 config BUSYBOX_CONFIG_LSUSB
        bool "lsusb"
        default BUSYBOX_DEFAULT_LSUSB
@@ -618,7 +366,113 @@ config BUSYBOX_CONFIG_LSUSB
          system and devices connected to them.
 
          This version uses sysfs (/sys/bus/usb/devices) only.
+config BUSYBOX_CONFIG_MDEV
+       bool "mdev"
+       default BUSYBOX_DEFAULT_MDEV
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         mdev is a mini-udev implementation for dynamically creating device
+         nodes in the /dev directory.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       bool "Support /etc/mdev.conf"
+       default BUSYBOX_DEFAULT_FEATURE_MDEV_CONF
+       depends on BUSYBOX_CONFIG_MDEV
+       help
+         Add support for the mdev config file to control ownership and
+         permissions of the device nodes.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
+       bool "Support subdirs/symlinks"
+       default BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       help
+         Add support for renaming devices and creating symlinks.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME_REGEXP
+       bool "Support regular expressions substitutions when renaming device"
+       default BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
+       help
+         Add support for regular expressions substitutions when renaming
+         device.
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
+       bool "Support command execution at device addition/removal"
+       default BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       help
+         This adds support for an optional field to /etc/mdev.conf for
+         executing commands when devices are created/removed.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE
+       bool "Support loading of firmwares"
+       default BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE
+       depends on BUSYBOX_CONFIG_MDEV
+       help
+         Some devices need to load firmware before they can be usable.
+
+         These devices will request userspace look up the files in
+         /lib/firmware/ and if it exists, send it to the kernel for
+         loading into the hardware.
+config BUSYBOX_CONFIG_MKE2FS
+       bool "mke2fs"
+       default BUSYBOX_DEFAULT_MKE2FS
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Utility to create EXT2 filesystems.
+
+config BUSYBOX_CONFIG_MKFS_EXT2
+       bool "mkfs.ext2"
+       default BUSYBOX_DEFAULT_MKFS_EXT2
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Alias to "mke2fs".
+config BUSYBOX_CONFIG_MKFS_MINIX
+       bool "mkfs_minix"
+       default BUSYBOX_DEFAULT_MKFS_MINIX
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         The minix filesystem is a nice, small, compact, read-write filesystem
+         with little overhead. If you wish to be able to create minix
+         filesystems this utility will do the job for you.
+
+config BUSYBOX_CONFIG_FEATURE_MINIX2
+       bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
+       default BUSYBOX_DEFAULT_FEATURE_MINIX2
+       depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
+       help
+         If you wish to be able to create version 2 minix filesystems, enable
+         this. If you enabled 'mkfs_minix' then you almost certainly want to
+         be using the version 2 filesystem support.
+config BUSYBOX_CONFIG_MKFS_REISER
+       bool "mkfs_reiser"
+       default BUSYBOX_DEFAULT_MKFS_REISER
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Utility to create ReiserFS filesystems.
+         Note: this applet needs a lot of testing and polishing.
+config BUSYBOX_CONFIG_MKDOSFS
+       bool "mkdosfs"
+       default BUSYBOX_DEFAULT_MKDOSFS
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Utility to create FAT32 filesystems.
 
+config BUSYBOX_CONFIG_MKFS_VFAT
+       bool "mkfs.vfat"
+       default BUSYBOX_DEFAULT_MKFS_VFAT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Alias to "mkdosfs".
 config BUSYBOX_CONFIG_MKSWAP
        bool "mkswap"
        default BUSYBOX_DEFAULT_MKSWAP
@@ -638,7 +492,6 @@ config BUSYBOX_CONFIG_FEATURE_MKSWAP_UUID
        depends on BUSYBOX_CONFIG_MKSWAP
        help
          Generate swap spaces with universally unique identifiers.
-
 config BUSYBOX_CONFIG_MORE
        bool "more"
        default BUSYBOX_DEFAULT_MORE
@@ -648,7 +501,114 @@ config BUSYBOX_CONFIG_MORE
          the screen, and you are using anything faster than a 300 baud modem,
          you will probably find this utility very helpful. If you don't have
          any need to reading text files, you can leave this disabled.
+config BUSYBOX_CONFIG_MOUNT
+       bool "mount"
+       default BUSYBOX_DEFAULT_MOUNT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         All files and filesystems in Unix are arranged into one big directory
+         tree. The 'mount' utility is used to graft a filesystem onto a
+         particular part of the tree. A filesystem can either live on a block
+         device, or it can be accessible over the network, as is the case with
+         NFS filesystems. Most people using BusyBox will also want to enable
+         the 'mount' utility.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FAKE
+       bool "Support option -f"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable support for faking a file system mount.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_VERBOSE
+       bool "Support option -v"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable multi-level -v[vv...] verbose messages. Useful if you
+         debug mount problems and want to see what is exactly passed
+         to the kernel.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_HELPERS
+       bool "Support mount helpers"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable mounting of virtual file systems via external helpers.
+         E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call
+         "obexfs -b00.11.22.33.44.55 /mnt"
+         Also "mount -t sometype [-o opts] fs /mnt" will try
+         "sometype [-o opts] fs /mnt" if simple mount syscall fails.
+         The idea is to use such virtual filesystems in /etc/fstab.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_LABEL
+       bool "Support specifying devices by label or UUID"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL
+       depends on BUSYBOX_CONFIG_MOUNT
+       select BUSYBOX_CONFIG_VOLUMEID
+       help
+         This allows for specifying a device by label or uuid, rather than by
+         name. This feature utilizes the same functionality as blkid/findfs.
+         This also enables label or uuid support for swapon.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
+       bool "Support mounting NFS file systems on Linux < 2.6.23"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS
+       depends on BUSYBOX_CONFIG_MOUNT
+       select BUSYBOX_CONFIG_FEATURE_HAVE_RPC
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
+       help
+         Enable mounting of NFS file systems on Linux kernels prior
+         to version 2.6.23. Note that in this case mounting of NFS
+         over IPv6 will not be possible.
+
+         Note that this option links in RPC support from libc,
+         which is rather large (~10 kbytes on uclibc).
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS
+       bool "Support mounting CIFS/SMB file systems"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable support for samba mounts.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS
+       depends on BUSYBOX_CONFIG_MOUNT
+       bool "Support lots of -o flags in mount"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS
+       help
+         Without this, mount only supports ro/rw/remount. With this, it
+         supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
+         noatime, diratime, nodiratime, loud, bind, move, shared, slave,
+         private, unbindable, rshared, rslave, rprivate, and runbindable.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
+       depends on BUSYBOX_CONFIG_MOUNT
+       bool "Support /etc/fstab and -a"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB
+       help
+         Support mount all and looking for files in /etc/fstab.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_OTHERTAB
+       depends on BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
+       bool "Support -T <alt_fstab>"
+       default BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB
+       help
+         Support mount -T (specifying an alternate fstab)
+config BUSYBOX_CONFIG_NSENTER
+       bool "nsenter"
+       default BUSYBOX_DEFAULT_NSENTER
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Run program with namespaces of other processes.
 
+config BUSYBOX_CONFIG_FEATURE_NSENTER_LONG_OPTS
+       bool "Enable long options"
+       default BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS
+       depends on BUSYBOX_CONFIG_NSENTER && BUSYBOX_CONFIG_LONG_OPTS
+       help
+         Support long options for the nsenter applet. This makes
+         the busybox implementation more compatible with upstream.
 config BUSYBOX_CONFIG_PIVOT_ROOT
        bool "pivot_root"
        default BUSYBOX_DEFAULT_PIVOT_ROOT
@@ -661,7 +621,6 @@ config BUSYBOX_CONFIG_PIVOT_ROOT
 
          Note: This is for initrd in linux 2.4. Under initramfs (introduced
          in linux 2.6) use switch_root instead.
-
 config BUSYBOX_CONFIG_RDATE
        bool "rdate"
        default BUSYBOX_DEFAULT_RDATE
@@ -670,46 +629,68 @@ config BUSYBOX_CONFIG_RDATE
          system clock with the date and time of a remote networked system using
          the RFC868 protocol, which is built into the inetd daemon on most
          systems.
-
 config BUSYBOX_CONFIG_RDEV
        bool "rdev"
        default BUSYBOX_DEFAULT_RDEV
        help
          Print the device node associated with the filesystem mounted at '/'.
-
 config BUSYBOX_CONFIG_READPROFILE
        bool "readprofile"
        default BUSYBOX_DEFAULT_READPROFILE
        #select PLATFORM_LINUX
        help
          This allows you to parse /proc/profile for basic profiling.
-
+config BUSYBOX_CONFIG_REV
+       bool "rev"
+       default BUSYBOX_DEFAULT_REV
+       help
+         Reverse lines of a file or files.
 config BUSYBOX_CONFIG_RTCWAKE
        bool "rtcwake"
        default BUSYBOX_DEFAULT_RTCWAKE
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Enter a system sleep state until specified wakeup time.
-
 config BUSYBOX_CONFIG_SCRIPT
        bool "script"
        default BUSYBOX_DEFAULT_SCRIPT
        help
          The script makes typescript of terminal session.
-
 config BUSYBOX_CONFIG_SCRIPTREPLAY
        bool "scriptreplay"
        default BUSYBOX_DEFAULT_SCRIPTREPLAY
        help
          This program replays a typescript, using timing information
          given by script -t.
+config BUSYBOX_CONFIG_SETARCH
+       bool "setarch"
+       default BUSYBOX_DEFAULT_SETARCH
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         The linux32 utility is used to create a 32bit environment for the
+         specified program (usually a shell). It only makes sense to have
+         this util on a system that supports both 64bit and 32bit userland
+         (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
+
+config BUSYBOX_CONFIG_LINUX32
+       bool "linux32"
+       default BUSYBOX_DEFAULT_LINUX32
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Alias to "setarch linux32".
 
-config BUSYBOX_CONFIG_SWAPONOFF
-       bool "swaponoff"
-       default BUSYBOX_DEFAULT_SWAPONOFF
+config BUSYBOX_CONFIG_LINUX64
+       bool "linux64"
+       default BUSYBOX_DEFAULT_LINUX64
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Alias to "setarch linux64".
+config BUSYBOX_CONFIG_SWAPON
+       bool "swapon"
+       default BUSYBOX_DEFAULT_SWAPON
        select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
-         This option enables both the 'swapon' and the 'swapoff' utilities.
+         This option enables the 'swapon' utility.
          Once you have created some swap space using 'mkswap', you also need
          to enable your swap space with the 'swapon' utility. The 'swapoff'
          utility is used, typically at system shutdown, to disable any swap
@@ -719,7 +700,7 @@ config BUSYBOX_CONFIG_SWAPONOFF
 config BUSYBOX_CONFIG_FEATURE_SWAPON_DISCARD
        bool "Support discard option -d"
        default BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD
-       depends on BUSYBOX_CONFIG_SWAPONOFF
+       depends on BUSYBOX_CONFIG_SWAPON
        help
          Enable support for discarding swap area blocks at swapon and/or as
          the kernel frees them. This option enables both the -d option on
@@ -728,10 +709,16 @@ config BUSYBOX_CONFIG_FEATURE_SWAPON_DISCARD
 config BUSYBOX_CONFIG_FEATURE_SWAPON_PRI
        bool "Support priority option -p"
        default BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI
-       depends on BUSYBOX_CONFIG_SWAPONOFF
+       depends on BUSYBOX_CONFIG_SWAPON
        help
          Enable support for setting swap device priority in swapon.
 
+config BUSYBOX_CONFIG_SWAPOFF
+       bool "swapoff"
+       default BUSYBOX_DEFAULT_SWAPOFF
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         This option enables the 'swapoff' utility.
 config BUSYBOX_CONFIG_SWITCH_ROOT
        bool "switch_root"
        default BUSYBOX_DEFAULT_SWITCH_ROOT
@@ -751,7 +738,13 @@ config BUSYBOX_CONFIG_SWITCH_ROOT
          * Because the Linux kernel uses rootfs internally as the starting
          and ending point for searching through the kernel's doubly linked
          list of active mount points. That's why.
-
+config BUSYBOX_CONFIG_UEVENT
+       bool "uevent"
+       default BUSYBOX_DEFAULT_UEVENT
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         uevent is a netlink listener for kernel uevent notifications
+         sent via netlink. It is usually used for dynamic device creation.
 config BUSYBOX_CONFIG_UMOUNT
        bool "umount"
        default BUSYBOX_DEFAULT_UMOUNT
@@ -768,6 +761,13 @@ config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
        depends on BUSYBOX_CONFIG_UMOUNT
        help
          Support -a option to unmount all currently mounted filesystems.
+config BUSYBOX_CONFIG_UNSHARE
+       bool "unshare"
+       default BUSYBOX_DEFAULT_UNSHARE
+       depends on BUSYBOX_CONFIG_LONG_OPTS && !BUSYBOX_CONFIG_NOMMU
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Run program with some namespaces unshared from parent.
 
 comment "Common options for mount/umount"
        depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
index 6153314..49a5785 100644 (file)
@@ -189,6 +189,15 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_SYSV
          TODO
 
 
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_UBIFS
+       bool "UBIFS filesystem"
+       default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UBIFS
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         UBIFS (Unsorted Block Image File System) is a file
+         system for use with raw flash memory media.
+
+
 config BUSYBOX_CONFIG_FEATURE_VOLUMEID_UDF
        bool "udf filesystem"
        default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF
diff --git a/package/utils/busybox/patches/002-libbb-send_to_from-do-not-require-that-to-should-hav.patch b/package/utils/busybox/patches/002-libbb-send_to_from-do-not-require-that-to-should-hav.patch
deleted file mode 100644 (file)
index f33c3b2..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-From 7cef4817d6d6d61a1166ed7dfc13537b95c65970 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Thu, 15 Sep 2016 13:20:51 +0200
-Subject: [PATCH] libbb:/send_to_from: do not require that "to" should have the
- same AF. Closes 9146
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- libbb/udp_io.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
---- a/libbb/udp_io.c
-+++ b/libbb/udp_io.c
-@@ -70,7 +70,13 @@ send_to_from(int fd, void *buf, size_t l
-       msg.msg_flags = flags;
-       cmsgptr = CMSG_FIRSTHDR(&msg);
--      if (to->sa_family == AF_INET && from->sa_family == AF_INET) {
-+      /*
-+       * Users report that to->sa_family can be AF_INET6 too,
-+       * if "to" was acquired by recv_from_to(). IOW: recv_from_to()
-+       * was seen showing IPv6 "from" even when the destination
-+       * of received packet (our local address) was IPv4.
-+       */
-+      if (/* to->sa_family == AF_INET && */ from->sa_family == AF_INET) {
-               struct in_pktinfo *pktptr;
-               cmsgptr->cmsg_level = IPPROTO_IP;
-               cmsgptr->cmsg_type = IP_PKTINFO;
-@@ -86,7 +92,7 @@ send_to_from(int fd, void *buf, size_t l
-               pktptr->ipi_spec_dst = ((struct sockaddr_in*)from)->sin_addr;
-       }
- # if ENABLE_FEATURE_IPV6 && defined(IPV6_PKTINFO)
--      else if (to->sa_family == AF_INET6 && from->sa_family == AF_INET6) {
-+      else if (/* to->sa_family == AF_INET6 && */ from->sa_family == AF_INET6) {
-               struct in6_pktinfo *pktptr;
-               cmsgptr->cmsg_level = IPPROTO_IPV6;
-               cmsgptr->cmsg_type = IPV6_PKTINFO;
diff --git a/package/utils/busybox/patches/102-trylink_mktemp_fix.patch b/package/utils/busybox/patches/102-trylink_mktemp_fix.patch
deleted file mode 100644 (file)
index ed1dcbb..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/scripts/trylink
-+++ b/scripts/trylink
-@@ -46,7 +46,7 @@ try() {
- }
- check_cc() {
--    local tempname="$(mktemp)"
-+    local tempname="$(mktemp /tmp/tmp.XXXXXXXXXX)"
-     local r
-     echo "int main(int argc,char**argv){return argv?argc:0;}" >"$tempname".c
-     # Can use "-o /dev/null", but older gcc tend to *unlink it* on failure! :(
-@@ -61,7 +61,7 @@ check_cc() {
- }
- check_libc_is_glibc() {
--    local tempname="$(mktemp)"
-+    local tempname="$(mktemp /tmp/tmp.XXXXXXXXXX)"
-     local r
-     echo "\
-       #include <stdlib.h>
index 4825bc8..682a68e 100644 (file)
@@ -1,6 +1,6 @@
 --- a/util-linux/mount.c
 +++ b/util-linux/mount.c
-@@ -237,9 +237,6 @@
+@@ -245,9 +245,6 @@
  #if ENABLE_FEATURE_MOUNT_NFS
  /* This is just a warning of a common mistake.  Possibly this should be a
   * uclibc faq entry rather than in busybox... */
index 0fdaed5..8ef8f22 100644 (file)
@@ -1,6 +1,6 @@
 --- a/networking/udhcp/dhcpc.c
 +++ b/networking/udhcp/dhcpc.c
-@@ -697,6 +697,7 @@ static int bcast_or_ucast(struct dhcp_pa
+@@ -704,6 +704,7 @@ static int bcast_or_ucast(struct dhcp_pa
  static NOINLINE int send_discover(uint32_t xid, uint32_t requested)
  {
        struct dhcp_packet packet;
@@ -8,7 +8,7 @@
  
        /* Fill in: op, htype, hlen, cookie, chaddr fields,
         * random xid field (we override it below),
-@@ -714,6 +715,7 @@ static NOINLINE int send_discover(uint32
+@@ -721,6 +722,7 @@ static NOINLINE int send_discover(uint32
         */
        add_client_options(&packet);
  
index 4a9ae98..f5e3a07 100644 (file)
@@ -1,6 +1,6 @@
 --- a/networking/udhcp/dhcpc.c
 +++ b/networking/udhcp/dhcpc.c
-@@ -1422,6 +1422,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c
+@@ -1439,6 +1439,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c
                /* silence "uninitialized!" warning */
                unsigned timestamp_before_wait = timestamp_before_wait;
  
index 1e44552..3df8d93 100644 (file)
@@ -1,6 +1,6 @@
 --- a/networking/udhcp/dhcpc.c
 +++ b/networking/udhcp/dhcpc.c
-@@ -1103,7 +1103,6 @@ static void perform_renew(void)
+@@ -1110,7 +1110,6 @@ static void perform_renew(void)
                state = RENEW_REQUESTED;
                break;
        case RENEW_REQUESTED: /* impatient are we? fine, square 1 */
index d52ea3f..fec2a3a 100644 (file)
@@ -1,6 +1,6 @@
 --- a/networking/telnetd.c
 +++ b/networking/telnetd.c
-@@ -333,6 +333,7 @@ make_new_session(
+@@ -497,6 +497,7 @@ make_new_session(
  
        /* Restore default signal handling ASAP */
        bb_signals((1 << SIGCHLD) + (1 << SIGPIPE), SIG_DFL);
index b2681a1..476440f 100644 (file)
@@ -1,6 +1,6 @@
 --- a/coreutils/date.c
 +++ b/coreutils/date.c
-@@ -123,6 +123,7 @@
+@@ -122,6 +122,7 @@
  //usage:      IF_FEATURE_DATE_ISOFMT(
  //usage:     "\n      -D FMT          Use FMT for -d TIME conversion"
  //usage:      )
@@ -8,7 +8,7 @@
  //usage:     "\n"
  //usage:     "\nRecognized TIME formats:"
  //usage:     "\n      hh:mm[:ss]"
-@@ -139,9 +140,8 @@
+@@ -138,9 +139,8 @@
  
  #include "libbb.h"
  #include "common_bufsiz.h"
@@ -20,7 +20,7 @@
  
  enum {
        OPT_RFC2822   = (1 << 0), /* R */
-@@ -149,8 +149,9 @@ enum {
+@@ -148,8 +148,9 @@ enum {
        OPT_UTC       = (1 << 2), /* u */
        OPT_DATE      = (1 << 3), /* d */
        OPT_REFERENCE = (1 << 4), /* r */
@@ -32,7 +32,7 @@
  };
  
  static void maybe_set_utc(int opt)
-@@ -168,12 +169,15 @@ static const char date_longopts[] ALIGN1
+@@ -167,12 +168,15 @@ static const char date_longopts[] ALIGN1
        /*      "universal\0" No_argument       "u" */
                "date\0"      Required_argument "d"
                "reference\0" Required_argument "r"
@@ -48,7 +48,7 @@
        struct timespec ts;
        struct tm tm_time;
        char buf_fmt_dt2str[64];
-@@ -188,7 +192,7 @@ int date_main(int argc UNUSED_PARAM, cha
+@@ -187,7 +191,7 @@ int date_main(int argc UNUSED_PARAM, cha
        opt_complementary = "d--s:s--d"
                IF_FEATURE_DATE_ISOFMT(":R--I:I--R");
        IF_LONG_OPTS(applet_long_options = date_longopts;)
@@ -57,7 +57,7 @@
                        IF_FEATURE_DATE_ISOFMT("I::D:"),
                        &date_str, &date_str, &filename
                        IF_FEATURE_DATE_ISOFMT(, &isofmt_arg, &fmt_str2dt));
-@@ -245,6 +249,31 @@ int date_main(int argc UNUSED_PARAM, cha
+@@ -244,6 +248,31 @@ int date_main(int argc UNUSED_PARAM, cha
        if (*argv)
                bb_show_usage();
  
diff --git a/package/utils/busybox/patches/302-netlink-alignment.patch b/package/utils/busybox/patches/302-netlink-alignment.patch
deleted file mode 100644 (file)
index 4cd25b1..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-From a843f09a4d4428cf11ca02307e60058251b05743 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Fri, 16 Sep 2016 21:52:03 +0200
-Subject: [PATCH] libnetlink: fix alignment of netlink messages
-
-An padding to align a message should not only be added between
-different attributes of a netlink message, but also at the end of the
-message to pad it to the correct size.
-
-Without this patch the following command does not work and returns an
-error code:
-ip link add type nlmon
-
-Without this ip from busybox sends this:
-sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=45, type=0x10 /* NLMSG_??? */, flags=NLM_F_REQUEST|NLM_F_ACK|0x600, seq=1474057401, pid=0}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon"}, iov_len=45}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 45
-return value: 2
-
-The normal ip utile from iproute2 sends this:
-sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=48, type=0x10 /* NLMSG_??? */, flags=NLM_F_REQUEST|NLM_F_ACK|0x600, seq=1473716938, pid=0}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon\0\0\0"}, iov_len=48}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 48
-return value: 0
-
-With this patch ip from busybox sends this:
-sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=48, type=0x10 /* NLMSG_??? */, flags=NLM_F_REQUEST|NLM_F_ACK|0x600, seq=1473716908, pid=0}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon\0\0\0"}, iov_len=48}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 48
-return value: 0
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- networking/libiproute/libnetlink.c | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
-
---- a/networking/libiproute/libnetlink.c
-+++ b/networking/libiproute/libnetlink.c
-@@ -338,14 +338,14 @@ int FAST_FUNC addattr32(struct nlmsghdr
-       int len = RTA_LENGTH(4);
-       struct rtattr *rta;
--      if ((int)(NLMSG_ALIGN(n->nlmsg_len) + len) > maxlen) {
-+      if ((int)(NLMSG_ALIGN(n->nlmsg_len + len)) > maxlen) {
-               return -1;
-       }
-       rta = (struct rtattr*)(((char*)n) + NLMSG_ALIGN(n->nlmsg_len));
-       rta->rta_type = type;
-       rta->rta_len = len;
-       move_to_unaligned32(RTA_DATA(rta), data);
--      n->nlmsg_len = NLMSG_ALIGN(n->nlmsg_len) + len;
-+      n->nlmsg_len = NLMSG_ALIGN(n->nlmsg_len + len);
-       return 0;
- }
-@@ -354,14 +354,14 @@ int FAST_FUNC addattr_l(struct nlmsghdr
-       int len = RTA_LENGTH(alen);
-       struct rtattr *rta;
--      if ((int)(NLMSG_ALIGN(n->nlmsg_len) + len) > maxlen) {
-+      if ((int)(NLMSG_ALIGN(n->nlmsg_len + len)) > maxlen) {
-               return -1;
-       }
-       rta = (struct rtattr*)(((char*)n) + NLMSG_ALIGN(n->nlmsg_len));
-       rta->rta_type = type;
-       rta->rta_len = len;
-       memcpy(RTA_DATA(rta), data, alen);
--      n->nlmsg_len = NLMSG_ALIGN(n->nlmsg_len) + len;
-+      n->nlmsg_len = NLMSG_ALIGN(n->nlmsg_len + len);
-       return 0;
- }
-@@ -370,14 +370,14 @@ int FAST_FUNC rta_addattr32(struct rtatt
-       int len = RTA_LENGTH(4);
-       struct rtattr *subrta;
--      if (RTA_ALIGN(rta->rta_len) + len > maxlen) {
-+      if (RTA_ALIGN(rta->rta_len + len) > maxlen) {
-               return -1;
-       }
-       subrta = (struct rtattr*)(((char*)rta) + RTA_ALIGN(rta->rta_len));
-       subrta->rta_type = type;
-       subrta->rta_len = len;
-       move_to_unaligned32(RTA_DATA(subrta), data);
--      rta->rta_len = NLMSG_ALIGN(rta->rta_len) + len;
-+      rta->rta_len = NLMSG_ALIGN(rta->rta_len + len);
-       return 0;
- }
-@@ -386,14 +386,14 @@ int FAST_FUNC rta_addattr_l(struct rtatt
-       struct rtattr *subrta;
-       int len = RTA_LENGTH(alen);
--      if (RTA_ALIGN(rta->rta_len) + len > maxlen) {
-+      if (RTA_ALIGN(rta->rta_len + len) > maxlen) {
-               return -1;
-       }
-       subrta = (struct rtattr*)(((char*)rta) + RTA_ALIGN(rta->rta_len));
-       subrta->rta_type = type;
-       subrta->rta_len = len;
-       memcpy(RTA_DATA(subrta), data, alen);
--      rta->rta_len = NLMSG_ALIGN(rta->rta_len) + len;
-+      rta->rta_len = NLMSG_ALIGN(rta->rta_len + len);
-       return 0;
- }
diff --git a/package/utils/busybox/patches/303-ip-route-fix-high-table-ids.patch b/package/utils/busybox/patches/303-ip-route-fix-high-table-ids.patch
deleted file mode 100644 (file)
index d7a38f6..0000000
+++ /dev/null
@@ -1,486 +0,0 @@
-From 485fcc89b99eae9cc7501eaff344b104e52ab7bf Mon Sep 17 00:00:00 2001
-From: Jo-Philipp Wich <jo@mein.io>
-Date: Mon, 26 Sep 2016 17:48:22 +0200
-Subject: [PATCH] iproute: properly support high routing table IDs
-
-The Linux kernel uses two distinct fields to denote the routing table ID in
-use by network routes; the 8 bit `rtm_table` member of `struct rtmsg` and the
-32 bit `RTA_TABLE` netlink attribute.
-
-If a routing table ID is larger than 255, the `RT_TABLE` attribute must be used
-and the `rtm_table` field has to be set to the special `RT_TABLE_UNSPEC` value.
-
-This commit ...
- - switches the *_n2a() and *_a2n() functions of rt_names.c to use dynamically
-   sized, name-sorted arrays instead of fixed arrays limited to 1024 slots in
-   order to support IDs up to 65535
- - adds proper handling of high table IDs to iprule.c and iproute.c when
-   adding, removing and dumping ip rules and network routes
-
-After this change, the Busybox ip applet fully supports IP rules with high ID
-numbers, using the same logic as the full iproute2.
-
-Signed-off-by: Jo-Philipp Wich <jo@mein.io>
----
- networking/libiproute/iproute.c  |  75 ++++++++------
- networking/libiproute/iprule.c   |   4 +-
- networking/libiproute/rt_names.c | 204 +++++++++++++++++++++++----------------
- 3 files changed, 169 insertions(+), 114 deletions(-)
-
---- a/networking/libiproute/iproute.c
-+++ b/networking/libiproute/iproute.c
-@@ -66,6 +66,7 @@ static int FAST_FUNC print_route(const s
-       inet_prefix dst;
-       inet_prefix src;
-       int host_len = -1;
-+      uint32_t rtable;
-       if (n->nlmsg_type != RTM_NEWROUTE && n->nlmsg_type != RTM_DELROUTE) {
-               fprintf(stderr, "Not a route: %08x %08x %08x\n",
-@@ -83,34 +84,6 @@ static int FAST_FUNC print_route(const s
-       else if (r->rtm_family == AF_INET)
-               host_len = 32;
--      if (r->rtm_family == AF_INET6) {
--              if (G_filter.tb) {
--                      if (G_filter.tb < 0) {
--                              if (!(r->rtm_flags & RTM_F_CLONED)) {
--                                      return 0;
--                              }
--                      } else {
--                              if (r->rtm_flags & RTM_F_CLONED) {
--                                      return 0;
--                              }
--                              if (G_filter.tb == RT_TABLE_LOCAL) {
--                                      if (r->rtm_type != RTN_LOCAL) {
--                                              return 0;
--                                      }
--                              } else if (G_filter.tb == RT_TABLE_MAIN) {
--                                      if (r->rtm_type == RTN_LOCAL) {
--                                              return 0;
--                                      }
--                              } else {
--                                      return 0;
--                              }
--                      }
--              }
--      } else {
--              if (G_filter.tb > 0 && G_filter.tb != r->rtm_table) {
--                      return 0;
--              }
--      }
-       if (G_filter.rdst.family
-        && (r->rtm_family != G_filter.rdst.family || G_filter.rdst.bitlen > r->rtm_dst_len)
-       ) {
-@@ -141,6 +114,37 @@ static int FAST_FUNC print_route(const s
-       memset(&dst, 0, sizeof(dst));
-       parse_rtattr(tb, RTA_MAX, RTM_RTA(r), len);
-+      rtable = tb[RTA_TABLE] ? *(uint32_t*)RTA_DATA(tb[RTA_TABLE]) : r->rtm_table;
-+
-+      if (G_filter.tb) {
-+              if (r->rtm_family == AF_INET6) {
-+                      if (G_filter.tb < 0) {
-+                              if (!(r->rtm_flags & RTM_F_CLONED)) {
-+                                      return 0;
-+                              }
-+                      } else {
-+                              if (r->rtm_flags & RTM_F_CLONED) {
-+                                      return 0;
-+                              }
-+                              if (G_filter.tb == RT_TABLE_LOCAL) {
-+                                      if (r->rtm_type != RTN_LOCAL) {
-+                                              return 0;
-+                                      }
-+                              } else if (G_filter.tb == RT_TABLE_MAIN) {
-+                                      if (r->rtm_type == RTN_LOCAL) {
-+                                              return 0;
-+                                      }
-+                              } else if (G_filter.tb != rtable) {
-+                                      return 0;
-+                              }
-+                      }
-+              } else {
-+                      if (G_filter.tb != rtable) {
-+                              return 0;
-+                      }
-+              }
-+      }
-+
-       if (tb[RTA_SRC]) {
-               src.bitlen = r->rtm_src_len;
-               src.bytelen = (r->rtm_family == AF_INET6 ? 16 : 4);
-@@ -349,7 +353,9 @@ IF_FEATURE_IP_RULE(ARG_table,)
-       smalluint ok = 0;
-       smalluint scope_ok = 0;
-       int arg;
--
-+#if ENABLE_FEATURE_IP_RULE
-+      uint32_t rtable = 0;
-+#endif
-       memset(&req, 0, sizeof(req));
-       req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg));
-@@ -419,7 +425,7 @@ IF_FEATURE_IP_RULE(ARG_table,)
-                       NEXT_ARG();
-                       if (rtnl_rttable_a2n(&tid, *argv))
-                               invarg_1_to_2(*argv, "table");
--                      req.r.rtm_table = tid;
-+                      rtable = tid;
- #endif
-               } else if (arg == ARG_dev || arg == ARG_oif) {
-                       NEXT_ARG();
-@@ -475,6 +481,15 @@ IF_FEATURE_IP_RULE(ARG_table,)
-               }
-       }
-+#if ENABLE_FEATURE_IP_RULE
-+      if (rtable >= 256) {
-+              addattr32(&req.n, sizeof(req), RTA_TABLE, rtable);
-+              req.r.rtm_table = RT_TABLE_UNSPEC;
-+      } else if (rtable > 0) {
-+              req.r.rtm_table = rtable;
-+      }
-+#endif
-+
-       if (mxrta->rta_len > RTA_LENGTH(0)) {
-               if (mxlock) {
-                       rta_addattr32(mxrta, sizeof(mxbuf), RTAX_LOCK, mxlock);
---- a/networking/libiproute/iprule.c
-+++ b/networking/libiproute/iprule.c
-@@ -114,7 +114,9 @@ static int FAST_FUNC print_rule(const st
-               printf("iif %s ", (char*)RTA_DATA(tb[RTA_IIF]));
-       }
--      if (r->rtm_table)
-+      if (tb[RTA_TABLE])
-+              printf("lookup %s ", rtnl_rttable_n2a(*(uint32_t*)RTA_DATA(tb[RTA_TABLE])));
-+      else if (r->rtm_table)
-               printf("lookup %s ", rtnl_rttable_n2a(r->rtm_table));
-       if (tb[RTA_FLOW]) {
---- a/networking/libiproute/rt_names.c
-+++ b/networking/libiproute/rt_names.c
-@@ -11,21 +11,26 @@
- #include "rt_names.h"
- #define CONFDIR          CONFIG_FEATURE_IP_ROUTE_DIR
-+#define RT_TABLE_MAX  65535
-+
-+struct rtnl_tab_entry {
-+      unsigned int id;
-+      const char *name;
-+};
- typedef struct rtnl_tab_t {
--      const char *cached_str;
--      unsigned cached_result;
--      /* upstream version switched to a hash table and removed
--       * id < 256 limit. For now bbox bumps this array size from 256
--       * to 1024. If you plan to change this to a hash table,
--       * consider merging several hash tables we have (for example,
--       * awk has resizable one!
--       */
--#define RT_TABLE_MAX 1023
--      const char *tab[RT_TABLE_MAX+1];
-+      struct rtnl_tab_entry *tab;
-+      size_t length;
- } rtnl_tab_t;
--static void rtnl_tab_initialize(const char *file, const char **tab)
-+static int tabcmp(const void *p1, const void *p2)
-+{
-+      const struct rtnl_tab_entry *e1 = p1;
-+      const struct rtnl_tab_entry *e2 = p2;
-+      return strcmp(e1->name, e2->name);
-+}
-+
-+static void rtnl_tab_initialize(const char *file, rtnl_tab_t *tab)
- {
-       char *token[2];
-       char fullname[sizeof(CONFDIR"/rt_dsfield") + 8];
-@@ -40,34 +45,42 @@ static void rtnl_tab_initialize(const ch
-                               file, parser->lineno);
-                       break;
-               }
--              tab[id] = xstrdup(token[1]);
-+
-+              tab->tab = xrealloc(tab->tab, (tab->length + 1) * sizeof(*tab->tab));
-+              tab->tab[tab->length].id = id;
-+              tab->tab[tab->length].name = xstrdup(token[1]);
-+              tab->length++;
-       }
-       config_close(parser);
-+      qsort(tab->tab, tab->length, sizeof(*tab->tab), tabcmp);
- }
- static int rtnl_a2n(rtnl_tab_t *tab, uint32_t *id, const char *arg, int base)
- {
--      unsigned i;
--
--      if (tab->cached_str && strcmp(tab->cached_str, arg) == 0) {
--              *id = tab->cached_result;
--              return 0;
--      }
-+      int delta;
-+      ssize_t l = 0;
-+      ssize_t r = tab->length - 1;
-+      ssize_t m;
-+      uint32_t i;
-+
-+      while (l <= r) {
-+              m = l + (r - l) / 2;
-+              delta = strcmp(tab->tab[m].name, arg);
--      for (i = 0; i <= RT_TABLE_MAX; i++) {
--              if (tab->tab[i]
--               && strcmp(tab->tab[i], arg) == 0
--              ) {
--                      tab->cached_str = tab->tab[i];
--                      tab->cached_result = i;
--                      *id = i;
-+              if (delta == 0) {
-+                      *id = tab->tab[m].id;
-                       return 0;
-+              } else if (delta < 0) {
-+                      l = m + 1;
-+              } else {
-+                      r = m - 1;
-               }
-       }
-       i = bb_strtou(arg, NULL, base);
-       if (i > RT_TABLE_MAX)
-               return -1;
-+
-       *id = i;
-       return 0;
- }
-@@ -77,40 +90,39 @@ static rtnl_tab_t *rtnl_rtprot_tab;
- static void rtnl_rtprot_initialize(void)
- {
--      static const char *const init_tab[] = {
--              "none",
--              "redirect",
--              "kernel",
--              "boot",
--              "static",
--              NULL,
--              NULL,
--              NULL,
--              "gated",
--              "ra",
--              "mrt",
--              "zebra",
--              "bird",
-+      static const struct rtnl_tab_entry init_tab[] = {
-+              {  0, "none"     },
-+              {  1, "redirect" },
-+              {  2, "kernel"   },
-+              {  3, "boot"     },
-+              {  4, "static"   },
-+              {  8, "gated"    },
-+              {  9, "ra"       },
-+              { 10, "mrt"      },
-+              { 11, "zebra"    },
-+              { 12, "bird"     }
-       };
-       if (rtnl_rtprot_tab)
-               return;
-       rtnl_rtprot_tab = xzalloc(sizeof(*rtnl_rtprot_tab));
-+      rtnl_rtprot_tab->tab = xzalloc(sizeof(init_tab));
-+      rtnl_rtprot_tab->length = sizeof(init_tab) / sizeof(init_tab[0]);
-       memcpy(rtnl_rtprot_tab->tab, init_tab, sizeof(init_tab));
--      rtnl_tab_initialize("protos", rtnl_rtprot_tab->tab);
-+      rtnl_tab_initialize("protos", rtnl_rtprot_tab);
- }
- #if 0 /* UNUSED */
- const char* FAST_FUNC rtnl_rtprot_n2a(int id)
- {
--      if (id < 0 || id > RT_TABLE_MAX) {
--              return itoa(id);
--      }
-+      size_t i;
-       rtnl_rtprot_initialize();
--      if (rtnl_rtprot_tab->tab[id])
--              return rtnl_rtprot_tab->tab[id];
-+      for (i = 0; i < rtnl_rtprot_tab->length; i++)
-+              if (rtnl_rtprot_tab->tab[i].id == id)
-+                      return rtnl_rtprot_tab->tab[i].name;
-+
-       return itoa(id);
- }
- #endif
-@@ -126,27 +138,33 @@ static rtnl_tab_t *rtnl_rtscope_tab;
- static void rtnl_rtscope_initialize(void)
- {
-+      static const struct rtnl_tab_entry init_tab[] = {
-+              {   0, "global"  },
-+              { 200, "site"    },
-+              { 253, "link"    },
-+              { 254, "host"    },
-+              { 255, "nowhere" }
-+      };
-+
-       if (rtnl_rtscope_tab)
-               return;
-       rtnl_rtscope_tab = xzalloc(sizeof(*rtnl_rtscope_tab));
--      rtnl_rtscope_tab->tab[0] = "global";
--      rtnl_rtscope_tab->tab[255] = "nowhere";
--      rtnl_rtscope_tab->tab[254] = "host";
--      rtnl_rtscope_tab->tab[253] = "link";
--      rtnl_rtscope_tab->tab[200] = "site";
--      rtnl_tab_initialize("scopes", rtnl_rtscope_tab->tab);
-+      rtnl_rtscope_tab->tab = xzalloc(sizeof(init_tab));
-+      rtnl_rtscope_tab->length = sizeof(init_tab) / sizeof(init_tab[0]);
-+      memcpy(rtnl_rtscope_tab->tab, init_tab, sizeof(init_tab));
-+      rtnl_tab_initialize("scopes", rtnl_rtscope_tab);
- }
- const char* FAST_FUNC rtnl_rtscope_n2a(int id)
- {
--      if (id < 0 || id > RT_TABLE_MAX) {
--              return itoa(id);
--      }
-+      size_t i;
-       rtnl_rtscope_initialize();
--      if (rtnl_rtscope_tab->tab[id])
--              return rtnl_rtscope_tab->tab[id];
-+      for (i = 0; i < rtnl_rtscope_tab->length; i++)
-+              if (rtnl_rtscope_tab->tab[i].id == id)
-+                      return rtnl_rtscope_tab->tab[i].name;
-+
-       return itoa(id);
- }
-@@ -161,10 +179,17 @@ static rtnl_tab_t *rtnl_rtrealm_tab;
- static void rtnl_rtrealm_initialize(void)
- {
--      if (rtnl_rtrealm_tab) return;
-+      static const struct rtnl_tab_entry init_tab[] = {
-+              { 0, "unknown" }
-+      };
-+
-+      if (rtnl_rtrealm_tab)
-+              return;
-       rtnl_rtrealm_tab = xzalloc(sizeof(*rtnl_rtrealm_tab));
--      rtnl_rtrealm_tab->tab[0] = "unknown";
--      rtnl_tab_initialize("realms", rtnl_rtrealm_tab->tab);
-+      rtnl_rtrealm_tab->tab = xzalloc(sizeof(init_tab));
-+      rtnl_rtrealm_tab->length = sizeof(init_tab) / sizeof(init_tab[0]);
-+      memcpy(rtnl_rtrealm_tab->tab, init_tab, sizeof(init_tab));
-+      rtnl_tab_initialize("realms", rtnl_rtrealm_tab);
- }
- int FAST_FUNC rtnl_rtrealm_a2n(uint32_t *id, char *arg)
-@@ -176,14 +201,14 @@ int FAST_FUNC rtnl_rtrealm_a2n(uint32_t
- #if ENABLE_FEATURE_IP_RULE
- const char* FAST_FUNC rtnl_rtrealm_n2a(int id)
- {
--      if (id < 0 || id > RT_TABLE_MAX) {
--              return itoa(id);
--      }
-+      size_t i;
-       rtnl_rtrealm_initialize();
--      if (rtnl_rtrealm_tab->tab[id])
--              return rtnl_rtrealm_tab->tab[id];
-+      for (i = 0; i < rtnl_rtrealm_tab->length; i++)
-+              if (rtnl_rtrealm_tab->tab[i].id == id)
-+    &