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