From 84da2a677a7133426829a05954af64dd533bf7a5 Mon Sep 17 00:00:00 2001 From: Magnus Kroken Date: Sun, 15 Jan 2017 02:21:41 +0100 Subject: [PATCH] busybox: update to 1.26.2 Refresh patches, delete patches that have been applied upstream. Signed-off-by: Magnus Kroken Tested-by: Koen Vandeputte Signed-off-by: Felix Fietkau [fix defaults] --- package/utils/busybox/Config-defaults.in | 1289 +++++++++-------- package/utils/busybox/Makefile | 6 +- package/utils/busybox/config/Config.in | 315 +--- .../utils/busybox/config/archival/Config.in | 78 +- .../busybox/config/console-tools/Config.in | 165 +-- .../utils/busybox/config/coreutils/Config.in | 773 +++++----- .../utils/busybox/config/findutils/Config.in | 24 +- package/utils/busybox/config/init/Config.in | 20 +- package/utils/busybox/config/libbb/Config.in | 162 +++ .../utils/busybox/config/mailutils/Config.in | 18 +- .../utils/busybox/config/miscutils/Config.in | 1003 +++++++------ .../utils/busybox/config/modutils/Config.in | 93 +- .../utils/busybox/config/networking/Config.in | 645 ++++----- .../busybox/config/networking/udhcp/Config.in | 2 - package/utils/busybox/config/procps/Config.in | 272 ++-- package/utils/busybox/config/runit/Config.in | 7 + .../utils/busybox/config/selinux/Config.in | 37 +- package/utils/busybox/config/shell/Config.in | 320 ++-- .../utils/busybox/config/sysklogd/Config.in | 1 - .../utils/busybox/config/util-linux/Config.in | 940 ++++++------ .../config/util-linux/volume_id/Config.in | 9 + ...om-do-not-require-that-to-should-hav.patch | 37 - .../patches/102-trylink_mktemp_fix.patch | 20 - .../patches/120-remove_uclibc_rpc_check.patch | 2 +- .../patches/200-udhcpc_reduce_msgs.patch | 4 +- .../patches/201-udhcpc_changed_ifindex.patch | 2 +- .../203-udhcpc_renew_no_deconfig.patch | 2 +- .../busybox/patches/240-telnetd_intr.patch | 2 +- .../busybox/patches/250-date-k-flag.patch | 12 +- .../patches/302-netlink-alignment.patch | 100 -- .../303-ip-route-fix-high-table-ids.patch | 486 ------- 31 files changed, 3048 insertions(+), 3798 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 11cce03db9b..141f08edc23 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,30 +118,6 @@ config BUSYBOX_DEFAULT_EXTRA_LDFLAGS config BUSYBOX_DEFAULT_EXTRA_LDLIBS string default "" -config BUSYBOX_DEFAULT_DEBUG - bool - default n -config BUSYBOX_DEFAULT_DEBUG_PESSIMIZE - bool - default n -config BUSYBOX_DEFAULT_DEBUG_SANITIZE - bool - default n -config BUSYBOX_DEFAULT_UNIT_TEST - bool - default n -config BUSYBOX_DEFAULT_WERROR - bool - default n -config BUSYBOX_DEFAULT_NO_DEBUG_LIB - bool - default y -config BUSYBOX_DEFAULT_DMALLOC - bool - default n -config BUSYBOX_DEFAULT_EFENCE - bool - default n config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS bool default y @@ -211,12 +142,45 @@ config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER config BUSYBOX_DEFAULT_PREFIX string default "./_install" +config BUSYBOX_DEFAULT_DEBUG + bool + default n +config BUSYBOX_DEFAULT_DEBUG_PESSIMIZE + bool + default n +config BUSYBOX_DEFAULT_DEBUG_SANITIZE + bool + default n +config BUSYBOX_DEFAULT_UNIT_TEST + bool + default n +config BUSYBOX_DEFAULT_WERROR + bool + default n +config BUSYBOX_DEFAULT_NO_DEBUG_LIB + bool + default y +config BUSYBOX_DEFAULT_DMALLOC + bool + default n +config BUSYBOX_DEFAULT_EFENCE + bool + default n config BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL bool default n config BUSYBOX_DEFAULT_FEATURE_RTMINMAX bool default n +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_PASSWORD_MINLEN int default 6 @@ -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,105 +442,12 @@ config BUSYBOX_DEFAULT_UNZIP config BUSYBOX_DEFAULT_BASENAME bool default y -config BUSYBOX_DEFAULT_CAT - bool - default y -config BUSYBOX_DEFAULT_DATE - bool - default y -config BUSYBOX_DEFAULT_FEATURE_DATE_ISOFMT - bool - default y -config BUSYBOX_DEFAULT_FEATURE_DATE_NANO - bool - default n -config BUSYBOX_DEFAULT_FEATURE_DATE_COMPAT - bool - default n -config BUSYBOX_DEFAULT_DD - bool - default y -config BUSYBOX_DEFAULT_FEATURE_DD_SIGNAL_HANDLING - bool - default y -config BUSYBOX_DEFAULT_FEATURE_DD_THIRD_STATUS_LINE - bool - default n -config BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS - bool - default y -config BUSYBOX_DEFAULT_FEATURE_DD_STATUS - bool - default n -config BUSYBOX_DEFAULT_HOSTID - bool - default n -config BUSYBOX_DEFAULT_ID - bool - default y -config BUSYBOX_DEFAULT_GROUPS - bool - default n -config BUSYBOX_DEFAULT_SHUF - 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_SYNC - bool - default y -config BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY - bool - default n -config BUSYBOX_DEFAULT_TEST - 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_TRUNCATE - bool - default n -config BUSYBOX_DEFAULT_UNLINK - bool - default n -config BUSYBOX_DEFAULT_BASE64 - bool - default n -config BUSYBOX_DEFAULT_WHO - bool - default n -config BUSYBOX_DEFAULT_USERS - bool - default n config BUSYBOX_DEFAULT_CAL bool default n +config BUSYBOX_DEFAULT_CAT + bool + default y config BUSYBOX_DEFAULT_CATV bool default n @@ -559,6 +481,33 @@ config BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS config BUSYBOX_DEFAULT_CUT bool default y +config BUSYBOX_DEFAULT_DATE + bool + default y +config BUSYBOX_DEFAULT_FEATURE_DATE_ISOFMT + bool + default y +config BUSYBOX_DEFAULT_FEATURE_DATE_NANO + bool + default n +config BUSYBOX_DEFAULT_FEATURE_DATE_COMPAT + bool + default n +config BUSYBOX_DEFAULT_DD + bool + default y +config BUSYBOX_DEFAULT_FEATURE_DD_SIGNAL_HANDLING + bool + default y +config BUSYBOX_DEFAULT_FEATURE_DD_THIRD_STATUS_LINE + bool + default n +config BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS + bool + default y +config BUSYBOX_DEFAULT_FEATURE_DD_STATUS + bool + default n config BUSYBOX_DEFAULT_DF bool default y @@ -598,6 +547,12 @@ config BUSYBOX_DEFAULT_EXPAND config BUSYBOX_DEFAULT_FEATURE_EXPAND_LONG_OPTIONS bool default n +config BUSYBOX_DEFAULT_UNEXPAND + bool + default n +config BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS + bool + default n config BUSYBOX_DEFAULT_EXPR bool default y @@ -619,6 +574,15 @@ config BUSYBOX_DEFAULT_HEAD config BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD bool default y +config BUSYBOX_DEFAULT_HOSTID + bool + default n +config BUSYBOX_DEFAULT_ID + bool + default y +config BUSYBOX_DEFAULT_GROUPS + bool + default n 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,37 +1312,37 @@ config BUSYBOX_DEFAULT_LSATTR config BUSYBOX_DEFAULT_TUNE2FS bool default n -config BUSYBOX_DEFAULT_MODINFO - bool - default n config BUSYBOX_DEFAULT_MODPROBE_SMALL bool default n -config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED +config BUSYBOX_DEFAULT_DEPMOD bool default n config BUSYBOX_DEFAULT_INSMOD bool default n -config BUSYBOX_DEFAULT_RMMOD - bool - default n config BUSYBOX_DEFAULT_LSMOD bool default n config BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT bool default n +config BUSYBOX_DEFAULT_MODINFO + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED + bool + default n config BUSYBOX_DEFAULT_MODPROBE bool default n 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,102 +1381,33 @@ config BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR config BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE string default "" -config BUSYBOX_DEFAULT_BLKDISCARD - bool - default n -config BUSYBOX_DEFAULT_BLOCKDEV - bool - default n -config BUSYBOX_DEFAULT_FATATTR - bool - default n -config BUSYBOX_DEFAULT_FSTRIM - bool - default n -config BUSYBOX_DEFAULT_MDEV - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MDEV_CONF - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE - bool - default n -config BUSYBOX_DEFAULT_MOUNT - bool - default y -config BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS - bool - default y -config BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS - bool - default y -config BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS - bool - default y -config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB - bool - default y -config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB - bool - default n -config BUSYBOX_DEFAULT_NSENTER - bool - default n -config BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS - bool - default n -config BUSYBOX_DEFAULT_REV - bool - default n -config BUSYBOX_DEFAULT_SETARCH - bool - default n -config BUSYBOX_DEFAULT_UEVENT - bool - default n -config BUSYBOX_DEFAULT_UNSHARE - bool - default n config BUSYBOX_DEFAULT_ACPID bool default n config BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT bool default n +config BUSYBOX_DEFAULT_BLKDISCARD + bool + default n config BUSYBOX_DEFAULT_BLKID bool default n config BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE bool default n +config BUSYBOX_DEFAULT_BLOCKDEV + bool + default n config BUSYBOX_DEFAULT_DMESG bool default y config BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY bool default y +config BUSYBOX_DEFAULT_FATATTR + bool + default n config BUSYBOX_DEFAULT_FBSET bool default n @@ -1459,9 +1417,6 @@ config BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY config BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE bool default n -config BUSYBOX_DEFAULT_FDFLUSH - bool - default n config BUSYBOX_DEFAULT_FDFORMAT bool default n @@ -1498,25 +1453,16 @@ config BUSYBOX_DEFAULT_FINDFS config BUSYBOX_DEFAULT_FLOCK bool default n +config BUSYBOX_DEFAULT_FDFLUSH + bool + default n config BUSYBOX_DEFAULT_FREERAMDISK bool default n config BUSYBOX_DEFAULT_FSCK_MINIX bool default n -config BUSYBOX_DEFAULT_MKFS_EXT2 - bool - default n -config BUSYBOX_DEFAULT_MKFS_MINIX - bool - default n -config BUSYBOX_DEFAULT_FEATURE_MINIX2 - bool - default n -config BUSYBOX_DEFAULT_MKFS_REISER - bool - default n -config BUSYBOX_DEFAULT_MKFS_VFAT +config BUSYBOX_DEFAULT_FSTRIM bool default n config BUSYBOX_DEFAULT_GETOPT @@ -1558,6 +1504,45 @@ config BUSYBOX_DEFAULT_LSPCI config BUSYBOX_DEFAULT_LSUSB bool default n +config BUSYBOX_DEFAULT_MDEV + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MDEV_CONF + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE + bool + default n +config BUSYBOX_DEFAULT_MKE2FS + bool + default n +config BUSYBOX_DEFAULT_MKFS_EXT2 + bool + default n +config BUSYBOX_DEFAULT_MKFS_MINIX + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MINIX2 + bool + default n +config BUSYBOX_DEFAULT_MKFS_REISER + bool + default n +config BUSYBOX_DEFAULT_MKDOSFS + bool + default n +config BUSYBOX_DEFAULT_MKFS_VFAT + bool + default n config BUSYBOX_DEFAULT_MKSWAP bool default y @@ -1567,6 +1552,42 @@ config BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID config BUSYBOX_DEFAULT_MORE bool default n +config BUSYBOX_DEFAULT_MOUNT + bool + default y +config BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS + bool + default y +config BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS + bool + default n +config BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS + bool + default y +config BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS + bool + default y +config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB + bool + default y +config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB + bool + default n +config BUSYBOX_DEFAULT_NSENTER + bool + default n +config BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS + bool + default n config BUSYBOX_DEFAULT_PIVOT_ROOT bool default y @@ -1579,6 +1600,9 @@ config BUSYBOX_DEFAULT_RDEV config BUSYBOX_DEFAULT_READPROFILE bool default n +config BUSYBOX_DEFAULT_REV + bool + default n config BUSYBOX_DEFAULT_RTCWAKE bool default n @@ -1588,7 +1612,16 @@ config BUSYBOX_DEFAULT_SCRIPT config BUSYBOX_DEFAULT_SCRIPTREPLAY bool default n -config BUSYBOX_DEFAULT_SWAPONOFF +config BUSYBOX_DEFAULT_SETARCH + bool + default n +config BUSYBOX_DEFAULT_LINUX32 + bool + default n +config BUSYBOX_DEFAULT_LINUX64 + bool + default n +config BUSYBOX_DEFAULT_SWAPON bool default n config BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD @@ -1597,15 +1630,24 @@ config BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD config BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI bool default n +config BUSYBOX_DEFAULT_SWAPOFF + bool + default n config BUSYBOX_DEFAULT_SWITCH_ROOT bool default y +config BUSYBOX_DEFAULT_UEVENT + bool + default n config BUSYBOX_DEFAULT_UMOUNT bool default y config BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL bool default y +config BUSYBOX_DEFAULT_UNSHARE + bool + default n config BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP bool default y @@ -1678,114 +1720,15 @@ config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SQUASHFS config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SYSV bool default n +config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UBIFS + 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 - 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 - bool - default n -config BUSYBOX_DEFAULT_WALL - bool - default n config BUSYBOX_DEFAULT_ADJTIMEX bool default n @@ -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,19 +1834,7 @@ config BUSYBOX_DEFAULT_FLASH_LOCK config BUSYBOX_DEFAULT_FLASH_UNLOCK bool default n -config BUSYBOX_DEFAULT_FLASH_ERASEALL - bool - default n -config BUSYBOX_DEFAULT_IONICE - bool - default n -config BUSYBOX_DEFAULT_INOTIFYD - bool - default n -config BUSYBOX_DEFAULT_LAST - bool - default n -config BUSYBOX_DEFAULT_FEATURE_LAST_FANCY +config BUSYBOX_DEFAULT_FLASHCP bool default n config BUSYBOX_DEFAULT_HDPARM @@ -1912,6 +1858,63 @@ config BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF 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_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_LOCK bool default y @@ -1936,24 +1939,42 @@ config BUSYBOX_DEFAULT_MOUNTPOINT config BUSYBOX_DEFAULT_MT bool default n +config BUSYBOX_DEFAULT_NANDWRITE + bool + default n +config BUSYBOX_DEFAULT_NANDDUMP + bool + default n config BUSYBOX_DEFAULT_RAIDAUTORUN bool default n config BUSYBOX_DEFAULT_READAHEAD bool default n +config BUSYBOX_DEFAULT_RFKILL + bool + default n config BUSYBOX_DEFAULT_RUNLEVEL bool default n config BUSYBOX_DEFAULT_RX bool default n +config BUSYBOX_DEFAULT_SETSERIAL + bool + default n config BUSYBOX_DEFAULT_SETSID bool default n config BUSYBOX_DEFAULT_STRINGS bool default y +config BUSYBOX_DEFAULT_TASKSET + bool + default n +config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY + bool + default n config BUSYBOX_DEFAULT_TIME bool default y @@ -1963,66 +1984,36 @@ config BUSYBOX_DEFAULT_TIMEOUT config BUSYBOX_DEFAULT_TTYSIZE 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 + bool + default n config BUSYBOX_DEFAULT_VOLNAME bool default n +config BUSYBOX_DEFAULT_WALL + bool + default n config BUSYBOX_DEFAULT_WATCHDOG bool default n -config BUSYBOX_DEFAULT_NAMEIF - bool - default n -config BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED - bool - default n -config BUSYBOX_DEFAULT_NBDCLIENT - bool - default n -config BUSYBOX_DEFAULT_NC - bool - default y -config BUSYBOX_DEFAULT_NC_SERVER - bool - default n -config BUSYBOX_DEFAULT_NC_EXTRA - bool - default n -config BUSYBOX_DEFAULT_NC_110_COMPAT - 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_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_FEATURE_IPV6 bool default y @@ -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,7 +2134,10 @@ config BUSYBOX_DEFAULT_IFENSLAVE config BUSYBOX_DEFAULT_IFPLUGD bool default n -config BUSYBOX_DEFAULT_IFUPDOWN +config BUSYBOX_DEFAULT_IFUP + bool + default n +config BUSYBOX_DEFAULT_IFDOWN bool default n config BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH @@ -2152,12 +2146,6 @@ config BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP bool default n -config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP_BUILTIN - bool - default n -config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN - bool - default n config BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4 bool default n @@ -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,30 +2221,9 @@ config BUSYBOX_DEFAULT_FEATURE_IP_RULE config BUSYBOX_DEFAULT_FEATURE_IP_NEIGH bool default n -config BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS - bool - default n config BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS bool default n -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_IPCALC bool default n @@ -2248,6 +2233,30 @@ config BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY config BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS bool default n +config BUSYBOX_DEFAULT_FAKEIDENTD + bool + default n +config BUSYBOX_DEFAULT_NAMEIF + bool + default n +config BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED + bool + default n +config BUSYBOX_DEFAULT_NBDCLIENT + bool + default n +config BUSYBOX_DEFAULT_NC + bool + default y +config BUSYBOX_DEFAULT_NC_SERVER + bool + default n +config BUSYBOX_DEFAULT_NC_EXTRA + bool + default n +config BUSYBOX_DEFAULT_NC_110_COMPAT + bool + default n config BUSYBOX_DEFAULT_NETMSG bool default y @@ -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,9 +2470,27 @@ config BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT config BUSYBOX_DEFAULT_SENDMAIL bool default n +config BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET + string + default "" +config BUSYBOX_DEFAULT_FREE + bool + default y +config BUSYBOX_DEFAULT_FUSER + bool + default n config BUSYBOX_DEFAULT_IOSTAT bool default n +config BUSYBOX_DEFAULT_KILL + bool + default y +config BUSYBOX_DEFAULT_KILLALL + bool + default y +config BUSYBOX_DEFAULT_KILLALL5 + bool + default n config BUSYBOX_DEFAULT_LSOF bool default n @@ -2446,21 +2500,60 @@ config BUSYBOX_DEFAULT_MPSTAT config BUSYBOX_DEFAULT_NMETER bool default n +config BUSYBOX_DEFAULT_PGREP + bool + default y +config BUSYBOX_DEFAULT_PKILL + bool + default n +config BUSYBOX_DEFAULT_PIDOF + bool + default y +config BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE + bool + default n +config BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT + bool + default n config BUSYBOX_DEFAULT_PMAP bool default n config BUSYBOX_DEFAULT_POWERTOP bool default n +config BUSYBOX_DEFAULT_PS + bool + default y +config BUSYBOX_DEFAULT_FEATURE_PS_WIDE + bool + default y +config BUSYBOX_DEFAULT_FEATURE_PS_LONG + bool + default n +config BUSYBOX_DEFAULT_FEATURE_PS_TIME + bool + default n +config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS + bool + default n +config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS + bool + default n config BUSYBOX_DEFAULT_PSTREE bool default n config BUSYBOX_DEFAULT_PWDX bool default n +config BUSYBOX_DEFAULT_RENICE + bool + default n config BUSYBOX_DEFAULT_SMEMCAP bool default n +config BUSYBOX_DEFAULT_BB_SYSCTL + bool + default y config BUSYBOX_DEFAULT_TOP bool default y @@ -2488,66 +2581,12 @@ config BUSYBOX_DEFAULT_UPTIME config BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT bool default n -config BUSYBOX_DEFAULT_FREE - bool - default y -config BUSYBOX_DEFAULT_FUSER - bool - default n -config BUSYBOX_DEFAULT_KILL - bool - default y -config BUSYBOX_DEFAULT_KILLALL - bool - default y -config BUSYBOX_DEFAULT_KILLALL5 - bool - default n -config BUSYBOX_DEFAULT_PGREP - bool - default y -config BUSYBOX_DEFAULT_PIDOF - bool - default y -config BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE - bool - default n -config BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT - bool - default n -config BUSYBOX_DEFAULT_PKILL - bool - default n -config BUSYBOX_DEFAULT_PS - bool - default y -config BUSYBOX_DEFAULT_FEATURE_PS_WIDE - bool - default y -config BUSYBOX_DEFAULT_FEATURE_PS_LONG - bool - default n -config BUSYBOX_DEFAULT_FEATURE_PS_TIME - bool - default n -config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS - bool - default n -config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS - bool - default n -config BUSYBOX_DEFAULT_RENICE - bool - default n -config BUSYBOX_DEFAULT_BB_SYSCTL - bool - default y -config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS - bool - default n config BUSYBOX_DEFAULT_WATCH bool default n +config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS + bool + default n config BUSYBOX_DEFAULT_CHPST bool default n @@ -2578,6 +2617,9 @@ config BUSYBOX_DEFAULT_SV config BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR string default "" +config BUSYBOX_DEFAULT_SVC + bool + default n config BUSYBOX_DEFAULT_SVLOGD bool default n @@ -2599,9 +2641,6 @@ config BUSYBOX_DEFAULT_LOAD_POLICY config BUSYBOX_DEFAULT_MATCHPATHCON bool default n -config BUSYBOX_DEFAULT_RESTORECON - bool - default n config BUSYBOX_DEFAULT_RUNCON bool default n @@ -2611,6 +2650,9 @@ config BUSYBOX_DEFAULT_FEATURE_RUNCON_LONG_OPTIONS config BUSYBOX_DEFAULT_SELINUXENABLED bool default n +config BUSYBOX_DEFAULT_SESTATUS + bool + default n config BUSYBOX_DEFAULT_SETENFORCE bool default n @@ -2620,15 +2662,45 @@ config BUSYBOX_DEFAULT_SETFILES config BUSYBOX_DEFAULT_FEATURE_SETFILES_CHECK_OPTION bool default n +config BUSYBOX_DEFAULT_RESTORECON + bool + default n config BUSYBOX_DEFAULT_SETSEBOOL bool default n -config BUSYBOX_DEFAULT_SESTATUS +config BUSYBOX_DEFAULT_SH_IS_ASH + bool + default y +config BUSYBOX_DEFAULT_SH_IS_HUSH bool default n +config BUSYBOX_DEFAULT_SH_IS_NONE + bool + default n +config BUSYBOX_DEFAULT_BASH_IS_ASH + bool + default n +config BUSYBOX_DEFAULT_BASH_IS_HUSH + bool + default n +config BUSYBOX_DEFAULT_BASH_IS_NONE + bool + default y config BUSYBOX_DEFAULT_ASH bool default y +config BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE + bool + default n +config BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB + bool + default y +config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT + bool + default n +config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT + bool + default y config BUSYBOX_DEFAULT_ASH_BASH_COMPAT bool default y @@ -2662,15 +2734,6 @@ config BUSYBOX_DEFAULT_ASH_CMDCMD config BUSYBOX_DEFAULT_ASH_MAIL bool default n -config BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE - bool - default n -config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT - bool - default n -config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT - bool - default y config BUSYBOX_DEFAULT_CTTYHACK bool default n @@ -2725,28 +2788,10 @@ config BUSYBOX_DEFAULT_HUSH_MODE_X config BUSYBOX_DEFAULT_MSH bool default n -config BUSYBOX_DEFAULT_FEATURE_SH_IS_ASH +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 - 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 +config BUSYBOX_DEFAULT_FEATURE_SH_MATH_64 bool default y config BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index e4f159ef835..0937ef9f30d 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 3bf67c5cf33..3ee3aa2f47b 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)' -menu 'Debugging Options' +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. + +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 ff4c2cf6bd0..cf47e6591b0 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 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 53937d2b5c1..e5a4bfbeaf1 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,61 +50,6 @@ config BUSYBOX_CONFIG_LOADFONT help This program loads a console font from standard input. -config BUSYBOX_CONFIG_LOADKMAP - bool "loadkmap" - default BUSYBOX_DEFAULT_LOADKMAP - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - This program loads a keyboard translation table from - standard input. - -config BUSYBOX_CONFIG_OPENVT - bool "openvt" - default BUSYBOX_DEFAULT_OPENVT - select BUSYBOX_CONFIG_PLATFORM_LINUX - 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 - help - This program is used to (re)set the width and height of your current - terminal. - -config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT - bool "Print environment variables" - default BUSYBOX_DEFAULT_FEATURE_RESIZE_PRINT - depends on BUSYBOX_CONFIG_RESIZE - help - Prints the newly set size (number of columns and rows) of - the terminal. - E.g.: - COLUMNS=80;LINES=44;export COLUMNS LINES; - -config BUSYBOX_CONFIG_SETCONSOLE - bool "setconsole" - default BUSYBOX_DEFAULT_SETCONSOLE - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - This program redirects the system console to another device, - like the current tty while logged in via telnet. - -config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS - bool "Enable long options" - default BUSYBOX_DEFAULT_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 @@ -134,28 +72,6 @@ config BUSYBOX_CONFIG_DEFAULT_SETFONT_DIR 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Shows keys pressed. - comment "Common options for loadfont and setfont" depends on BUSYBOX_CONFIG_LOADFONT || BUSYBOX_CONFIG_SETFONT @@ -172,5 +88,74 @@ config BUSYBOX_CONFIG_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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + This program loads a keyboard translation table from + standard input. +config BUSYBOX_CONFIG_OPENVT + bool "openvt" + default BUSYBOX_DEFAULT_OPENVT + select BUSYBOX_CONFIG_PLATFORM_LINUX + 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 + help + This program is used to (re)set the width and height of your current + terminal. + +config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT + bool "Print environment variables" + default BUSYBOX_DEFAULT_FEATURE_RESIZE_PRINT + depends on BUSYBOX_CONFIG_RESIZE + help + Prints the newly set size (number of columns and rows) of + the terminal. + E.g.: + COLUMNS=80;LINES=44;export COLUMNS LINES; +config BUSYBOX_CONFIG_SETCONSOLE + bool "setconsole" + default BUSYBOX_DEFAULT_SETCONSOLE + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + This program redirects the system console to another device, + like the current tty while logged in via telnet. + +config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_FEATURE_SETCONSOLE_LONG_OPTIONS + depends on BUSYBOX_CONFIG_SETCONSOLE && BUSYBOX_CONFIG_LONG_OPTS + help + Support long options for the setconsole applet. +config BUSYBOX_CONFIG_SETKEYCODES + bool "setkeycodes" + default BUSYBOX_DEFAULT_SETKEYCODES + select BUSYBOX_CONFIG_PLATFORM_LINUX + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Shows keys pressed. endmenu diff --git a/package/utils/busybox/config/coreutils/Config.in b/package/utils/busybox/config/coreutils/Config.in index ec5611bdfda..855bcd1b440 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 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 @@ -470,7 +316,23 @@ config BUSYBOX_CONFIG_FEATURE_FANCY_HEAD depends on BUSYBOX_CONFIG_HEAD help 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,137 +420,12 @@ 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_MKDIR - bool "mkdir" - default BUSYBOX_DEFAULT_MKDIR - help - mkdir is used to create directories with the specified names. - -config BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS - bool "Enable long options" - default BUSYBOX_DEFAULT_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. - -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 - help - mv is used to move or rename files or directories. - -config BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS - bool "Enable long options" - default BUSYBOX_DEFAULT_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 - help - This program reads a symbolic link and returns the name - of the file it points to - -config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW - bool "Enable canonicalization by following all symlinks (-f)" - default BUSYBOX_DEFAULT_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 - help - rmdir is used to remove empty directories. - -config BUSYBOX_CONFIG_FEATURE_RMDIR_LONG_OPTIONS - bool "Enable long options" - default BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS - depends on BUSYBOX_CONFIG_RMDIR && BUSYBOX_CONFIG_LONG_OPTS - 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 @@ -720,8 +448,134 @@ config BUSYBOX_CONFIG_SHA3SUM bool "sha3sum" default BUSYBOX_DEFAULT_SHA3SUM help - Compute and check SHA3 (512-bit) message digest + 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 + help + mkdir is used to create directories with the specified names. + +config BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_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. +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 + help + mv is used to move or rename files or directories. + +config BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_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 + help + This program reads a symbolic link and returns the name + of the file it points to + +config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW + bool "Enable canonicalization by following all symlinks (-f)" + default BUSYBOX_DEFAULT_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 + help + rmdir is used to remove empty directories. + +config BUSYBOX_CONFIG_FEATURE_RMDIR_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS + depends on BUSYBOX_CONFIG_RMDIR && BUSYBOX_CONFIG_LONG_OPTS + 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_SHUF + bool "shuf" + default BUSYBOX_DEFAULT_SHUF + help + 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 85ee1db2c3a..7d636d1ac4e 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 021656d3f92..cd1a3451972 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 0695f9ba39e..ec08351b5c6 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 64b9a2baa99..7e77407860c 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 3465df40ab3..817a514b75e 100644 --- a/package/utils/busybox/config/miscutils/Config.in +++ b/package/utils/busybox/config/miscutils/Config.in @@ -6,6 +6,127 @@ menu "Miscellaneous Utilities" +config BUSYBOX_CONFIG_ADJTIMEX + bool "adjtimex" + default BUSYBOX_DEFAULT_ADJTIMEX + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Adjtimex reads and optionally sets adjustment parameters for + the Linux clock adjustment algorithm. +config BUSYBOX_CONFIG_BBCONFIG + bool "bbconfig" + default BUSYBOX_DEFAULT_BBCONFIG + help + The bbconfig applet will print the config file with which + busybox was built. + +config BUSYBOX_CONFIG_FEATURE_COMPRESS_BBCONFIG + bool "Compress bbconfig data" + default BUSYBOX_DEFAULT_FEATURE_COMPRESS_BBCONFIG + depends on BUSYBOX_CONFIG_BBCONFIG + help + Store bbconfig data in compressed form, uncompress them on-the-fly + before output. + + If you have a really tiny busybox with few applets enabled (and + bunzip2 isn't one of them), the overhead of the decompressor might + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + The beep applets beeps in a given freq/Hz. + +config BUSYBOX_CONFIG_FEATURE_BEEP_FREQ + int "default frequency" + range 0 2147483647 + default BUSYBOX_DEFAULT_FEATURE_BEEP_FREQ + depends on BUSYBOX_CONFIG_BEEP + help + Frequency for default beep. + +config BUSYBOX_CONFIG_FEATURE_BEEP_LENGTH_MS + int "default length" + range 0 2147483647 + default BUSYBOX_DEFAULT_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 + help + Simple chat utility. + +config BUSYBOX_CONFIG_FEATURE_CHAT_NOFAIL + bool "Enable NOFAIL expect strings" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_NOFAIL + help + When enabled expect strings which are started with a dash trigger + no-fail mode. That is when expectation is not met within timeout + the script is not terminated but sends next SEND string and waits + for next EXPECT string. This allows to compose far more flexible + scripts. + +config BUSYBOX_CONFIG_FEATURE_CHAT_TTY_HIFI + bool "Force STDIN to be a TTY" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_TTY_HIFI + help + Original chat always treats STDIN as a TTY device and sets for it + so-called raw mode. This option turns on such behaviour. + +config BUSYBOX_CONFIG_FEATURE_CHAT_IMPLICIT_CR + bool "Enable implicit Carriage Return" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_IMPLICIT_CR + help + When enabled make chat to terminate all SEND strings with a "\r" + unless "\c" is met anywhere in the string. + +config BUSYBOX_CONFIG_FEATURE_CHAT_SWALLOW_OPTS + bool "Swallow options" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_SWALLOW_OPTS + help + Busybox chat require no options. To make it not fail when used + in place of original chat (which has a bunch of options) turn + this on. + +config BUSYBOX_CONFIG_FEATURE_CHAT_SEND_ESCAPES + bool "Support weird SEND escapes" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_SEND_ESCAPES + help + Original chat uses some escape sequences in SEND arguments which + are not sent to device but rather performs special actions. + E.g. "\K" means to send a break sequence to device. + "\d" delays execution for a second, "\p" -- for a 1/100 of second. + Before turning this option on think twice: do you really need them? + +config BUSYBOX_CONFIG_FEATURE_CHAT_VAR_ABORT_LEN + bool "Support variable-length ABORT conditions" + depends on BUSYBOX_CONFIG_CHAT + default BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN + help + Original chat uses fixed 50-bytes length ABORT conditions. Say N here. + +config BUSYBOX_CONFIG_FEATURE_CHAT_CLR_ABORT + bool "Support revoking of ABORT conditions" + depends on BUSYBOX_CONFIG_CHAT + 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 @@ -48,6 +169,208 @@ config BUSYBOX_CONFIG_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 + help + Crontab manipulates the crontab for a particular user. Only + 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 + help + Dc is a reverse-polish desk calculator which supports unlimited + precision arithmetic. + +config BUSYBOX_CONFIG_FEATURE_DC_LIBM + bool "Enable power and exp functions (requires libm)" + default BUSYBOX_DEFAULT_FEATURE_DC_LIBM + depends on BUSYBOX_CONFIG_DC + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_FEATURE_SYSLOG + help + This is deprecated and should NOT be used anymore. + Use linux >= 2.6 (optionally with hotplug) and mdev instead! + See docs/mdev.txt for detailed instructions on how to use mdev + instead. + + Provides compatibility with old device names on a devfs systems. + You should set it to true if you have devfs enabled. + The following keywords in devsfd.conf are supported: + "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", + "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", + "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". + + But only if they are written UPPERCASE!!!!!!!! + +config BUSYBOX_CONFIG_DEVFSD_MODLOAD + bool "Adds support for MODLOAD keyword in devsfd.conf" + default BUSYBOX_DEFAULT_DEVFSD_MODLOAD + depends on BUSYBOX_CONFIG_DEVFSD + help + This actually doesn't work with busybox modutils but needs + the external modutils. + +config BUSYBOX_CONFIG_DEVFSD_FG_NP + bool "Enables the -fg and -np options" + default BUSYBOX_DEFAULT_DEVFSD_FG_NP + depends on BUSYBOX_CONFIG_DEVFSD + help + -fg Run the daemon in the foreground. + -np Exit after parsing the configuration file. + Do not poll for events. + +config BUSYBOX_CONFIG_DEVFSD_VERBOSE + bool "Increases logging (and size)" + default BUSYBOX_DEFAULT_DEVFSD_VERBOSE + depends on BUSYBOX_CONFIG_DEVFSD + help + Increases logging to stderr or syslog. + +config BUSYBOX_CONFIG_FEATURE_DEVFS + bool "Use devfs names for all devices (obsolete)" + default BUSYBOX_DEFAULT_FEATURE_DEVFS + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + This is obsolete and should NOT be used anymore. + Use linux >= 2.6 (optionally with hotplug) and mdev instead! + + For legacy systems -- if there is no way around devfsd -- this + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Used to eject cdroms. (defaults to /dev/cdrom) + +config BUSYBOX_CONFIG_FEATURE_EJECT_SCSI + bool "SCSI support" + default BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI + depends on BUSYBOX_CONFIG_EJECT + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Shows splash image and progress bar on framebuffer device. + Can be used during boot phase of an embedded device. ~2kb. + Usage: + - use kernel option 'vga=xxx' or otherwise enable fb device. + - put somewhere fbsplash.cfg file and an image in .ppm format. + - $ setsid fbsplash [params] & + -c: hide cursor + -d /dev/fbN: framebuffer device (if not /dev/fb0) + -s path_to_image_file (can be "-" for stdin) + -i path_to_cfg_file (can be "-" for stdin) + -f path_to_fifo (can be "-" for stdin) + - if you want to run it only in presence of kernel parameter: + grep -q "fbsplash=on" = 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 @@ -159,6 +509,64 @@ config BUSYBOX_CONFIG_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 + help + 'makedevs' is a utility used to create a batch of devices with + one command. + + There are two choices for command line behaviour, the interface + as used by LEAF/Linux Router Project, or a device table file. + + 'leaf' is traditionally what busybox follows, it allows multiple + devices of a particluar type to be created per command. + e.g. /dev/hda[0-9] + Device properties are passed as command line arguments. + + 'table' reads device properties from a file or stdin, allowing + a batch of unrelated devices to be made with one command. + User/group names are allowed as an alternative to uid/gid. + +choice + prompt "Choose makedevs behaviour" + depends on BUSYBOX_CONFIG_MAKEDEVS + default BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE + +config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_LEAF + bool "leaf" + +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 + help + 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 @@ -172,6 +580,30 @@ config BUSYBOX_CONFIG_NANDDUMP select BUSYBOX_CONFIG_PLATFORM_LINUX help Dump the content of raw NAND chip +config BUSYBOX_CONFIG_RAIDAUTORUN + bool "raidautorun" + default BUSYBOX_DEFAULT_RAIDAUTORUN + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + raidautorun tells the kernel md driver to + search and start RAID arrays. +config BUSYBOX_CONFIG_READAHEAD + bool "readahead" + default BUSYBOX_DEFAULT_READAHEAD + depends on BUSYBOX_CONFIG_LFS + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Preload the files listed on the command line into RAM cache so that + subsequent reads on these files will not block on disk I/O. + + This applet just calls the readahead(2) system call on each file. + It is mainly useful in system startup scripts to preload files + or executables before they are used. When used at the right time + (in particular when a CPU bound process is running) it can + significantly speed up system startup. + + 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 @@ -184,12 +616,38 @@ config BUSYBOX_CONFIG_RFKILL 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" + default BUSYBOX_DEFAULT_RUNLEVEL + depends on BUSYBOX_CONFIG_FEATURE_UTMP + help + find the current and previous system 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) @@ -205,6 +663,27 @@ config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY 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 + help + 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 + help + A replacement for "stty size". Unlike stty, can report only width, + 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 @@ -252,531 +731,17 @@ config BUSYBOX_CONFIG_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_ADJTIMEX - bool "adjtimex" - default BUSYBOX_DEFAULT_ADJTIMEX - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Adjtimex reads and optionally sets adjustment parameters for - the Linux clock adjustment algorithm. - -config BUSYBOX_CONFIG_BBCONFIG - bool "bbconfig" - default BUSYBOX_DEFAULT_BBCONFIG - help - The bbconfig applet will print the config file with which - busybox was built. - -config BUSYBOX_CONFIG_FEATURE_COMPRESS_BBCONFIG - bool "Compress bbconfig data" - default BUSYBOX_DEFAULT_FEATURE_COMPRESS_BBCONFIG - depends on BUSYBOX_CONFIG_BBCONFIG - help - Store bbconfig data in compressed form, uncompress them on-the-fly - before output. - - If you have a really tiny busybox with few applets enabled (and - bunzip2 isn't one of them), the overhead of the decompressor might - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - The beep applets beeps in a given freq/Hz. - -config BUSYBOX_CONFIG_FEATURE_BEEP_FREQ - int "default frequency" - range 0 2147483647 - default BUSYBOX_DEFAULT_FEATURE_BEEP_FREQ - depends on BUSYBOX_CONFIG_BEEP - help - Frequency for default beep. - -config BUSYBOX_CONFIG_FEATURE_BEEP_LENGTH_MS - int "default length" - range 0 2147483647 - default BUSYBOX_DEFAULT_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 - help - Simple chat utility. - -config BUSYBOX_CONFIG_FEATURE_CHAT_NOFAIL - bool "Enable NOFAIL expect strings" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_NOFAIL - help - When enabled expect strings which are started with a dash trigger - no-fail mode. That is when expectation is not met within timeout - the script is not terminated but sends next SEND string and waits - for next EXPECT string. This allows to compose far more flexible - scripts. - -config BUSYBOX_CONFIG_FEATURE_CHAT_TTY_HIFI - bool "Force STDIN to be a TTY" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_TTY_HIFI - help - Original chat always treats STDIN as a TTY device and sets for it - so-called raw mode. This option turns on such behaviour. - -config BUSYBOX_CONFIG_FEATURE_CHAT_IMPLICIT_CR - bool "Enable implicit Carriage Return" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_IMPLICIT_CR - help - When enabled make chat to terminate all SEND strings with a "\r" - unless "\c" is met anywhere in the string. - -config BUSYBOX_CONFIG_FEATURE_CHAT_SWALLOW_OPTS - bool "Swallow options" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_SWALLOW_OPTS - help - Busybox chat require no options. To make it not fail when used - in place of original chat (which has a bunch of options) turn - this on. - -config BUSYBOX_CONFIG_FEATURE_CHAT_SEND_ESCAPES - bool "Support weird SEND escapes" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_SEND_ESCAPES - help - Original chat uses some escape sequences in SEND arguments which - are not sent to device but rather performs special actions. - E.g. "\K" means to send a break sequence to device. - "\d" delays execution for a second, "\p" -- for a 1/100 of second. - Before turning this option on think twice: do you really need them? - -config BUSYBOX_CONFIG_FEATURE_CHAT_VAR_ABORT_LEN - bool "Support variable-length ABORT conditions" - depends on BUSYBOX_CONFIG_CHAT - default BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN - help - Original chat uses fixed 50-bytes length ABORT conditions. Say N here. - -config BUSYBOX_CONFIG_FEATURE_CHAT_CLR_ABORT - bool "Support revoking of ABORT conditions" - depends on BUSYBOX_CONFIG_CHAT - 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_CRONTAB - bool "crontab" - default BUSYBOX_DEFAULT_CRONTAB - help - Crontab manipulates the crontab for a particular user. Only - 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 - help - Dc is a reverse-polish desk calculator which supports unlimited - precision arithmetic. - -config BUSYBOX_CONFIG_FEATURE_DC_LIBM - bool "Enable power and exp functions (requires libm)" - default BUSYBOX_DEFAULT_FEATURE_DC_LIBM - depends on BUSYBOX_CONFIG_DC - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - select BUSYBOX_CONFIG_FEATURE_SYSLOG - help - This is deprecated and should NOT be used anymore. - Use linux >= 2.6 (optionally with hotplug) and mdev instead! - See docs/mdev.txt for detailed instructions on how to use mdev - instead. - - Provides compatibility with old device names on a devfs systems. - You should set it to true if you have devfs enabled. - The following keywords in devsfd.conf are supported: - "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", - "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", - "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". - - But only if they are written UPPERCASE!!!!!!!! - -config BUSYBOX_CONFIG_DEVFSD_MODLOAD - bool "Adds support for MODLOAD keyword in devsfd.conf" - default BUSYBOX_DEFAULT_DEVFSD_MODLOAD - depends on BUSYBOX_CONFIG_DEVFSD - help - This actually doesn't work with busybox modutils but needs - the external modutils. - -config BUSYBOX_CONFIG_DEVFSD_FG_NP - bool "Enables the -fg and -np options" - default BUSYBOX_DEFAULT_DEVFSD_FG_NP - depends on BUSYBOX_CONFIG_DEVFSD - help - -fg Run the daemon in the foreground. - -np Exit after parsing the configuration file. - Do not poll for events. - -config BUSYBOX_CONFIG_DEVFSD_VERBOSE - bool "Increases logging (and size)" - default BUSYBOX_DEFAULT_DEVFSD_VERBOSE - depends on BUSYBOX_CONFIG_DEVFSD - help - Increases logging to stderr or syslog. - -config BUSYBOX_CONFIG_FEATURE_DEVFS - bool "Use devfs names for all devices (obsolete)" - default BUSYBOX_DEFAULT_FEATURE_DEVFS - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - This is obsolete and should NOT be used anymore. - Use linux >= 2.6 (optionally with hotplug) and mdev instead! - - For legacy systems -- if there is no way around devfsd -- this - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Used to eject cdroms. (defaults to /dev/cdrom) - -config BUSYBOX_CONFIG_FEATURE_EJECT_SCSI - bool "SCSI support" - default BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI - depends on BUSYBOX_CONFIG_EJECT - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Shows splash image and progress bar on framebuffer device. - Can be used during boot phase of an embedded device. ~2kb. - Usage: - - use kernel option 'vga=xxx' or otherwise enable fb device. - - put somewhere fbsplash.cfg file and an image in .ppm format. - - $ setsid fbsplash [params] & - -c: hide cursor - -d /dev/fbN: framebuffer device (if not /dev/fb0) - -s path_to_image_file (can be "-" for stdin) - -i path_to_cfg_file (can be "-" for stdin) - -f path_to_fifo (can be "-" for stdin) - - if you want to run it only in presence of kernel parameter: - grep -q "fbsplash=on" = 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 - help - 'last' displays detailed information about the last users that - logged into the system (mimics sysvinit last). +900 bytes. - -config BUSYBOX_CONFIG_HDPARM - bool "hdparm" - default BUSYBOX_DEFAULT_HDPARM - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Get/Set hard drive parameters. Primarily intended for ATA - drives. Adds about 13k (or around 30k if you enable the - FEATURE_HDPARM_GET_IDENTITY option).... - -config BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY - bool "Support obtaining detailed information directly from drives" - default BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY - depends on BUSYBOX_CONFIG_HDPARM - help - Enables the -I and -i options to obtain detailed information - directly from drives about their capabilities and supported ATA - feature set. If no device name is specified, hdparm will read - identify data from stdin. Enabling this option will add about 16k... - -config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF - bool "Register an IDE interface (DANGEROUS)" - default BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF - depends on BUSYBOX_CONFIG_HDPARM - help - Enables the 'hdparm -R' option to register an IDE interface. - This is dangerous stuff, so you should probably say N. - -config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF - bool "Un-register an IDE interface (DANGEROUS)" - default BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF - depends on BUSYBOX_CONFIG_HDPARM - help - Enables the 'hdparm -U' option to un-register an IDE interface. - This is dangerous stuff, so you should probably say N. - -config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET - bool "Perform device reset (DANGEROUS)" - default BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET - depends on BUSYBOX_CONFIG_HDPARM - help - Enables the 'hdparm -w' option to perform a device reset. - This is dangerous stuff, so you should probably say N. - -config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF - bool "Tristate device for hotswap (DANGEROUS)" - default BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF - depends on BUSYBOX_CONFIG_HDPARM - help - Enables the 'hdparm -x' option to tristate device for hotswap, - and the '-b' option to get/set bus state. This is dangerous - stuff, so you should probably say N. - -config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA - bool "Get/set using_dma flag" - default BUSYBOX_DEFAULT_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_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 - help - 'makedevs' is a utility used to create a batch of devices with - one command. - - There are two choices for command line behaviour, the interface - as used by LEAF/Linux Router Project, or a device table file. - - 'leaf' is traditionally what busybox follows, it allows multiple - devices of a particluar type to be created per command. - e.g. /dev/hda[0-9] - Device properties are passed as command line arguments. - - 'table' reads device properties from a file or stdin, allowing - a batch of unrelated devices to be made with one command. - User/group names are allowed as an alternative to uid/gid. - -choice - prompt "Choose makedevs behaviour" - depends on BUSYBOX_CONFIG_MAKEDEVS - default BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE - -config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_LEAF - bool "leaf" - -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 - help - 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_RAIDAUTORUN - bool "raidautorun" - default BUSYBOX_DEFAULT_RAIDAUTORUN - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - raidautorun tells the kernel md driver to - search and start RAID arrays. - -config BUSYBOX_CONFIG_READAHEAD - bool "readahead" - default BUSYBOX_DEFAULT_READAHEAD - depends on BUSYBOX_CONFIG_LFS - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Preload the files listed on the command line into RAM cache so that - subsequent reads on these files will not block on disk I/O. - - This applet just calls the readahead(2) system call on each file. - It is mainly useful in system startup scripts to preload files - or executables before they are used. When used at the right time - (in particular when a CPU bound process is running) it can - significantly speed up system startup. - - As readahead(2) blocks until each file has been read, it is best to - run this applet as a background job. - -config BUSYBOX_CONFIG_RUNLEVEL - bool "runlevel" - default BUSYBOX_DEFAULT_RUNLEVEL - depends on BUSYBOX_CONFIG_FEATURE_UTMP - help - find the current and previous system 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_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_TIME - bool "time" - default BUSYBOX_DEFAULT_TIME - help - 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 - help - A replacement for "stty size". Unlike stty, can report only width, - 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_VOLNAME - bool "volname" - default BUSYBOX_DEFAULT_VOLNAME - help - Prints a CD-ROM volume name. - 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 8e0e2af9efd..5203db8c598 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,6 +37,42 @@ config BUSYBOX_CONFIG_MODPROBE_SMALL - rmmod is an alias to modprobe -r - depmod generates modules.dep.bb +config BUSYBOX_CONFIG_DEPMOD + bool "depmod" + default BUSYBOX_DEFAULT_DEPMOD + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + insmod is used to load specified modules in the running kernel. +config BUSYBOX_CONFIG_LSMOD + bool "lsmod" + default BUSYBOX_DEFAULT_LSMOD + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + lsmod is used to display a list of loaded modules. + +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 && !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 @@ -58,45 +87,9 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED depends on BUSYBOX_CONFIG_MODPROBE_SMALL help Check if the module is already loaded. - -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. - -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 - 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_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 407ddd30dd3..bc2f127c4d0 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 .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. + 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". + 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 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 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 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. - -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...) - -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_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. +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 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 4f484002259..cdba5d5d17e 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 6eafbda0fa2..6bc5ec058af 100644 --- a/package/utils/busybox/config/procps/Config.in +++ b/package/utils/busybox/config/procps/Config.in @@ -6,11 +6,50 @@ menu "Process Utilities" +config BUSYBOX_CONFIG_FREE + bool "free" + default BUSYBOX_DEFAULT_FREE + select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo() + help + 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 + help + 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 + help + The command kill sends the specified signal to the specified + process or process group. If no signal is specified, the TERM + signal is sent. + +config BUSYBOX_CONFIG_KILLALL + bool "killall" + default BUSYBOX_DEFAULT_KILLALL + help + killall sends a signal to all processes running any of the + specified commands. If no signal name is specified, SIGTERM is + sent. + +config BUSYBOX_CONFIG_KILLALL5 + bool "killall5" + default BUSYBOX_DEFAULT_KILLALL5 + 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 @@ -27,6 +66,39 @@ config BUSYBOX_CONFIG_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 + help + Pidof finds the process id's (pids) of the named programs. It prints + those id's on the standard output. + +config BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE + bool "Enable argument for single shot (-s)" + default BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE + depends on BUSYBOX_CONFIG_PIDOF + help + Support argument '-s' for returning only the first pid found. + +config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT + bool "Enable argument for omitting pids (-o)" + default BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT + depends on BUSYBOX_CONFIG_PIDOF + help + 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_PMAP bool "pmap" default BUSYBOX_DEFAULT_PMAP @@ -37,6 +109,51 @@ config BUSYBOX_CONFIG_POWERTOP default BUSYBOX_DEFAULT_POWERTOP help Analyze power consumption on Intel-based laptops +config BUSYBOX_CONFIG_PS + bool "ps" + default BUSYBOX_DEFAULT_PS + help + ps gives a snapshot of the current processes. + +config BUSYBOX_CONFIG_FEATURE_PS_WIDE + bool "Enable wide output option (-w)" + default BUSYBOX_DEFAULT_FEATURE_PS_WIDE + depends on BUSYBOX_CONFIG_PS && !BUSYBOX_CONFIG_DESKTOP + help + Support argument 'w' for wide output. + If given once, 132 chars are printed, and if given more + than once, the length is unlimited. + +config BUSYBOX_CONFIG_FEATURE_PS_LONG + bool "Enable long output option (-l)" + default BUSYBOX_DEFAULT_FEATURE_PS_LONG + depends on BUSYBOX_CONFIG_PS && !BUSYBOX_CONFIG_DESKTOP + help + Support argument 'l' for long output. + Adds fields PPID, RSS, START, TIME & TTY + +config BUSYBOX_CONFIG_FEATURE_PS_TIME + bool "Enable time and elapsed time output" + default BUSYBOX_DEFAULT_FEATURE_PS_TIME + depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Support -o time and -o etime output specifiers. + +config BUSYBOX_CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS + bool "Enable additional ps columns" + default BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS + depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP + help + Support -o rgroup, -o ruser, -o nice output specifiers. + +config BUSYBOX_CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS + bool "Support Linux prior to 2.4.0 and non-ELF systems" + default BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS + depends on BUSYBOX_CONFIG_FEATURE_PS_TIME + 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 @@ -47,12 +164,23 @@ config BUSYBOX_CONFIG_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 @@ -121,139 +249,12 @@ config BUSYBOX_CONFIG_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 - select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo() +config BUSYBOX_CONFIG_WATCH + bool "watch" + default BUSYBOX_DEFAULT_WATCH help - 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 - help - 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_KILL - bool "kill" - default BUSYBOX_DEFAULT_KILL - help - The command kill sends the specified signal to the specified - process or process group. If no signal is specified, the TERM - signal is sent. - -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 - sent. - -config BUSYBOX_CONFIG_KILLALL5 - bool "killall5" - default BUSYBOX_DEFAULT_KILLALL5 - depends on BUSYBOX_CONFIG_KILL - -config BUSYBOX_CONFIG_PGREP - bool "pgrep" - default BUSYBOX_DEFAULT_PGREP - help - Look for processes by name. - -config BUSYBOX_CONFIG_PIDOF - bool "pidof" - default BUSYBOX_DEFAULT_PIDOF - help - Pidof finds the process id's (pids) of the named programs. It prints - those id's on the standard output. - -config BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE - bool "Enable argument for single shot (-s)" - default BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE - depends on BUSYBOX_CONFIG_PIDOF - help - Support argument '-s' for returning only the first pid found. - -config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT - bool "Enable argument for omitting pids (-o)" - default BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT - depends on BUSYBOX_CONFIG_PIDOF - help - 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 - help - Send signals to processes by name. - -config BUSYBOX_CONFIG_PS - bool "ps" - default BUSYBOX_DEFAULT_PS - help - ps gives a snapshot of the current processes. - -config BUSYBOX_CONFIG_FEATURE_PS_WIDE - bool "Enable wide output option (-w)" - default BUSYBOX_DEFAULT_FEATURE_PS_WIDE - depends on BUSYBOX_CONFIG_PS && !BUSYBOX_CONFIG_DESKTOP - help - Support argument 'w' for wide output. - If given once, 132 chars are printed, and if given more - than once, the length is unlimited. - -config BUSYBOX_CONFIG_FEATURE_PS_LONG - bool "Enable long output option (-l)" - default BUSYBOX_DEFAULT_FEATURE_PS_LONG - depends on BUSYBOX_CONFIG_PS && !BUSYBOX_CONFIG_DESKTOP - help - Support argument 'l' for long output. - Adds fields PPID, RSS, START, TIME & TTY - -config BUSYBOX_CONFIG_FEATURE_PS_TIME - bool "Enable time and elapsed time output" - default BUSYBOX_DEFAULT_FEATURE_PS_TIME - depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Support -o time and -o etime output specifiers. - -config BUSYBOX_CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS - bool "Enable additional ps columns" - default BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS - depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP - help - Support -o rgroup, -o ruser, -o nice output specifiers. - -config BUSYBOX_CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS - bool "Support Linux prior to 2.4.0 and non-ELF systems" - default BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS - depends on BUSYBOX_CONFIG_FEATURE_PS_TIME - 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_RENICE - bool "renice" - default BUSYBOX_DEFAULT_RENICE - help - Renice alters the scheduling priority of one or more running - processes. - -config BUSYBOX_CONFIG_BB_SYSCTL - bool "sysctl" - default BUSYBOX_DEFAULT_BB_SYSCTL - help - Configure kernel parameters at runtime. + 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" @@ -263,11 +264,4 @@ config BUSYBOX_CONFIG_FEATURE_SHOW_THREADS Enables the ps -T option, showing of threads in pstree, and 'h' command in top. -config BUSYBOX_CONFIG_WATCH - bool "watch" - default BUSYBOX_DEFAULT_WATCH - help - watch is used to execute a program periodically, showing - output to the screen. - endmenu diff --git a/package/utils/busybox/config/runit/Config.in b/package/utils/busybox/config/runit/Config.in index a322a2cd8a0..8750b597e55 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 1d23f7de43a..1aac9f4ec57 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 69ecf145e1b..4193c188064 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,96 +68,26 @@ 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_BASH_COMPAT - bool "bash-compatible extensions" - default BUSYBOX_DEFAULT_ASH_BASH_COMPAT - depends on BUSYBOX_CONFIG_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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - help - Enable support for the ash 'command' builtin, which allows - you to run the specified command with the specified arguments, - even when there is an ash builtin command with the same name. - -config BUSYBOX_CONFIG_ASH_MAIL - bool "Check for new mail on interactive shells" - default BUSYBOX_DEFAULT_ASH_MAIL - depends on BUSYBOX_CONFIG_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 + 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 + 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. @@ -117,12 +98,90 @@ config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT config BUSYBOX_CONFIG_ASH_EXPAND_PRMT bool "Expand prompt string" default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT - depends on BUSYBOX_CONFIG_ASH + 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 || 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 || 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 || 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 || 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 || 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 || 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 || 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 || 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 || 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 || 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, + even when there is an ash builtin command with the same name. + +config BUSYBOX_CONFIG_ASH_MAIL + bool "Check for new mail on interactive shells" + default BUSYBOX_DEFAULT_ASH_MAIL + 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_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 _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 5fcee2c7ff6..1f8f3cf1608 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 08bddf819a9..8df023c35b4 100644 --- a/package/utils/busybox/config/util-linux/Config.in +++ b/package/utils/busybox/config/util-linux/Config.in @@ -6,28 +6,366 @@ menu "Linux System Utilities" +config BUSYBOX_CONFIG_ACPID + bool "acpid" + default BUSYBOX_DEFAULT_ACPID + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + acpid listens to ACPI events coming either in textual form from + /proc/acpi/event (though it is marked deprecated it is still widely + used and _is_ a standard) or in binary form from specified evdevs + (just use /dev/input/event*). + + It parses the event to retrieve ACTION and a possible PARAMETER. + It then spawns /etc/acpi/[/] either via run-parts + (if the resulting path is a directory) or directly as an executable. + + N.B. acpid relies on run-parts so have the latter installed. + +config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT + bool "Accept and ignore redundant options" + default BUSYBOX_DEFAULT_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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_VOLUMEID + help + Lists labels and UUIDs of all filesystems. + WARNING: + With all submodules selected, it will add ~8k to busybox. + +config BUSYBOX_CONFIG_FEATURE_BLKID_TYPE + bool "Print filesystem type" + default BUSYBOX_DEFAULT_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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + dmesg is used to examine or control the kernel ring buffer. When the + Linux kernel prints messages to the system log, they are stored in + the kernel ring buffer. You can use dmesg to print the kernel's ring + buffer, clear the kernel ring buffer, change the size of the kernel + ring buffer, and change the priority level at which kernel messages + are also logged to the system console. Enable this option if you + wish to enable the 'dmesg' utility. + +config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY + bool "Pretty dmesg output" + default BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY + depends on BUSYBOX_CONFIG_DMESG + help + If you wish to scrub the syslog level from the output, say 'Y' here. + The syslog level is a string prefixed to every line with the form + "<#>". + + With this option you will see: + # dmesg + Linux version 2.6.17.4 ..... + BIOS-provided physical RAM map: + BIOS-e820: 0000000000000000 - 000000000009f000 (usable) + + Without this option you will see: + # dmesg + <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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + fbset is used to show or change the settings of a Linux frame buffer + device. The frame buffer device provides a simple and unique + interface to access a graphics display. Enable this option + if you wish to enable the 'fbset' utility. + +config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY + bool "Turn on extra fbset options" + default BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY + depends on BUSYBOX_CONFIG_FBSET + help + This option enables extended fbset options, allowing one to set the + framebuffer size, color depth, etc. interface to access a graphics + display. Enable this option if you wish to enable extended fbset + options. + +config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE + bool "Turn on fbset readmode support" + default BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE + depends on BUSYBOX_CONFIG_FBSET + help + 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_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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + The fdisk utility is used to divide hard disks into one or more + logical disks, which are generally called partitions. This utility + can be used to list and edit the set of partitions or BSD style + 'disk slices' that are defined on a hard drive. + +config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS + bool "Support over 4GB disks" + default BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS + depends on BUSYBOX_CONFIG_FDISK + depends on !BUSYBOX_CONFIG_LFS # with LFS no special code is needed + help + Enable this option to support large disks > 4GB. + +config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + bool "Write support" + default BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE + depends on BUSYBOX_CONFIG_FDISK + help + Enabling this option allows you to create or change a partition table + and write those changes out to disk. If you leave this option + disabled, you will only be able to view the partition table. + +config BUSYBOX_CONFIG_FEATURE_AIX_LABEL + bool "Support AIX disklabels" + default BUSYBOX_DEFAULT_FEATURE_AIX_LABEL + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change AIX disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_SGI_LABEL + bool "Support SGI disklabels" + default BUSYBOX_DEFAULT_FEATURE_SGI_LABEL + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change SGI disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_SUN_LABEL + bool "Support SUN disklabels" + default BUSYBOX_DEFAULT_FEATURE_SUN_LABEL + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change SUN disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_OSF_LABEL + bool "Support BSD disklabels" + default BUSYBOX_DEFAULT_FEATURE_OSF_LABEL + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change BSD disklabels + and define and edit BSD disk slices. + +config BUSYBOX_CONFIG_FEATURE_GPT_LABEL + bool "Support GPT disklabels" + default BUSYBOX_DEFAULT_FEATURE_GPT_LABEL + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to view GUID Partition Table + disklabels. + +config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED + bool "Support expert mode" + default BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to do terribly unsafe things like + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_VOLUMEID + help + 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" + default BUSYBOX_DEFAULT_FREERAMDISK + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Linux allows you to create ramdisks. This utility allows you to + delete them and completely free all memory that was used for the + ramdisk. For example, if you boot Linux into a ramdisk and later + 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 + help + The minix filesystem is a nice, small, compact, read-write filesystem + with little overhead. It is not a journaling filesystem however and + can experience corruption if it is not properly unmounted or if the + 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_FSTRIM bool "fstrim" default BUSYBOX_DEFAULT_FSTRIM select BUSYBOX_CONFIG_PLATFORM_LINUX help Discard unused blocks on a mounted filesystem. +config BUSYBOX_CONFIG_GETOPT + bool "getopt" + default BUSYBOX_DEFAULT_GETOPT + help + The getopt utility is used to break up (parse) options in command + lines to make it easy to write complex shell scripts that also check + for legal (and illegal) options. If you want to write horribly + complex shell scripts, or use some horribly complex shell script + written by others, this utility may be for you. Most people will + wisely leave this disabled. + +config BUSYBOX_CONFIG_FEATURE_GETOPT_LONG + bool "Support option -l" + default BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG if BUSYBOX_CONFIG_LONG_OPTS + depends on BUSYBOX_CONFIG_GETOPT + help + Enable support for long options (option -l). +config BUSYBOX_CONFIG_HEXDUMP + bool "hexdump" + default BUSYBOX_DEFAULT_HEXDUMP + help + The hexdump utility is used to display binary data in a readable + way that is comparable to the output from most hex editors. + +config BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE + bool "Support -R, reverse of 'hexdump -Cv'" + default BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE + depends on BUSYBOX_CONFIG_HEXDUMP + help + The hexdump utility is used to display binary data in an ascii + readable way. This option creates binary data from an ascii input. + NB: this option is non-standard. It's unwise to use it in scripts + aimed to be portable. + +config BUSYBOX_CONFIG_HD + bool "hd" + default BUSYBOX_DEFAULT_HD + help + hd is an alias to hexdump -C. +config BUSYBOX_CONFIG_HWCLOCK + bool "hwclock" + default BUSYBOX_DEFAULT_HWCLOCK + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + The hwclock utility is used to read and set the hardware clock + on a system. This is primarily used to set the current time on + shutdown in the hardware clock, so the hardware will keep the + correct time when Linux is _not_ running. + +config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS + bool "Support long options (--hctosys,...)" + default BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS + depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_LONG_OPTS + help + By default, the hwclock utility only uses short options. If you + are overly fond of its long options, such as --hctosys, --utc, etc) + then enable this option. + +config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS + bool "Use FHS /var/lib/hwclock/adjtime" + default BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS # util-linux-ng in Fedora 13 still uses /etc/adjtime + depends on BUSYBOX_CONFIG_HWCLOCK + help + Starting with FHS 2.3, the adjtime state file is supposed to exist + at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish + to use the FHS behavior, answer Y here, otherwise answer N for the + classic /etc/adjtime path. + + pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO +config BUSYBOX_CONFIG_IPCRM + bool "ipcrm" + default BUSYBOX_DEFAULT_IPCRM + help + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + 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 + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + 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 + #select PLATFORM_LINUX + help + lspci is a utility for displaying information about PCI buses in the + 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 + #select PLATFORM_LINUX + help + lsusb is a utility for displaying information about USB buses in the + 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 @@ -85,6 +423,84 @@ config BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE 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 + help + The mkswap utility is used to configure a file or disk partition as + Linux swap space. This allows Linux to use the entire file or + partition as if it were additional RAM, which can greatly increase + the capability of low-memory machines. This additional memory is + much slower than real RAM, but can be very helpful at preventing your + applications being killed by the Linux out of memory (OOM) killer. + Once you have created swap space using 'mkswap' you need to enable + the swap space using the 'swapon' utility. + +config BUSYBOX_CONFIG_FEATURE_MKSWAP_UUID + bool "UUID support" + default BUSYBOX_DEFAULT_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 + help + more is a simple utility which allows you to read text one screen + sized page at a time. If you want to read text that is larger than + 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 @@ -193,462 +609,6 @@ config BUSYBOX_CONFIG_FEATURE_NSENTER_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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - acpid listens to ACPI events coming either in textual form from - /proc/acpi/event (though it is marked deprecated it is still widely - used and _is_ a standard) or in binary form from specified evdevs - (just use /dev/input/event*). - - It parses the event to retrieve ACTION and a possible PARAMETER. - It then spawns /etc/acpi/[/] either via run-parts - (if the resulting path is a directory) or directly as an executable. - - N.B. acpid relies on run-parts so have the latter installed. - -config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT - bool "Accept and ignore redundant options" - default BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT - depends on BUSYBOX_CONFIG_ACPID - help - Accept and ignore compatibility options -g -m -s -S -v. - -config BUSYBOX_CONFIG_BLKID - bool "blkid" - default BUSYBOX_DEFAULT_BLKID - select BUSYBOX_CONFIG_PLATFORM_LINUX - select BUSYBOX_CONFIG_VOLUMEID - help - Lists labels and UUIDs of all filesystems. - WARNING: - With all submodules selected, it will add ~8k to busybox. - -config BUSYBOX_CONFIG_FEATURE_BLKID_TYPE - bool "Print filesystem type" - default BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE - depends on BUSYBOX_CONFIG_BLKID - help - Show TYPE="filesystem type" - -config BUSYBOX_CONFIG_DMESG - bool "dmesg" - default BUSYBOX_DEFAULT_DMESG - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - dmesg is used to examine or control the kernel ring buffer. When the - Linux kernel prints messages to the system log, they are stored in - the kernel ring buffer. You can use dmesg to print the kernel's ring - buffer, clear the kernel ring buffer, change the size of the kernel - ring buffer, and change the priority level at which kernel messages - are also logged to the system console. Enable this option if you - wish to enable the 'dmesg' utility. - -config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY - bool "Pretty dmesg output" - default BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY - depends on BUSYBOX_CONFIG_DMESG - help - If you wish to scrub the syslog level from the output, say 'Y' here. - The syslog level is a string prefixed to every line with the form - "<#>". - - With this option you will see: - # dmesg - Linux version 2.6.17.4 ..... - BIOS-provided physical RAM map: - BIOS-e820: 0000000000000000 - 000000000009f000 (usable) - - Without this option you will see: - # dmesg - <5>Linux version 2.6.17.4 ..... - <6>BIOS-provided physical RAM map: - <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable) - -config BUSYBOX_CONFIG_FBSET - bool "fbset" - default BUSYBOX_DEFAULT_FBSET - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - fbset is used to show or change the settings of a Linux frame buffer - device. The frame buffer device provides a simple and unique - interface to access a graphics display. Enable this option - if you wish to enable the 'fbset' utility. - -config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY - bool "Turn on extra fbset options" - default BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY - depends on BUSYBOX_CONFIG_FBSET - help - This option enables extended fbset options, allowing one to set the - framebuffer size, color depth, etc. interface to access a graphics - display. Enable this option if you wish to enable extended fbset - options. - -config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE - bool "Turn on fbset readmode support" - default BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE - depends on BUSYBOX_CONFIG_FBSET - help - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - The fdisk utility is used to divide hard disks into one or more - logical disks, which are generally called partitions. This utility - can be used to list and edit the set of partitions or BSD style - 'disk slices' that are defined on a hard drive. - -config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS - bool "Support over 4GB disks" - default BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS - depends on BUSYBOX_CONFIG_FDISK - depends on !BUSYBOX_CONFIG_LFS # with LFS no special code is needed - help - Enable this option to support large disks > 4GB. - -config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - bool "Write support" - default BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE - depends on BUSYBOX_CONFIG_FDISK - help - Enabling this option allows you to create or change a partition table - and write those changes out to disk. If you leave this option - disabled, you will only be able to view the partition table. - -config BUSYBOX_CONFIG_FEATURE_AIX_LABEL - bool "Support AIX disklabels" - default BUSYBOX_DEFAULT_FEATURE_AIX_LABEL - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to create or change AIX disklabels. - Most people can safely leave this option disabled. - -config BUSYBOX_CONFIG_FEATURE_SGI_LABEL - bool "Support SGI disklabels" - default BUSYBOX_DEFAULT_FEATURE_SGI_LABEL - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to create or change SGI disklabels. - Most people can safely leave this option disabled. - -config BUSYBOX_CONFIG_FEATURE_SUN_LABEL - bool "Support SUN disklabels" - default BUSYBOX_DEFAULT_FEATURE_SUN_LABEL - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to create or change SUN disklabels. - Most people can safely leave this option disabled. - -config BUSYBOX_CONFIG_FEATURE_OSF_LABEL - bool "Support BSD disklabels" - default BUSYBOX_DEFAULT_FEATURE_OSF_LABEL - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to create or change BSD disklabels - and define and edit BSD disk slices. - -config BUSYBOX_CONFIG_FEATURE_GPT_LABEL - bool "Support GPT disklabels" - default BUSYBOX_DEFAULT_FEATURE_GPT_LABEL - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to view GUID Partition Table - disklabels. - -config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED - bool "Support expert mode" - default BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE - help - Enabling this option allows you to do terribly unsafe things like - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - select BUSYBOX_CONFIG_VOLUMEID - help - 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_FREERAMDISK - bool "freeramdisk" - default BUSYBOX_DEFAULT_FREERAMDISK - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Linux allows you to create ramdisks. This utility allows you to - delete them and completely free all memory that was used for the - ramdisk. For example, if you boot Linux into a ramdisk and later - 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 - help - The minix filesystem is a nice, small, compact, read-write filesystem - with little overhead. It is not a journaling filesystem however and - can experience corruption if it is not properly unmounted or if the - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - Utility to create FAT32 filesystems. - -config BUSYBOX_CONFIG_GETOPT - bool "getopt" - default BUSYBOX_DEFAULT_GETOPT - help - The getopt utility is used to break up (parse) options in command - lines to make it easy to write complex shell scripts that also check - for legal (and illegal) options. If you want to write horribly - complex shell scripts, or use some horribly complex shell script - written by others, this utility may be for you. Most people will - wisely leave this disabled. - -config BUSYBOX_CONFIG_FEATURE_GETOPT_LONG - bool "Support option -l" - default BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG if BUSYBOX_CONFIG_LONG_OPTS - depends on BUSYBOX_CONFIG_GETOPT - help - Enable support for long options (option -l). - -config BUSYBOX_CONFIG_HEXDUMP - bool "hexdump" - default BUSYBOX_DEFAULT_HEXDUMP - help - The hexdump utility is used to display binary data in a readable - way that is comparable to the output from most hex editors. - -config BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE - bool "Support -R, reverse of 'hexdump -Cv'" - default BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE - depends on BUSYBOX_CONFIG_HEXDUMP - help - The hexdump utility is used to display binary data in an ascii - readable way. This option creates binary data from an ascii input. - NB: this option is non-standard. It's unwise to use it in scripts - aimed to be portable. - -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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - The hwclock utility is used to read and set the hardware clock - on a system. This is primarily used to set the current time on - shutdown in the hardware clock, so the hardware will keep the - correct time when Linux is _not_ running. - -config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS - bool "Support long options (--hctosys,...)" - default BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS - depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_LONG_OPTS - help - By default, the hwclock utility only uses short options. If you - are overly fond of its long options, such as --hctosys, --utc, etc) - then enable this option. - -config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS - bool "Use FHS /var/lib/hwclock/adjtime" - default BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS # util-linux-ng in Fedora 13 still uses /etc/adjtime - depends on BUSYBOX_CONFIG_HWCLOCK - help - Starting with FHS 2.3, the adjtime state file is supposed to exist - at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish - to use the FHS behavior, answer Y here, otherwise answer N for the - classic /etc/adjtime path. - - pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO - -config BUSYBOX_CONFIG_IPCRM - bool "ipcrm" - default BUSYBOX_DEFAULT_IPCRM - help - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - 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 - select BUSYBOX_CONFIG_PLATFORM_LINUX - help - 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 - #select PLATFORM_LINUX - help - lspci is a utility for displaying information about PCI buses in the - 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 - #select PLATFORM_LINUX - help - lsusb is a utility for displaying information about USB buses in the - system and devices connected to them. - - This version uses sysfs (/sys/bus/usb/devices) only. - -config BUSYBOX_CONFIG_MKSWAP - bool "mkswap" - default BUSYBOX_DEFAULT_MKSWAP - help - The mkswap utility is used to configure a file or disk partition as - Linux swap space. This allows Linux to use the entire file or - partition as if it were additional RAM, which can greatly increase - the capability of low-memory machines. This additional memory is - much slower than real RAM, but can be very helpful at preventing your - applications being killed by the Linux out of memory (OOM) killer. - Once you have created swap space using 'mkswap' you need to enable - the swap space using the 'swapon' utility. - -config BUSYBOX_CONFIG_FEATURE_MKSWAP_UUID - bool "UUID support" - default BUSYBOX_DEFAULT_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 - help - more is a simple utility which allows you to read text one screen - sized page at a time. If you want to read text that is larger than - 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_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_SWAPONOFF - bool "swaponoff" - default BUSYBOX_DEFAULT_SWAPONOFF +config BUSYBOX_CONFIG_SETARCH + bool "setarch" + default BUSYBOX_DEFAULT_SETARCH select BUSYBOX_CONFIG_PLATFORM_LINUX help - This option enables both the 'swapon' and the 'swapoff' utilities. + 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_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 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 6153314d6fc..49a57858471 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 f33c3b22e1c..00000000000 --- 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 -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 ---- - 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 ed1dcbb66ff..00000000000 --- 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 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 4825bc8a671..682a68eebd7 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 0fdaed502a1..8ef8f2211b6 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 4a9ae9813ee..f5e3a075aed 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 1e44552c132..3df8d930b1d 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 d52ea3fcc1e..fec2a3a5d03 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 b2681a17f99..476440f62a8 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 4cd25b18721..00000000000 --- 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 -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 ---- - 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 d7a38f632ec..00000000000 --- 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 -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 ---- - 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); - } -