busybox: update to 1.33

Remove stime backport.

Remove static libgcc patch as upstream fixed it with
BUSYBOX_DEFAULT_STATIC_LIBGCC which defauls to off.

Remove date -k patch as it no longer applies. It's also pointless as
busybox' hwclock utility can do the same thing.

Remove ntpd patch as that seems to have been applied upstream.

Add smalll patch fixing compilation with SELinux. Upstream commit
2496616b0a8d1c80cd1416b73a4847b59b9f969a renamed the variable without
renaming it in the SELinux path.

Refresh config and patches.

Config refresh:

Refresh commands, run after busybox is first built once:

  cd package/utils/busybox/config/
  ../convert_menuconfig.pl ../../../../build_dir/target-mips_24kc_musl/busybox-default/busybox-1.33.0
  cd ..
  ./convert_defaults.pl < ../../../build_dir/target-mips_24kc_musl/busybox-default/busybox-1.33.0/.config > Config-defaults.in

Manual edits needed afterward:

* Config-defaults.in:  OpenWrt config symbol IPV6 logic applied to
  BUSYBOX_DEFAULT_FEATURE_IPV6
* Config-defaults.in:  OpenWrt configTARGET_bcm53xx logic applied to
  BUSYBOX_DEFAULT_TRUNCATE (commit 547f1ec)
* editors/Config.in: Add USE_GLIBC dependency to
  BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH (commit f141090)
* shell/Config.in : change at "Options common to all shells"  the symbol
  SHELL_ASH  -->  BUSYBOX_CONFIG_SHELL_ASH
   (discussion in http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033140.html
     Apparently our script does not see the hidden option while
     prepending config options with "BUSYBOX_CONFIG_" which leads to a
     missed dependency when the options are later evaluated.)
* Edit Config.in files by adding quotes to sourced items in
  config/Config.in, networking/Config.in and util-linux/Config.in (commit 1da014f)

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[Added comments from Hannu Nyman to commit message]
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
Rosen Penev 2021-01-31 16:15:53 -08:00 committed by Hauke Mehrtens
parent 157cd0bd97
commit 0275ee5dde
31 changed files with 255 additions and 429 deletions

View File

@ -85,9 +85,6 @@ config BUSYBOX_DEFAULT_FEATURE_SYSLOG_INFO
config BUSYBOX_DEFAULT_FEATURE_SYSLOG config BUSYBOX_DEFAULT_FEATURE_SYSLOG
bool bool
default y default y
config BUSYBOX_DEFAULT_PLATFORM_LINUX
bool
default y
config BUSYBOX_DEFAULT_STATIC config BUSYBOX_DEFAULT_STATIC
bool bool
default n default n
@ -130,6 +127,9 @@ config BUSYBOX_DEFAULT_USE_PORTABLE_CODE
config BUSYBOX_DEFAULT_STACK_OPTIMIZATION_386 config BUSYBOX_DEFAULT_STACK_OPTIMIZATION_386
bool bool
default n default n
config BUSYBOX_DEFAULT_STATIC_LIBGCC
bool
default n
config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS
bool bool
default y default y
@ -169,6 +169,9 @@ config BUSYBOX_DEFAULT_UNIT_TEST
config BUSYBOX_DEFAULT_WERROR config BUSYBOX_DEFAULT_WERROR
bool bool
default n default n
config BUSYBOX_DEFAULT_WARN_SIMPLE_MSG
bool
default n
config BUSYBOX_DEFAULT_NO_DEBUG_LIB config BUSYBOX_DEFAULT_NO_DEBUG_LIB
bool bool
default y default y
@ -872,6 +875,9 @@ config BUSYBOX_DEFAULT_USLEEP
config BUSYBOX_DEFAULT_UUDECODE config BUSYBOX_DEFAULT_UUDECODE
bool bool
default n default n
config BUSYBOX_DEFAULT_BASE32
bool
default n
config BUSYBOX_DEFAULT_BASE64 config BUSYBOX_DEFAULT_BASE64
bool bool
default n default n
@ -1160,6 +1166,9 @@ config BUSYBOX_DEFAULT_FEATURE_FIND_QUIT
config BUSYBOX_DEFAULT_FEATURE_FIND_DELETE config BUSYBOX_DEFAULT_FEATURE_FIND_DELETE
bool bool
default n default n
config BUSYBOX_DEFAULT_FEATURE_FIND_EMPTY
bool
default n
config BUSYBOX_DEFAULT_FEATURE_FIND_PATH config BUSYBOX_DEFAULT_FEATURE_FIND_PATH
bool bool
default y default y
@ -1565,9 +1574,6 @@ config BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG
config BUSYBOX_DEFAULT_HEXDUMP config BUSYBOX_DEFAULT_HEXDUMP
bool bool
default y default y
config BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE
bool
default n
config BUSYBOX_DEFAULT_HD config BUSYBOX_DEFAULT_HD
bool bool
default n default n
@ -1778,6 +1784,9 @@ config BUSYBOX_DEFAULT_TASKSET
config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY
bool bool
default n default n
config BUSYBOX_DEFAULT_FEATURE_TASKSET_CPULIST
bool
default n
config BUSYBOX_DEFAULT_UEVENT config BUSYBOX_DEFAULT_UEVENT
bool bool
default n default n
@ -1814,6 +1823,9 @@ config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS
config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS
bool bool
default n default n
config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EROFS
bool
default n
config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT
bool bool
default n default n
@ -2096,6 +2108,9 @@ config BUSYBOX_DEFAULT_MAN
config BUSYBOX_DEFAULT_MICROCOM config BUSYBOX_DEFAULT_MICROCOM
bool bool
default n default n
config BUSYBOX_DEFAULT_MIM
bool
default n
config BUSYBOX_DEFAULT_MT config BUSYBOX_DEFAULT_MT
bool bool
default n default n
@ -2268,6 +2283,18 @@ config BUSYBOX_DEFAULT_FEATURE_HTTPD_PROXY
config BUSYBOX_DEFAULT_FEATURE_HTTPD_GZIP config BUSYBOX_DEFAULT_FEATURE_HTTPD_GZIP
bool bool
default n default n
config BUSYBOX_DEFAULT_FEATURE_HTTPD_ETAG
bool
default n
config BUSYBOX_DEFAULT_FEATURE_HTTPD_LAST_MODIFIED
bool
default n
config BUSYBOX_DEFAULT_FEATURE_HTTPD_DATE
bool
default n
config BUSYBOX_DEFAULT_FEATURE_HTTPD_ACL_IP
bool
default n
config BUSYBOX_DEFAULT_IFCONFIG config BUSYBOX_DEFAULT_IFCONFIG
bool bool
default y default y
@ -2892,6 +2919,9 @@ config BUSYBOX_DEFAULT_BASH_IS_HUSH
config BUSYBOX_DEFAULT_BASH_IS_NONE config BUSYBOX_DEFAULT_BASH_IS_NONE
bool bool
default y default y
config BUSYBOX_DEFAULT_SHELL_ASH
bool
default y
config BUSYBOX_DEFAULT_ASH config BUSYBOX_DEFAULT_ASH
bool bool
default y default y
@ -2952,6 +2982,9 @@ config BUSYBOX_DEFAULT_CTTYHACK
config BUSYBOX_DEFAULT_HUSH config BUSYBOX_DEFAULT_HUSH
bool bool
default n default n
config BUSYBOX_DEFAULT_SHELL_HUSH
bool
default n
config BUSYBOX_DEFAULT_HUSH_BASH_COMPAT config BUSYBOX_DEFAULT_HUSH_BASH_COMPAT
bool bool
default n default n
@ -3114,6 +3147,9 @@ config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_DUP
config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_CFG config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_CFG
bool bool
default n default n
config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS
bool
default n
config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE config BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE
int int
default 0 default 0

View File

@ -8,14 +8,14 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=busybox PKG_NAME:=busybox
PKG_VERSION:=1.31.1 PKG_VERSION:=1.33.0
PKG_RELEASE:=9 PKG_RELEASE:=1
PKG_FLAGS:=essential PKG_FLAGS:=essential
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.busybox.net/downloads \ PKG_SOURCE_URL:=https://www.busybox.net/downloads \
http://sources.buildroot.net http://sources.buildroot.net
PKG_HASH:=d0f940a72f648943c1f2211e0e3117387c31d765137d92bd8284a3fb9752a998 PKG_HASH:=d568681c91a85edc6710770cebc1e80e042ad74d305b5c2e6d57a5f3de3b8fbd
PKG_BUILD_DEPENDS:=BUSYBOX_CONFIG_PAM:libpam PKG_BUILD_DEPENDS:=BUSYBOX_CONFIG_PAM:libpam
PKG_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1

View File

@ -155,12 +155,13 @@ config BUSYBOX_CONFIG_FEATURE_PIDFILE
config BUSYBOX_CONFIG_PID_FILE_PATH config BUSYBOX_CONFIG_PID_FILE_PATH
string "Directory for pidfiles" string "Directory for pidfiles"
default BUSYBOX_DEFAULT_PID_FILE_PATH default BUSYBOX_DEFAULT_PID_FILE_PATH
depends on BUSYBOX_CONFIG_FEATURE_PIDFILE depends on BUSYBOX_CONFIG_FEATURE_PIDFILE || BUSYBOX_CONFIG_FEATURE_CROND_SPECIAL_TIMES
help help
This is the default path where pidfiles are created. Applets which This is the default path where pidfiles are created. Applets which
allow you to set the pidfile path on the command line will override allow you to set the pidfile path on the command line will override
this value. The option has no effect on applets that require you to this value. The option has no effect on applets that require you to
specify a pidfile path. specify a pidfile path. When crond has the 'Support special times'
option enabled, the 'crond.reboot' file is also stored here.
config BUSYBOX_CONFIG_BUSYBOX config BUSYBOX_CONFIG_BUSYBOX
bool "Include busybox applet" bool "Include busybox applet"
@ -310,7 +311,6 @@ config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH
config BUSYBOX_CONFIG_SELINUX config BUSYBOX_CONFIG_SELINUX
bool "Support NSA Security Enhanced Linux" bool "Support NSA Security Enhanced Linux"
default BUSYBOX_DEFAULT_SELINUX default BUSYBOX_DEFAULT_SELINUX
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Enable support for SELinux in applets ls, ps, and id. Also provide Enable support for SELinux in applets ls, ps, and id. Also provide
the option of compiling in SELinux applets. the option of compiling in SELinux applets.
@ -356,17 +356,6 @@ config BUSYBOX_CONFIG_FEATURE_SYSLOG
#This option is auto-selected when you select any applet which may #This option is auto-selected when you select any applet which may
#send its output to syslog. You do not need to select it manually. #send its output to syslog. You do not need to select it manually.
config BUSYBOX_CONFIG_PLATFORM_LINUX
bool #No description makes it a hidden option
default BUSYBOX_DEFAULT_PLATFORM_LINUX
#help
#For the most part, busybox requires only POSIX compatibility
#from the target system, but some applets and features use
#Linux-specific interfaces.
#
#This is automatically selected if any applet or feature requires
#Linux-specific interfaces. You do not need to select it manually.
comment 'Build Options' comment 'Build Options'
config BUSYBOX_CONFIG_STATIC config BUSYBOX_CONFIG_STATIC
@ -539,6 +528,14 @@ config BUSYBOX_CONFIG_STACK_OPTIMIZATION_386
do not work with it (they use SSE instructions without do not work with it (they use SSE instructions without
ensuring stack alignment). ensuring stack alignment).
config BUSYBOX_CONFIG_STATIC_LIBGCC
bool "Use -static-libgcc"
default BUSYBOX_DEFAULT_STATIC_LIBGCC
help
This option instructs gcc to link in a static version of its
support library, libgcc. This means that the binary will require
one fewer dynamic library at run time.
comment 'Installation Options ("make install" behavior)' comment 'Installation Options ("make install" behavior)'
choice choice
@ -660,6 +657,19 @@ config BUSYBOX_CONFIG_WERROR
Most people should answer N. Most people should answer N.
config BUSYBOX_CONFIG_WARN_SIMPLE_MSG
bool "Warn about single parameter bb_xx_msg calls"
default BUSYBOX_DEFAULT_WARN_SIMPLE_MSG
help
This will cause warnings to be shown for any instances of
bb_error_msg(), bb_error_msg_and_die(), bb_perror_msg(),
bb_perror_msg_and_die(), bb_herror_msg() or bb_herror_msg_and_die()
being called with a single parameter. In these cases the equivalent
bb_simple_xx_msg function should be used instead.
Note that use of STRERROR_FMT may give false positives.
If you aren't developing busybox, say N here.
choice choice
prompt "Additional debugging library" prompt "Additional debugging library"
default BUSYBOX_CONFIG_NO_DEBUG_LIB default BUSYBOX_CONFIG_NO_DEBUG_LIB

View File

@ -256,7 +256,7 @@ config BUSYBOX_CONFIG_FEATURE_GZIP_LEVELS
help help
Enable support for compression levels 4-9. The default level Enable support for compression levels 4-9. The default level
is 6. If levels 1-3 are specified, 4 is used. is 6. If levels 1-3 are specified, 4 is used.
If this option is not selected, -N options are ignored and -9 If this option is not selected, -N options are ignored and -6
is used. is used.
config BUSYBOX_CONFIG_FEATURE_GZIP_DECOMPRESS config BUSYBOX_CONFIG_FEATURE_GZIP_DECOMPRESS

View File

@ -9,7 +9,6 @@ menu "Console Utilities"
config BUSYBOX_CONFIG_CHVT config BUSYBOX_CONFIG_CHVT
bool "chvt (2 kb)" bool "chvt (2 kb)"
default BUSYBOX_DEFAULT_CHVT default BUSYBOX_DEFAULT_CHVT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program is used to change to another terminal. This program is used to change to another terminal.
Example: chvt 4 (change to terminal /dev/tty4) Example: chvt 4 (change to terminal /dev/tty4)
@ -21,39 +20,33 @@ config BUSYBOX_CONFIG_CLEAR
config BUSYBOX_CONFIG_DEALLOCVT config BUSYBOX_CONFIG_DEALLOCVT
bool "deallocvt (1.9 kb)" bool "deallocvt (1.9 kb)"
default BUSYBOX_DEFAULT_DEALLOCVT default BUSYBOX_DEFAULT_DEALLOCVT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program deallocates unused virtual consoles. This program deallocates unused virtual consoles.
config BUSYBOX_CONFIG_DUMPKMAP config BUSYBOX_CONFIG_DUMPKMAP
bool "dumpkmap (1.6 kb)" bool "dumpkmap (1.6 kb)"
default BUSYBOX_DEFAULT_DUMPKMAP default BUSYBOX_DEFAULT_DUMPKMAP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program dumps the kernel's keyboard translation table to This program dumps the kernel's keyboard translation table to
stdout, in binary format. You can then use loadkmap to load it. stdout, in binary format. You can then use loadkmap to load it.
config BUSYBOX_CONFIG_FGCONSOLE config BUSYBOX_CONFIG_FGCONSOLE
bool "fgconsole (1.5 kb)" bool "fgconsole (1.5 kb)"
default BUSYBOX_DEFAULT_FGCONSOLE default BUSYBOX_DEFAULT_FGCONSOLE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program prints active (foreground) console number. This program prints active (foreground) console number.
config BUSYBOX_CONFIG_KBD_MODE config BUSYBOX_CONFIG_KBD_MODE
bool "kbd_mode (4.1 kb)" bool "kbd_mode (4.1 kb)"
default BUSYBOX_DEFAULT_KBD_MODE default BUSYBOX_DEFAULT_KBD_MODE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program reports and sets keyboard mode. This program reports and sets keyboard mode.
config BUSYBOX_CONFIG_LOADFONT config BUSYBOX_CONFIG_LOADFONT
bool "loadfont (5.2 kb)" bool "loadfont (5.2 kb)"
default BUSYBOX_DEFAULT_LOADFONT default BUSYBOX_DEFAULT_LOADFONT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program loads a console font from standard input. This program loads a console font from standard input.
config BUSYBOX_CONFIG_SETFONT config BUSYBOX_CONFIG_SETFONT
bool "setfont (24 kb)" bool "setfont (24 kb)"
default BUSYBOX_DEFAULT_SETFONT default BUSYBOX_DEFAULT_SETFONT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Allows to load console screen map. Useful for i18n. Allows to load console screen map. Useful for i18n.
@ -87,14 +80,12 @@ config BUSYBOX_CONFIG_FEATURE_LOADFONT_RAW
config BUSYBOX_CONFIG_LOADKMAP config BUSYBOX_CONFIG_LOADKMAP
bool "loadkmap (1.8 kb)" bool "loadkmap (1.8 kb)"
default BUSYBOX_DEFAULT_LOADKMAP default BUSYBOX_DEFAULT_LOADKMAP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program loads a keyboard translation table from This program loads a keyboard translation table from
standard input. standard input.
config BUSYBOX_CONFIG_OPENVT config BUSYBOX_CONFIG_OPENVT
bool "openvt (7.2 kb)" bool "openvt (7.2 kb)"
default BUSYBOX_DEFAULT_OPENVT default BUSYBOX_DEFAULT_OPENVT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program is used to start a command on an unused This program is used to start a command on an unused
virtual terminal. virtual terminal.
@ -123,7 +114,6 @@ config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT
config BUSYBOX_CONFIG_SETCONSOLE config BUSYBOX_CONFIG_SETCONSOLE
bool "setconsole (3.6 kb)" bool "setconsole (3.6 kb)"
default BUSYBOX_DEFAULT_SETCONSOLE default BUSYBOX_DEFAULT_SETCONSOLE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Redirect writes to /dev/console to another device, Redirect writes to /dev/console to another device,
like the current tty while logged in via telnet. like the current tty while logged in via telnet.
@ -137,20 +127,17 @@ config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS
config BUSYBOX_CONFIG_SETKEYCODES config BUSYBOX_CONFIG_SETKEYCODES
bool "setkeycodes (2.1 kb)" bool "setkeycodes (2.1 kb)"
default BUSYBOX_DEFAULT_SETKEYCODES default BUSYBOX_DEFAULT_SETKEYCODES
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program loads entries into the kernel's scancode-to-keycode This program loads entries into the kernel's scancode-to-keycode
map, allowing unusual keyboards to generate usable keycodes. map, allowing unusual keyboards to generate usable keycodes.
config BUSYBOX_CONFIG_SETLOGCONS config BUSYBOX_CONFIG_SETLOGCONS
bool "setlogcons (1.8 kb)" bool "setlogcons (1.8 kb)"
default BUSYBOX_DEFAULT_SETLOGCONS default BUSYBOX_DEFAULT_SETLOGCONS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This program redirects the output console of kernel messages. This program redirects the output console of kernel messages.
config BUSYBOX_CONFIG_SHOWKEY config BUSYBOX_CONFIG_SHOWKEY
bool "showkey (4.7 kb)" bool "showkey (4.7 kb)"
default BUSYBOX_DEFAULT_SHOWKEY default BUSYBOX_DEFAULT_SHOWKEY
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Shows keys pressed. Shows keys pressed.

View File

@ -110,12 +110,10 @@ config BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT
Enable option (-I) to output an ISO-8601 compliant Enable option (-I) to output an ISO-8601 compliant
date/time string. date/time string.
# defaults to "no": stat's nanosecond field is a bit non-portable
config BUSYBOX_CONFIG_FEATURE_DATE_NANO config BUSYBOX_CONFIG_FEATURE_DATE_NANO
bool "Support %[num]N nanosecond format specifier" bool "Support %[num]N nanosecond format specifier"
default BUSYBOX_DEFAULT_FEATURE_DATE_NANO # syscall(__NR_clock_gettime) default BUSYBOX_DEFAULT_FEATURE_DATE_NANO # stat's nanosecond field is a bit non-portable
depends on BUSYBOX_CONFIG_DATE depends on BUSYBOX_CONFIG_DATE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Support %[num]N format specifier. Adds ~250 bytes of code. Support %[num]N format specifier. Adds ~250 bytes of code.
@ -636,7 +634,6 @@ config BUSYBOX_CONFIG_FEATURE_STAT_FILESYSTEM
bool "Enable display of filesystem status (-f)" bool "Enable display of filesystem status (-f)"
default BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM default BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM
depends on BUSYBOX_CONFIG_STAT depends on BUSYBOX_CONFIG_STAT
select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs()
help help
Without this, stat will not support the '-f' option to display Without this, stat will not support the '-f' option to display
information about filesystem status. information about filesystem status.
@ -837,6 +834,11 @@ config BUSYBOX_CONFIG_UUDECODE
default BUSYBOX_DEFAULT_UUDECODE default BUSYBOX_DEFAULT_UUDECODE
help help
uudecode is used to decode a uuencoded file. uudecode is used to decode a uuencoded file.
config BUSYBOX_CONFIG_BASE32
bool "base32 (4.9 kb)"
default BUSYBOX_DEFAULT_BASE32
help
Base32 encode and decode
config BUSYBOX_CONFIG_BASE64 config BUSYBOX_CONFIG_BASE64
bool "base64 (4.9 kb)" bool "base64 (4.9 kb)"
default BUSYBOX_DEFAULT_BASE64 default BUSYBOX_DEFAULT_BASE64

View File

@ -21,7 +21,6 @@ config BUSYBOX_CONFIG_FSCK
config BUSYBOX_CONFIG_LSATTR config BUSYBOX_CONFIG_LSATTR
bool "lsattr (5.5 kb)" bool "lsattr (5.5 kb)"
default BUSYBOX_DEFAULT_LSATTR default BUSYBOX_DEFAULT_LSATTR
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
lsattr lists the file attributes on a second extended file system. lsattr lists the file attributes on a second extended file system.
config BUSYBOX_CONFIG_TUNE2FS config BUSYBOX_CONFIG_TUNE2FS

View File

@ -159,6 +159,14 @@ config BUSYBOX_CONFIG_FEATURE_FIND_DELETE
WARNING: This option can do much harm if used wrong. Busybox will not WARNING: This option can do much harm if used wrong. Busybox will not
try to protect the user from doing stupid things. Use with care. try to protect the user from doing stupid things. Use with care.
config BUSYBOX_CONFIG_FEATURE_FIND_EMPTY
bool "Enable -empty: match empty files or directories"
default BUSYBOX_DEFAULT_FEATURE_FIND_EMPTY
depends on BUSYBOX_CONFIG_FIND
help
Support the 'find -empty' option to find empty regular files
or directories.
config BUSYBOX_CONFIG_FEATURE_FIND_PATH config BUSYBOX_CONFIG_FEATURE_FIND_PATH
bool "Enable -path: match pathname with shell pattern" bool "Enable -path: match pathname with shell pattern"
default BUSYBOX_DEFAULT_FEATURE_FIND_PATH default BUSYBOX_DEFAULT_FEATURE_FIND_PATH

View File

@ -24,7 +24,6 @@ config BUSYBOX_CONFIG_RESUME
config BUSYBOX_CONFIG_RUN_INIT config BUSYBOX_CONFIG_RUN_INIT
bool "run-init (7.7 kb)" bool "run-init (7.7 kb)"
default BUSYBOX_DEFAULT_RUN_INIT default BUSYBOX_DEFAULT_RUN_INIT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The run-init utility is used from initramfs to select a new The run-init utility is used from initramfs to select a new
root device. Under initramfs, you have to use this instead of root device. Under initramfs, you have to use this instead of

View File

@ -390,7 +390,6 @@ config BUSYBOX_CONFIG_FEATURE_VERBOSE_CP_MESSAGE
config BUSYBOX_CONFIG_FEATURE_USE_SENDFILE config BUSYBOX_CONFIG_FEATURE_USE_SENDFILE
bool "Use sendfile system call" bool "Use sendfile system call"
default BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE default BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
When enabled, busybox will use the kernel sendfile() function When enabled, busybox will use the kernel sendfile() function
instead of read/write loops to copy data between file descriptors instead of read/write loops to copy data between file descriptors
@ -432,7 +431,6 @@ config BUSYBOX_CONFIG_FEATURE_SKIP_ROOTFS
config BUSYBOX_CONFIG_MONOTONIC_SYSCALL config BUSYBOX_CONFIG_MONOTONIC_SYSCALL
bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" bool "Use clock_gettime(CLOCK_MONOTONIC) syscall"
default BUSYBOX_DEFAULT_MONOTONIC_SYSCALL default BUSYBOX_DEFAULT_MONOTONIC_SYSCALL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring
time intervals (time, ping, traceroute etc need this). time intervals (time, ping, traceroute etc need this).

View File

@ -9,7 +9,6 @@ menu "Miscellaneous Utilities"
config BUSYBOX_CONFIG_ADJTIMEX config BUSYBOX_CONFIG_ADJTIMEX
bool "adjtimex (4.7 kb)" bool "adjtimex (4.7 kb)"
default BUSYBOX_DEFAULT_ADJTIMEX default BUSYBOX_DEFAULT_ADJTIMEX
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Adjtimex reads and optionally sets adjustment parameters for Adjtimex reads and optionally sets adjustment parameters for
the Linux clock adjustment algorithm. the Linux clock adjustment algorithm.
@ -122,7 +121,6 @@ endif
config BUSYBOX_CONFIG_BEEP config BUSYBOX_CONFIG_BEEP
bool "beep (2.4 kb)" bool "beep (2.4 kb)"
default BUSYBOX_DEFAULT_BEEP default BUSYBOX_DEFAULT_BEEP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The beep applets beeps in a given freq/Hz. The beep applets beeps in a given freq/Hz.
@ -210,7 +208,6 @@ config BUSYBOX_CONFIG_FEATURE_CHAT_CLR_ABORT
config BUSYBOX_CONFIG_CONSPY config BUSYBOX_CONFIG_CONSPY
bool "conspy (10 kb)" bool "conspy (10 kb)"
default BUSYBOX_DEFAULT_CONSPY default BUSYBOX_DEFAULT_CONSPY
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
A text-mode VNC like program for Linux virtual terminals. A text-mode VNC like program for Linux virtual terminals.
example: conspy NUM shared access to console num example: conspy NUM shared access to console num
@ -276,7 +273,6 @@ config BUSYBOX_CONFIG_CRONTAB
config BUSYBOX_CONFIG_DEVFSD config BUSYBOX_CONFIG_DEVFSD
bool "devfsd (obsolete)" bool "devfsd (obsolete)"
default BUSYBOX_DEFAULT_DEVFSD default BUSYBOX_DEFAULT_DEVFSD
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_FEATURE_SYSLOG select BUSYBOX_CONFIG_FEATURE_SYSLOG
help help
This is deprecated and should NOT be used anymore. This is deprecated and should NOT be used anymore.
@ -319,7 +315,6 @@ config BUSYBOX_CONFIG_DEVFSD_VERBOSE
config BUSYBOX_CONFIG_FEATURE_DEVFS config BUSYBOX_CONFIG_FEATURE_DEVFS
bool "Use devfs names for all devices (obsolete)" bool "Use devfs names for all devices (obsolete)"
default BUSYBOX_DEFAULT_FEATURE_DEVFS default BUSYBOX_DEFAULT_FEATURE_DEVFS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
This is obsolete and should NOT be used anymore. This is obsolete and should NOT be used anymore.
Use linux >= 2.6 (optionally with hotplug) and mdev instead! Use linux >= 2.6 (optionally with hotplug) and mdev instead!
@ -337,7 +332,6 @@ config BUSYBOX_CONFIG_DEVMEM
config BUSYBOX_CONFIG_FBSPLASH config BUSYBOX_CONFIG_FBSPLASH
bool "fbsplash (26 kb)" bool "fbsplash (26 kb)"
default BUSYBOX_DEFAULT_FBSPLASH default BUSYBOX_DEFAULT_FBSPLASH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Shows splash image and progress bar on framebuffer device. Shows splash image and progress bar on framebuffer device.
Can be used during boot phase of an embedded device. Can be used during boot phase of an embedded device.
@ -383,7 +377,6 @@ config BUSYBOX_CONFIG_FLASHCP
config BUSYBOX_CONFIG_HDPARM config BUSYBOX_CONFIG_HDPARM
bool "hdparm (25 kb)" bool "hdparm (25 kb)"
default BUSYBOX_DEFAULT_HDPARM default BUSYBOX_DEFAULT_HDPARM
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Get/Set hard drive parameters. Primarily intended for ATA Get/Set hard drive parameters. Primarily intended for ATA
drives. drives.
@ -445,35 +438,30 @@ config BUSYBOX_CONFIG_HEXEDIT
config BUSYBOX_CONFIG_I2CGET config BUSYBOX_CONFIG_I2CGET
bool "i2cget (5.5 kb)" bool "i2cget (5.5 kb)"
default BUSYBOX_DEFAULT_I2CGET default BUSYBOX_DEFAULT_I2CGET
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Read from I2C/SMBus chip registers. Read from I2C/SMBus chip registers.
config BUSYBOX_CONFIG_I2CSET config BUSYBOX_CONFIG_I2CSET
bool "i2cset (6.7 kb)" bool "i2cset (6.7 kb)"
default BUSYBOX_DEFAULT_I2CSET default BUSYBOX_DEFAULT_I2CSET
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Set I2C registers. Set I2C registers.
config BUSYBOX_CONFIG_I2CDUMP config BUSYBOX_CONFIG_I2CDUMP
bool "i2cdump (7.1 kb)" bool "i2cdump (7.1 kb)"
default BUSYBOX_DEFAULT_I2CDUMP default BUSYBOX_DEFAULT_I2CDUMP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Examine I2C registers. Examine I2C registers.
config BUSYBOX_CONFIG_I2CDETECT config BUSYBOX_CONFIG_I2CDETECT
bool "i2cdetect (7.1 kb)" bool "i2cdetect (7.1 kb)"
default BUSYBOX_DEFAULT_I2CDETECT default BUSYBOX_DEFAULT_I2CDETECT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Detect I2C chips. Detect I2C chips.
config BUSYBOX_CONFIG_I2CTRANSFER config BUSYBOX_CONFIG_I2CTRANSFER
bool "i2ctransfer (4.0 kb)" bool "i2ctransfer (4.0 kb)"
default BUSYBOX_DEFAULT_I2CTRANSFER default BUSYBOX_DEFAULT_I2CTRANSFER
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Send user-defined I2C messages in one transfer. Send user-defined I2C messages in one transfer.
@ -587,7 +575,6 @@ config BUSYBOX_CONFIG_LOCK
config BUSYBOX_CONFIG_LSSCSI config BUSYBOX_CONFIG_LSSCSI
bool "lsscsi (2.5 kb)" bool "lsscsi (2.5 kb)"
default BUSYBOX_DEFAULT_LSSCSI default BUSYBOX_DEFAULT_LSSCSI
#select PLATFORM_LINUX
help help
lsscsi is a utility for displaying information about SCSI buses in the lsscsi is a utility for displaying information about SCSI buses in the
system and devices connected to them. system and devices connected to them.
@ -634,6 +621,13 @@ config BUSYBOX_CONFIG_MICROCOM
default BUSYBOX_DEFAULT_MICROCOM default BUSYBOX_DEFAULT_MICROCOM
help help
The poor man's minicom utility for chatting with serial port devices. The poor man's minicom utility for chatting with serial port devices.
config BUSYBOX_CONFIG_MIM
bool "mim (0.5 kb)"
default BUSYBOX_DEFAULT_MIM
depends on BUSYBOX_CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS
help
Run a script from a Makefile-like specification file.
Unlike 'make' dependencies aren't supported.
config BUSYBOX_CONFIG_MT config BUSYBOX_CONFIG_MT
bool "mt (2.5 kb)" bool "mt (2.5 kb)"
default BUSYBOX_DEFAULT_MT default BUSYBOX_DEFAULT_MT
@ -644,26 +638,22 @@ config BUSYBOX_CONFIG_MT
config BUSYBOX_CONFIG_NANDWRITE config BUSYBOX_CONFIG_NANDWRITE
bool "nandwrite (4.8 kb)" bool "nandwrite (4.8 kb)"
default BUSYBOX_DEFAULT_NANDWRITE default BUSYBOX_DEFAULT_NANDWRITE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Write to the specified MTD device, with bad blocks awareness Write to the specified MTD device, with bad blocks awareness
config BUSYBOX_CONFIG_NANDDUMP config BUSYBOX_CONFIG_NANDDUMP
bool "nanddump (5.2 kb)" bool "nanddump (5.2 kb)"
default BUSYBOX_DEFAULT_NANDDUMP default BUSYBOX_DEFAULT_NANDDUMP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Dump the content of raw NAND chip Dump the content of raw NAND chip
config BUSYBOX_CONFIG_PARTPROBE config BUSYBOX_CONFIG_PARTPROBE
bool "partprobe (3.5 kb)" bool "partprobe (3.5 kb)"
default BUSYBOX_DEFAULT_PARTPROBE default BUSYBOX_DEFAULT_PARTPROBE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Ask kernel to rescan partition table. Ask kernel to rescan partition table.
config BUSYBOX_CONFIG_RAIDAUTORUN config BUSYBOX_CONFIG_RAIDAUTORUN
bool "raidautorun (1.3 kb)" bool "raidautorun (1.3 kb)"
default BUSYBOX_DEFAULT_RAIDAUTORUN default BUSYBOX_DEFAULT_RAIDAUTORUN
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
raidautorun tells the kernel md driver to raidautorun tells the kernel md driver to
search and start RAID arrays. search and start RAID arrays.
@ -671,7 +661,6 @@ config BUSYBOX_CONFIG_READAHEAD
bool "readahead (1.5 kb)" bool "readahead (1.5 kb)"
default BUSYBOX_DEFAULT_READAHEAD default BUSYBOX_DEFAULT_READAHEAD
depends on BUSYBOX_CONFIG_LFS depends on BUSYBOX_CONFIG_LFS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Preload the files listed on the command line into RAM cache so that Preload the files listed on the command line into RAM cache so that
subsequent reads on these files will not block on disk I/O. subsequent reads on these files will not block on disk I/O.
@ -687,7 +676,6 @@ config BUSYBOX_CONFIG_READAHEAD
config BUSYBOX_CONFIG_RFKILL config BUSYBOX_CONFIG_RFKILL
bool "rfkill (4.4 kb)" bool "rfkill (4.4 kb)"
default BUSYBOX_DEFAULT_RFKILL # doesn't build on Ubuntu 9.04 default BUSYBOX_DEFAULT_RFKILL # doesn't build on Ubuntu 9.04
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Enable/disable wireless devices. Enable/disable wireless devices.
@ -708,7 +696,6 @@ config BUSYBOX_CONFIG_RUNLEVEL
config BUSYBOX_CONFIG_RX config BUSYBOX_CONFIG_RX
bool "rx (2.9 kb)" bool "rx (2.9 kb)"
default BUSYBOX_DEFAULT_RX default BUSYBOX_DEFAULT_RX
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Receive files using the Xmodem protocol. Receive files using the Xmodem protocol.
config BUSYBOX_CONFIG_SETFATTR config BUSYBOX_CONFIG_SETFATTR
@ -719,7 +706,6 @@ config BUSYBOX_CONFIG_SETFATTR
config BUSYBOX_CONFIG_SETSERIAL config BUSYBOX_CONFIG_SETSERIAL
bool "setserial (6.9 kb)" bool "setserial (6.9 kb)"
default BUSYBOX_DEFAULT_SETSERIAL default BUSYBOX_DEFAULT_SETSERIAL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Retrieve or set Linux serial port. Retrieve or set Linux serial port.
config BUSYBOX_CONFIG_STRINGS config BUSYBOX_CONFIG_STRINGS
@ -749,48 +735,41 @@ config BUSYBOX_CONFIG_TTYSIZE
config BUSYBOX_CONFIG_UBIATTACH config BUSYBOX_CONFIG_UBIATTACH
bool "ubiattach (4.2 kb)" bool "ubiattach (4.2 kb)"
default BUSYBOX_DEFAULT_UBIATTACH default BUSYBOX_DEFAULT_UBIATTACH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Attach MTD device to an UBI device. Attach MTD device to an UBI device.
config BUSYBOX_CONFIG_UBIDETACH config BUSYBOX_CONFIG_UBIDETACH
bool "ubidetach (4.1 kb)" bool "ubidetach (4.1 kb)"
default BUSYBOX_DEFAULT_UBIDETACH default BUSYBOX_DEFAULT_UBIDETACH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Detach MTD device from an UBI device. Detach MTD device from an UBI device.
config BUSYBOX_CONFIG_UBIMKVOL config BUSYBOX_CONFIG_UBIMKVOL
bool "ubimkvol (5.3 kb)" bool "ubimkvol (5.3 kb)"
default BUSYBOX_DEFAULT_UBIMKVOL default BUSYBOX_DEFAULT_UBIMKVOL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Create a UBI volume. Create a UBI volume.
config BUSYBOX_CONFIG_UBIRMVOL config BUSYBOX_CONFIG_UBIRMVOL
bool "ubirmvol (4.9 kb)" bool "ubirmvol (4.9 kb)"
default BUSYBOX_DEFAULT_UBIRMVOL default BUSYBOX_DEFAULT_UBIRMVOL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Delete a UBI volume. Delete a UBI volume.
config BUSYBOX_CONFIG_UBIRSVOL config BUSYBOX_CONFIG_UBIRSVOL
bool "ubirsvol (4.2 kb)" bool "ubirsvol (4.2 kb)"
default BUSYBOX_DEFAULT_UBIRSVOL default BUSYBOX_DEFAULT_UBIRSVOL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Resize a UBI volume. Resize a UBI volume.
config BUSYBOX_CONFIG_UBIUPDATEVOL config BUSYBOX_CONFIG_UBIUPDATEVOL
bool "ubiupdatevol (5.2 kb)" bool "ubiupdatevol (5.2 kb)"
default BUSYBOX_DEFAULT_UBIUPDATEVOL default BUSYBOX_DEFAULT_UBIUPDATEVOL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Update a UBI volume. Update a UBI volume.
config BUSYBOX_CONFIG_UBIRENAME config BUSYBOX_CONFIG_UBIRENAME
bool "ubirename (2.4 kb)" bool "ubirename (2.4 kb)"
default BUSYBOX_DEFAULT_UBIRENAME default BUSYBOX_DEFAULT_UBIRENAME
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Utility to rename UBI volumes Utility to rename UBI volumes
config BUSYBOX_CONFIG_VOLNAME config BUSYBOX_CONFIG_VOLNAME
@ -801,7 +780,6 @@ config BUSYBOX_CONFIG_VOLNAME
config BUSYBOX_CONFIG_WATCHDOG config BUSYBOX_CONFIG_WATCHDOG
bool "watchdog (5.3 kb)" bool "watchdog (5.3 kb)"
default BUSYBOX_DEFAULT_WATCHDOG default BUSYBOX_DEFAULT_WATCHDOG
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The watchdog utility is used with hardware or software watchdog The watchdog utility is used with hardware or software watchdog
device drivers. It opens the specified watchdog device special file device drivers. It opens the specified watchdog device special file

View File

@ -37,7 +37,6 @@ config BUSYBOX_CONFIG_MODPROBE_SMALL
config BUSYBOX_CONFIG_DEPMOD config BUSYBOX_CONFIG_DEPMOD
bool "depmod (27 kb)" bool "depmod (27 kb)"
default BUSYBOX_DEFAULT_DEPMOD default BUSYBOX_DEFAULT_DEPMOD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
depmod generates modules.dep (and potentially modules.alias depmod generates modules.dep (and potentially modules.alias
and modules.symbols) that contain dependency information and modules.symbols) that contain dependency information
@ -45,13 +44,11 @@ config BUSYBOX_CONFIG_DEPMOD
config BUSYBOX_CONFIG_INSMOD config BUSYBOX_CONFIG_INSMOD
bool "insmod (22 kb)" bool "insmod (22 kb)"
default BUSYBOX_DEFAULT_INSMOD default BUSYBOX_DEFAULT_INSMOD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
insmod is used to load specified modules in the running kernel. insmod is used to load specified modules in the running kernel.
config BUSYBOX_CONFIG_LSMOD config BUSYBOX_CONFIG_LSMOD
bool "lsmod (1.9 kb)" bool "lsmod (1.9 kb)"
default BUSYBOX_DEFAULT_LSMOD default BUSYBOX_DEFAULT_LSMOD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
lsmod is used to display a list of loaded modules. lsmod is used to display a list of loaded modules.
@ -66,13 +63,11 @@ config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
config BUSYBOX_CONFIG_MODINFO config BUSYBOX_CONFIG_MODINFO
bool "modinfo (24 kb)" bool "modinfo (24 kb)"
default BUSYBOX_DEFAULT_MODINFO default BUSYBOX_DEFAULT_MODINFO
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Show information about a Linux Kernel module Show information about a Linux Kernel module
config BUSYBOX_CONFIG_MODPROBE config BUSYBOX_CONFIG_MODPROBE
bool "modprobe (28 kb)" bool "modprobe (28 kb)"
default BUSYBOX_DEFAULT_MODPROBE default BUSYBOX_DEFAULT_MODPROBE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Handle the loading of modules, and their dependencies on a high Handle the loading of modules, and their dependencies on a high
level. level.
@ -90,7 +85,6 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST
config BUSYBOX_CONFIG_RMMOD config BUSYBOX_CONFIG_RMMOD
bool "rmmod (3.3 kb)" bool "rmmod (3.3 kb)"
default BUSYBOX_DEFAULT_RMMOD default BUSYBOX_DEFAULT_RMMOD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
rmmod is used to unload specified modules from the kernel. rmmod is used to unload specified modules from the kernel.

View File

@ -61,19 +61,16 @@ config BUSYBOX_CONFIG_FEATURE_TLS_SHA1
config BUSYBOX_CONFIG_ARP config BUSYBOX_CONFIG_ARP
bool "arp (10 kb)" bool "arp (10 kb)"
default BUSYBOX_DEFAULT_ARP default BUSYBOX_DEFAULT_ARP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Manipulate the system ARP cache. Manipulate the system ARP cache.
config BUSYBOX_CONFIG_ARPING config BUSYBOX_CONFIG_ARPING
bool "arping (9 kb)" bool "arping (9 kb)"
default BUSYBOX_DEFAULT_ARPING default BUSYBOX_DEFAULT_ARPING
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Ping hosts by ARP packets. Ping hosts by ARP packets.
config BUSYBOX_CONFIG_BRCTL config BUSYBOX_CONFIG_BRCTL
bool "brctl (4.7 kb)" bool "brctl (4.7 kb)"
default BUSYBOX_DEFAULT_BRCTL default BUSYBOX_DEFAULT_BRCTL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Manage ethernet bridges. Manage ethernet bridges.
Supports addbr/delbr and addif/delif. Supports addbr/delbr and addif/delif.
@ -104,7 +101,6 @@ config BUSYBOX_CONFIG_DNSD
config BUSYBOX_CONFIG_ETHER_WAKE config BUSYBOX_CONFIG_ETHER_WAKE
bool "ether-wake (4.9 kb)" bool "ether-wake (4.9 kb)"
default BUSYBOX_DEFAULT_ETHER_WAKE default BUSYBOX_DEFAULT_ETHER_WAKE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Send a magic packet to wake up sleeping machines. Send a magic packet to wake up sleeping machines.
config BUSYBOX_CONFIG_FTPD config BUSYBOX_CONFIG_FTPD
@ -289,10 +285,47 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_GZIP
help help
Makes httpd send files using GZIP content encoding if the Makes httpd send files using GZIP content encoding if the
client supports it and a pre-compressed <file>.gz exists. client supports it and a pre-compressed <file>.gz exists.
config BUSYBOX_CONFIG_FEATURE_HTTPD_ETAG
bool "Support caching via ETag header"
default BUSYBOX_DEFAULT_FEATURE_HTTPD_ETAG
depends on BUSYBOX_CONFIG_HTTPD
help
If server responds with ETag then next time client (browser)
resend it via If-None-Match header.
Then httpd will check if file wasn't modified and if not,
return 304 Not Modified status code.
The ETag value is constructed from last modification date
in unix epoch, and size: "hex(last_mod)-hex(file_size)".
It's not completely reliable as hash functions but fair enough.
config BUSYBOX_CONFIG_FEATURE_HTTPD_LAST_MODIFIED
bool "Add Last-Modified header to response"
default BUSYBOX_DEFAULT_FEATURE_HTTPD_LAST_MODIFIED
depends on BUSYBOX_CONFIG_HTTPD
help
The Last-Modified header is used for cache validation.
The client sends last seen mtime to server in If-Modified-Since.
Both headers MUST be an RFC 1123 formatted, which is hard to parse.
Use ETag header instead.
config BUSYBOX_CONFIG_FEATURE_HTTPD_DATE
bool "Add Date header to response"
default BUSYBOX_DEFAULT_FEATURE_HTTPD_DATE
depends on BUSYBOX_CONFIG_HTTPD
help
RFC2616 says that server MUST add Date header to response.
But it is almost useless and can be omitted.
config BUSYBOX_CONFIG_FEATURE_HTTPD_ACL_IP
bool "ACL IP"
default BUSYBOX_DEFAULT_FEATURE_HTTPD_ACL_IP
depends on BUSYBOX_CONFIG_HTTPD
help
Support IP deny/allow rules
config BUSYBOX_CONFIG_IFCONFIG config BUSYBOX_CONFIG_IFCONFIG
bool "ifconfig (12 kb)" bool "ifconfig (12 kb)"
default BUSYBOX_DEFAULT_IFCONFIG default BUSYBOX_DEFAULT_IFCONFIG
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Ifconfig is used to configure the kernel-resident network interfaces. Ifconfig is used to configure the kernel-resident network interfaces.
@ -339,14 +372,12 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
config BUSYBOX_CONFIG_IFENSLAVE config BUSYBOX_CONFIG_IFENSLAVE
bool "ifenslave (13 kb)" bool "ifenslave (13 kb)"
default BUSYBOX_DEFAULT_IFENSLAVE default BUSYBOX_DEFAULT_IFENSLAVE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Userspace application to bind several interfaces Userspace application to bind several interfaces
to a logical interface (use with kernel bonding driver). to a logical interface (use with kernel bonding driver).
config BUSYBOX_CONFIG_IFPLUGD config BUSYBOX_CONFIG_IFPLUGD
bool "ifplugd (10 kb)" bool "ifplugd (10 kb)"
default BUSYBOX_DEFAULT_IFPLUGD default BUSYBOX_DEFAULT_IFPLUGD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Network interface plug detection daemon. Network interface plug detection daemon.
config BUSYBOX_CONFIG_IFUP config BUSYBOX_CONFIG_IFUP
@ -498,7 +529,6 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC
config BUSYBOX_CONFIG_IP config BUSYBOX_CONFIG_IP
bool "ip (35 kb)" bool "ip (35 kb)"
default BUSYBOX_DEFAULT_IP default BUSYBOX_DEFAULT_IP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The "ip" applet is a TCP/IP interface configuration and routing The "ip" applet is a TCP/IP interface configuration and routing
utility. utility.
@ -510,7 +540,6 @@ config BUSYBOX_CONFIG_IPADDR
bool "ipaddr (14 kb)" bool "ipaddr (14 kb)"
default BUSYBOX_DEFAULT_IPADDR default BUSYBOX_DEFAULT_IPADDR
select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip addr" Short form of "ip addr"
@ -518,7 +547,6 @@ config BUSYBOX_CONFIG_IPLINK
bool "iplink (17 kb)" bool "iplink (17 kb)"
default BUSYBOX_DEFAULT_IPLINK default BUSYBOX_DEFAULT_IPLINK
select BUSYBOX_CONFIG_FEATURE_IP_LINK select BUSYBOX_CONFIG_FEATURE_IP_LINK
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip link" Short form of "ip link"
@ -526,7 +554,6 @@ config BUSYBOX_CONFIG_IPROUTE
bool "iproute (15 kb)" bool "iproute (15 kb)"
default BUSYBOX_DEFAULT_IPROUTE default BUSYBOX_DEFAULT_IPROUTE
select BUSYBOX_CONFIG_FEATURE_IP_ROUTE select BUSYBOX_CONFIG_FEATURE_IP_ROUTE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip route" Short form of "ip route"
@ -534,7 +561,6 @@ config BUSYBOX_CONFIG_IPTUNNEL
bool "iptunnel (9.6 kb)" bool "iptunnel (9.6 kb)"
default BUSYBOX_DEFAULT_IPTUNNEL default BUSYBOX_DEFAULT_IPTUNNEL
select BUSYBOX_CONFIG_FEATURE_IP_TUNNEL select BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip tunnel" Short form of "ip tunnel"
@ -542,7 +568,6 @@ config BUSYBOX_CONFIG_IPRULE
bool "iprule (10 kb)" bool "iprule (10 kb)"
default BUSYBOX_DEFAULT_IPRULE default BUSYBOX_DEFAULT_IPRULE
select BUSYBOX_CONFIG_FEATURE_IP_RULE select BUSYBOX_CONFIG_FEATURE_IP_RULE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip rule" Short form of "ip rule"
@ -550,7 +575,6 @@ config BUSYBOX_CONFIG_IPNEIGH
bool "ipneigh (8.3 kb)" bool "ipneigh (8.3 kb)"
default BUSYBOX_DEFAULT_IPNEIGH default BUSYBOX_DEFAULT_IPNEIGH
select BUSYBOX_CONFIG_FEATURE_IP_NEIGH select BUSYBOX_CONFIG_FEATURE_IP_NEIGH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Short form of "ip neigh" Short form of "ip neigh"
@ -641,7 +665,6 @@ config BUSYBOX_CONFIG_FAKEIDENTD
config BUSYBOX_CONFIG_NAMEIF config BUSYBOX_CONFIG_NAMEIF
bool "nameif (6.6 kb)" bool "nameif (6.6 kb)"
default BUSYBOX_DEFAULT_NAMEIF default BUSYBOX_DEFAULT_NAMEIF
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_FEATURE_SYSLOG select BUSYBOX_CONFIG_FEATURE_SYSLOG
help help
nameif is used to rename network interface by its MAC address. nameif is used to rename network interface by its MAC address.
@ -718,7 +741,6 @@ config BUSYBOX_CONFIG_NETMSG
config BUSYBOX_CONFIG_NETSTAT config BUSYBOX_CONFIG_NETSTAT
bool "netstat (10 kb)" bool "netstat (10 kb)"
default BUSYBOX_DEFAULT_NETSTAT default BUSYBOX_DEFAULT_NETSTAT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
netstat prints information about the Linux networking subsystem. netstat prints information about the Linux networking subsystem.
@ -768,7 +790,6 @@ config BUSYBOX_CONFIG_FEATURE_NSLOOKUP_OPENWRT_LONG_OPTIONS
config BUSYBOX_CONFIG_NTPD config BUSYBOX_CONFIG_NTPD
bool "ntpd (22 kb)" bool "ntpd (22 kb)"
default BUSYBOX_DEFAULT_NTPD default BUSYBOX_DEFAULT_NTPD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The NTP client/server daemon. The NTP client/server daemon.
@ -795,7 +816,6 @@ config BUSYBOX_CONFIG_FEATURE_NTP_AUTH
config BUSYBOX_CONFIG_PING config BUSYBOX_CONFIG_PING
bool "ping (10 kb)" bool "ping (10 kb)"
default BUSYBOX_DEFAULT_PING default BUSYBOX_DEFAULT_PING
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
elicit an ICMP ECHO_RESPONSE from a host or gateway. elicit an ICMP ECHO_RESPONSE from a host or gateway.
@ -823,13 +843,11 @@ config BUSYBOX_CONFIG_PSCAN
config BUSYBOX_CONFIG_ROUTE config BUSYBOX_CONFIG_ROUTE
bool "route (8.7 kb)" bool "route (8.7 kb)"
default BUSYBOX_DEFAULT_ROUTE default BUSYBOX_DEFAULT_ROUTE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Route displays or manipulates the kernel's IP routing tables. Route displays or manipulates the kernel's IP routing tables.
config BUSYBOX_CONFIG_SLATTACH config BUSYBOX_CONFIG_SLATTACH
bool "slattach (6.2 kb)" bool "slattach (6.2 kb)"
default BUSYBOX_DEFAULT_SLATTACH default BUSYBOX_DEFAULT_SLATTACH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
slattach configures serial line as SLIP network interface. slattach configures serial line as SLIP network interface.
config BUSYBOX_CONFIG_SSL_CLIENT config BUSYBOX_CONFIG_SSL_CLIENT
@ -1029,7 +1047,6 @@ config BUSYBOX_CONFIG_TLS
config BUSYBOX_CONFIG_TRACEROUTE config BUSYBOX_CONFIG_TRACEROUTE
bool "traceroute (11 kb)" bool "traceroute (11 kb)"
default BUSYBOX_DEFAULT_TRACEROUTE default BUSYBOX_DEFAULT_TRACEROUTE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Utility to trace the route of IP packets. Utility to trace the route of IP packets.
@ -1055,7 +1072,6 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP
config BUSYBOX_CONFIG_TUNCTL config BUSYBOX_CONFIG_TUNCTL
bool "tunctl (6.2 kb)" bool "tunctl (6.2 kb)"
default BUSYBOX_DEFAULT_TUNCTL default BUSYBOX_DEFAULT_TUNCTL
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
tunctl creates or deletes tun devices. tunctl creates or deletes tun devices.
@ -1069,7 +1085,6 @@ config BUSYBOX_CONFIG_FEATURE_TUNCTL_UG
config BUSYBOX_CONFIG_VCONFIG config BUSYBOX_CONFIG_VCONFIG
bool "vconfig (2.3 kb)" bool "vconfig (2.3 kb)"
default BUSYBOX_DEFAULT_VCONFIG default BUSYBOX_DEFAULT_VCONFIG
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Creates, removes, and configures VLAN interfaces Creates, removes, and configures VLAN interfaces
config BUSYBOX_CONFIG_WGET config BUSYBOX_CONFIG_WGET
@ -1154,6 +1169,9 @@ config BUSYBOX_CONFIG_FEATURE_WGET_HTTPS
patches, but do want to waste bandwidth expaining how wrong patches, but do want to waste bandwidth expaining how wrong
it is, you will be ignored. it is, you will be ignored.
FEATURE_WGET_OPENSSL does implement TLS verification
using the certificates available to OpenSSL.
config BUSYBOX_CONFIG_FEATURE_WGET_OPENSSL config BUSYBOX_CONFIG_FEATURE_WGET_OPENSSL
bool "Try to connect to HTTPS using openssl" bool "Try to connect to HTTPS using openssl"
default BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL default BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL
@ -1178,6 +1196,9 @@ config BUSYBOX_CONFIG_FEATURE_WGET_OPENSSL
If openssl can't be executed, internal TLS code will be used If openssl can't be executed, internal TLS code will be used
(if you enabled it); if openssl can be executed but fails later, (if you enabled it); if openssl can be executed but fails later,
wget can't detect this, and download will fail. wget can't detect this, and download will fail.
By default TLS verification is performed, unless
--no-check-certificate option is passed.
config BUSYBOX_CONFIG_WHOIS config BUSYBOX_CONFIG_WHOIS
bool "whois (6.3 kb)" bool "whois (6.3 kb)"
default BUSYBOX_DEFAULT_WHOIS default BUSYBOX_DEFAULT_WHOIS
@ -1186,7 +1207,6 @@ config BUSYBOX_CONFIG_WHOIS
config BUSYBOX_CONFIG_ZCIP config BUSYBOX_CONFIG_ZCIP
bool "zcip (8.4 kb)" bool "zcip (8.4 kb)"
default BUSYBOX_DEFAULT_ZCIP default BUSYBOX_DEFAULT_ZCIP
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_FEATURE_SYSLOG select BUSYBOX_CONFIG_FEATURE_SYSLOG
help help
ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.

View File

@ -7,7 +7,6 @@
config BUSYBOX_CONFIG_UDHCPD config BUSYBOX_CONFIG_UDHCPD
bool "udhcpd (21 kb)" bool "udhcpd (21 kb)"
default BUSYBOX_DEFAULT_UDHCPD default BUSYBOX_DEFAULT_UDHCPD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
udhcpd is a DHCP server geared primarily toward embedded systems, udhcpd is a DHCP server geared primarily toward embedded systems,
while striving to be fully functional and RFC compliant. while striving to be fully functional and RFC compliant.
@ -63,7 +62,6 @@ config BUSYBOX_CONFIG_DHCPRELAY
config BUSYBOX_CONFIG_UDHCPC config BUSYBOX_CONFIG_UDHCPC
bool "udhcpc (24 kb)" bool "udhcpc (24 kb)"
default BUSYBOX_DEFAULT_UDHCPC default BUSYBOX_DEFAULT_UDHCPC
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
udhcpc is a DHCP client geared primarily toward embedded systems, udhcpc is a DHCP client geared primarily toward embedded systems,
while striving to be fully functional and RFC compliant. while striving to be fully functional and RFC compliant.

View File

@ -9,7 +9,6 @@ menu "Process Utilities"
config BUSYBOX_CONFIG_FREE config BUSYBOX_CONFIG_FREE
bool "free (3.1 kb)" bool "free (3.1 kb)"
default BUSYBOX_DEFAULT_FREE default BUSYBOX_DEFAULT_FREE
select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo()
help help
free displays the total amount of free and used physical and swap 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. memory in the system, as well as the buffers used by the kernel.
@ -144,7 +143,6 @@ config BUSYBOX_CONFIG_FEATURE_PS_TIME
bool "Enable -o time and -o etime specifiers" bool "Enable -o time and -o etime specifiers"
default BUSYBOX_DEFAULT_FEATURE_PS_TIME default BUSYBOX_DEFAULT_FEATURE_PS_TIME
depends on (BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_MINIPS) && BUSYBOX_CONFIG_DESKTOP depends on (BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_MINIPS) && BUSYBOX_CONFIG_DESKTOP
select BUSYBOX_CONFIG_PLATFORM_LINUX
config BUSYBOX_CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS config BUSYBOX_CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS
bool "Support Linux prior to 2.4.0 and non-ELF systems" bool "Support Linux prior to 2.4.0 and non-ELF systems"
@ -243,7 +241,6 @@ config BUSYBOX_CONFIG_FEATURE_TOPMEM
config BUSYBOX_CONFIG_UPTIME config BUSYBOX_CONFIG_UPTIME
bool "uptime (3.7 kb)" bool "uptime (3.7 kb)"
default BUSYBOX_DEFAULT_UPTIME default BUSYBOX_DEFAULT_UPTIME
select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo()
help help
uptime gives a one line display of the current time, how long uptime gives a one line display of the current time, how long
the system has been running, how many users are currently logged the system has been running, how many users are currently logged

View File

@ -18,6 +18,7 @@ choice
config BUSYBOX_CONFIG_SH_IS_ASH config BUSYBOX_CONFIG_SH_IS_ASH
depends on !BUSYBOX_CONFIG_NOMMU depends on !BUSYBOX_CONFIG_NOMMU
bool "ash" bool "ash"
select BUSYBOX_CONFIG_SHELL_ASH
help help
Choose ash to be the shell executed by 'sh' name. Choose ash to be the shell executed by 'sh' name.
The ash code will be built into busybox. If you don't select The ash code will be built into busybox. If you don't select
@ -26,6 +27,7 @@ config BUSYBOX_CONFIG_SH_IS_ASH
config BUSYBOX_CONFIG_SH_IS_HUSH config BUSYBOX_CONFIG_SH_IS_HUSH
bool "hush" bool "hush"
select BUSYBOX_CONFIG_SHELL_HUSH
help help
Choose hush to be the shell executed by 'sh' name. Choose hush to be the shell executed by 'sh' name.
The hush code will be built into busybox. If you don't select The hush code will be built into busybox. If you don't select
@ -58,6 +60,7 @@ choice
config BUSYBOX_CONFIG_BASH_IS_ASH config BUSYBOX_CONFIG_BASH_IS_ASH
depends on !BUSYBOX_CONFIG_NOMMU depends on !BUSYBOX_CONFIG_NOMMU
bool "ash" bool "ash"
select BUSYBOX_CONFIG_SHELL_ASH
help help
Choose ash to be the shell executed by 'bash' name. Choose ash to be the shell executed by 'bash' name.
The ash code will be built into busybox. If you don't select The ash code will be built into busybox. If you don't select
@ -66,6 +69,7 @@ config BUSYBOX_CONFIG_BASH_IS_ASH
config BUSYBOX_CONFIG_BASH_IS_HUSH config BUSYBOX_CONFIG_BASH_IS_HUSH
bool "hush" bool "hush"
select BUSYBOX_CONFIG_SHELL_HUSH
help help
Choose hush to be the shell executed by 'bash' name. Choose hush to be the shell executed by 'bash' name.
The hush code will be built into busybox. If you don't select The hush code will be built into busybox. If you don't select
@ -78,10 +82,15 @@ config BUSYBOX_CONFIG_BASH_IS_NONE
endchoice endchoice
config BUSYBOX_CONFIG_SHELL_ASH
bool #hidden option
depends on !BUSYBOX_CONFIG_NOMMU
config BUSYBOX_CONFIG_ASH config BUSYBOX_CONFIG_ASH
bool "ash (78 kb)" bool "ash (78 kb)"
default BUSYBOX_DEFAULT_ASH default BUSYBOX_DEFAULT_ASH
depends on !BUSYBOX_CONFIG_NOMMU depends on !BUSYBOX_CONFIG_NOMMU
select BUSYBOX_CONFIG_SHELL_ASH
help help
The most complete and most pedantically correct shell included with The most complete and most pedantically correct shell included with
busybox. This shell is actually a derivative of the Debian 'dash' busybox. This shell is actually a derivative of the Debian 'dash'
@ -91,17 +100,17 @@ config BUSYBOX_CONFIG_ASH
# ash options # ash options
# note: Don't remove !NOMMU part in the next line; it would break # note: Don't remove !NOMMU part in the next line; it would break
# menuconfig's indenting. # menuconfig's indenting.
if !NOMMU && (BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH) if !NOMMU && (BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH)
config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
bool "Optimize for size instead of speed" bool "Optimize for size instead of speed"
default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB
bool "Use internal glob() implementation" 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 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 depends on BUSYBOX_CONFIG_SHELL_ASH
help help
Do not use glob() function from libc, use internal implementation. Do not use glob() function from libc, use internal implementation.
Use this if you are getting "glob.h: No such file or directory" Use this if you are getting "glob.h: No such file or directory"
@ -112,7 +121,7 @@ config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB
config BUSYBOX_CONFIG_ASH_BASH_COMPAT config BUSYBOX_CONFIG_ASH_BASH_COMPAT
bool "bash-compatible extensions" bool "bash-compatible extensions"
default BUSYBOX_DEFAULT_ASH_BASH_COMPAT default BUSYBOX_DEFAULT_ASH_BASH_COMPAT
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_BASH_SOURCE_CURDIR config BUSYBOX_CONFIG_ASH_BASH_SOURCE_CURDIR
bool "'source' and '.' builtins search current directory after $PATH" bool "'source' and '.' builtins search current directory after $PATH"
@ -133,17 +142,17 @@ config BUSYBOX_CONFIG_ASH_BASH_NOT_FOUND_HOOK
config BUSYBOX_CONFIG_ASH_JOB_CONTROL config BUSYBOX_CONFIG_ASH_JOB_CONTROL
bool "Job control" bool "Job control"
default BUSYBOX_DEFAULT_ASH_JOB_CONTROL default BUSYBOX_DEFAULT_ASH_JOB_CONTROL
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_ALIAS config BUSYBOX_CONFIG_ASH_ALIAS
bool "Alias support" bool "Alias support"
default BUSYBOX_DEFAULT_ASH_ALIAS default BUSYBOX_DEFAULT_ASH_ALIAS
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
bool "Pseudorandom generator and $RANDOM variable" bool "Pseudorandom generator and $RANDOM variable"
default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
help help
Enable pseudorandom generator and dynamic variable "$RANDOM". Enable pseudorandom generator and dynamic variable "$RANDOM".
Each read of "$RANDOM" will generate a new pseudorandom value. Each read of "$RANDOM" will generate a new pseudorandom value.
@ -154,7 +163,7 @@ config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
config BUSYBOX_CONFIG_ASH_EXPAND_PRMT config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
bool "Expand prompt string" bool "Expand prompt string"
default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
help help
$PS# may contain volatile content, such as backquote commands. $PS# may contain volatile content, such as backquote commands.
This option recreates the prompt string from the environment This option recreates the prompt string from the environment
@ -163,14 +172,14 @@ config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT
bool "Idle timeout variable $TMOUT" bool "Idle timeout variable $TMOUT"
default BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT default BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
help help
Enable bash-like auto-logout after $TMOUT seconds of idle time. Enable bash-like auto-logout after $TMOUT seconds of idle time.
config BUSYBOX_CONFIG_ASH_MAIL config BUSYBOX_CONFIG_ASH_MAIL
bool "Check for new mail in interactive shell" bool "Check for new mail in interactive shell"
default BUSYBOX_DEFAULT_ASH_MAIL default BUSYBOX_DEFAULT_ASH_MAIL
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
help help
Enable "check for new mail" function: Enable "check for new mail" function:
if set, $MAIL file and $MAILPATH list of files if set, $MAIL file and $MAILPATH list of files
@ -180,32 +189,32 @@ config BUSYBOX_CONFIG_ASH_MAIL
config BUSYBOX_CONFIG_ASH_ECHO config BUSYBOX_CONFIG_ASH_ECHO
bool "echo builtin" bool "echo builtin"
default BUSYBOX_DEFAULT_ASH_ECHO default BUSYBOX_DEFAULT_ASH_ECHO
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_PRINTF config BUSYBOX_CONFIG_ASH_PRINTF
bool "printf builtin" bool "printf builtin"
default BUSYBOX_DEFAULT_ASH_PRINTF default BUSYBOX_DEFAULT_ASH_PRINTF
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_TEST config BUSYBOX_CONFIG_ASH_TEST
bool "test builtin" bool "test builtin"
default BUSYBOX_DEFAULT_ASH_TEST default BUSYBOX_DEFAULT_ASH_TEST
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_HELP config BUSYBOX_CONFIG_ASH_HELP
bool "help builtin" bool "help builtin"
default BUSYBOX_DEFAULT_ASH_HELP default BUSYBOX_DEFAULT_ASH_HELP
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_GETOPTS config BUSYBOX_CONFIG_ASH_GETOPTS
bool "getopts builtin" bool "getopts builtin"
default BUSYBOX_DEFAULT_ASH_GETOPTS default BUSYBOX_DEFAULT_ASH_GETOPTS
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
config BUSYBOX_CONFIG_ASH_CMDCMD config BUSYBOX_CONFIG_ASH_CMDCMD
bool "command builtin" bool "command builtin"
default BUSYBOX_DEFAULT_ASH_CMDCMD default BUSYBOX_DEFAULT_ASH_CMDCMD
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH depends on BUSYBOX_CONFIG_SHELL_ASH
help help
Enable support for the 'command' builtin, which allows Enable support for the 'command' builtin, which allows
you to run the specified command or builtin, you to run the specified command or builtin,
@ -258,6 +267,7 @@ config BUSYBOX_CONFIG_CTTYHACK
config BUSYBOX_CONFIG_HUSH config BUSYBOX_CONFIG_HUSH
bool "hush (68 kb)" bool "hush (68 kb)"
default BUSYBOX_DEFAULT_HUSH default BUSYBOX_DEFAULT_HUSH
select BUSYBOX_CONFIG_SHELL_HUSH
help help
hush is a small shell. It handles the normal flow control hush is a small shell. It handles the normal flow control
constructs such as if/then/elif/else/fi, for/in/do/done, while loops, constructs such as if/then/elif/else/fi, for/in/do/done, while loops,
@ -269,10 +279,18 @@ config BUSYBOX_CONFIG_HUSH
It does not handle select, aliases, tilde expansion, It does not handle select, aliases, tilde expansion,
&>file and >&file redirection of stdout+stderr. &>file and >&file redirection of stdout+stderr.
config BUSYBOX_CONFIG_SHELL_HUSH
bool "Internal shell for embedded script support"
default BUSYBOX_DEFAULT_SHELL_HUSH
# hush options
# It's only needed to get "nice" menuconfig indenting.
if SHELL_HUSH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
config BUSYBOX_CONFIG_HUSH_BASH_COMPAT config BUSYBOX_CONFIG_HUSH_BASH_COMPAT
bool "bash-compatible extensions" bool "bash-compatible extensions"
default BUSYBOX_DEFAULT_HUSH_BASH_COMPAT default BUSYBOX_DEFAULT_HUSH_BASH_COMPAT
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_BRACE_EXPANSION config BUSYBOX_CONFIG_HUSH_BRACE_EXPANSION
bool "Brace expansion" bool "Brace expansion"
@ -296,7 +314,7 @@ config BUSYBOX_CONFIG_HUSH_BASH_SOURCE_CURDIR
config BUSYBOX_CONFIG_HUSH_INTERACTIVE config BUSYBOX_CONFIG_HUSH_INTERACTIVE
bool "Interactive mode" bool "Interactive mode"
default BUSYBOX_DEFAULT_HUSH_INTERACTIVE default BUSYBOX_DEFAULT_HUSH_INTERACTIVE
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable interactive mode (prompt and command editing). Enable interactive mode (prompt and command editing).
Without this, hush simply reads and executes commands Without this, hush simply reads and executes commands
@ -322,31 +340,31 @@ config BUSYBOX_CONFIG_HUSH_JOB
config BUSYBOX_CONFIG_HUSH_TICK config BUSYBOX_CONFIG_HUSH_TICK
bool "Support command substitution" bool "Support command substitution"
default BUSYBOX_DEFAULT_HUSH_TICK default BUSYBOX_DEFAULT_HUSH_TICK
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable `command` and $(command). Enable `command` and $(command).
config BUSYBOX_CONFIG_HUSH_IF config BUSYBOX_CONFIG_HUSH_IF
bool "Support if/then/elif/else/fi" bool "Support if/then/elif/else/fi"
default BUSYBOX_DEFAULT_HUSH_IF default BUSYBOX_DEFAULT_HUSH_IF
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_LOOPS config BUSYBOX_CONFIG_HUSH_LOOPS
bool "Support for, while and until loops" bool "Support for, while and until loops"
default BUSYBOX_DEFAULT_HUSH_LOOPS default BUSYBOX_DEFAULT_HUSH_LOOPS
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_CASE config BUSYBOX_CONFIG_HUSH_CASE
bool "Support case ... esac statement" bool "Support case ... esac statement"
default BUSYBOX_DEFAULT_HUSH_CASE default BUSYBOX_DEFAULT_HUSH_CASE
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable case ... esac statement. +400 bytes. Enable case ... esac statement. +400 bytes.
config BUSYBOX_CONFIG_HUSH_FUNCTIONS config BUSYBOX_CONFIG_HUSH_FUNCTIONS
bool "Support funcname() { commands; } syntax" bool "Support funcname() { commands; } syntax"
default BUSYBOX_DEFAULT_HUSH_FUNCTIONS default BUSYBOX_DEFAULT_HUSH_FUNCTIONS
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable support for shell functions. +800 bytes. Enable support for shell functions. +800 bytes.
@ -360,7 +378,7 @@ config BUSYBOX_CONFIG_HUSH_LOCAL
config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT
bool "Pseudorandom generator and $RANDOM variable" bool "Pseudorandom generator and $RANDOM variable"
default BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT default BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable pseudorandom generator and dynamic variable "$RANDOM". Enable pseudorandom generator and dynamic variable "$RANDOM".
Each read of "$RANDOM" will generate a new pseudorandom value. Each read of "$RANDOM" will generate a new pseudorandom value.
@ -368,7 +386,7 @@ config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT
config BUSYBOX_CONFIG_HUSH_MODE_X config BUSYBOX_CONFIG_HUSH_MODE_X
bool "Support 'hush -x' option and 'set -x' command" bool "Support 'hush -x' option and 'set -x' command"
default BUSYBOX_DEFAULT_HUSH_MODE_X default BUSYBOX_DEFAULT_HUSH_MODE_X
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
This instructs hush to print commands before execution. This instructs hush to print commands before execution.
Adds ~300 bytes. Adds ~300 bytes.
@ -376,27 +394,27 @@ config BUSYBOX_CONFIG_HUSH_MODE_X
config BUSYBOX_CONFIG_HUSH_ECHO config BUSYBOX_CONFIG_HUSH_ECHO
bool "echo builtin" bool "echo builtin"
default BUSYBOX_DEFAULT_HUSH_ECHO default BUSYBOX_DEFAULT_HUSH_ECHO
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_PRINTF config BUSYBOX_CONFIG_HUSH_PRINTF
bool "printf builtin" bool "printf builtin"
default BUSYBOX_DEFAULT_HUSH_PRINTF default BUSYBOX_DEFAULT_HUSH_PRINTF
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_TEST config BUSYBOX_CONFIG_HUSH_TEST
bool "test builtin" bool "test builtin"
default BUSYBOX_DEFAULT_HUSH_TEST default BUSYBOX_DEFAULT_HUSH_TEST
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_HELP config BUSYBOX_CONFIG_HUSH_HELP
bool "help builtin" bool "help builtin"
default BUSYBOX_DEFAULT_HUSH_HELP default BUSYBOX_DEFAULT_HUSH_HELP
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_EXPORT config BUSYBOX_CONFIG_HUSH_EXPORT
bool "export builtin" bool "export builtin"
default BUSYBOX_DEFAULT_HUSH_EXPORT default BUSYBOX_DEFAULT_HUSH_EXPORT
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_EXPORT_N config BUSYBOX_CONFIG_HUSH_EXPORT_N
bool "Support 'export -n' option" bool "Support 'export -n' option"
@ -408,83 +426,85 @@ config BUSYBOX_CONFIG_HUSH_EXPORT_N
config BUSYBOX_CONFIG_HUSH_READONLY config BUSYBOX_CONFIG_HUSH_READONLY
bool "readonly builtin" bool "readonly builtin"
default BUSYBOX_DEFAULT_HUSH_READONLY default BUSYBOX_DEFAULT_HUSH_READONLY
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable support for read-only variables. Enable support for read-only variables.
config BUSYBOX_CONFIG_HUSH_KILL config BUSYBOX_CONFIG_HUSH_KILL
bool "kill builtin (supports kill %jobspec)" bool "kill builtin (supports kill %jobspec)"
default BUSYBOX_DEFAULT_HUSH_KILL default BUSYBOX_DEFAULT_HUSH_KILL
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_WAIT config BUSYBOX_CONFIG_HUSH_WAIT
bool "wait builtin" bool "wait builtin"
default BUSYBOX_DEFAULT_HUSH_WAIT default BUSYBOX_DEFAULT_HUSH_WAIT
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_COMMAND config BUSYBOX_CONFIG_HUSH_COMMAND
bool "command builtin" bool "command builtin"
default BUSYBOX_DEFAULT_HUSH_COMMAND default BUSYBOX_DEFAULT_HUSH_COMMAND
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_TRAP config BUSYBOX_CONFIG_HUSH_TRAP
bool "trap builtin" bool "trap builtin"
default BUSYBOX_DEFAULT_HUSH_TRAP default BUSYBOX_DEFAULT_HUSH_TRAP
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_TYPE config BUSYBOX_CONFIG_HUSH_TYPE
bool "type builtin" bool "type builtin"
default BUSYBOX_DEFAULT_HUSH_TYPE default BUSYBOX_DEFAULT_HUSH_TYPE
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_TIMES config BUSYBOX_CONFIG_HUSH_TIMES
bool "times builtin" bool "times builtin"
default BUSYBOX_DEFAULT_HUSH_TIMES default BUSYBOX_DEFAULT_HUSH_TIMES
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_READ config BUSYBOX_CONFIG_HUSH_READ
bool "read builtin" bool "read builtin"
default BUSYBOX_DEFAULT_HUSH_READ default BUSYBOX_DEFAULT_HUSH_READ
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_SET config BUSYBOX_CONFIG_HUSH_SET
bool "set builtin" bool "set builtin"
default BUSYBOX_DEFAULT_HUSH_SET default BUSYBOX_DEFAULT_HUSH_SET
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_UNSET config BUSYBOX_CONFIG_HUSH_UNSET
bool "unset builtin" bool "unset builtin"
default BUSYBOX_DEFAULT_HUSH_UNSET default BUSYBOX_DEFAULT_HUSH_UNSET
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_ULIMIT config BUSYBOX_CONFIG_HUSH_ULIMIT
bool "ulimit builtin" bool "ulimit builtin"
default BUSYBOX_DEFAULT_HUSH_ULIMIT default BUSYBOX_DEFAULT_HUSH_ULIMIT
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_UMASK config BUSYBOX_CONFIG_HUSH_UMASK
bool "umask builtin" bool "umask builtin"
default BUSYBOX_DEFAULT_HUSH_UMASK default BUSYBOX_DEFAULT_HUSH_UMASK
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_GETOPTS config BUSYBOX_CONFIG_HUSH_GETOPTS
bool "getopts builtin" bool "getopts builtin"
default BUSYBOX_DEFAULT_HUSH_GETOPTS default BUSYBOX_DEFAULT_HUSH_GETOPTS
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_HUSH_MEMLEAK config BUSYBOX_CONFIG_HUSH_MEMLEAK
bool "memleak builtin (debugging)" bool "memleak builtin (debugging)"
default BUSYBOX_DEFAULT_HUSH_MEMLEAK default BUSYBOX_DEFAULT_HUSH_MEMLEAK
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH depends on BUSYBOX_CONFIG_SHELL_HUSH
endif # hush options
comment "Options common to all shells" comment "Options common to all shells"
if ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH if BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
config BUSYBOX_CONFIG_FEATURE_SH_MATH config BUSYBOX_CONFIG_FEATURE_SH_MATH
bool "POSIX math support" bool "POSIX math support"
default BUSYBOX_DEFAULT_FEATURE_SH_MATH 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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable math support in the shell via $((...)) syntax. Enable math support in the shell via $((...)) syntax.
@ -505,14 +525,14 @@ config BUSYBOX_CONFIG_FEATURE_SH_MATH_BASE
config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET
bool "Hide message on interactive shell startup" bool "Hide message on interactive shell startup"
default BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET default BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
Remove the busybox introduction when starting a shell. Remove the busybox introduction when starting a shell.
config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE
bool "Standalone shell" bool "Standalone shell"
default BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE default BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
This option causes busybox shells to use busybox applets This option causes busybox shells to use busybox applets
in preference to executables in the PATH whenever possible. For in preference to executables in the PATH whenever possible. For
@ -533,7 +553,7 @@ config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE
config BUSYBOX_CONFIG_FEATURE_SH_NOFORK config BUSYBOX_CONFIG_FEATURE_SH_NOFORK
bool "Run 'nofork' applets directly" bool "Run 'nofork' applets directly"
default BUSYBOX_DEFAULT_FEATURE_SH_NOFORK default BUSYBOX_DEFAULT_FEATURE_SH_NOFORK
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
This option causes busybox shells to not execute typical This option causes busybox shells to not execute typical
fork/exec/wait sequence, but call <applet>_main directly, fork/exec/wait sequence, but call <applet>_main directly,
@ -551,14 +571,14 @@ config BUSYBOX_CONFIG_FEATURE_SH_NOFORK
config BUSYBOX_CONFIG_FEATURE_SH_READ_FRAC config BUSYBOX_CONFIG_FEATURE_SH_READ_FRAC
bool "read -t N.NNN support (+110 bytes)" bool "read -t N.NNN support (+110 bytes)"
default BUSYBOX_DEFAULT_FEATURE_SH_READ_FRAC default BUSYBOX_DEFAULT_FEATURE_SH_READ_FRAC
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
Enable support for fractional second timeout in read builtin. Enable support for fractional second timeout in read builtin.
config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE
bool "Use $HISTFILESIZE" bool "Use $HISTFILESIZE"
default BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE default BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
This option makes busybox shells to use $HISTFILESIZE variable This option makes busybox shells to use $HISTFILESIZE variable
to set shell history size. Note that its max value is capped to set shell history size. Note that its max value is capped
@ -567,7 +587,7 @@ config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE
config BUSYBOX_CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS config BUSYBOX_CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS
bool "Embed scripts in the binary" bool "Embed scripts in the binary"
default BUSYBOX_DEFAULT_FEATURE_SH_EMBEDDED_SCRIPTS default BUSYBOX_DEFAULT_FEATURE_SH_EMBEDDED_SCRIPTS
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 depends on BUSYBOX_CONFIG_SHELL_ASH || BUSYBOX_CONFIG_SHELL_HUSH
help help
Allow scripts to be compressed and embedded in the busybox Allow scripts to be compressed and embedded in the busybox
binary. The scripts should be placed in the 'embed' directory binary. The scripts should be placed in the 'embed' directory

View File

@ -23,7 +23,6 @@ config BUSYBOX_CONFIG_FEATURE_KLOGD_KLOGCTL
bool "Use the klogctl() interface" bool "Use the klogctl() interface"
default BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL default BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL
depends on BUSYBOX_CONFIG_KLOGD depends on BUSYBOX_CONFIG_KLOGD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The klogd applet supports two interfaces for reading The klogd applet supports two interfaces for reading
kernel messages. Linux provides the klogctl() interface kernel messages. Linux provides the klogctl() interface
@ -116,6 +115,14 @@ config BUSYBOX_CONFIG_FEATURE_SYSLOGD_CFG
help help
Supports restricted syslogd config. See docs/syslog.conf.txt Supports restricted syslogd config. See docs/syslog.conf.txt
config BUSYBOX_CONFIG_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS
bool "Include milliseconds in timestamps"
default BUSYBOX_DEFAULT_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS
depends on BUSYBOX_CONFIG_SYSLOGD
help
Includes milliseconds (HH:MM:SS.mmm) in timestamp when
timestamps are added.
config BUSYBOX_CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE config BUSYBOX_CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE
int "Read buffer size in bytes" int "Read buffer size in bytes"
default BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE default BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE
@ -153,7 +160,6 @@ config BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG
bool "Linux kernel printk buffer support" bool "Linux kernel printk buffer support"
default BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG default BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG
depends on BUSYBOX_CONFIG_SYSLOGD depends on BUSYBOX_CONFIG_SYSLOGD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
When you enable this feature, the syslogd utility will When you enable this feature, the syslogd utility will
write system log message to the Linux kernel's printk buffer. write system log message to the Linux kernel's printk buffer.

View File

@ -9,7 +9,6 @@ menu "Linux System Utilities"
config BUSYBOX_CONFIG_ACPID config BUSYBOX_CONFIG_ACPID
bool "acpid (9 kb)" bool "acpid (9 kb)"
default BUSYBOX_DEFAULT_ACPID default BUSYBOX_DEFAULT_ACPID
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
acpid listens to ACPI events coming either in textual form from acpid listens to ACPI events coming either in textual form from
/proc/acpi/event (though it is marked deprecated it is still widely /proc/acpi/event (though it is marked deprecated it is still widely
@ -31,13 +30,11 @@ config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT
config BUSYBOX_CONFIG_BLKDISCARD config BUSYBOX_CONFIG_BLKDISCARD
bool "blkdiscard (4.3 kb)" bool "blkdiscard (4.3 kb)"
default BUSYBOX_DEFAULT_BLKDISCARD default BUSYBOX_DEFAULT_BLKDISCARD
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
blkdiscard discards sectors on a given device. blkdiscard discards sectors on a given device.
config BUSYBOX_CONFIG_BLKID config BUSYBOX_CONFIG_BLKID
bool "blkid (12 kb)" bool "blkid (12 kb)"
default BUSYBOX_DEFAULT_BLKID default BUSYBOX_DEFAULT_BLKID
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_VOLUMEID select BUSYBOX_CONFIG_VOLUMEID
help help
Lists labels and UUIDs of all filesystems. Lists labels and UUIDs of all filesystems.
@ -67,7 +64,6 @@ config BUSYBOX_CONFIG_CHRT
config BUSYBOX_CONFIG_DMESG config BUSYBOX_CONFIG_DMESG
bool "dmesg (3.7 kb)" bool "dmesg (3.7 kb)"
default BUSYBOX_DEFAULT_DMESG default BUSYBOX_DEFAULT_DMESG
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
dmesg is used to examine or control the kernel ring buffer. When the dmesg is used to examine or control the kernel ring buffer. When the
Linux kernel prints messages to the system log, they are stored in Linux kernel prints messages to the system log, they are stored in
@ -100,7 +96,6 @@ config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY
config BUSYBOX_CONFIG_EJECT config BUSYBOX_CONFIG_EJECT
bool "eject (4 kb)" bool "eject (4 kb)"
default BUSYBOX_DEFAULT_EJECT default BUSYBOX_DEFAULT_EJECT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Used to eject cdroms. (defaults to /dev/cdrom) Used to eject cdroms. (defaults to /dev/cdrom)
@ -119,13 +114,11 @@ config BUSYBOX_CONFIG_FALLOCATE
config BUSYBOX_CONFIG_FATATTR config BUSYBOX_CONFIG_FATATTR
bool "fatattr (1.9 kb)" bool "fatattr (1.9 kb)"
default BUSYBOX_DEFAULT_FATATTR default BUSYBOX_DEFAULT_FATATTR
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
fatattr lists or changes the file attributes on a fat file system. fatattr lists or changes the file attributes on a fat file system.
config BUSYBOX_CONFIG_FBSET config BUSYBOX_CONFIG_FBSET
bool "fbset (5.9 kb)" bool "fbset (5.9 kb)"
default BUSYBOX_DEFAULT_FBSET default BUSYBOX_DEFAULT_FBSET
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
fbset is used to show or change the settings of a Linux frame buffer fbset is used to show or change the settings of a Linux frame buffer
device. The frame buffer device provides a simple and unique device. The frame buffer device provides a simple and unique
@ -153,13 +146,11 @@ config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
config BUSYBOX_CONFIG_FDFORMAT config BUSYBOX_CONFIG_FDFORMAT
bool "fdformat (4.4 kb)" bool "fdformat (4.4 kb)"
default BUSYBOX_DEFAULT_FDFORMAT default BUSYBOX_DEFAULT_FDFORMAT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
fdformat is used to low-level format a floppy disk. fdformat is used to low-level format a floppy disk.
config BUSYBOX_CONFIG_FDISK config BUSYBOX_CONFIG_FDISK
bool "fdisk (37 kb)" bool "fdisk (37 kb)"
default BUSYBOX_DEFAULT_FDISK default BUSYBOX_DEFAULT_FDISK
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The fdisk utility is used to divide hard disks into one or more The fdisk utility is used to divide hard disks into one or more
logical disks, which are generally called partitions. This utility logical disks, which are generally called partitions. This utility
@ -233,7 +224,6 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
config BUSYBOX_CONFIG_FINDFS config BUSYBOX_CONFIG_FINDFS
bool "findfs (12 kb)" bool "findfs (12 kb)"
default BUSYBOX_DEFAULT_FINDFS default BUSYBOX_DEFAULT_FINDFS
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_VOLUMEID select BUSYBOX_CONFIG_VOLUMEID
help help
Prints the name of a filesystem with given label or UUID. Prints the name of a filesystem with given label or UUID.
@ -245,7 +235,6 @@ config BUSYBOX_CONFIG_FLOCK
config BUSYBOX_CONFIG_FDFLUSH config BUSYBOX_CONFIG_FDFLUSH
bool "fdflush (1.3 kb)" bool "fdflush (1.3 kb)"
default BUSYBOX_DEFAULT_FDFLUSH default BUSYBOX_DEFAULT_FDFLUSH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
fdflush is only needed when changing media on slightly-broken fdflush is only needed when changing media on slightly-broken
removable media drives. It is used to make Linux believe that a removable media drives. It is used to make Linux believe that a
@ -258,7 +247,6 @@ config BUSYBOX_CONFIG_FDFLUSH
config BUSYBOX_CONFIG_FREERAMDISK config BUSYBOX_CONFIG_FREERAMDISK
bool "freeramdisk (1.3 kb)" bool "freeramdisk (1.3 kb)"
default BUSYBOX_DEFAULT_FREERAMDISK default BUSYBOX_DEFAULT_FREERAMDISK
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Linux allows you to create ramdisks. This utility allows you to Linux allows you to create ramdisks. This utility allows you to
delete them and completely free all memory that was used for the delete them and completely free all memory that was used for the
@ -279,14 +267,12 @@ config BUSYBOX_CONFIG_FSCK_MINIX
config BUSYBOX_CONFIG_FSFREEZE config BUSYBOX_CONFIG_FSFREEZE
bool "fsfreeze (3.5 kb)" bool "fsfreeze (3.5 kb)"
default BUSYBOX_DEFAULT_FSFREEZE default BUSYBOX_DEFAULT_FSFREEZE
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_LONG_OPTS select BUSYBOX_CONFIG_LONG_OPTS
help help
Halt new accesses and flush writes on a mounted filesystem. Halt new accesses and flush writes on a mounted filesystem.
config BUSYBOX_CONFIG_FSTRIM config BUSYBOX_CONFIG_FSTRIM
bool "fstrim (4.4 kb)" bool "fstrim (4.4 kb)"
default BUSYBOX_DEFAULT_FSTRIM default BUSYBOX_DEFAULT_FSTRIM
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Discard unused blocks on a mounted filesystem. Discard unused blocks on a mounted filesystem.
config BUSYBOX_CONFIG_GETOPT config BUSYBOX_CONFIG_GETOPT
@ -313,16 +299,6 @@ config BUSYBOX_CONFIG_HEXDUMP
The hexdump utility is used to display binary data in a readable The hexdump utility is used to display binary data in a readable
way that is comparable to the output from most hex editors. way that is comparable to the output from most hex editors.
config BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE
bool "Support -R, reverse of 'hexdump -Cv'"
default BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE
depends on BUSYBOX_CONFIG_HEXDUMP
help
The hexdump utility is used to display binary data in an ascii
readable way. This option creates binary data from an ascii input.
NB: this option is non-standard. It's unwise to use it in scripts
aimed to be portable.
config BUSYBOX_CONFIG_HD config BUSYBOX_CONFIG_HD
bool "hd (7.8 kb)" bool "hd (7.8 kb)"
default BUSYBOX_DEFAULT_HD default BUSYBOX_DEFAULT_HD
@ -337,7 +313,6 @@ config BUSYBOX_CONFIG_XXD
config BUSYBOX_CONFIG_HWCLOCK config BUSYBOX_CONFIG_HWCLOCK
bool "hwclock (5.8 kb)" bool "hwclock (5.8 kb)"
default BUSYBOX_DEFAULT_HWCLOCK default BUSYBOX_DEFAULT_HWCLOCK
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The hwclock utility is used to read and set the hardware clock The hwclock utility is used to read and set the hardware clock
on a system. This is primarily used to set the current time on on a system. This is primarily used to set the current time on
@ -358,7 +333,6 @@ config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
config BUSYBOX_CONFIG_IONICE config BUSYBOX_CONFIG_IONICE
bool "ionice (3.8 kb)" bool "ionice (3.8 kb)"
default BUSYBOX_DEFAULT_IONICE default BUSYBOX_DEFAULT_IONICE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Set/set program io scheduling class and priority Set/set program io scheduling class and priority
Requires kernel >= 2.6.13 Requires kernel >= 2.6.13
@ -372,7 +346,6 @@ config BUSYBOX_CONFIG_IPCRM
config BUSYBOX_CONFIG_IPCS config BUSYBOX_CONFIG_IPCS
bool "ipcs (11 kb)" bool "ipcs (11 kb)"
default BUSYBOX_DEFAULT_IPCS default BUSYBOX_DEFAULT_IPCS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The ipcs utility is used to provide information on the currently The ipcs utility is used to provide information on the currently
allocated System V interprocess (IPC) objects in the system. allocated System V interprocess (IPC) objects in the system.
@ -393,7 +366,6 @@ config BUSYBOX_CONFIG_FEATURE_LAST_FANCY
config BUSYBOX_CONFIG_LOSETUP config BUSYBOX_CONFIG_LOSETUP
bool "losetup (5.5 kb)" bool "losetup (5.5 kb)"
default BUSYBOX_DEFAULT_LOSETUP default BUSYBOX_DEFAULT_LOSETUP
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
losetup is used to associate or detach a loop device with a regular 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 file or block device, and to query the status of a loop device. This
@ -401,7 +373,6 @@ config BUSYBOX_CONFIG_LOSETUP
config BUSYBOX_CONFIG_LSPCI config BUSYBOX_CONFIG_LSPCI
bool "lspci (6.3 kb)" bool "lspci (6.3 kb)"
default BUSYBOX_DEFAULT_LSPCI default BUSYBOX_DEFAULT_LSPCI
#select PLATFORM_LINUX
help help
lspci is a utility for displaying information about PCI buses in the lspci is a utility for displaying information about PCI buses in the
system and devices connected to them. system and devices connected to them.
@ -410,7 +381,6 @@ config BUSYBOX_CONFIG_LSPCI
config BUSYBOX_CONFIG_LSUSB config BUSYBOX_CONFIG_LSUSB
bool "lsusb (4.2 kb)" bool "lsusb (4.2 kb)"
default BUSYBOX_DEFAULT_LSUSB default BUSYBOX_DEFAULT_LSUSB
#select PLATFORM_LINUX
help help
lsusb is a utility for displaying information about USB buses in the lsusb is a utility for displaying information about USB buses in the
system and devices connected to them. system and devices connected to them.
@ -419,7 +389,6 @@ config BUSYBOX_CONFIG_LSUSB
config BUSYBOX_CONFIG_MDEV config BUSYBOX_CONFIG_MDEV
bool "mdev (17 kb)" bool "mdev (17 kb)"
default BUSYBOX_DEFAULT_MDEV default BUSYBOX_DEFAULT_MDEV
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
mdev is a mini-udev implementation for dynamically creating device mdev is a mini-udev implementation for dynamically creating device
nodes in the /dev directory. nodes in the /dev directory.
@ -505,20 +474,17 @@ config BUSYBOX_CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP
config BUSYBOX_CONFIG_MKE2FS config BUSYBOX_CONFIG_MKE2FS
bool "mke2fs (10 kb)" bool "mke2fs (10 kb)"
default BUSYBOX_DEFAULT_MKE2FS default BUSYBOX_DEFAULT_MKE2FS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Utility to create EXT2 filesystems. Utility to create EXT2 filesystems.
config BUSYBOX_CONFIG_MKFS_EXT2 config BUSYBOX_CONFIG_MKFS_EXT2
bool "mkfs.ext2 (10 kb)" bool "mkfs.ext2 (10 kb)"
default BUSYBOX_DEFAULT_MKFS_EXT2 default BUSYBOX_DEFAULT_MKFS_EXT2
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Alias to "mke2fs". Alias to "mke2fs".
config BUSYBOX_CONFIG_MKFS_MINIX config BUSYBOX_CONFIG_MKFS_MINIX
bool "mkfs.minix (10 kb)" bool "mkfs.minix (10 kb)"
default BUSYBOX_DEFAULT_MKFS_MINIX default BUSYBOX_DEFAULT_MKFS_MINIX
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The minix filesystem is a nice, small, compact, read-write filesystem The minix filesystem is a nice, small, compact, read-write filesystem
with little overhead. If you wish to be able to create minix with little overhead. If you wish to be able to create minix
@ -535,21 +501,18 @@ config BUSYBOX_CONFIG_FEATURE_MINIX2
config BUSYBOX_CONFIG_MKFS_REISER config BUSYBOX_CONFIG_MKFS_REISER
bool "mkfs_reiser" bool "mkfs_reiser"
default BUSYBOX_DEFAULT_MKFS_REISER default BUSYBOX_DEFAULT_MKFS_REISER
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Utility to create ReiserFS filesystems. Utility to create ReiserFS filesystems.
Note: this applet needs a lot of testing and polishing. Note: this applet needs a lot of testing and polishing.
config BUSYBOX_CONFIG_MKDOSFS config BUSYBOX_CONFIG_MKDOSFS
bool "mkdosfs (7.2 kb)" bool "mkdosfs (7.2 kb)"
default BUSYBOX_DEFAULT_MKDOSFS default BUSYBOX_DEFAULT_MKDOSFS
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Utility to create FAT32 filesystems. Utility to create FAT32 filesystems.
config BUSYBOX_CONFIG_MKFS_VFAT config BUSYBOX_CONFIG_MKFS_VFAT
bool "mkfs.vfat (7.2 kb)" bool "mkfs.vfat (7.2 kb)"
default BUSYBOX_DEFAULT_MKFS_VFAT default BUSYBOX_DEFAULT_MKFS_VFAT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Alias to "mkdosfs". Alias to "mkdosfs".
config BUSYBOX_CONFIG_MKSWAP config BUSYBOX_CONFIG_MKSWAP
@ -583,7 +546,6 @@ config BUSYBOX_CONFIG_MORE
config BUSYBOX_CONFIG_MOUNT config BUSYBOX_CONFIG_MOUNT
bool "mount (23 kb)" bool "mount (23 kb)"
default BUSYBOX_DEFAULT_MOUNT default BUSYBOX_DEFAULT_MOUNT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
All files and filesystems in Unix are arranged into one big directory All files and filesystems in Unix are arranged into one big directory
tree. The 'mount' utility is used to graft a filesystem onto a tree. The 'mount' utility is used to graft a filesystem onto a
@ -685,7 +647,7 @@ config BUSYBOX_CONFIG_NOLOGIN
config BUSYBOX_CONFIG_NOLOGIN_DEPENDENCIES config BUSYBOX_CONFIG_NOLOGIN_DEPENDENCIES
bool "Enable dependencies for nologin" bool "Enable dependencies for nologin"
default BUSYBOX_DEFAULT_NOLOGIN_DEPENDENCIES default BUSYBOX_DEFAULT_NOLOGIN_DEPENDENCIES # Y default makes it harder to select single-applet test
depends on BUSYBOX_CONFIG_NOLOGIN depends on BUSYBOX_CONFIG_NOLOGIN
select BUSYBOX_CONFIG_CAT select BUSYBOX_CONFIG_CAT
select BUSYBOX_CONFIG_ECHO select BUSYBOX_CONFIG_ECHO
@ -699,13 +661,11 @@ config BUSYBOX_CONFIG_NOLOGIN_DEPENDENCIES
config BUSYBOX_CONFIG_NSENTER config BUSYBOX_CONFIG_NSENTER
bool "nsenter (6.5 kb)" bool "nsenter (6.5 kb)"
default BUSYBOX_DEFAULT_NSENTER default BUSYBOX_DEFAULT_NSENTER
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Run program with namespaces of other processes. Run program with namespaces of other processes.
config BUSYBOX_CONFIG_PIVOT_ROOT config BUSYBOX_CONFIG_PIVOT_ROOT
bool "pivot_root (1.1 kb)" bool "pivot_root (1.1 kb)"
default BUSYBOX_DEFAULT_PIVOT_ROOT default BUSYBOX_DEFAULT_PIVOT_ROOT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The pivot_root utility swaps the mount points for the root filesystem The pivot_root utility swaps the mount points for the root filesystem
with some other mounted filesystem. This allows you to do all sorts with some other mounted filesystem. This allows you to do all sorts
@ -730,7 +690,6 @@ config BUSYBOX_CONFIG_RDEV
config BUSYBOX_CONFIG_READPROFILE config BUSYBOX_CONFIG_READPROFILE
bool "readprofile (7.1 kb)" bool "readprofile (7.1 kb)"
default BUSYBOX_DEFAULT_READPROFILE default BUSYBOX_DEFAULT_READPROFILE
#select PLATFORM_LINUX
help help
This allows you to parse /proc/profile for basic profiling. This allows you to parse /proc/profile for basic profiling.
config BUSYBOX_CONFIG_RENICE config BUSYBOX_CONFIG_RENICE
@ -747,7 +706,6 @@ config BUSYBOX_CONFIG_REV
config BUSYBOX_CONFIG_RTCWAKE config BUSYBOX_CONFIG_RTCWAKE
bool "rtcwake (6.8 kb)" bool "rtcwake (6.8 kb)"
default BUSYBOX_DEFAULT_RTCWAKE default BUSYBOX_DEFAULT_RTCWAKE
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Enter a system sleep state until specified wakeup time. Enter a system sleep state until specified wakeup time.
config BUSYBOX_CONFIG_SCRIPT config BUSYBOX_CONFIG_SCRIPT
@ -764,7 +722,6 @@ config BUSYBOX_CONFIG_SCRIPTREPLAY
config BUSYBOX_CONFIG_SETARCH config BUSYBOX_CONFIG_SETARCH
bool "setarch (3.6 kb)" bool "setarch (3.6 kb)"
default BUSYBOX_DEFAULT_SETARCH default BUSYBOX_DEFAULT_SETARCH
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The linux32 utility is used to create a 32bit environment for the The linux32 utility is used to create a 32bit environment for the
specified program (usually a shell). It only makes sense to have specified program (usually a shell). It only makes sense to have
@ -774,20 +731,17 @@ config BUSYBOX_CONFIG_SETARCH
config BUSYBOX_CONFIG_LINUX32 config BUSYBOX_CONFIG_LINUX32
bool "linux32 (3.3 kb)" bool "linux32 (3.3 kb)"
default BUSYBOX_DEFAULT_LINUX32 default BUSYBOX_DEFAULT_LINUX32
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Alias to "setarch linux32". Alias to "setarch linux32".
config BUSYBOX_CONFIG_LINUX64 config BUSYBOX_CONFIG_LINUX64
bool "linux64 (3.3 kb)" bool "linux64 (3.3 kb)"
default BUSYBOX_DEFAULT_LINUX64 default BUSYBOX_DEFAULT_LINUX64
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Alias to "setarch linux64". Alias to "setarch linux64".
config BUSYBOX_CONFIG_SETPRIV config BUSYBOX_CONFIG_SETPRIV
bool "setpriv (6.6 kb)" bool "setpriv (6.6 kb)"
default BUSYBOX_DEFAULT_SETPRIV default BUSYBOX_DEFAULT_SETPRIV
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_LONG_OPTS select BUSYBOX_CONFIG_LONG_OPTS
help help
Run a program with different Linux privilege settings. Run a program with different Linux privilege settings.
@ -828,7 +782,6 @@ config BUSYBOX_CONFIG_SETSID
config BUSYBOX_CONFIG_SWAPON config BUSYBOX_CONFIG_SWAPON
bool "swapon (15 kb)" bool "swapon (15 kb)"
default BUSYBOX_DEFAULT_SWAPON default BUSYBOX_DEFAULT_SWAPON
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
Once you have created some swap space using 'mkswap', you also need Once you have created some swap space using 'mkswap', you also need
to enable your swap space with the 'swapon' utility. The 'swapoff' to enable your swap space with the 'swapon' utility. The 'swapoff'
@ -855,7 +808,6 @@ config BUSYBOX_CONFIG_FEATURE_SWAPON_PRI
config BUSYBOX_CONFIG_SWAPOFF config BUSYBOX_CONFIG_SWAPOFF
bool "swapoff (14 kb)" bool "swapoff (14 kb)"
default BUSYBOX_DEFAULT_SWAPOFF default BUSYBOX_DEFAULT_SWAPOFF
select BUSYBOX_CONFIG_PLATFORM_LINUX
config BUSYBOX_CONFIG_FEATURE_SWAPONOFF_LABEL config BUSYBOX_CONFIG_FEATURE_SWAPONOFF_LABEL
bool "Support specifying devices by label or UUID" bool "Support specifying devices by label or UUID"
@ -868,7 +820,6 @@ config BUSYBOX_CONFIG_FEATURE_SWAPONOFF_LABEL
config BUSYBOX_CONFIG_SWITCH_ROOT config BUSYBOX_CONFIG_SWITCH_ROOT
bool "switch_root (5.5 kb)" bool "switch_root (5.5 kb)"
default BUSYBOX_DEFAULT_SWITCH_ROOT default BUSYBOX_DEFAULT_SWITCH_ROOT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
The switch_root utility is used from initramfs to select a new The switch_root utility is used from initramfs to select a new
root device. Under initramfs, you have to use this instead of root device. Under initramfs, you have to use this instead of
@ -900,17 +851,23 @@ config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY
Needed for machines with more than 32-64 CPUs: Needed for machines with more than 32-64 CPUs:
affinity parameter 0xHHHHHHHHHHHHHHHHHHHH can be arbitrarily long affinity parameter 0xHHHHHHHHHHHHHHHHHHHH can be arbitrarily long
in this case. Otherwise, it is limited to sizeof(long). in this case. Otherwise, it is limited to sizeof(long).
config BUSYBOX_CONFIG_FEATURE_TASKSET_CPULIST
bool "CPU list support (-c option)"
default BUSYBOX_DEFAULT_FEATURE_TASKSET_CPULIST
depends on BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY
help
Add support for taking/printing affinity as CPU list when '-c'
option is used. For example, it prints '0-3,7' instead of mask '8f'.
config BUSYBOX_CONFIG_UEVENT config BUSYBOX_CONFIG_UEVENT
bool "uevent (3.1 kb)" bool "uevent (3.1 kb)"
default BUSYBOX_DEFAULT_UEVENT default BUSYBOX_DEFAULT_UEVENT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
uevent is a netlink listener for kernel uevent notifications uevent is a netlink listener for kernel uevent notifications
sent via netlink. It is usually used for dynamic device creation. sent via netlink. It is usually used for dynamic device creation.
config BUSYBOX_CONFIG_UMOUNT config BUSYBOX_CONFIG_UMOUNT
bool "umount (5.1 kb)" bool "umount (5.1 kb)"
default BUSYBOX_DEFAULT_UMOUNT default BUSYBOX_DEFAULT_UMOUNT
select BUSYBOX_CONFIG_PLATFORM_LINUX
help help
When you want to remove a mounted filesystem from its current mount When you want to remove a mounted filesystem from its current mount
point, for example when you are shutting down the system, the point, for example when you are shutting down the system, the
@ -927,7 +884,6 @@ config BUSYBOX_CONFIG_UNSHARE
bool "unshare (7.2 kb)" bool "unshare (7.2 kb)"
default BUSYBOX_DEFAULT_UNSHARE default BUSYBOX_DEFAULT_UNSHARE
depends on !BUSYBOX_CONFIG_NOMMU depends on !BUSYBOX_CONFIG_NOMMU
select BUSYBOX_CONFIG_PLATFORM_LINUX
select BUSYBOX_CONFIG_LONG_OPTS select BUSYBOX_CONFIG_LONG_OPTS
help help
Run program with some namespaces unshared from parent. Run program with some namespaces unshared from parent.

View File

@ -23,6 +23,12 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_CRAMFS
bool "cramfs filesystem" bool "cramfs filesystem"
default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS
depends on BUSYBOX_CONFIG_VOLUMEID depends on BUSYBOX_CONFIG_VOLUMEID
config BUSYBOX_CONFIG_FEATURE_VOLUMEID_EROFS
bool "erofs filesystem"
default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EROFS
depends on BUSYBOX_CONFIG_VOLUMEID
help
Erofs is a compressed readonly filesystem for Linux.
config BUSYBOX_CONFIG_FEATURE_VOLUMEID_EXFAT config BUSYBOX_CONFIG_FEATURE_VOLUMEID_EXFAT
bool "exFAT filesystem" bool "exFAT filesystem"
default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT

View File

@ -1,84 +0,0 @@
From d3539be8f27b8cbfdfee460fe08299158f08bcd9 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair.francis@wdc.com>
Date: Tue, 19 Nov 2019 13:06:40 +0100
Subject: Remove stime() function calls
stime() has been deprecated in glibc 2.31 and replaced with
clock_settime(). Let's replace the stime() function calls with
clock_settime() in preperation.
function old new delta
rdate_main 197 224 +27
clock_settime - 27 +27
date_main 926 941 +15
stime 37 - -37
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 2/0 up/down: 69/-37) Total: 32 bytes
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
---
coreutils/date.c | 6 +++++-
libbb/missing_syscalls.c | 8 --------
util-linux/rdate.c | 8 ++++++--
3 files changed, 11 insertions(+), 11 deletions(-)
--- a/coreutils/date.c
+++ b/coreutils/date.c
@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, cha
time(&ts.tv_sec);
#endif
}
+#if !ENABLE_FEATURE_DATE_NANO
+ ts.tv_nsec = 0;
+#endif
localtime_r(&ts.tv_sec, &tm_time);
/* If date string is given, update tm_time, and maybe set date */
@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, cha
if (date_str[0] != '@')
tm_time.tm_isdst = -1;
ts.tv_sec = validate_tm_time(date_str, &tm_time);
+ ts.tv_nsec = 0;
/* if setting time, set it */
- if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) {
+ if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) {
bb_perror_msg("can't set date");
}
}
--- a/libbb/missing_syscalls.c
+++ b/libbb/missing_syscalls.c
@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid)
return syscall(__NR_getsid, pid);
}
-int stime(const time_t *t)
-{
- struct timeval tv;
- tv.tv_sec = *t;
- tv.tv_usec = 0;
- return settimeofday(&tv, NULL);
-}
-
int sethostname(const char *name, size_t len)
{
return syscall(__NR_sethostname, name, len);
--- a/util-linux/rdate.c
+++ b/util-linux/rdate.c
@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, ch
if (!(flags & 2)) { /* no -p (-s may be present) */
if (time(NULL) == remote_time)
bb_error_msg("current time matches remote time");
- else
- if (stime(&remote_time) < 0)
+ else {
+ struct timespec ts;
+ ts.tv_sec = remote_time;
+ ts.tv_nsec = 0;
+ if (clock_settime(CLOCK_REALTIME, &ts) < 0)
bb_perror_msg_and_die("can't set time of day");
+ }
}
if (flags != 1) /* not lone -s */

View File

@ -0,0 +1,11 @@
--- a/libbb/update_passwd.c
+++ b/libbb/update_passwd.c
@@ -48,7 +48,7 @@ static void check_selinux_update_passwd(
bb_simple_error_msg_and_die("SELinux: access denied");
}
if (ENABLE_FEATURE_CLEAN_UP)
- freecon(context);
+ freecon(seuser);
}
#else
# define check_selinux_update_passwd(username) ((void)0)

View File

@ -1,11 +0,0 @@
--- a/Makefile.flags
+++ b/Makefile.flags
@@ -51,7 +51,7 @@ CFLAGS += $(call cc-option,-fno-builtin-
# -fno-guess-branch-probability: prohibit pseudo-random guessing
# of branch probabilities (hopefully makes bloatcheck more stable):
CFLAGS += $(call cc-option,-fno-guess-branch-probability,)
-CFLAGS += $(call cc-option,-funsigned-char -static-libgcc,)
+CFLAGS += $(call cc-option,-funsigned-char,)
CFLAGS += $(call cc-option,-falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1,)
# Defeat .eh_frame bloat (gcc 4.6.3 x86-32 defconfig: 20% smaller busybox binary):
CFLAGS += $(call cc-option,-fno-unwind-tables,)

View File

@ -1,6 +1,6 @@
--- a/scripts/Kbuild.include --- a/scripts/Kbuild.include
+++ b/scripts/Kbuild.include +++ b/scripts/Kbuild.include
@@ -130,7 +130,7 @@ make-cmd = $(subst \#,\\\#,$(subst $$,$$ @@ -131,7 +131,7 @@ make-cmd = $(subst \#,\\\#,$(subst $$,$$
# #
if_changed = $(if $(strip $(filter-out $(PHONY),$?) \ if_changed = $(if $(strip $(filter-out $(PHONY),$?) \
$(call arg-check, $(cmd_$(1)), $(cmd_$@)) ), \ $(call arg-check, $(cmd_$(1)), $(cmd_$@)) ), \
@ -9,7 +9,7 @@
$(echo-cmd) $(cmd_$(1)); \ $(echo-cmd) $(cmd_$(1)); \
echo 'cmd_$@ := $(make-cmd)' > $(@D)/.$(@F).cmd) echo 'cmd_$@ := $(make-cmd)' > $(@D)/.$(@F).cmd)
@@ -139,7 +139,7 @@ if_changed = $(if $(strip $(filter-out $ @@ -140,7 +140,7 @@ if_changed = $(if $(strip $(filter-out $
if_changed_dep = $(if $(strip $(filter-out $(PHONY),$?) \ if_changed_dep = $(if $(strip $(filter-out $(PHONY),$?) \
$(filter-out FORCE $(wildcard $^),$^) \ $(filter-out FORCE $(wildcard $^),$^) \
$(call arg-check, $(cmd_$(1)), $(cmd_$@)) ), \ $(call arg-check, $(cmd_$(1)), $(cmd_$@)) ), \
@ -18,7 +18,7 @@
$(echo-cmd) $(cmd_$(1)); \ $(echo-cmd) $(cmd_$(1)); \
scripts/basic/fixdep $(depfile) $@ '$(make-cmd)' > $(@D)/.$(@F).tmp; \ scripts/basic/fixdep $(depfile) $@ '$(make-cmd)' > $(@D)/.$(@F).tmp; \
rm -f $(depfile); \ rm -f $(depfile); \
@@ -150,5 +150,5 @@ if_changed_dep = $(if $(strip $(filter-o @@ -151,5 +151,5 @@ if_changed_dep = $(if $(strip $(filter-o
# and if so will execute $(rule_foo) # and if so will execute $(rule_foo)
if_changed_rule = $(if $(strip $(filter-out $(PHONY),$?) \ if_changed_rule = $(if $(strip $(filter-out $(PHONY),$?) \
$(call arg-check, $(cmd_$(1)), $(cmd_$@)) ),\ $(call arg-check, $(cmd_$(1)), $(cmd_$@)) ),\

View File

@ -1,6 +1,6 @@
--- a/networking/udhcp/dhcpc.c --- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c
@@ -713,6 +713,7 @@ static int bcast_or_ucast(struct dhcp_pa @@ -712,6 +712,7 @@ static int bcast_or_ucast(struct dhcp_pa
static NOINLINE int send_discover(uint32_t xid, uint32_t requested) static NOINLINE int send_discover(uint32_t xid, uint32_t requested)
{ {
struct dhcp_packet packet; struct dhcp_packet packet;
@ -8,7 +8,7 @@
/* Fill in: op, htype, hlen, cookie, chaddr fields, /* Fill in: op, htype, hlen, cookie, chaddr fields,
* random xid field (we override it below), * random xid field (we override it below),
@@ -730,6 +731,7 @@ static NOINLINE int send_discover(uint32 @@ -729,6 +730,7 @@ static NOINLINE int send_discover(uint32
*/ */
add_client_options(&packet); add_client_options(&packet);

View File

@ -1,6 +1,6 @@
--- a/networking/udhcp/dhcpc.c --- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c
@@ -1416,6 +1416,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c @@ -1415,6 +1415,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c
/* silence "uninitialized!" warning */ /* silence "uninitialized!" warning */
unsigned timestamp_before_wait = timestamp_before_wait; unsigned timestamp_before_wait = timestamp_before_wait;

View File

@ -1,6 +1,6 @@
--- a/networking/udhcp/dhcpc.c --- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c
@@ -1126,7 +1126,6 @@ static void perform_renew(void) @@ -1125,7 +1125,6 @@ static void perform_renew(void)
client_data.state = RENEW_REQUESTED; client_data.state = RENEW_REQUESTED;
break; break;
case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ case RENEW_REQUESTED: /* impatient are we? fine, square 1 */

View File

@ -19,9 +19,9 @@ Signed-off-by: Jo-Philipp Wich <jo@mein.io>
--- a/Makefile.flags --- a/Makefile.flags
+++ b/Makefile.flags +++ b/Makefile.flags
@@ -134,6 +134,12 @@ else @@ -158,6 +158,12 @@ endif
LDLIBS += m # libm may be needed for dc, awk, ntpd
endif # librt may be needed for clock_gettime()
+# nslookup_lede might need the resolv library +# nslookup_lede might need the resolv library
+RESOLV_AVAILABLE := $(shell echo 'int main(void){res_init();return 0;}' >resolvtest.c; $(CC) $(CFLAGS) -include resolv.h -lresolv -o /dev/null resolvtest.c >/dev/null 2>&1 && echo "y"; rm resolvtest.c) +RESOLV_AVAILABLE := $(shell echo 'int main(void){res_init();return 0;}' >resolvtest.c; $(CC) $(CFLAGS) -include resolv.h -lresolv -o /dev/null resolvtest.c >/dev/null 2>&1 && echo "y"; rm resolvtest.c)

View File

@ -1,92 +0,0 @@
--- a/coreutils/date.c
+++ b/coreutils/date.c
@@ -123,6 +123,7 @@
//usage: IF_FEATURE_DATE_ISOFMT(
//usage: "\n -D FMT Use FMT (strptime format) for -d TIME conversion"
//usage: )
+//usage: "\n -k Set Kernel timezone from localtime and exit"
//usage: "\n"
//usage: "\nRecognized TIME formats:"
//usage: "\n hh:mm[:ss]"
@@ -139,9 +140,8 @@
#include "libbb.h"
#include "common_bufsiz.h"
-#if ENABLE_FEATURE_DATE_NANO
-# include <sys/syscall.h>
-#endif
+#include <sys/time.h>
+#include <sys/syscall.h>
enum {
OPT_RFC2822 = (1 << 0), /* R */
@@ -149,8 +149,9 @@ enum {
OPT_UTC = (1 << 2), /* u */
OPT_DATE = (1 << 3), /* d */
OPT_REFERENCE = (1 << 4), /* r */
- OPT_TIMESPEC = (1 << 5) * ENABLE_FEATURE_DATE_ISOFMT, /* I */
- OPT_HINT = (1 << 6) * ENABLE_FEATURE_DATE_ISOFMT, /* D */
+ OPT_KERNELTZ = (1 << 5), /* k */
+ OPT_TIMESPEC = (1 << 6) * ENABLE_FEATURE_DATE_ISOFMT, /* I */
+ OPT_HINT = (1 << 7) * ENABLE_FEATURE_DATE_ISOFMT, /* D */
};
#if ENABLE_LONG_OPTS
@@ -162,6 +163,7 @@ static const char date_longopts[] ALIGN1
/* "universal\0" No_argument "u" */
"date\0" Required_argument "d"
"reference\0" Required_argument "r"
+ "set-kernel-tz\0" No_argument "k"
;
#endif
@@ -181,6 +183,8 @@ static void maybe_set_utc(int opt)
int date_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int date_main(int argc UNUSED_PARAM, char **argv)
{
+ time_t tt;
+ struct timezone tz;
struct timespec ts;
struct tm tm_time;
char buf_fmt_dt2str[64];
@@ -193,7 +197,7 @@ int date_main(int argc UNUSED_PARAM, cha
char *isofmt_arg = NULL;
opt = getopt32long(argv, "^"
- "Rs:ud:r:"
+ "Rs:ud:r:k"
IF_FEATURE_DATE_ISOFMT("I::D:")
"\0"
"d--s:s--d"
@@ -256,6 +260,31 @@ int date_main(int argc UNUSED_PARAM, cha
if (*argv)
bb_show_usage();
+ /* Setting of kernel timezone was requested */
+ if (opt & OPT_KERNELTZ) {
+ tt = time(NULL);
+ localtime_r(&tt, &tm_time);
+
+ /* workaround warp_clock() on first invocation */
+ memset(&tz, 0, sizeof(tz));
+ syscall(SYS_settimeofday, NULL, &tz);
+
+ memset(&tz, 0, sizeof(tz));
+#ifdef __USE_MISC
+ tz.tz_minuteswest = -(tm_time.tm_gmtoff / 60);
+#else
+ tz.tz_minuteswest = -(tm_time.__tm_gmtoff / 60);
+#endif
+
+ if (syscall(SYS_settimeofday, NULL, &tz))
+ {
+ bb_perror_msg("can't set kernel time zone");
+ return EXIT_FAILURE;
+ }
+
+ return EXIT_SUCCESS;
+ }
+
/* Now we have parsed all the information except the date format
* which depends on whether the clock is being set or read */

View File

@ -1,6 +1,6 @@
--- a/networking/traceroute.c --- a/networking/traceroute.c
+++ b/networking/traceroute.c +++ b/networking/traceroute.c
@@ -237,8 +237,8 @@ @@ -236,8 +236,8 @@
//config: depends on TRACEROUTE || TRACEROUTE6 //config: depends on TRACEROUTE || TRACEROUTE6
/* Needs socket(AF_INET, SOCK_RAW, IPPROTO_ICMP), therefore BB_SUID_MAYBE: */ /* Needs socket(AF_INET, SOCK_RAW, IPPROTO_ICMP), therefore BB_SUID_MAYBE: */

View File

@ -1,6 +1,6 @@
--- a/loginutils/chpasswd.c --- a/loginutils/chpasswd.c
+++ b/loginutils/chpasswd.c +++ b/loginutils/chpasswd.c
@@ -97,6 +97,11 @@ int chpasswd_main(int argc UNUSED_PARAM, @@ -89,6 +89,11 @@ int chpasswd_main(int argc UNUSED_PARAM,
crypt_make_pw_salt(salt, algo); crypt_make_pw_salt(salt, algo);
free_me = pass = pw_encrypt(pass, salt, 0); free_me = pass = pw_encrypt(pass, salt, 0);
@ -14,7 +14,7 @@
/* This is rather complex: if user is not found in /etc/shadow, /* This is rather complex: if user is not found in /etc/shadow,
--- a/loginutils/cryptpw.c --- a/loginutils/cryptpw.c
+++ b/loginutils/cryptpw.c +++ b/loginutils/cryptpw.c
@@ -95,7 +95,7 @@ int cryptpw_main(int argc UNUSED_PARAM, @@ -87,7 +87,7 @@ int cryptpw_main(int argc UNUSED_PARAM,
/* Supports: cryptpw -m sha256 PASS 'rounds=999999999$SALT' */ /* Supports: cryptpw -m sha256 PASS 'rounds=999999999$SALT' */
char salt[MAX_PW_SALT_LEN + sizeof("rounds=999999999$")]; char salt[MAX_PW_SALT_LEN + sizeof("rounds=999999999$")];
char *salt_ptr; char *salt_ptr;
@ -23,7 +23,7 @@
const char *opt_m, *opt_S; const char *opt_m, *opt_S;
int fd; int fd;
@@ -140,8 +140,12 @@ int cryptpw_main(int argc UNUSED_PARAM, @@ -132,8 +132,12 @@ int cryptpw_main(int argc UNUSED_PARAM,
/* may still be NULL on EOF/error */ /* may still be NULL on EOF/error */
} }

View File

@ -1,12 +0,0 @@
--- a/networking/ntpd.c
+++ b/networking/ntpd.c
@@ -2414,9 +2414,6 @@ static NOINLINE void ntp_init(char **arg
srand(getpid());
- if (getuid())
- bb_error_msg_and_die(bb_msg_you_must_be_root);
-
/* Set some globals */
G.discipline_jitter = G_precision_sec;
G.stratum = MAXSTRAT;