[LEDE-DEV] [PATCH v2 2/2] busybox: update to 1.26.2
Koen Vandeputte
koen.vandeputte at ncentric.com
Mon Jan 16 05:46:07 PST 2017
Look ok.
Tested on imx6
http://pastebin.com/raw/x1zs4trr
Tested-by: Koen Vandeputte <koen.vandeputte at ncentric.com>
On 2017-01-15 02:21, Magnus Kroken wrote:
> Refresh patches, delete patches that have been applied upstream.
>
> Signed-off-by: Magnus Kroken <mkroken at gmail.com>
> ---
> v2: Bump to 1.26.2
>
> Note: Only PKG_VERSION and PKG_HASH were changed between BusyBox 1.26.1 and 1.26.2.
> No other files needed updates between this and my previous patch from January 4th.
> Koen Vandeputte reported the 1.26.1 patch to work, a user on the forums also used
> the patch series successfully [1].
>
> Not sure if merging this so soon before branching for release is sensible, but as I
> didn't receive any further feedback on the previous series I update the series.
>
> [1] https://forum.lede-project.org/t/busybox-upgrade-issue/680
>
> package/utils/busybox/Config-defaults.in | 1229 ++++++++++----------
> package/utils/busybox/Makefile | 6 +-
> package/utils/busybox/config/Config.in | 315 ++---
> package/utils/busybox/config/archival/Config.in | 78 +-
> .../utils/busybox/config/console-tools/Config.in | 103 +-
> package/utils/busybox/config/coreutils/Config.in | 603 +++++-----
> package/utils/busybox/config/findutils/Config.in | 24 +-
> package/utils/busybox/config/init/Config.in | 20 +-
> package/utils/busybox/config/libbb/Config.in | 162 +++
> package/utils/busybox/config/mailutils/Config.in | 18 +-
> package/utils/busybox/config/miscutils/Config.in | 615 +++++-----
> package/utils/busybox/config/modutils/Config.in | 73 +-
> package/utils/busybox/config/networking/Config.in | 643 +++++-----
> .../busybox/config/networking/udhcp/Config.in | 2 -
> package/utils/busybox/config/procps/Config.in | 264 ++---
> package/utils/busybox/config/runit/Config.in | 7 +
> package/utils/busybox/config/selinux/Config.in | 37 +-
> package/utils/busybox/config/shell/Config.in | 234 ++--
> package/utils/busybox/config/sysklogd/Config.in | 1 -
> package/utils/busybox/config/util-linux/Config.in | 598 +++++-----
> .../busybox/config/util-linux/volume_id/Config.in | 9 +
> ...to_from-do-not-require-that-to-should-hav.patch | 37 -
> .../busybox/patches/102-trylink_mktemp_fix.patch | 20 -
> .../patches/120-remove_uclibc_rpc_check.patch | 2 +-
> .../busybox/patches/200-udhcpc_reduce_msgs.patch | 4 +-
> .../patches/201-udhcpc_changed_ifindex.patch | 2 +-
> .../patches/203-udhcpc_renew_no_deconfig.patch | 2 +-
> .../utils/busybox/patches/240-telnetd_intr.patch | 2 +-
> .../utils/busybox/patches/250-date-k-flag.patch | 12 +-
> .../busybox/patches/302-netlink-alignment.patch | 100 --
> .../patches/303-ip-route-fix-high-table-ids.patch | 486 --------
> 31 files changed, 2479 insertions(+), 3229 deletions(-)
> delete mode 100644 package/utils/busybox/patches/002-libbb-send_to_from-do-not-require-that-to-should-hav.patch
> delete mode 100644 package/utils/busybox/patches/102-trylink_mktemp_fix.patch
> delete mode 100644 package/utils/busybox/patches/302-netlink-alignment.patch
> delete mode 100644 package/utils/busybox/patches/303-ip-route-fix-high-table-ids.patch
>
> diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in
> index 11cce03..3a52211 100644
> --- a/package/utils/busybox/Config-defaults.in
> +++ b/package/utils/busybox/Config-defaults.in
> @@ -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,24 +1612,42 @@ 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 y
> config BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD
> bool
> default n
> config BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI
> bool
> default n
> +config BUSYBOX_DEFAULT_SWAPOFF
> + bool
> + default y
> 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 n
> +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,30 +2788,12 @@ config BUSYBOX_DEFAULT_HUSH_MODE_X
> config BUSYBOX_DEFAULT_MSH
> bool
> default n
> -config BUSYBOX_DEFAULT_FEATURE_SH_IS_ASH
> +config BUSYBOX_DEFAULT_FEATURE_SH_MATH
> 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
> +config BUSYBOX_DEFAULT_FEATURE_SH_MATH_64
> 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
> - bool
> - default y
> -config BUSYBOX_DEFAULT_SH_MATH_SUPPORT_64
> - bool
> - default y
> config BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET
> bool
> default n
> diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile
> index e4f159e..0937ef9 100644
> --- a/package/utils/busybox/Makefile
> +++ b/package/utils/busybox/Makefile
> @@ -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
> diff --git a/package/utils/busybox/config/Config.in b/package/utils/busybox/config/Config.in
> index 3bf67c5..3ee3aa2 100644
> --- a/package/utils/busybox/config/Config.in
> +++ b/package/utils/busybox/config/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/archival/Config.in b/package/utils/busybox/config/archival/Config.in
> index ff4c2cf..cf47e65 100644
> --- a/package/utils/busybox/config/archival/Config.in
> +++ b/package/utils/busybox/config/archival/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/console-tools/Config.in b/package/utils/busybox/config/console-tools/Config.in
> index 53937d2..e5a4bfb 100644
> --- a/package/utils/busybox/config/console-tools/Config.in
> +++ b/package/utils/busybox/config/console-tools/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/coreutils/Config.in b/package/utils/busybox/config/coreutils/Config.in
> index ec5611b..855bcd1 100644
> --- a/package/utils/busybox/config/coreutils/Config.in
> +++ b/package/utils/busybox/config/coreutils/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/findutils/Config.in b/package/utils/busybox/config/findutils/Config.in
> index 85ee1db..7d636d1 100644
> --- a/package/utils/busybox/config/findutils/Config.in
> +++ b/package/utils/busybox/config/findutils/Config.in
> @@ -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.
> diff --git a/package/utils/busybox/config/init/Config.in b/package/utils/busybox/config/init/Config.in
> index 021656d..cd1a345 100644
> --- a/package/utils/busybox/config/init/Config.in
> +++ b/package/utils/busybox/config/init/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/libbb/Config.in b/package/utils/busybox/config/libbb/Config.in
> index 0695f9b..ec08351 100644
> --- a/package/utils/busybox/config/libbb/Config.in
> +++ b/package/utils/busybox/config/libbb/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/mailutils/Config.in b/package/utils/busybox/config/mailutils/Config.in
> index 64b9a2b..7e77407 100644
> --- a/package/utils/busybox/config/mailutils/Config.in
> +++ b/package/utils/busybox/config/mailutils/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/miscutils/Config.in b/package/utils/busybox/config/miscutils/Config.in
> index 3465df4..817a514 100644
> --- a/package/utils/busybox/config/miscutils/Config.in
> +++ b/package/utils/busybox/config/miscutils/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/modutils/Config.in b/package/utils/busybox/config/modutils/Config.in
> index 8e0e2af..5203db8 100644
> --- a/package/utils/busybox/config/modutils/Config.in
> +++ b/package/utils/busybox/config/modutils/Config.in
> @@ -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"
>
> diff --git a/package/utils/busybox/config/networking/Config.in b/package/utils/busybox/config/networking/Config.in
> index 407ddd3..bc2f127 100644
> --- a/package/utils/busybox/config/networking/Config.in
> +++ b/package/utils/busybox/config/networking/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/networking/udhcp/Config.in b/package/utils/busybox/config/networking/udhcp/Config.in
> index 4f48400..cdba5d5 100644
> --- a/package/utils/busybox/config/networking/udhcp/Config.in
> +++ b/package/utils/busybox/config/networking/udhcp/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/procps/Config.in b/package/utils/busybox/config/procps/Config.in
> index 6eafbda..6bc5ec0 100644
> --- a/package/utils/busybox/config/procps/Config.in
> +++ b/package/utils/busybox/config/procps/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/runit/Config.in b/package/utils/busybox/config/runit/Config.in
> index a322a2c..8750b59 100644
> --- a/package/utils/busybox/config/runit/Config.in
> +++ b/package/utils/busybox/config/runit/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/selinux/Config.in b/package/utils/busybox/config/selinux/Config.in
> index 1d23f7d..1aac9f4 100644
> --- a/package/utils/busybox/config/selinux/Config.in
> +++ b/package/utils/busybox/config/selinux/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/shell/Config.in b/package/utils/busybox/config/shell/Config.in
> index 69ecf14..4193c18 100644
> --- a/package/utils/busybox/config/shell/Config.in
> +++ b/package/utils/busybox/config/shell/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/sysklogd/Config.in b/package/utils/busybox/config/sysklogd/Config.in
> index 5fcee2c..1f8f3cf 100644
> --- a/package/utils/busybox/config/sysklogd/Config.in
> +++ b/package/utils/busybox/config/sysklogd/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/util-linux/Config.in b/package/utils/busybox/config/util-linux/Config.in
> index 08bddf8..8df023c 100644
> --- a/package/utils/busybox/config/util-linux/Config.in
> +++ b/package/utils/busybox/config/util-linux/Config.in
> @@ -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
> diff --git a/package/utils/busybox/config/util-linux/volume_id/Config.in b/package/utils/busybox/config/util-linux/volume_id/Config.in
> index 6153314..49a5785 100644
> --- a/package/utils/busybox/config/util-linux/volume_id/Config.in
> +++ b/package/utils/busybox/config/util-linux/volume_id/Config.in
> @@ -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
> index f33c3b2..0000000
> --- a/package/utils/busybox/patches/002-libbb-send_to_from-do-not-require-that-to-should-hav.patch
> +++ /dev/null
> @@ -1,37 +0,0 @@
> -From 7cef4817d6d6d61a1166ed7dfc13537b95c65970 Mon Sep 17 00:00:00 2001
> -From: Denys Vlasenko <vda.linux at 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 at 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
> index ed1dcbb..0000000
> --- a/package/utils/busybox/patches/102-trylink_mktemp_fix.patch
> +++ /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>
> diff --git a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch
> index 4825bc8..682a68e 100644
> --- a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch
> +++ b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch
> @@ -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... */
> diff --git a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch
> index 0fdaed5..8ef8f22 100644
> --- a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch
> +++ b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch
> @@ -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);
>
> diff --git a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch
> index 4a9ae98..f5e3a07 100644
> --- a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch
> +++ b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch
> @@ -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;
>
> diff --git a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch
> index 1e44552..3df8d93 100644
> --- a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch
> +++ b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch
> @@ -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 */
> diff --git a/package/utils/busybox/patches/240-telnetd_intr.patch b/package/utils/busybox/patches/240-telnetd_intr.patch
> index d52ea3f..fec2a3a 100644
> --- a/package/utils/busybox/patches/240-telnetd_intr.patch
> +++ b/package/utils/busybox/patches/240-telnetd_intr.patch
> @@ -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);
> diff --git a/package/utils/busybox/patches/250-date-k-flag.patch b/package/utils/busybox/patches/250-date-k-flag.patch
> index b2681a1..476440f 100644
> --- a/package/utils/busybox/patches/250-date-k-flag.patch
> +++ b/package/utils/busybox/patches/250-date-k-flag.patch
> @@ -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
> index 4cd25b1..0000000
> --- a/package/utils/busybox/patches/302-netlink-alignment.patch
> +++ /dev/null
> @@ -1,100 +0,0 @@
> -From a843f09a4d4428cf11ca02307e60058251b05743 Mon Sep 17 00:00:00 2001
> -From: Hauke Mehrtens <hauke at 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 at 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
> index d7a38f6..0000000
> --- a/package/utils/busybox/patches/303-ip-route-fix-high-table-ids.patch
> +++ /dev/null
> @@ -1,486 +0,0 @@
> -From 485fcc89b99eae9cc7501eaff344b104e52ab7bf Mon Sep 17 00:00:00 2001
> -From: Jo-Philipp Wich <jo at 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 at 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)
> -+ return rtnl_rtrealm_tab->tab[i].name;
> -+
> - return itoa(id);
> - }
> - #endif
> -@@ -193,22 +218,29 @@ static rtnl_tab_t *rtnl_rtdsfield_tab;
> -
> - static void rtnl_rtdsfield_initialize(void)
> - {
> -- if (rtnl_rtdsfield_tab) return;
> -+ static const struct rtnl_tab_entry init_tab[] = {
> -+ { 0, "0" }
> -+ };
> -+
> -+ if (rtnl_rtdsfield_tab)
> -+ return;
> - rtnl_rtdsfield_tab = xzalloc(sizeof(*rtnl_rtdsfield_tab));
> -- rtnl_rtdsfield_tab->tab[0] = "0";
> -- rtnl_tab_initialize("dsfield", rtnl_rtdsfield_tab->tab);
> -+ rtnl_rtdsfield_tab->tab = xzalloc(sizeof(init_tab));
> -+ rtnl_rtdsfield_tab->length = sizeof(init_tab) / sizeof(init_tab[0]);
> -+ memcpy(rtnl_rtdsfield_tab->tab, init_tab, sizeof(init_tab));
> -+ rtnl_tab_initialize("dsfield", rtnl_rtdsfield_tab);
> - }
> -
> - const char* FAST_FUNC rtnl_dsfield_n2a(int id)
> - {
> -- if (id < 0 || id > RT_TABLE_MAX) {
> -- return itoa(id);
> -- }
> -+ size_t i;
> -
> - rtnl_rtdsfield_initialize();
> -
> -- if (rtnl_rtdsfield_tab->tab[id])
> -- return rtnl_rtdsfield_tab->tab[id];
> -+ for (i = 0; i < rtnl_rtdsfield_tab->length; i++)
> -+ if (rtnl_rtdsfield_tab->tab[i].id == id)
> -+ return rtnl_rtdsfield_tab->tab[i].name;
> -+
> - return itoa(id);
> - }
> -
> -@@ -224,27 +256,33 @@ static rtnl_tab_t *rtnl_rttable_tab;
> -
> - static void rtnl_rttable_initialize(void)
> - {
> -+ static const struct rtnl_tab_entry tab_init[] = {
> -+ { 0, "unspec" },
> -+ { 253, "default" },
> -+ { 254, "main" },
> -+ { 255, "local" }
> -+ };
> -+
> - if (rtnl_rttable_tab)
> - return;
> -
> - rtnl_rttable_tab = xzalloc(sizeof(*rtnl_rttable_tab));
> -- rtnl_rttable_tab->tab[0] = "unspec";
> -- rtnl_rttable_tab->tab[255] = "local";
> -- rtnl_rttable_tab->tab[254] = "main";
> -- rtnl_rttable_tab->tab[253] = "default";
> -- rtnl_tab_initialize("tables", rtnl_rttable_tab->tab);
> -+ rtnl_rttable_tab->tab = xzalloc(sizeof(tab_init));
> -+ rtnl_rttable_tab->length = sizeof(tab_init) / sizeof(tab_init[0]);
> -+ memcpy(rtnl_rttable_tab->tab, tab_init, sizeof(tab_init));
> -+ rtnl_tab_initialize("tables", rtnl_rttable_tab);
> - }
> -
> - const char* FAST_FUNC rtnl_rttable_n2a(int id)
> - {
> -- if (id < 0 || id > RT_TABLE_MAX) {
> -- return itoa(id);
> -- }
> -+ size_t i;
> -
> - rtnl_rttable_initialize();
> -
> -- if (rtnl_rttable_tab->tab[id])
> -- return rtnl_rttable_tab->tab[id];
> -+ for (i = 0; i < rtnl_rttable_tab->length; i++)
> -+ if (rtnl_rttable_tab->tab[i].id == id)
> -+ return rtnl_rttable_tab->tab[i].name;
> -+
> - return itoa(id);
> - }
> -
--
Koen Vandeputte - Software Developer
koen.vandeputte at ncentric.com | +32499736158
More information about the Lede-dev
mailing list