From 0820b94a8326b3e8cc75d0078f93c7626ccf8147 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Thu, 25 Feb 2021 09:10:55 +0100 Subject: package/busybox: Update stored config files When updating busybox, these files must be updated - otherwise the config written to busybox source tree when building may be incomplete, causing the build to hang. Fixes: e4800c73e63e5 ("busybox: update to latest") Signed-off-by: Phil Sutter --- package/busybox/config/Config.in | 1067 ++++++------- package/busybox/config/archival/Config.in | 544 ++++--- package/busybox/config/console-tools/Config.in | 212 ++- package/busybox/config/coreutils/Config.in | 1208 +++++++-------- package/busybox/config/debianutils/Config.in | 86 +- package/busybox/config/e2fsprogs/Config.in | 53 +- .../config/e2fsprogs/old_e2fsprogs/Config.in | 69 - package/busybox/config/editors/Config.in | 253 ++-- package/busybox/config/findutils/Config.in | 152 +- package/busybox/config/init/Config.in | 215 ++- package/busybox/config/libbb/Config.in | 421 ++++-- package/busybox/config/loginutils/Config.in | 419 +++--- package/busybox/config/mailutils/Config.in | 56 +- package/busybox/config/miscutils/Config.in | 1153 +++++++-------- package/busybox/config/modutils/Config.in | 298 ++-- package/busybox/config/networking/Config.in | 1364 ++++++++--------- package/busybox/config/networking/udhcp/Config.in | 251 ++-- package/busybox/config/printutils/Config.in | 22 +- package/busybox/config/procps/Config.in | 333 ++--- package/busybox/config/runit/Config.in | 123 +- package/busybox/config/selinux/Config.in | 103 +- package/busybox/config/shell/Config.in | 538 +++---- package/busybox/config/sysklogd/Config.in | 212 ++- package/busybox/config/util-linux/Config.in | 1563 ++++++++------------ .../busybox/config/util-linux/volume_id/Config.in | 197 +++ 25 files changed, 5159 insertions(+), 5753 deletions(-) delete mode 100644 package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in create mode 100644 package/busybox/config/util-linux/volume_id/Config.in (limited to 'package/busybox/config') diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index 69029adae..36b047540 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -1,34 +1,41 @@ # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # -# mainmenu "BusyBox Configuration" +# mainmenu "Configuration" config BUSYBOX_HAVE_DOT_CONFIG bool default y -menu "Busybox Settings" - -menu "General Configuration" +menu "Settings" config BUSYBOX_DESKTOP - bool "Enable options for full-blown desktop systems" - default n + bool "Enable compatibility for full-blown desktop systems (8kb)" + default y help - Enable options and features which are not essential. - Select this only if you plan to use busybox on full-blown - desktop machine with common Linux distro, not on an embedded box. + Enable applet options and features which are not essential. + Many applet options have dedicated config options to (de)select them + under that applet; this options enables those options which have no + individual config item for them. + + Select this if you plan to use busybox on full-blown desktop machine + with common Linux distro, which needs higher level of command-line + compatibility. + + If you are preparing your build to be used on an embedded box + where you have tighter control over the entire set of userspace + tools, you can unselect this option for smaller code size. config BUSYBOX_EXTRA_COMPAT bool "Provide compatible behavior for rare corner cases (bigger code)" default n help - This option makes grep, sed etc handle rare corner cases - (embedded NUL bytes and such). This makes code bigger and uses - some GNU extensions in libc. You probably only need this option - if you plan to run busybox on desktop. + This option makes grep, sed etc handle rare corner cases + (embedded NUL bytes and such). This makes code bigger and uses + some GNU extensions in libc. You probably only need this option + if you plan to run busybox on desktop. config BUSYBOX_FEDORA_COMPAT bool "Building for Fedora distribution" @@ -45,476 +52,302 @@ config BUSYBOX_FEDORA_COMPAT config BUSYBOX_INCLUDE_SUSv2 bool "Enable obsolete features removed before SUSv3" - default n - help - This option will enable backwards compatibility with SuSv2, - specifically, old-style numeric options ('command -1 ') - will be supported in head, tail, and fold. (Note: should - affect renice too.) - -config BUSYBOX_USE_PORTABLE_CODE - bool "Avoid using GCC-specific code constructs" - default n - help - Use this option if you are trying to compile busybox with - compiler other than gcc. - If you do use gcc, this option may needlessly increase code size. - -config BUSYBOX_STACK_OPTIMIZATION_386 - bool "Use -mpreferred-stack-boundary=2 on i386 arch" - default n - help - This option makes for smaller code, but some libc versions - do not work with it (they use SSE instructions without - ensuring stack alignment). - -config BUSYBOX_INSTALL_NO_USR - bool "Don't use /usr" - default n - help - Disable use of /usr. busybox --install and "make install" - will install applets only to /bin and /sbin, - never to /usr/bin or /usr/sbin. - -config BUSYBOX_PLATFORM_LINUX - bool "Enable Linux-specific applets and features" default y help - For the most part, busybox requires only POSIX compatibility - from the target system, but some applets and features use - Linux-specific interfaces. - - Answering 'N' here will disable such applets and hide the - corresponding configuration options. + This option will enable backwards compatibility with SuSv2, + specifically, old-style numeric options ('command -1 ') + will be supported in head, tail, and fold. (Note: should + affect renice too.) -choice - prompt "Buffer allocation policy" - default FEATURE_BUFFERS_USE_MALLOC +config BUSYBOX_LONG_OPTS + bool "Support --long-options" + default y help - There are 3 ways BusyBox can handle buffer allocations: - - Use malloc. This costs code size for the call to xmalloc. - - Put them on stack. For some very small machines with limited stack - space, this can be deadly. For most folks, this works just fine. - - Put them in BSS. This works beautifully for computers with a real - MMU (and OS support), but wastes runtime RAM for uCLinux. This - behavior was the only one available for BusyBox versions 0.48 and - earlier. - -config BUSYBOX_FEATURE_BUFFERS_USE_MALLOC - bool "Allocate with Malloc" - -config BUSYBOX_FEATURE_BUFFERS_GO_ON_STACK - bool "Allocate on the Stack" - -config BUSYBOX_FEATURE_BUFFERS_GO_IN_BSS - bool "Allocate in the .bss section" - -endchoice + Enable this if you want busybox applets to use the gnu --long-option + style, in addition to single character -a -b -c style options. config BUSYBOX_SHOW_USAGE bool "Show applet usage messages" default y help - Enabling this option, BusyBox applets will show terse help messages - when invoked with wrong arguments. - If you do not want to show any (helpful) usage message when - issuing wrong command syntax, you can say 'N' here, - saving approximately 7k. + Enabling this option, applets will show terse help messages + when invoked with wrong arguments. + If you do not want to show any (helpful) usage message when + issuing wrong command syntax, you can say 'N' here, + saving approximately 7k. config BUSYBOX_FEATURE_VERBOSE_USAGE bool "Show verbose applet usage messages" default y depends on BUSYBOX_SHOW_USAGE help - All BusyBox applets will show verbose help messages when - busybox is invoked with --help. This will add a lot of text to the - busybox binary. In the default configuration, this will add about - 13k, but it can add much more depending on your configuration. + All applets will show verbose help messages when invoked with --help. + This will add a lot of text to the binary. config BUSYBOX_FEATURE_COMPRESS_USAGE bool "Store applet usage messages in compressed form" default y depends on BUSYBOX_SHOW_USAGE help - Store usage messages in .bz compressed form, uncompress them - on-the-fly when --help is called. - - If you have a really tiny busybox with few applets enabled (and - bunzip2 isn't one of them), the overhead of the decompressor might - be noticeable. Also, if you run executables directly from ROM - and have very little memory, this might not be a win. Otherwise, - you probably want this. - -config BUSYBOX_BUSYBOX - bool "Include busybox applet" - default y - help - The busybox applet provides general help regarding busybox and - allows the included applets to be listed. It's also required - if applet links are to be installed at runtime. - - If you can live without these features disabling this will save - some space. - -config BUSYBOX_FEATURE_SHOW_SCRIPT - bool "Support --show SCRIPT" - default n - depends on BUSYBOX_BUSYBOX - -config BUSYBOX_FEATURE_INSTALLER - bool "Support --install [-s] to install applet links at runtime" - default n - help - Enable 'busybox --install [-s]' support. This will allow you to use - busybox at runtime to create hard links or symlinks for all the - applets that are compiled into busybox. + Store usage messages in .bz2 compressed form, uncompress them + on-the-fly when "APPLET --help" is run. -config BUSYBOX_LOCALE_SUPPORT - bool "Enable locale support (system needs locale for this to work)" - default n - help - Enable this if your system has locale support and you would like - busybox to support locale settings. + If you have a really tiny busybox with few applets enabled (and + bunzip2 isn't one of them), the overhead of the decompressor might + be noticeable. Also, if you run executables directly from ROM + and have very little memory, this might not be a win. Otherwise, + you probably want this. -config BUSYBOX_UNICODE_SUPPORT - bool "Support Unicode" +config BUSYBOX_LFS + bool "Support files > 2 GB" default y help - This makes various applets aware that one byte is not - one character on screen. - - Busybox aims to eventually work correctly with Unicode displays. - Any older encodings are not guaranteed to work. - Probably by the time when busybox will be fully Unicode-clean, - other encodings will be mainly of historic interest. - -config BUSYBOX_UNICODE_USING_LOCALE - bool "Use libc routines for Unicode (else uses internal ones)" - default n - depends on BUSYBOX_UNICODE_SUPPORT && BUSYBOX_LOCALE_SUPPORT - help - With this option on, Unicode support is implemented using libc - routines. Otherwise, internal implementation is used. - Internal implementation is smaller. - -config BUSYBOX_FEATURE_CHECK_UNICODE_IN_ENV - bool "Check $LANG environment variable" - default n - depends on BUSYBOX_UNICODE_SUPPORT && !BUSYBOX_UNICODE_USING_LOCALE - help - With this option on, Unicode support is activated - only if LANG variable has the value of the form "xxxx.utf8" - - Otherwise, Unicode support will be always enabled and active. - -config BUSYBOX_SUBST_WCHAR - int "Character code to substitute unprintable characters with" - depends on BUSYBOX_UNICODE_SUPPORT - default 63 - help - Typical values are 63 for '?' (works with any output device), - 30 for ASCII substitute control code, - 65533 (0xfffd) for Unicode replacement character. - -config BUSYBOX_LAST_SUPPORTED_WCHAR - int "Range of supported Unicode characters" - depends on BUSYBOX_UNICODE_SUPPORT - default 767 - help - Any character with Unicode value bigger than this is assumed - to be non-printable on output device. Many applets replace - such chars with substitution character. - - The idea is that many valid printable Unicode chars are - nevertheless are not displayed correctly. Think about - combining charachers, double-wide hieroglyphs, obscure - characters in dozens of ancient scripts... - Many terminals, terminal emulators, xterms etc will fail - to handle them correctly. Choose the smallest value - which suits your needs. - - Typical values are: - 126 - ASCII only - 767 (0x2ff) - there are no combining chars in [0..767] range - (the range includes Latin 1, Latin Ext. A and B), - code is ~700 bytes smaller for this case. - 4351 (0x10ff) - there are no double-wide chars in [0..4351] range, - code is ~300 bytes smaller for this case. - 12799 (0x31ff) - nearly all non-ideographic characters are - available in [0..12799] range, including - East Asian scripts like katakana, hiragana, hangul, - bopomofo... - 0 - off, any valid printable Unicode character will be printed. - -config BUSYBOX_UNICODE_COMBINING_WCHARS - bool "Allow zero-width Unicode characters on output" - default n - depends on BUSYBOX_UNICODE_SUPPORT - help - With this option off, any Unicode char with width of 0 - is substituted on output. - -config BUSYBOX_UNICODE_WIDE_WCHARS - bool "Allow wide Unicode characters on output" - default n - depends on BUSYBOX_UNICODE_SUPPORT - help - With this option off, any Unicode char with width > 1 - is substituted on output. - -config BUSYBOX_UNICODE_BIDI_SUPPORT - bool "Bidirectional character-aware line input" - default n - depends on BUSYBOX_UNICODE_SUPPORT && !BUSYBOX_UNICODE_USING_LOCALE - help - With this option on, right-to-left Unicode characters - are treated differently on input (e.g. cursor movement). - -config BUSYBOX_UNICODE_NEUTRAL_TABLE - bool "In bidi input, support non-ASCII neutral chars too" - default n - depends on BUSYBOX_UNICODE_BIDI_SUPPORT - help - In most cases it's enough to treat only ASCII non-letters - (i.e. punctuation, numbers and space) as characters - with neutral directionality. - With this option on, more extensive (and bigger) table - of neutral chars will be used. - -config BUSYBOX_UNICODE_PRESERVE_BROKEN - bool "Make it possible to enter sequences of chars which are not Unicode" - default n - depends on BUSYBOX_UNICODE_SUPPORT - help - With this option on, on line-editing input (such as used by shells) - invalid UTF-8 bytes are not substituted with the selected - substitution character. - For example, this means that entering 'l', 's', ' ', 0xff, [Enter] - at shell prompt will list file named 0xff (single char name - with char value 255), not file named '?'. + If you need to work with large files, enable this option. + This will have no effect if your kernel or your C + library lacks large file support for large files. Some of the + programs that can benefit from large file support include dd, gzip, + cp, mount, tar. config BUSYBOX_PAM - bool "Support for PAM (Pluggable Authentication Modules)" + bool "Support PAM (Pluggable Authentication Modules)" default n help - Use PAM in some busybox applets (currently login and httpd) instead - of direct access to password database. - -config BUSYBOX_FEATURE_USE_SENDFILE - bool "Use sendfile system call" - default y - select BUSYBOX_PLATFORM_LINUX - help - When enabled, busybox will use the kernel sendfile() function - instead of read/write loops to copy data between file descriptors - (for example, cp command does this a lot). - If sendfile() doesn't work, copying code falls back to read/write - loop. sendfile() was originally implemented for faster I/O - from files to sockets, but since Linux 2.6.33 it was extended - to work for many more file types. - -config BUSYBOX_LONG_OPTS - bool "Support for --long-options" - default y - help - Enable this if you want busybox applets to use the gnu --long-option - style, in addition to single character -a -b -c style options. + Use PAM in some applets (currently login and httpd) instead + of direct access to password database. config BUSYBOX_FEATURE_DEVPTS bool "Use the devpts filesystem for Unix98 PTYs" default y help - Enable if you want BusyBox to use Unix98 PTY support. If enabled, - busybox will use /dev/ptmx for the master side of the pseudoterminal - and /dev/pts/ for the slave side. Otherwise, BSD style - /dev/ttyp will be used. To use this option, you should have - devpts mounted. - -config BUSYBOX_FEATURE_CLEAN_UP - bool "Clean up all memory before exiting (usually not needed)" - default n - help - As a size optimization, busybox normally exits without explicitly - freeing dynamically allocated memory or closing files. This saves - space since the OS will clean up for us, but it can confuse debuggers - like valgrind, which report tons of memory and resource leaks. - - Don't enable this unless you have a really good reason to clean - things up manually. - -config BUSYBOX_FEATURE_SYSLOG_INFO - bool "Support LOG_INFO level syslog messages" - default y - depends on BUSYBOX_FEATURE_SYSLOG - help - Applets which send their output to syslog use either LOG_INFO or - LOG_ERR log levels, but by disabling this option all messages will - be logged at the LOG_ERR level, saving just under 200 bytes. + Enable if you want to use Unix98 PTY support. If enabled, + busybox will use /dev/ptmx for the master side of the pseudoterminal + and /dev/pts/ for the slave side. Otherwise, BSD style + /dev/ttyp will be used. To use this option, you should have + devpts mounted. config BUSYBOX_FEATURE_UTMP bool "Support utmp file" - default n + default y help - The file /var/run/utmp is used to track who is currently logged in. - With this option on, certain applets (getty, login, telnetd etc) - will create and delete entries there. - "who" applet requires this option. + The file /var/run/utmp is used to track who is currently logged in. + With this option on, certain applets (getty, login, telnetd etc) + will create and delete entries there. + "who" applet requires this option. config BUSYBOX_FEATURE_WTMP bool "Support wtmp file" - default n + default y depends on BUSYBOX_FEATURE_UTMP help - The file /var/run/wtmp is used to track when users have logged into - and logged out of the system. - With this option on, certain applets (getty, login, telnetd etc) - will append new entries there. - "last" applet requires this option. + The file /var/run/wtmp is used to track when users have logged into + and logged out of the system. + With this option on, certain applets (getty, login, telnetd etc) + will append new entries there. + "last" applet requires this option. config BUSYBOX_FEATURE_PIDFILE bool "Support writing pidfiles" default y help - This option makes some applets (e.g. crond, syslogd, inetd) write - a pidfile in /var/run. Some applications rely on them. + This option makes some applets (e.g. crond, syslogd, inetd) write + a pidfile at the configured BUSYBOX_PID_FILE_PATH. It has no effect + on applets which require pidfiles to run. config BUSYBOX_PID_FILE_PATH - string "Path to directory for pidfile" - default "/var/run" - depends on BUSYBOX_FEATURE_PIDFILE - help - This is the default path where pidfiles are created. Applets which - 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 - specify a pidfile path. + string "Directory for pidfiles" + default "/var/run" + depends on BUSYBOX_FEATURE_PIDFILE || BUSYBOX_FEATURE_CROND_SPECIAL_TIMES + help + This is the default path where pidfiles are created. Applets which + 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 + specify a pidfile path. When crond has the 'Support special times' + option enabled, the 'crond.reboot' file is also stored here. -config BUSYBOX_FEATURE_SUID - bool "Support for SUID/SGID handling" +config BUSYBOX_BUSYBOX + bool "Include busybox applet" default y help - With this option you can install the busybox binary belonging - to root with the suid bit set, enabling some applets to perform - root-level operations even when run by ordinary users - (for example, mounting of user mounts in fstab needs this). - - Busybox will automatically drop priviledges for applets - that don't need root access. + The busybox applet provides general help message and allows + the included applets to be listed. It also provides + optional --install command to create applet links. If you unselect + this option, running busybox without any arguments will give + just a cryptic error message: - If you are really paranoid and don't want to do this, build two - busybox binaries with different applets in them (and the appropriate - symlinks pointing to each binary), and only set the suid bit on the - one that needs it. + $ busybox + busybox: applet not found - The applets which require root rights (need suid bit or - to be run by root) and will refuse to execute otherwise: - crontab, login, passwd, su, vlock, wall. + Running "busybox APPLET [ARGS...]" will still work, of course. - The applets which will use root rights if they have them - (via suid bit, or because run by root), but would try to work - without root right nevertheless: - findfs, ping[6], traceroute[6], mount. - - Note that if you DONT select this option, but DO make busybox - suid root, ALL applets will run under root, which is a huge - security hole (think "cp /some/file /etc/passwd"). +config BUSYBOX_FEATURE_SHOW_SCRIPT + bool "Support --show SCRIPT" + default y + depends on BUSYBOX_BUSYBOX -config BUSYBOX_FEATURE_SUID_CONFIG - bool "Runtime SUID/SGID configuration via /etc/busybox.conf" +config BUSYBOX_FEATURE_INSTALLER + bool "Support --install [-s] to install applet links at runtime" default y - depends on BUSYBOX_FEATURE_SUID + depends on BUSYBOX_BUSYBOX help - Allow the SUID / SGID state of an applet to be determined at runtime - by checking /etc/busybox.conf. (This is sort of a poor man's sudo.) - The format of this file is as follows: + Enable 'busybox --install [-s]' support. This will allow you to use + busybox at runtime to create hard links or symlinks for all the + applets that are compiled into busybox. - APPLET = [Ssx-][Ssx-][x-] [USER.GROUP] +config BUSYBOX_INSTALL_NO_USR + bool "Don't use /usr" + default n + help + Disable use of /usr. "busybox --install" and "make install" + will install applets only to /bin and /sbin, + never to /usr/bin or /usr/sbin. - s: USER or GROUP is allowed to execute APPLET. - APPLET will run under USER or GROUP - (reagardless of who's running it). - S: USER or GROUP is NOT allowed to execute APPLET. - APPLET will run under USER or GROUP. - This option is not very sensical. - x: USER/GROUP/others are allowed to execute APPLET. - No UID/GID change will be done when it is run. - -: USER/GROUP/others are not allowed to execute APPLET. +config BUSYBOX_FEATURE_SUID + bool "Drop SUID state for most applets" + default y + help + With this option you can install the busybox binary belonging + to root with the suid bit set, enabling some applets to perform + root-level operations even when run by ordinary users + (for example, mounting of user mounts in fstab needs this). - An example might help: + With this option enabled, busybox drops privileges for applets + that don't need root access, before entering their main() function. - [SUID] - su = ssx root.0 # applet su can be run by anyone and runs with - # euid=0/egid=0 - su = ssx # exactly the same + If you are really paranoid and don't want even initial busybox code + to run under root for every applet, build two busybox binaries with + different applets in them (and the appropriate symlinks pointing + to each binary), and only set the suid bit on the one that needs it. - mount = sx- root.disk # applet mount can be run by root and members - # of group disk (but not anyone else) - # and runs with euid=0 (egid is not changed) + Some applets which require root rights (need suid bit on the binary + or to be run by root) and will refuse to execute otherwise: + crontab, login, passwd, su, vlock, wall. - cp = --- # disable applet cp for everyone + The applets which will use root rights if they have them + (via suid bit, or because run by root), but would try to work + without root right nevertheless: + findfs, ping[6], traceroute[6], mount. - The file has to be owned by user root, group root and has to be - writeable only by root: - (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) - The busybox executable has to be owned by user root, group - root and has to be setuid root for this to work: - (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) + Note that if you DO NOT select this option, but DO make busybox + suid root, ALL applets will run under root, which is a huge + security hole (think "cp /some/file /etc/passwd"). - Robert 'sandman' Griebl has more information here: - . +config BUSYBOX_FEATURE_SUID_CONFIG + bool "Enable SUID configuration via /etc/busybox.conf" + default y + depends on BUSYBOX_FEATURE_SUID + help + Allow the SUID/SGID state of an applet to be determined at runtime + by checking /etc/busybox.conf. (This is sort of a poor man's sudo.) + The format of this file is as follows: + + APPLET = [Ssx-][Ssx-][x-] [USER.GROUP] + + s: USER or GROUP is allowed to execute APPLET. + APPLET will run under USER or GROUP + (regardless of who's running it). + S: USER or GROUP is NOT allowed to execute APPLET. + APPLET will run under USER or GROUP. + This option is not very sensical. + x: USER/GROUP/others are allowed to execute APPLET. + No UID/GID change will be done when it is run. + -: USER/GROUP/others are not allowed to execute APPLET. + + An example might help: + + |[SUID] + |su = ssx root.0 # applet su can be run by anyone and runs with + | # euid=0,egid=0 + |su = ssx # exactly the same + | + |mount = sx- root.disk # applet mount can be run by root and members + | # of group disk (but not anyone else) + | # and runs with euid=0 (egid is not changed) + | + |cp = --- # disable applet cp for everyone + + The file has to be owned by user root, group root and has to be + writeable only by root: + (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) + The busybox executable has to be owned by user root, group + root and has to be setuid root for this to work: + (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) + + Robert 'sandman' Griebl has more information here: + . config BUSYBOX_FEATURE_SUID_CONFIG_QUIET bool "Suppress warning message if /etc/busybox.conf is not readable" default y depends on BUSYBOX_FEATURE_SUID_CONFIG help - /etc/busybox.conf should be readable by the user needing the SUID, - check this option to avoid users to be notified about missing - permissions. + /etc/busybox.conf should be readable by the user needing the SUID, + check this option to avoid users to be notified about missing + permissions. + +config BUSYBOX_FEATURE_PREFER_APPLETS + bool "exec prefers applets" + default n + help + This is an experimental option which directs applets about to + call 'exec' to try and find an applicable busybox applet before + searching the PATH. This is typically done by exec'ing + /proc/self/exe. + + This may affect shell, find -exec, xargs and similar applets. + They will use applets even if /bin/APPLET -> busybox link + is missing (or is not a link to busybox). However, this causes + problems in chroot jails without mounted /proc and with ps/top + (command name can be shown as 'exe' for applets started this way). + +config BUSYBOX_BUSYBOX_EXEC_PATH + string "Path to busybox executable" + default "/proc/self/exe" + help + When applets need to run other applets, busybox + sometimes needs to exec() itself. When the /proc filesystem is + mounted, /proc/self/exe always points to the currently running + executable. If you haven't got /proc, set this to wherever you + want to run busybox from. config BUSYBOX_SELINUX bool "Support NSA Security Enhanced Linux" default n select BUSYBOX_PLATFORM_LINUX help - Enable support for SELinux in applets ls, ps, and id. Also provide - the option of compiling in SELinux applets. + Enable support for SELinux in applets ls, ps, and id. Also provide + the option of compiling in SELinux applets. + + If you do not have a complete SELinux userland installed, this stuff + will not compile. Specifially, libselinux 1.28 or better is + directly required by busybox. If the installation is located in a + non-standard directory, provide it by invoking make as follows: - If you do not have a complete SELinux userland installed, this stuff - will not compile. Go visit - http://www.nsa.gov/selinux/index.html - to download the necessary stuff to allow busybox to compile with - this option enabled. Specifially, libselinux 1.28 or better is - directly required by busybox. If the installation is located in a - non-standard directory, provide it by invoking make as follows: CFLAGS=-I \ LDFLAGS=-L \ make - Most people will leave this set to 'N'. + Most people will leave this set to 'N'. -config BUSYBOX_FEATURE_PREFER_APPLETS - bool "exec prefers applets" +config BUSYBOX_FEATURE_CLEAN_UP + bool "Clean up all memory before exiting (usually not needed)" default n help - This is an experimental option which directs applets about to - call 'exec' to try and find an applicable busybox applet before - searching the PATH. This is typically done by exec'ing - /proc/self/exe. - This may affect shell, find -exec, xargs and similar applets. - They will use applets even if /bin/ -> busybox link - is missing (or is not a link to busybox). However, this causes - problems in chroot jails without mounted /proc and with ps/top - (command name can be shown as 'exe' for applets started this way). + As a size optimization, busybox normally exits without explicitly + freeing dynamically allocated memory or closing files. This saves + space since the OS will clean up for us, but it can confuse debuggers + like valgrind, which report tons of memory and resource leaks. -config BUSYBOX_BUSYBOX_EXEC_PATH - string "Path to BusyBox executable" - default "/proc/self/exe" + Don't enable this unless you have a really good reason to clean + things up manually. + +config BUSYBOX_FEATURE_SYSLOG_INFO + bool "Support LOG_INFO level syslog messages" + default y + depends on BUSYBOX_FEATURE_SYSLOG help - When Busybox applets need to run other busybox applets, BusyBox - sometimes needs to exec() itself. When the /proc filesystem is - mounted, /proc/self/exe always points to the currently running - executable. If you haven't got /proc, set this to wherever you - want to run BusyBox from. + Applets which send their output to syslog use either LOG_INFO or + LOG_ERR log levels, but by disabling this option all messages will + be logged at the LOG_ERR level, saving just under 200 bytes. # These are auto-selected by other options @@ -522,57 +355,53 @@ config BUSYBOX_FEATURE_SYSLOG bool #No description makes it a hidden option default n #help - # 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. + #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. -config BUSYBOX_FEATURE_HAVE_RPC +config BUSYBOX_PLATFORM_LINUX bool #No description makes it a hidden option default n #help - # This is automatically selected if any of enabled applets need it. - # You do not need to select it manually. + #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. -endmenu - -menu 'Build Options' +comment 'Build Options' config BUSYBOX_STATIC - bool "Build BusyBox as a static binary (no shared libs)" - default y if ADK_STATIC + bool "Build static binary (no shared libs)" default n help - If you want to build a static BusyBox binary, which does not - use or require any shared libraries, then enable this option. - This can cause BusyBox to be considerably larger, so you should - leave this option false unless you have a good reason (i.e. - your target platform does not support shared libraries, or - you are building an initrd which doesn't need anything but - BusyBox, etc). - - Most people will leave this set to 'N'. + If you want to build a static binary, which does not use + or require any shared libraries, enable this option. + Static binaries are larger, but do not require functioning + dynamic libraries to be present, which is important if used + as a system rescue tool. config BUSYBOX_PIE - bool "Build BusyBox as a position independent executable" + bool "Build position independent executable" default n depends on !BUSYBOX_STATIC help - Hardened code option. PIE binaries are loaded at a different - address at each invocation. This has some overhead, - particularly on x86-32 which is short on registers. + Hardened code option. PIE binaries are loaded at a different + address at each invocation. This has some overhead, + particularly on x86-32 which is short on registers. - Most people will leave this set to 'N'. + Most people will leave this set to 'N'. config BUSYBOX_NOMMU bool "Force NOMMU build" - default n if ADK_TARGET_WITH_MMU - default y + default n help - Busybox tries to detect whether architecture it is being - built against supports MMU or not. If this detection fails, - or if you want to build NOMMU version of busybox for testing, - you may force NOMMU build here. + Busybox tries to detect whether architecture it is being + built against supports MMU or not. If this detection fails, + or if you want to build NOMMU version of busybox for testing, + you may force NOMMU build here. - Most people will leave this set to 'N'. + Most people will leave this set to 'N'. # PIE can be made to work with BUILD_LIBBUSYBOX, but currently # build system does not support that @@ -581,187 +410,257 @@ config BUSYBOX_BUILD_LIBBUSYBOX default n depends on !BUSYBOX_FEATURE_PREFER_APPLETS && !BUSYBOX_PIE && !BUSYBOX_STATIC help - Build a shared library libbusybox.so.N.N.N which contains all - busybox code. + Build a shared library libbusybox.so.N.N.N which contains all + busybox code. - This feature allows every applet to be built as a tiny - separate executable. Enabling it for "one big busybox binary" - approach serves no purpose and increases code size. - You should almost certainly say "no" to this. + This feature allows every applet to be built as a really tiny + separate executable linked against the library: + |$ size 0_lib/l* + | text data bss dec hex filename + | 939 212 28 1179 49b 0_lib/last + | 939 212 28 1179 49b 0_lib/less + | 919138 8328 1556 929022 e2cfe 0_lib/libbusybox.so.1.N.M -### config FEATURE_FULL_LIBBUSYBOX -### bool "Feature-complete libbusybox" -### default n if !FEATURE_SHARED_BUSYBOX -### depends on BUSYBOX_BUILD_LIBBUSYBOX -### help -### Build a libbusybox with the complete feature-set, disregarding -### the actually selected config. -### -### Normally, libbusybox will only contain the features which are -### used by busybox itself. If you plan to write a separate -### standalone application which uses libbusybox say 'Y'. -### -### Note: libbusybox is GPL, not LGPL, and exports no stable API that -### might act as a copyright barrier. We can and will modify the -### exported function set between releases (even minor version number -### changes), and happily break out-of-tree features. -### -### Say 'N' if in doubt. + This is useful on NOMMU systems which are not capable + of sharing executables, but are capable of sharing code + in dynamic libraries. + +config BUSYBOX_FEATURE_LIBBUSYBOX_STATIC + bool "Pull in all external references into libbusybox" + default n + depends on BUSYBOX_BUILD_LIBBUSYBOX + help + Make libbusybox library independent, not using or requiring + any other shared libraries. config BUSYBOX_FEATURE_INDIVIDUAL bool "Produce a binary for each applet, linked against libbusybox" default y depends on BUSYBOX_BUILD_LIBBUSYBOX help - If your CPU architecture doesn't allow for sharing text/rodata - sections of running binaries, but allows for runtime dynamic - libraries, this option will allow you to reduce memory footprint - when you have many different applets running at once. + If your CPU architecture doesn't allow for sharing text/rodata + sections of running binaries, but allows for runtime dynamic + libraries, this option will allow you to reduce memory footprint + when you have many different applets running at once. - If your CPU architecture allows for sharing text/rodata, - having single binary is more optimal. + If your CPU architecture allows for sharing text/rodata, + having single binary is more optimal. - Each applet will be a tiny program, dynamically linked - against libbusybox.so.N.N.N. + Each applet will be a tiny program, dynamically linked + against libbusybox.so.N.N.N. - You need to have a working dynamic linker. + You need to have a working dynamic linker. config BUSYBOX_FEATURE_SHARED_BUSYBOX bool "Produce additional busybox binary linked against libbusybox" default y depends on BUSYBOX_BUILD_LIBBUSYBOX help - Build busybox, dynamically linked against libbusybox.so.N.N.N. + Build busybox, dynamically linked against libbusybox.so.N.N.N. - You need to have a working dynamic linker. + You need to have a working dynamic linker. ### config BUILD_AT_ONCE ### bool "Compile all sources at once" ### default n ### help -### Normally each source-file is compiled with one invocation of -### the compiler. -### If you set this option, all sources are compiled at once. -### This gives the compiler more opportunities to optimize which can -### result in smaller and/or faster binaries. +### Normally each source-file is compiled with one invocation of +### the compiler. +### If you set this option, all sources are compiled at once. +### This gives the compiler more opportunities to optimize which can +### result in smaller and/or faster binaries. ### -### Setting this option will consume alot of memory, e.g. if you -### enable all applets with all features, gcc uses more than 300MB -### RAM during compilation of busybox. +### Setting this option will consume alot of memory, e.g. if you +### enable all applets with all features, gcc uses more than 300MB +### RAM during compilation of busybox. ### -### This option is most likely only beneficial for newer compilers -### such as gcc-4.1 and above. +### This option is most likely only beneficial for newer compilers +### such as gcc-4.1 and above. ### -### Say 'N' unless you know what you are doing. - -config BUSYBOX_LFS - bool "Build with Large File Support (for accessing files > 2 GB)" - default y - help - If you want to build BusyBox with large file support, then enable - this option. This will have no effect if your kernel or your C - library lacks large file support for large files. Some of the - programs that can benefit from large file support include dd, gzip, - cp, mount, tar, and many others. If you want to access files larger - than 2 Gigabytes, enable this option. Otherwise, leave it set to 'N'. +### Say 'N' unless you know what you are doing. config BUSYBOX_CROSS_COMPILER_PREFIX - string "Cross Compiler prefix" + string "Cross compiler prefix" default "" help - If you want to build BusyBox with a cross compiler, then you - will need to set this to the cross-compiler prefix, for example, - "i386-uclibc-". + If you want to build busybox with a cross compiler, then you + will need to set this to the cross-compiler prefix, for example, + "i386-uclibc-". - Note that CROSS_COMPILE environment variable or - "make CROSS_COMPILE=xxx ..." will override this selection. + Note that CROSS_COMPILE environment variable or + "make CROSS_COMPILE=xxx ..." will override this selection. - Native builds leave this empty. + Native builds leave this empty. config BUSYBOX_SYSROOT string "Path to sysroot" default "" help - If you want to build BusyBox with a cross compiler, then you - might also need to specify where /usr/include and /usr/lib - will be found. + If you want to build busybox with a cross compiler, then you + might also need to specify where /usr/include and /usr/lib + will be found. - For example, BusyBox can be built against an installed - Android NDK, platform version 9, for ARM ABI with + For example, busybox can be built against an installed + Android NDK, platform version 9, for ARM ABI with - CONFIG_SYSROOT=/opt/android-ndk/platforms/android-9/arch-arm + CONFIG_SYSROOT=/opt/android-ndk/platforms/android-9/arch-arm - Native builds leave this empty. + Native builds leave this empty. config BUSYBOX_EXTRA_CFLAGS string "Additional CFLAGS" default "" help - Additional CFLAGS to pass to the compiler verbatim. + Additional CFLAGS to pass to the compiler verbatim. config BUSYBOX_EXTRA_LDFLAGS string "Additional LDFLAGS" default "" help - Additional LDFLAGS to pass to the linker verbatim. + Additional LDFLAGS to pass to the linker verbatim. config BUSYBOX_EXTRA_LDLIBS string "Additional LDLIBS" default "" help - Additional LDLIBS to pass to the linker with -l. + Additional LDLIBS to pass to the linker with -l. -endmenu +config BUSYBOX_USE_PORTABLE_CODE + bool "Avoid using GCC-specific code constructs" + default n + help + Use this option if you are trying to compile busybox with + compiler other than gcc. + If you do use gcc, this option may needlessly increase code size. + +config BUSYBOX_STACK_OPTIMIZATION_386 + bool "Use -mpreferred-stack-boundary=2 on i386 arch" + default y + help + This option makes for smaller code, but some libc versions + do not work with it (they use SSE instructions without + ensuring stack alignment). + +comment 'Installation Options ("make install" behavior)' + +choice + prompt "What kind of applet links to install" + default BUSYBOX_INSTALL_APPLET_SYMLINKS + help + Choose what kind of links to applets are created by "make install". + +config BUSYBOX_INSTALL_APPLET_SYMLINKS + bool "as soft-links" + help + Install applets as soft-links to the busybox binary. This needs some + free inodes on the filesystem, but might help with filesystem + generators that can't cope with hard-links. + +config BUSYBOX_INSTALL_APPLET_HARDLINKS + bool "as hard-links" + help + Install applets as hard-links to the busybox binary. This might + count on a filesystem with few inodes. + +config BUSYBOX_INSTALL_APPLET_SCRIPT_WRAPPERS + bool "as script wrappers" + help + Install applets as script wrappers that call the busybox binary. + +config BUSYBOX_INSTALL_APPLET_DONT + bool "not installed" + help + Do not install applet links. Useful when you plan to use + busybox --install for installing links, or plan to use + a standalone shell and thus don't need applet links. + +endchoice + +choice + prompt "/bin/sh applet link" + default BUSYBOX_INSTALL_SH_APPLET_SYMLINK + depends on BUSYBOX_INSTALL_APPLET_SCRIPT_WRAPPERS + help + Choose how you install /bin/sh applet link. + +config BUSYBOX_INSTALL_SH_APPLET_SYMLINK + bool "as soft-link" + help + Install /bin/sh applet as soft-link to the busybox binary. + +config BUSYBOX_INSTALL_SH_APPLET_HARDLINK + bool "as hard-link" + help + Install /bin/sh applet as hard-link to the busybox binary. + +config BUSYBOX_INSTALL_SH_APPLET_SCRIPT_WRAPPER + bool "as script wrapper" + help + Install /bin/sh applet as script wrapper that calls + the busybox binary. -menu 'Debugging Options' +endchoice + +config BUSYBOX_PREFIX + string "Destination path for 'make install'" + default "@IDIR@" + help + Where "make install" should install busybox binary and links. + +comment 'Debugging Options' config BUSYBOX_DEBUG - bool "Build BusyBox with extra Debugging symbols" + bool "Build with debug information" default n help - Say Y here if you wish to examine BusyBox internals while applets are - running. This increases the size of the binary considerably, and - should only be used when doing development. If you are doing - development and want to debug BusyBox, answer Y. + Say Y here to compile with debug information. + This increases the size of the binary considerably, and + should only be used when doing development. + + This adds -g option to gcc command line. - Most people should answer N. + Most people should answer N. config BUSYBOX_DEBUG_PESSIMIZE bool "Disable compiler optimizations" default n depends on BUSYBOX_DEBUG help - The compiler's optimization of source code can eliminate and reorder - code, resulting in an executable that's hard to understand when - stepping through it with a debugger. This switches it off, resulting - in a much bigger executable that more closely matches the source - code. + The compiler's optimization of source code can eliminate and reorder + code, resulting in an executable that's hard to understand when + stepping through it with a debugger. This switches it off, resulting + in a much bigger executable that more closely matches the source + code. + + This replaces -Os/-O2 with -O0 in gcc command line. config BUSYBOX_DEBUG_SANITIZE bool "Enable runtime sanitizers (ASAN/LSAN/USAN/etc...)" default n help - Say Y here if you want to enable runtime sanitizers. These help - catch bad memory accesses (e.g. buffer overflows), but will make - the executable larger and slow down runtime a bit. + Say Y here if you want to enable runtime sanitizers. These help + catch bad memory accesses (e.g. buffer overflows), but will make + the executable larger and slow down runtime a bit. + + This adds -fsanitize=foo options to gcc command line. - If you aren't developing/testing busybox, say N here. + If you aren't developing/testing busybox, say N here. config BUSYBOX_UNIT_TEST bool "Build unit tests" default n help - Say Y here if you want to build unit tests (both the framework and - test cases) as a Busybox applet. This results in bigger code, so you - probably don't want this option in production builds. + Say Y here if you want to build unit tests (both the framework and + test cases) as an applet. This results in bigger code, so you + probably don't want this option in production builds. config BUSYBOX_WERROR bool "Abort compilation on any warning" default n help - Selecting this will add -Werror to gcc command line. + This adds -Werror to gcc command line. - Most people should answer N. + Most people should answer N. config BUSYBOX_WARN_SIMPLE_MSG bool "Warn about single parameter bb_xx_msg calls" @@ -778,33 +677,33 @@ config BUSYBOX_WARN_SIMPLE_MSG choice prompt "Additional debugging library" - default NO_DEBUG_LIB - help - Using an additional debugging library will make BusyBox become - considerable larger and will cause it to run more slowly. You - should always leave this option disabled for production use. - - dmalloc support: - ---------------- - This enables compiling with dmalloc ( http://dmalloc.com/ ) - which is an excellent public domain mem leak and malloc problem - detector. To enable dmalloc, before running busybox you will - want to properly set your environment, for example: - export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile - The 'debug=' value is generated using the following command - dmalloc -p log-stats -p log-non-free -p log-bad-space \ - -p log-elapsed-time -p check-fence -p check-heap \ - -p check-lists -p check-blank -p check-funcs -p realloc-copy \ - -p allow-free-null - - Electric-fence support: - ----------------------- - This enables compiling with Electric-fence support. Electric - fence is another very useful malloc debugging library which uses - your computer's virtual memory hardware to detect illegal memory - accesses. This support will make BusyBox be considerable larger - and run slower, so you should leave this option disabled unless - you are hunting a hard to find memory problem. + default BUSYBOX_NO_DEBUG_LIB + help + Using an additional debugging library will make busybox become + considerably larger and will cause it to run more slowly. You + should always leave this option disabled for production use. + + dmalloc support: + ---------------- + This enables compiling with dmalloc ( http://dmalloc.com/ ) + which is an excellent public domain mem leak and malloc problem + detector. To enable dmalloc, before running busybox you will + want to properly set your environment, for example: + export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile + The 'debug=' value is generated using the following command + dmalloc -p log-stats -p log-non-free -p log-bad-space \ + -p log-elapsed-time -p check-fence -p check-heap \ + -p check-lists -p check-blank -p check-funcs -p realloc-copy \ + -p allow-free-null + + Electric-fence support: + ----------------------- + This enables compiling with Electric-fence support. Electric + fence is another very useful malloc debugging library which uses + your computer's virtual memory hardware to detect illegal memory + accesses. This support will make busybox be considerably larger + and run slower, so you should leave this option disabled unless + you are hunting a hard to find memory problem. config BUSYBOX_NO_DEBUG_LIB @@ -818,76 +717,6 @@ config BUSYBOX_EFENCE endchoice -endmenu - -menu 'Installation Options ("make install" behavior)' - -choice - prompt "What kind of applet links to install" - default INSTALL_APPLET_SYMLINKS - help - Choose what kind of links to applets are created by "make install". - -config BUSYBOX_INSTALL_APPLET_SYMLINKS - bool "as soft-links" - help - Install applets as soft-links to the busybox binary. This needs some - free inodes on the filesystem, but might help with filesystem - generators that can't cope with hard-links. - -config BUSYBOX_INSTALL_APPLET_HARDLINKS - bool "as hard-links" - help - Install applets as hard-links to the busybox binary. This might - count on a filesystem with few inodes. - -config BUSYBOX_INSTALL_APPLET_SCRIPT_WRAPPERS - bool "as script wrappers" - help - Install applets as script wrappers that call the busybox binary. - -config BUSYBOX_INSTALL_APPLET_DONT - bool "not installed" - help - Do not install applet links. Useful when you plan to use - busybox --install for installing links, or plan to use - a standalone shell and thus don't need applet links. - -endchoice - -choice - prompt "/bin/sh applet link" - default INSTALL_SH_APPLET_SYMLINK - depends on BUSYBOX_INSTALL_APPLET_SCRIPT_WRAPPERS - help - Choose how you install /bin/sh applet link. - -config BUSYBOX_INSTALL_SH_APPLET_SYMLINK - bool "as soft-link" - help - Install /bin/sh applet as soft-link to the busybox binary. - -config BUSYBOX_INSTALL_SH_APPLET_HARDLINK - bool "as hard-link" - help - Install /bin/sh applet as hard-link to the busybox binary. - -config BUSYBOX_INSTALL_SH_APPLET_SCRIPT_WRAPPER - bool "as script wrapper" - help - Install /bin/sh applet as script wrapper that calls - the busybox binary. - -endchoice - -config BUSYBOX_PREFIX - string "BusyBox installation prefix" - default "@IDIR@" - help - Define your directory to install BusyBox files/subdirs in. - -endmenu - source package/busybox/config/libbb/Config.in endmenu diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in index b3f453ae2..f2788041a 100644 --- a/package/busybox/config/archival/Config.in +++ b/package/busybox/config/archival/Config.in @@ -1,7 +1,7 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Archival Utilities" @@ -9,453 +9,403 @@ menu "Archival Utilities" config BUSYBOX_FEATURE_SEAMLESS_XZ bool "Make tar, rpm, modprobe etc understand .xz data" default y - help - Make tar, rpm, modprobe etc understand .xz data. config BUSYBOX_FEATURE_SEAMLESS_LZMA bool "Make tar, rpm, modprobe etc understand .lzma data" default y - help - Make tar, rpm, modprobe etc understand .lzma data. config BUSYBOX_FEATURE_SEAMLESS_BZ2 bool "Make tar, rpm, modprobe etc understand .bz2 data" default y - help - Make tar, rpm, modprobe etc understand .bz2 data. config BUSYBOX_FEATURE_SEAMLESS_GZ bool "Make tar, rpm, modprobe etc understand .gz data" default y - help - Make tar, rpm, modprobe etc understand .gz data. config BUSYBOX_FEATURE_SEAMLESS_Z - bool "tar, rpm, modprobe etc understand .Z data" - default n - help - Make tar, rpm, modprobe etc understand .Z data. + bool "Make tar, rpm, modprobe etc understand .Z data" + default n # it is ancient config BUSYBOX_AR - bool "ar" - depends on !BUSYBOX_DISABLE_AR + bool "ar (9.5 kb)" default n # needs to be improved to be able to replace binutils ar help - ar is an archival utility program used to create, modify, and - extract contents from archives. An archive is a single file holding - a collection of other files in a structure that makes it possible to - retrieve the original individual files (called archive members). - The original files' contents, mode (permissions), timestamp, owner, - and group are preserved in the archive, and can be restored on - extraction. + ar is an archival utility program used to create, modify, and + extract contents from archives. In practice, it is used exclusively + for object module archives used by compilers. - The stored filename is limited to 15 characters. (for more information - see long filename support). - ar has 60 bytes of overheads for every stored file. - - This implementation of ar can extract archives, it cannot create or - modify them. - On an x86 system, the ar applet adds about 1K. - - Unless you have a specific application which requires ar, you should - probably say N here. + Unless you have a specific application which requires ar, you should + probably say N here: most compilers come with their own ar utility. config BUSYBOX_FEATURE_AR_LONG_FILENAMES - bool "Support for long filenames (not needed for debs)" + bool "Support long filenames (not needed for debs)" default y depends on BUSYBOX_AR help - By default the ar format can only store the first 15 characters - of the filename, this option removes that limitation. - It supports the GNU ar long filename method which moves multiple long - filenames into a the data section of a new ar entry. + By default the ar format can only store the first 15 characters + of the filename, this option removes that limitation. + It supports the GNU ar long filename method which moves multiple long + filenames into a the data section of a new ar entry. config BUSYBOX_FEATURE_AR_CREATE bool "Support archive creation" default y depends on BUSYBOX_AR help - This enables archive creation (-c and -r) with busybox ar. + This enables archive creation (-c and -r) with busybox ar. +config BUSYBOX_UNCOMPRESS + bool "uncompress (7.1 kb)" + default n # ancient + help + uncompress is used to decompress archives created by compress. + Not much used anymore, replaced by gzip/gunzip. +config BUSYBOX_GUNZIP + bool "gunzip (11 kb)" + default y + select BUSYBOX_FEATURE_GZIP_DECOMPRESS + help + gunzip is used to decompress archives created by gzip. + You can use the '-t' option to test the integrity of + an archive, without decompressing it. + +config BUSYBOX_ZCAT + bool "zcat (24 kb)" + default y + select BUSYBOX_FEATURE_GZIP_DECOMPRESS + help + Alias to "gunzip -c". +config BUSYBOX_FEATURE_GUNZIP_LONG_OPTIONS + bool "Enable long options" + default y + depends on (BUSYBOX_GUNZIP || BUSYBOX_ZCAT) && BUSYBOX_LONG_OPTS config BUSYBOX_BUNZIP2 - bool "bunzip2" - depends on !BUSYBOX_DISABLE_BUNZIP2 - default n + bool "bunzip2 (8.7 kb)" + default y + select BUSYBOX_FEATURE_BZIP2_DECOMPRESS help - bunzip2 is a compression utility using the Burrows-Wheeler block - sorting text compression algorithm, and Huffman coding. Compression - is generally considerably better than that achieved by more - conventional LZ77/LZ78-based compressors, and approaches the - performance of the PPM family of statistical compressors. + bunzip2 is a compression utility using the Burrows-Wheeler block + sorting text compression algorithm, and Huffman coding. Compression + is generally considerably better than that achieved by more + conventional LZ77/LZ78-based compressors, and approaches the + performance of the PPM family of statistical compressors. - Unless you have a specific application which requires bunzip2, you - should probably say N here. + Unless you have a specific application which requires bunzip2, you + should probably say N here. config BUSYBOX_BZCAT - bool "bzcat" + bool "bzcat (8.7 kb)" default y + select BUSYBOX_FEATURE_BZIP2_DECOMPRESS help - Alias to "bunzip2 -c". + Alias to "bunzip2 -c". +config BUSYBOX_UNLZMA + bool "unlzma (7.5 kb)" + default y + help + unlzma is a compression utility using the Lempel-Ziv-Markov chain + compression algorithm, and range coding. Compression + is generally considerably better than that achieved by the bzip2 + compressors. -config BUSYBOX_BZIP2 - bool "bzip2" - depends on !BUSYBOX_DISABLE_BZIP2 - default n +config BUSYBOX_LZCAT + bool "lzcat (7.5 kb)" + default y + help + Alias to "unlzma -c". + +config BUSYBOX_LZMA + bool "lzma -d" + default y + help + Enable this option if you want commands like "lzma -d" to work. + IOW: you'll get lzma applet, but it will always require -d option. +config BUSYBOX_UNXZ + bool "unxz (13 kb)" + default y help - bzip2 is a compression utility using the Burrows-Wheeler block - sorting text compression algorithm, and Huffman coding. Compression - is generally considerably better than that achieved by more - conventional LZ77/LZ78-based compressors, and approaches the - performance of the PPM family of statistical compressors. + unxz is a unlzma successor. - Unless you have a specific application which requires bzip2, you - should probably say N here. +config BUSYBOX_XZCAT + bool "xzcat (13 kb)" + default y + help + Alias to "unxz -c". +config BUSYBOX_XZ + bool "xz -d" + default y + help + Enable this option if you want commands like "xz -d" to work. + IOW: you'll get xz applet, but it will always require -d option. +config BUSYBOX_BZIP2 + bool "bzip2 (16 kb)" + default y + help + bzip2 is a compression utility using the Burrows-Wheeler block + sorting text compression algorithm, and Huffman coding. Compression + is generally considerably better than that achieved by more + conventional LZ77/LZ78-based compressors, and approaches the + performance of the PPM family of statistical compressors. + + Unless you have a specific application which requires bzip2, you + should probably say N here. + +config BUSYBOX_BZIP2_SMALL + int "Trade bytes for speed (0:fast, 9:small)" + default 8 # all "fast or small" options default to small + range 0 9 + depends on BUSYBOX_BZIP2 + help + Trade code size versus speed. + Approximate values with gcc-6.3.0 "bzip -9" compressing + linux-4.15.tar were: + value time (sec) code size (386) + 9 (smallest) 70.11 7687 + 8 67.93 8091 + 7 67.88 8405 + 6 67.78 8624 + 5 67.05 9427 + 4-0 (fastest) 64.14 12083 + +config BUSYBOX_FEATURE_BZIP2_DECOMPRESS + bool "Enable decompression" + default y + depends on BUSYBOX_BZIP2 || BUSYBOX_BUNZIP2 || BUSYBOX_BZCAT + help + Enable -d (--decompress) and -t (--test) options for bzip2. + This will be automatically selected if bunzip2 or bzcat is + enabled. config BUSYBOX_CPIO - bool "cpio" - depends on !BUSYBOX_DISABLE_CPIO - default n + bool "cpio (15 kb)" + default y help - cpio is an archival utility program used to create, modify, and - extract contents from archives. - cpio has 110 bytes of overheads for every stored file. + cpio is an archival utility program used to create, modify, and + extract contents from archives. + cpio has 110 bytes of overheads for every stored file. - This implementation of cpio can extract cpio archives created in the - "newc" or "crc" format, it cannot create or modify them. + This implementation of cpio can extract cpio archives created in the + "newc" or "crc" format. - Unless you have a specific application which requires cpio, you - should probably say N here. + Unless you have a specific application which requires cpio, you + should probably say N here. config BUSYBOX_FEATURE_CPIO_O - bool "Support for archive creation" + bool "Support archive creation" default y depends on BUSYBOX_CPIO help - This implementation of cpio can create cpio archives in the "newc" - format only. + This implementation of cpio can create cpio archives in the "newc" + format only. config BUSYBOX_FEATURE_CPIO_P - bool "Support for passthrough mode" + bool "Support passthrough mode" default y depends on BUSYBOX_FEATURE_CPIO_O help - Passthrough mode. Rarely used. - + Passthrough mode. Rarely used. config BUSYBOX_DPKG - bool "dpkg" - default n + bool "dpkg (43 kb)" + default y select BUSYBOX_FEATURE_SEAMLESS_GZ help - dpkg is a medium-level tool to install, build, remove and manage - Debian packages. - - This implementation of dpkg has a number of limitations, - you should use the official dpkg if possible. + dpkg is a medium-level tool to install, build, remove and manage + Debian packages. + This implementation of dpkg has a number of limitations, + you should use the official dpkg if possible. config BUSYBOX_DPKG_DEB - bool "dpkg_deb" - default n - select BUSYBOX_FEATURE_SEAMLESS_GZ - help - dpkg-deb unpacks and provides information about Debian archives. - - This implementation of dpkg-deb cannot pack archives. - - Unless you have a specific application which requires dpkg-deb, - say N here. - -config BUSYBOX_FEATURE_DPKG_DEB_EXTRACT_ONLY - bool "Extract only (-x)" - default n - depends on BUSYBOX_DPKG_DEB - help - This reduces dpkg-deb to the equivalent of - "ar -p data.tar.gz | tar -zx". However it saves space as none - of the extra dpkg-deb, ar or tar options are needed, they are linked - to internally. - -config BUSYBOX_GUNZIP - bool "gunzip" - default y - help - gunzip is used to decompress archives created by gzip. - You can use the `-t' option to test the integrity of - an archive, without decompressing it. - -config BUSYBOX_ZCAT - bool "zcat" + bool "dpkg-deb (30 kb)" default y + select BUSYBOX_FEATURE_SEAMLESS_GZ help - Alias to "gunzip -c". + dpkg-deb unpacks and provides information about Debian archives. -config BUSYBOX_FEATURE_GUNZIP_LONG_OPTIONS - bool "Enable long options" - default y - depends on BUSYBOX_GUNZIP && BUSYBOX_LONG_OPTS - help - Enable use of long options. + This implementation of dpkg-deb cannot pack archives. + Unless you have a specific application which requires dpkg-deb, + say N here. config BUSYBOX_GZIP - bool "gzip" + bool "gzip (17 kb)" default y help - gzip is used to compress files. - It's probably the most widely used UNIX compression program. + gzip is used to compress files. + It's probably the most widely used UNIX compression program. config BUSYBOX_FEATURE_GZIP_LONG_OPTIONS bool "Enable long options" default y depends on BUSYBOX_GZIP && BUSYBOX_LONG_OPTS - help - Enable use of long options, increases size by about 106 Bytes config BUSYBOX_GZIP_FAST - int "Trade memory for gzip speed (0:small,slow - 2:fast,big)" + int "Trade memory for speed (0:small,slow - 2:fast,big)" default 0 range 0 2 depends on BUSYBOX_GZIP help - Enable big memory options for gzip. - 0: small buffers, small hash-tables - 1: larger buffers, larger hash-tables - 2: larger buffers, largest hash-tables - Larger models may give slightly better compression + Enable big memory options for gzip. + 0: small buffers, small hash-tables + 1: larger buffers, larger hash-tables + 2: larger buffers, largest hash-tables + Larger models may give slightly better compression -config BUSYBOX_LZOP - bool "lzop" +config BUSYBOX_FEATURE_GZIP_LEVELS + bool "Enable compression levels" default n + depends on BUSYBOX_GZIP help - Lzop compression/decompresion. + Enable support for compression levels 4-9. The default level + is 6. If levels 1-3 are specified, 4 is used. + If this option is not selected, -N options are ignored and -6 + is used. -config BUSYBOX_UNLZOP - bool "unlzop" - default n +config BUSYBOX_FEATURE_GZIP_DECOMPRESS + bool "Enable decompression" + default y + depends on BUSYBOX_GZIP || BUSYBOX_GUNZIP || BUSYBOX_ZCAT help - Lzop decompresion. - -config BUSYBOX_LZOPCAT - bool "lzopcat" + Enable -d (--decompress) and -t (--test) options for gzip. + This will be automatically selected if gunzip or zcat is + enabled. +config BUSYBOX_IPKG + bool "ipkg" default n help - Alias to "unlzop -c". + ipkg is a tool to install, build, remove and manage + packages. -config BUSYBOX_LZOP_COMPR_HIGH - bool "lzop compression levels 7,8,9 (not very useful)" - default n - depends on BUSYBOX_LZOP +config BUSYBOX_LZOP + bool "lzop (12 kb)" + default y help - High levels (7,8,9) of lzop compression. These levels - are actually slower than gzip at equivalent compression ratios - and take up 3.2K of code. + Lzop compression/decompresion. -config BUSYBOX_FEATURE_GZIP_LEVELS - bool "Enable compression levels" - default n - depends on BUSYBOX_GZIP +config BUSYBOX_UNLZOP + bool "unlzop (13 kb)" + default n # INCOMPAT: upstream lzop does not provide such tool help - Enable support for compression levels 4-9. The default level - is 6. If levels 1-3 are specified, 4 is used. - If this option is not selected, -N options are ignored and -9 - is used. + Lzop decompresion. -config BUSYBOX_IPKG - bool "ipkg" - default n +config BUSYBOX_LZOPCAT + bool "lzopcat (13 kb)" + default n # INCOMPAT: upstream lzop does not provide such tool help - ipkg is the itsy package management system. + Alias to "lzop -dc". -config BUSYBOX_RPM2CPIO - bool "rpm2cpio" - depends on !BUSYBOX_DISABLE_RPM +config BUSYBOX_LZOP_COMPR_HIGH + bool "lzop compression levels 7,8,9 (not very useful)" default n + depends on BUSYBOX_LZOP || BUSYBOX_UNLZOP || BUSYBOX_LZOPCAT help - Converts a RPM file into a CPIO archive. - + High levels (7,8,9) of lzop compression. These levels + are actually slower than gzip at equivalent compression ratios + and take up 3.2K of code. config BUSYBOX_RPM - bool "rpm" - depends on !BUSYBOX_DISABLE_RPM - default n + bool "rpm (32 kb)" + default y help - Mini RPM applet - queries and extracts RPM packages. - + Mini RPM applet - queries and extracts RPM packages. +config BUSYBOX_RPM2CPIO + bool "rpm2cpio (21 kb)" + default y + help + Converts a RPM file into a CPIO archive. config BUSYBOX_TAR - bool "tar" - depends on !BUSYBOX_DISABLE_TAR + bool "tar (39 kb)" default y help - tar is an archiving program. It's commonly used with gzip to - create compressed archives. It's probably the most widely used - UNIX archive program. + tar is an archiving program. It's commonly used with gzip to + create compressed archives. It's probably the most widely used + UNIX archive program. + +config BUSYBOX_FEATURE_TAR_LONG_OPTIONS + bool "Enable long options" + default y + depends on BUSYBOX_TAR && BUSYBOX_LONG_OPTS config BUSYBOX_FEATURE_TAR_CREATE - bool "Enable archive creation" + bool "Enable -c (archive creation)" default y depends on BUSYBOX_TAR - help - If you enable this option you'll be able to create - tar archives using the `-c' option. config BUSYBOX_FEATURE_TAR_AUTODETECT bool "Autodetect compressed tarballs" default y depends on BUSYBOX_TAR && (BUSYBOX_FEATURE_SEAMLESS_Z || BUSYBOX_FEATURE_SEAMLESS_GZ || BUSYBOX_FEATURE_SEAMLESS_BZ2 || BUSYBOX_FEATURE_SEAMLESS_LZMA || BUSYBOX_FEATURE_SEAMLESS_XZ) help - With this option tar can automatically detect compressed - tarballs. Currently it works only on files (not pipes etc). + With this option tar can automatically detect compressed + tarballs. Currently it works only on files (not pipes etc). config BUSYBOX_FEATURE_TAR_FROM - bool "Enable -X (exclude from) and -T (include from) options)" + bool "Enable -X (exclude from) and -T (include from) options" default y depends on BUSYBOX_TAR help - If you enable this option you'll be able to specify - a list of files to include or exclude from an archive. + If you enable this option you'll be able to specify + a list of files to include or exclude from an archive. config BUSYBOX_FEATURE_TAR_OLDGNU_COMPATIBILITY - bool "Support for old tar header format" + bool "Support old tar header format" default y depends on BUSYBOX_TAR || BUSYBOX_DPKG help - This option is required to unpack archives created in - the old GNU format; help to kill this old format by - repacking your ancient archives with the new format. + This option is required to unpack archives created in + the old GNU format; help to kill this old format by + repacking your ancient archives with the new format. config BUSYBOX_FEATURE_TAR_OLDSUN_COMPATIBILITY bool "Enable untarring of tarballs with checksums produced by buggy Sun tar" - default n + default y depends on BUSYBOX_TAR || BUSYBOX_DPKG help - This option is required to unpack archives created by some old - version of Sun's tar (it was calculating checksum using signed - arithmetic). It is said to be fixed in newer Sun tar, but "old" - tarballs still exist. + This option is required to unpack archives created by some old + version of Sun's tar (it was calculating checksum using signed + arithmetic). It is said to be fixed in newer Sun tar, but "old" + tarballs still exist. config BUSYBOX_FEATURE_TAR_GNU_EXTENSIONS - bool "Support for GNU tar extensions (long filenames)" + bool "Support GNU tar extensions (long filenames)" default y depends on BUSYBOX_TAR || BUSYBOX_DPKG - help - With this option busybox supports GNU long filenames and - linknames. - -config BUSYBOX_FEATURE_TAR_LONG_OPTIONS - bool "Enable long options" - default y - depends on BUSYBOX_TAR && BUSYBOX_LONG_OPTS - help - Enable use of long options, increases size by about 400 Bytes config BUSYBOX_FEATURE_TAR_TO_COMMAND - bool "Support for writing to an external program" + bool "Support writing to an external program (--to-command)" default y depends on BUSYBOX_TAR && BUSYBOX_FEATURE_TAR_LONG_OPTIONS help - If you enable this option you'll be able to instruct tar to send - the contents of each extracted file to the standard input of an - external program. + If you enable this option you'll be able to instruct tar to send + the contents of each extracted file to the standard input of an + external program. config BUSYBOX_FEATURE_TAR_UNAME_GNAME bool "Enable use of user and group names" default y depends on BUSYBOX_TAR help - Enables use of user and group names in tar. This affects contents - listings (-t) and preserving permissions when unpacking (-p). - +200 bytes. + Enable use of user and group names in tar. This affects contents + listings (-t) and preserving permissions when unpacking (-p). + +200 bytes. config BUSYBOX_FEATURE_TAR_NOPRESERVE_TIME - bool "Enable -m (do not preserve time) option" + bool "Enable -m (do not preserve time) GNU option" default y depends on BUSYBOX_TAR - help - With this option busybox supports GNU tar -m - (do not preserve time) option. config BUSYBOX_FEATURE_TAR_SELINUX - bool "Support for extracting SELinux labels" + bool "Support extracting SELinux labels" default n depends on BUSYBOX_TAR && BUSYBOX_SELINUX help - With this option busybox supports restoring SELinux labels - when extracting files from tar archives. - -config BUSYBOX_UNCOMPRESS - bool "uncompress" - default n - help - uncompress is used to decompress archives created by compress. - Not much used anymore, replaced by gzip/gunzip. - -config BUSYBOX_UNLZMA - bool "unlzma" - default n - help - unlzma is a compression utility using the Lempel-Ziv-Markov chain - compression algorithm, and range coding. Compression - is generally considerably better than that achieved by the bzip2 - compressors. - - The BusyBox unlzma applet is limited to decompression only. - On an x86 system, this applet adds about 4K. - -config BUSYBOX_FEATURE_LZMA_FAST - bool "Optimize unlzma for speed" - default n - depends on BUSYBOX_UNLZMA || BUSYBOX_LZCAT || BUSYBOX_LZMA - help - This option reduces decompression time by about 25% at the cost of - a 1K bigger binary. - -config BUSYBOX_LZCAT - bool "lzcat" - default n - help - unlzma is a compression utility using the Lempel-Ziv-Markov chain - compression algorithm, and range coding. Compression - is generally considerably better than that achieved by the bzip2 - compressors. - - The BusyBox unlzma applet is limited to decompression only. - On an x86 system, this applet adds about 4K. - -config BUSYBOX_LZMA - bool "Provide lzma alias which supports only unpacking" - default n - help - Enable this option if you want commands like "lzma -d" to work. - IOW: you'll get lzma applet, but it will always require -d option. - -config BUSYBOX_UNXZ - bool "unxz" - depends on !BUSYBOX_DISABLE_UNXZ - default n - help - unxz is a unlzma successor. - -config BUSYBOX_XZCAT - bool "xzcat" - default n - help - Alias to "unxz -c". - -config BUSYBOX_XZ - bool "Provide xz alias which supports only unpacking" - depends on !BUSYBOX_DISABLE_XZ - default n - help - Enable this option if you want commands like "xz -d" to work. - IOW: you'll get xz applet, but it will always require -d option. - + With this option busybox supports restoring SELinux labels + when extracting files from tar archives. config BUSYBOX_UNZIP - bool "unzip" - depends on !BUSYBOX_DISABLE_UNZIP - default n + bool "unzip (26 kb)" + default y help - unzip will list or extract files from a ZIP archive, - commonly found on DOS/WIN systems. The default behavior - (with no options) is to extract the archive into the - current directory. Use the `-d' option to extract to a - directory of your choice. + unzip will list or extract files from a ZIP archive, + commonly found on DOS/WIN systems. The default behavior + (with no options) is to extract the archive into the + current directory. config BUSYBOX_FEATURE_UNZIP_CDF bool "Read and use Central Directory data" diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in index 2e338e264..e67bb61ed 100644 --- a/package/busybox/config/console-tools/Config.in +++ b/package/busybox/config/console-tools/Config.in @@ -1,175 +1,157 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Console Utilities" config BUSYBOX_CHVT - bool "chvt" - default n - select BUSYBOX_PLATFORM_LINUX - help - This program is used to change to another terminal. - Example: chvt 4 (change to terminal /dev/tty4) - -config BUSYBOX_FGCONSOLE - bool "fgconsole" - default n + bool "chvt (2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program prints active (foreground) console number. - + This program is used to change to another terminal. + Example: chvt 4 (change to terminal /dev/tty4) config BUSYBOX_CLEAR - bool "clear" - default n + bool "clear (tiny)" + default y help - This program clears the terminal screen. - + This program clears the terminal screen. config BUSYBOX_DEALLOCVT - bool "deallocvt" - default n + bool "deallocvt (1.9 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program deallocates unused virtual consoles. - + This program deallocates unused virtual consoles. config BUSYBOX_DUMPKMAP - bool "dumpkmap" - default n + bool "dumpkmap (1.6 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program dumps the kernel's keyboard translation table to - stdout, in binary format. You can then use loadkmap to load it. - + This program dumps the kernel's keyboard translation table to + stdout, in binary format. You can then use loadkmap to load it. +config BUSYBOX_FGCONSOLE + bool "fgconsole (1.5 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + This program prints active (foreground) console number. config BUSYBOX_KBD_MODE - bool "kbd_mode" - default n + bool "kbd_mode (4.1 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program reports and sets keyboard mode. - + This program reports and sets keyboard mode. config BUSYBOX_LOADFONT - bool "loadfont" - default n + bool "loadfont (5.2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program loads a console font from standard input. + This program loads a console font from standard input. -config BUSYBOX_LOADKMAP - bool "loadkmap" - default n +config BUSYBOX_SETFONT + bool "setfont (24 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program loads a keyboard translation table from - standard input. + Allows to load console screen map. Useful for i18n. + +config BUSYBOX_FEATURE_SETFONT_TEXTUAL_MAP + bool "Support reading textual screen maps" + default y + depends on BUSYBOX_SETFONT + help + Support reading textual screen maps. + +config BUSYBOX_DEFAULT_SETFONT_DIR + string "Default directory for console-tools files" + default "" + depends on BUSYBOX_SETFONT + help + Directory to use if setfont's params are simple filenames + (not /path/to/file or ./file). Default is "" (no default directory). +comment "Common options for loadfont and setfont" + depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT + +config BUSYBOX_FEATURE_LOADFONT_PSF2 + bool "Support PSF2 console fonts" + default y + depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT + +config BUSYBOX_FEATURE_LOADFONT_RAW + bool "Support old (raw) console fonts" + default y + depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT +config BUSYBOX_LOADKMAP + bool "loadkmap (1.8 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + This program loads a keyboard translation table from + standard input. config BUSYBOX_OPENVT - bool "openvt" - default n + bool "openvt (7.2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program is used to start a command on an unused - virtual terminal. - + This program is used to start a command on an unused + virtual terminal. config BUSYBOX_RESET - bool "reset" - default n + bool "reset (345 bytes)" + default y help - This program is used to reset the terminal screen, if it - gets messed up. - + This program is used to reset the terminal screen, if it + gets messed up. config BUSYBOX_RESIZE - bool "resize" - default n + bool "resize (903 bytes)" + default y help - This program is used to (re)set the width and height of your current - terminal. + This program is used to (re)set the width and height of your current + terminal. config BUSYBOX_FEATURE_RESIZE_PRINT bool "Print environment variables" default y depends on BUSYBOX_RESIZE help - Prints the newly set size (number of columns and rows) of - the terminal. - E.g.: - COLUMNS=80;LINES=44;export COLUMNS LINES; - + Prints the newly set size (number of columns and rows) of + the terminal. + E.g.: + COLUMNS=80;LINES=44;export COLUMNS LINES; config BUSYBOX_SETCONSOLE - bool "setconsole" - default n + bool "setconsole (3.6 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program redirects the system console to another device, - like the current tty while logged in via telnet. + Redirect writes to /dev/console to another device, + like the current tty while logged in via telnet. + This does not redirect kernel log, only writes + from user space. config BUSYBOX_FEATURE_SETCONSOLE_LONG_OPTIONS bool "Enable long options" default y depends on BUSYBOX_SETCONSOLE && BUSYBOX_LONG_OPTS - help - Support long options for the setconsole applet. - -config BUSYBOX_SETFONT - bool "setfont" - default n - select BUSYBOX_PLATFORM_LINUX - help - Allows to load console screen map. Useful for i18n. - -config BUSYBOX_FEATURE_SETFONT_TEXTUAL_MAP - bool "Support reading textual screen maps" - default y - depends on BUSYBOX_SETFONT - help - Support reading textual screen maps. - -config BUSYBOX_DEFAULT_SETFONT_DIR - string "Default directory for console-tools files" - default "" - depends on BUSYBOX_SETFONT - help - Directory to use if setfont's params are simple filenames - (not /path/to/file or ./file). Default is "" (no default directory). - config BUSYBOX_SETKEYCODES - bool "setkeycodes" - default n + bool "setkeycodes (2.1 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program loads entries into the kernel's scancode-to-keycode - map, allowing unusual keyboards to generate usable keycodes. - + This program loads entries into the kernel's scancode-to-keycode + map, allowing unusual keyboards to generate usable keycodes. config BUSYBOX_SETLOGCONS - bool "setlogcons" - default n + bool "setlogcons (1.8 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This program redirects the output console of kernel messages. - + This program redirects the output console of kernel messages. config BUSYBOX_SHOWKEY - bool "showkey" - default n - select BUSYBOX_PLATFORM_LINUX - help - Shows keys pressed. - -comment "Common options for loadfont and setfont" - depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT - -config BUSYBOX_FEATURE_LOADFONT_PSF2 - bool "Support for PSF2 console fonts" + bool "showkey (4.7 kb)" default y - depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT - help - Support PSF2 console fonts. - -config BUSYBOX_FEATURE_LOADFONT_RAW - bool "Support for old (raw) console fonts" - default y - depends on BUSYBOX_LOADFONT || BUSYBOX_SETFONT + select BUSYBOX_PLATFORM_LINUX help - Support old (raw) console fonts. + Shows keys pressed. endmenu diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in index 60bc5b0e7..2038e6e95 100644 --- a/package/busybox/config/coreutils/Config.in +++ b/package/busybox/config/coreutils/Config.in @@ -1,29 +1,28 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Coreutils" config BUSYBOX_BASENAME - bool "basename" + bool "basename (438 bytes)" default y help - basename is used to strip the directory and suffix from filenames, - leaving just the filename itself. Enable this option if you wish - to enable the 'basename' utility. - + basename is used to strip the directory and suffix from filenames, + leaving just the filename itself. Enable this option if you wish + to enable the 'basename' utility. config BUSYBOX_CAT - bool "cat" + bool "cat (5.6 kb)" default y help - cat is used to concatenate files and print them to the standard - output. Enable this option if you wish to enable the 'cat' utility. + cat is used to concatenate files and print them to the standard + output. Enable this option if you wish to enable the 'cat' utility. config BUSYBOX_FEATURE_CATN bool "Enable -n and -b options" - default n + default y depends on BUSYBOX_CAT help -n numbers all output lines while -b numbers nonempty output lines. @@ -34,516 +33,327 @@ config BUSYBOX_FEATURE_CATV depends on BUSYBOX_CAT help Display nonprinting characters as escape sequences - -config BUSYBOX_DATE - bool "date" - default y - help - date is used to set the system date or display the - current time in the given format. - -config BUSYBOX_FEATURE_DATE_ISOFMT - bool "Enable ISO date format output (-I)" - default n - depends on BUSYBOX_DATE - help - Enable option (-I) to output an ISO-8601 compliant - date/time string. - -# defaults to "no": stat's nanosecond field is a bit non-portable -config BUSYBOX_FEATURE_DATE_NANO - bool "Support %[num]N nanosecond format specifier" - default n - depends on BUSYBOX_DATE # syscall(__NR_clock_gettime) - select BUSYBOX_PLATFORM_LINUX - help - Support %[num]N format specifier. Adds ~250 bytes of code. - -config BUSYBOX_FEATURE_DATE_COMPAT - bool "Support weird 'date MMDDhhmm[[YY]YY][.ss]' format" - default n - depends on BUSYBOX_DATE - help - System time can be set by 'date -s DATE' and simply 'date DATE', - but formats of DATE string are different. 'date DATE' accepts - a rather weird MMDDhhmm[[YY]YY][.ss] format with completely - unnatural placement of year between minutes and seconds. - date -s (and other commands like touch -d) use more sensible - formats (for one, ISO format YYYY-MM-DD hh:mm:ss.ssssss). - - With this option off, 'date DATE' is 'date -s DATE' support - the same format. With it on, 'date DATE' additionally supports - MMDDhhmm[[YY]YY][.ss] format. - -config BUSYBOX_HOSTID - bool "hostid" - default n - help - hostid prints the numeric identifier (in hexadecimal) for - the current host. - -config BUSYBOX_ID - bool "id" +config BUSYBOX_CHGRP + bool "chgrp (7.6 kb)" default y help - id displays the current user and group ID names. - -config BUSYBOX_GROUPS - bool "groups" - default n - help - Print the group names associated with current user id. - -config BUSYBOX_SHUF - bool "shuf" - default n - help - Generate random permutations - -config BUSYBOX_TEST - bool "test" + chgrp is used to change the group ownership of files. +config BUSYBOX_CHMOD + bool "chmod (5.5 kb)" default y help - test is used to check file types and compare values, - returning an appropriate exit code. The bash shell - has test built in, ash can build it in optionally. - -config BUSYBOX_TEST1 - bool "test as [" + chmod is used to change the access permission of files. +config BUSYBOX_CHOWN + bool "chown (7.6 kb)" default y help - Provide test command in the "[ EXPR ]" form + chown is used to change the user and/or group ownership + of files. -config BUSYBOX_TEST2 - bool "test as [[" +config BUSYBOX_FEATURE_CHOWN_LONG_OPTIONS + bool "Enable long options" default y - help - Provide test command in the "[[ EXPR ]]" form - -config BUSYBOX_FEATURE_TEST_64 - bool "Extend test to 64 bit" + depends on BUSYBOX_CHOWN && BUSYBOX_LONG_OPTS +config BUSYBOX_CHROOT + bool "chroot (3.7 kb)" default y - depends on BUSYBOX_TEST || BUSYBOX_ASH_BUILTIN_TEST || BUSYBOX_HUSH help - Enable 64-bit support in test. - -config BUSYBOX_TOUCH - bool "touch" + chroot is used to change the root directory and run a command. + The default command is '/bin/sh'. +config BUSYBOX_CKSUM + bool "cksum (4.1 kb)" default y help - touch is used to create or change the access and/or - modification timestamp of specified files. - -config BUSYBOX_FEATURE_TOUCH_NODEREF - bool "Add support for -h" - default n - depends on BUSYBOX_TOUCH - help - Enable touch to have the -h option. - This requires libc support for lutimes() function. - -config BUSYBOX_FEATURE_TOUCH_SUSV3 - bool "Add support for SUSV3 features (-d -t -r)" - default n - depends on BUSYBOX_TOUCH - help - Enable touch to use a reference file or a given date/time argument. - -config BUSYBOX_TR - bool "tr" - default n - help - tr is used to squeeze, and/or delete characters from standard - input, writing to standard output. - -config BUSYBOX_FEATURE_TR_CLASSES - bool "Enable character classes (such as [:upper:])" + cksum is used to calculate the CRC32 checksum of a file. +config BUSYBOX_COMM + bool "comm (4.2 kb)" default y - depends on BUSYBOX_TR help - Enable character classes, enabling commands such as: - tr [:upper:] [:lower:] to convert input into lowercase. - -config BUSYBOX_FEATURE_TR_EQUIV - bool "Enable equivalence classes" + comm is used to compare two files line by line and return + a three-column output. +config BUSYBOX_CP + bool "cp (10 kb)" default y - depends on BUSYBOX_TR help - Enable equivalence classes, which essentially add the enclosed - character to the current set. For instance, tr [=a=] xyz would - replace all instances of 'a' with 'xyz'. This option is mainly - useful for cases when no other way of expressing a character - is possible. + cp is used to copy files and directories. -config BUSYBOX_TRUNCATE - bool "truncate" - default n - help - truncate truncates files to a given size. If a file does - not exist, it is created unless told otherwise. - -config BUSYBOX_UNLINK - bool "unlink" - default n - help - unlink deletes a file by calling unlink() - -config BUSYBOX_BASE64 - bool "base64" - default n - help - Base64 encode and decode - -config BUSYBOX_WHO - bool "who" - default n - depends on BUSYBOX_FEATURE_UTMP - help - who is used to show who is logged on. - -config BUSYBOX_USERS - bool "users" - default n - depends on BUSYBOX_FEATURE_UTMP - help - Print users currently logged on. - -config BUSYBOX_CAL - bool "cal" - default n - help - cal is used to display a monthly calender. - -config BUSYBOX_CATV - bool "catv" - default n - help - Display nonprinting characters as escape sequences (like some - implementations' cat -v option). - -config BUSYBOX_CHGRP - bool "chgrp" +config BUSYBOX_FEATURE_CP_LONG_OPTIONS + bool "Enable long options" default y + depends on BUSYBOX_CP && BUSYBOX_LONG_OPTS help - chgrp is used to change the group ownership of files. + Enable long options. + Also add support for --parents option. -config BUSYBOX_CHMOD - bool "chmod" +config BUSYBOX_FEATURE_CP_REFLINK + bool "Enable --reflink[=auto]" default y - help - chmod is used to change the access permission of files. - -config BUSYBOX_CHOWN - bool "chown" + depends on BUSYBOX_FEATURE_CP_LONG_OPTIONS +config BUSYBOX_CUT + bool "cut (5.8 kb)" default y help - chown is used to change the user and/or group ownership - of files. - -config BUSYBOX_FEATURE_CHOWN_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_CHOWN && BUSYBOX_LONG_OPTS - help - Enable use of long options - -config BUSYBOX_CHROOT - bool "chroot" + cut is used to print selected parts of lines from + each file to stdout. +config BUSYBOX_DATE + bool "date (7 kb)" default y help - chroot is used to change the root directory and run a command. - The default command is `/bin/sh'. - -config BUSYBOX_CKSUM - bool "cksum" - default n - help - cksum is used to calculate the CRC32 checksum of a file. - -config BUSYBOX_COMM - bool "comm" - default n - help - comm is used to compare two files line by line and return - a three-column output. + date is used to set the system date or display the + current time in the given format. -config BUSYBOX_CP - bool "cp" +config BUSYBOX_FEATURE_DATE_ISOFMT + bool "Enable ISO date format output (-I)" default y + depends on BUSYBOX_DATE help - cp is used to copy files and directories. + Enable option (-I) to output an ISO-8601 compliant + date/time string. -config BUSYBOX_FEATURE_CP_LONG_OPTIONS - bool "Enable long options for cp" - default n - depends on BUSYBOX_CP && BUSYBOX_LONG_OPTS +config BUSYBOX_FEATURE_DATE_NANO + bool "Support %[num]N nanosecond format specifier" + default n # stat's nanosecond field is a bit non-portable + depends on BUSYBOX_DATE + select BUSYBOX_PLATFORM_LINUX help - Enable long options for cp. - Also add support for --parents option. + Support %[num]N format specifier. Adds ~250 bytes of code. -config BUSYBOX_CUT - bool "cut" +config BUSYBOX_FEATURE_DATE_COMPAT + bool "Support weird 'date MMDDhhmm[[YY]YY][.ss]' format" default y + depends on BUSYBOX_DATE help - cut is used to print selected parts of lines from - each file to stdout. + System time can be set by 'date -s DATE' and simply 'date DATE', + but formats of DATE string are different. 'date DATE' accepts + a rather weird MMDDhhmm[[YY]YY][.ss] format with completely + unnatural placement of year between minutes and seconds. + date -s (and other commands like touch -d) use more sensible + formats (for one, ISO format YYYY-MM-DD hh:mm:ss.ssssss). + With this option off, 'date DATE' and 'date -s DATE' support + the same format. With it on, 'date DATE' additionally supports + MMDDhhmm[[YY]YY][.ss] format. config BUSYBOX_DD - bool "dd" + bool "dd (7.5 kb)" default y help - dd copies a file (from standard input to standard output, - by default) using specific input and output blocksizes, - while optionally performing conversions on it. + dd copies a file (from standard input to standard output, + by default) using specific input and output blocksizes, + while optionally performing conversions on it. config BUSYBOX_FEATURE_DD_SIGNAL_HANDLING - bool "Enable DD signal handling for status reporting" - default n + bool "Enable signal handling for status reporting" + default y depends on BUSYBOX_DD help - Sending a SIGUSR1 signal to a running `dd' process makes it - print to standard error the number of records read and written - so far, then to resume copying. + Sending a SIGUSR1 signal to a running 'dd' process makes it + print to standard error the number of records read and written + so far, then to resume copying. - $ dd if=/dev/zero of=/dev/null& - $ pid=$! kill -USR1 $pid; sleep 1; kill $pid - 10899206+0 records in - 10899206+0 records out + $ dd if=/dev/zero of=/dev/null & + $ pid=$!; kill -USR1 $pid; sleep 1; kill $pid + 10899206+0 records in + 10899206+0 records out config BUSYBOX_FEATURE_DD_THIRD_STATUS_LINE bool "Enable the third status line upon signal" - default n + default y depends on BUSYBOX_DD && BUSYBOX_FEATURE_DD_SIGNAL_HANDLING help - Displays a coreutils-like third status line with transferred bytes, - elapsed time and speed. + Displays a coreutils-like third status line with transferred bytes, + elapsed time and speed. config BUSYBOX_FEATURE_DD_IBS_OBS - bool "Enable ibs, obs and conv options" + bool "Enable ibs, obs, iflag, oflag and conv options" default y depends on BUSYBOX_DD help - Enables support for writing a certain number of bytes in and out, - at a time, and performing conversions on the data stream. + Enable support for writing a certain number of bytes in and out, + at a time, and performing conversions on the data stream. config BUSYBOX_FEATURE_DD_STATUS bool "Enable status display options" - default n + default y depends on BUSYBOX_DD help - Enables support for status=noxfer/none option. - + Enable support for status=noxfer/none option. config BUSYBOX_DF - bool "df" + bool "df (6.8 kb)" default y help - df reports the amount of disk space used and available - on filesystems. + df reports the amount of disk space used and available + on filesystems. config BUSYBOX_FEATURE_DF_FANCY bool "Enable -a, -i, -B" - default n + default y depends on BUSYBOX_DF help - This option enables -a, -i and -B. - - -a Show all filesystems - -i Inodes - -B Blocksize - + -a Show all filesystems + -i Inodes + -B Blocksize config BUSYBOX_DIRNAME - bool "dirname" + bool "dirname (329 bytes)" default y help - dirname is used to strip a non-directory suffix from - a file name. - + dirname is used to strip a non-directory suffix from + a file name. config BUSYBOX_DOS2UNIX - bool "dos2unix" - default n + bool "dos2unix (5.2 kb)" + default y help - dos2unix is used to convert a text file from DOS format to - UNIX format, and vice versa. + dos2unix is used to convert a text file from DOS format to + UNIX format, and vice versa. config BUSYBOX_UNIX2DOS - bool "unix2dos" - default n + bool "unix2dos (5.2 kb)" + default y help - unix2dos is used to convert a text file from UNIX format to - DOS format, and vice versa. - + unix2dos is used to convert a text file from UNIX format to + DOS format, and vice versa. config BUSYBOX_DU - bool "du (default blocksize of 512 bytes)" + bool "du (6.3 kb)" default y help - du is used to report the amount of disk space used - for specified files. + du is used to report the amount of disk space used + for specified files. config BUSYBOX_FEATURE_DU_DEFAULT_BLOCKSIZE_1K - bool "Use a default blocksize of 1024 bytes (1K)" + bool "Use default blocksize of 1024 bytes (else it's 512 bytes)" default y depends on BUSYBOX_DU - help - Use a blocksize of (1K) instead of the default 512b. - config BUSYBOX_ECHO - bool "echo (basic SuSv3 version taking no options)" + bool "echo (1.8 kb)" default y help - echo is used to print a specified string to stdout. + echo prints a specified string to stdout. # this entry also appears in shell/Config.in, next to the echo builtin config BUSYBOX_FEATURE_FANCY_ECHO - bool "Enable echo options (-n and -e)" + bool "Enable -n and -e options" default y - depends on BUSYBOX_ECHO || BUSYBOX_ASH_BUILTIN_ECHO || BUSYBOX_HUSH - help - This adds options (-n and -e) to echo. - + depends on BUSYBOX_ECHO || BUSYBOX_ASH_ECHO || BUSYBOX_HUSH_ECHO config BUSYBOX_ENV - bool "env" + bool "env (4 kb)" default y help - env is used to set an environment variable and run - a command; without options it displays the current - environment. - -config BUSYBOX_FEATURE_ENV_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_ENV && BUSYBOX_LONG_OPTS - help - Support long options for the env applet. - + env is used to set an environment variable and run + a command; without options it displays the current + environment. config BUSYBOX_EXPAND - bool "expand" - default n + bool "expand (5.1 kb)" + default y help - By default, convert all tabs to spaces. + By default, convert all tabs to spaces. -config BUSYBOX_FEATURE_EXPAND_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_EXPAND && BUSYBOX_LONG_OPTS +config BUSYBOX_UNEXPAND + bool "unexpand (5.3 kb)" + default y help - Support long options for the expand applet. - + By default, convert only leading sequences of blanks to tabs. config BUSYBOX_EXPR - bool "expr" - default n + bool "expr (6.6 kb)" + default y help - expr is used to calculate numbers and print the result - to standard output. + expr is used to calculate numbers and print the result + to standard output. config BUSYBOX_EXPR_MATH_SUPPORT_64 bool "Extend Posix numbers support to 64 bit" default y depends on BUSYBOX_EXPR help - Enable 64-bit math support in the expr applet. This will make - the applet slightly larger, but will allow computation with very - large numbers. - + Enable 64-bit math support in the expr applet. This will make + the applet slightly larger, but will allow computation with very + large numbers. config BUSYBOX_FACTOR bool "factor (2.7 kb)" - default n + default y help factor factorizes integers - config BUSYBOX_FALSE - bool "false" - default n + bool "false (tiny)" + default y help - false returns an exit code of FALSE (1). - + false returns an exit code of FALSE (1). config BUSYBOX_FOLD - bool "fold" - default n - help - Wrap text to fit a specific width. - -config BUSYBOX_FSYNC - bool "fsync" - default n + bool "fold (4.6 kb)" + default y help - fsync is used to flush file-related cached blocks to disk. - + Wrap text to fit a specific width. config BUSYBOX_HEAD - bool "head" + bool "head (3.8 kb)" default y help - head is used to print the first specified number of lines - from files. + head is used to print the first specified number of lines + from files. config BUSYBOX_FEATURE_FANCY_HEAD - bool "Enable head options (-c, -q, and -v)" - default n + bool "Enable -c, -q, and -v" + default y depends on BUSYBOX_HEAD +config BUSYBOX_HOSTID + bool "hostid (286 bytes)" + default y + help + hostid prints the numeric identifier (in hexadecimal) for + the current host. +config BUSYBOX_ID + bool "id (7 kb)" + default y help - This enables the head options (-c, -q, and -v). + id displays the current user and group ID names. +config BUSYBOX_GROUPS + bool "groups (6.7 kb)" + default y + help + Print the group names associated with current user id. config BUSYBOX_INSTALL - bool "install" - default n + bool "install (12 kb)" + default y help - Copy files and set attributes. + Copy files and set attributes. config BUSYBOX_FEATURE_INSTALL_LONG_OPTIONS bool "Enable long options" - default n + default y depends on BUSYBOX_INSTALL && BUSYBOX_LONG_OPTS - help - Support long options for the install applet. - -####config LENGTH -#### bool "length" -#### default y -#### help -#### length is used to print out the length of a specified string. config BUSYBOX_LINK bool "link (3.2 kb)" - default n + default y help link creates hard links between files. - config BUSYBOX_LN - bool "ln" + bool "ln (4.9 kb)" default y help - ln is used to create hard or soft links between files. - + ln is used to create hard or soft links between files. config BUSYBOX_LOGNAME - bool "logname" - default n + bool "logname (1.1 kb)" + default y help - logname is used to print the current user's login name. - + logname is used to print the current user's login name. config BUSYBOX_LS - bool "ls" + bool "ls (14 kb)" default y help - ls is used to list the contents of directories. + ls is used to list the contents of directories. config BUSYBOX_FEATURE_LS_FILETYPES bool "Enable filetyping options (-p and -F)" - default n + default y depends on BUSYBOX_LS - help - Enable the ls options (-p and -F). config BUSYBOX_FEATURE_LS_FOLLOWLINKS bool "Enable symlinks dereferencing (-L)" - default n + default y depends on BUSYBOX_LS - help - Enable the ls option (-L). config BUSYBOX_FEATURE_LS_RECURSIVE bool "Enable recursion (-R)" default y depends on BUSYBOX_LS - help - Enable the ls option (-R). config BUSYBOX_FEATURE_LS_WIDTH bool "Enable -w WIDTH and window size autodetection" @@ -555,264 +365,235 @@ config BUSYBOX_FEATURE_LS_SORTFILES default y depends on BUSYBOX_LS help - Allow ls to sort file names alphabetically. + Allow ls to sort file names alphabetically. config BUSYBOX_FEATURE_LS_TIMESTAMPS bool "Show file timestamps" default y depends on BUSYBOX_LS help - Allow ls to display timestamps for files. + Allow ls to display timestamps for files. config BUSYBOX_FEATURE_LS_USERNAME bool "Show username/groupnames" default y depends on BUSYBOX_LS help - Allow ls to display username/groupname for files. + Allow ls to display username/groupname for files. config BUSYBOX_FEATURE_LS_COLOR bool "Allow use of color to identify file types" - default n + default y depends on BUSYBOX_LS && BUSYBOX_LONG_OPTS help - This enables the --color option to ls. + This enables the --color option to ls. config BUSYBOX_FEATURE_LS_COLOR_IS_DEFAULT bool "Produce colored ls output by default" - default n + default y depends on BUSYBOX_FEATURE_LS_COLOR help - Saying yes here will turn coloring on by default, - even if no "--color" option is given to the ls command. - This is not recommended, since the colors are not - configurable, and the output may not be legible on - many output screens. - + Saying yes here will turn coloring on by default, + even if no "--color" option is given to the ls command. + This is not recommended, since the colors are not + configurable, and the output may not be legible on + many output screens. config BUSYBOX_MD5SUM - bool "md5sum" - default n + bool "md5sum (6.5 kb)" + default y help - md5sum is used to print or check MD5 checksums. + Compute and check MD5 message digest -config BUSYBOX_MKDIR - bool "mkdir" +config BUSYBOX_SHA1SUM + bool "sha1sum (5.9 kb)" default y help - mkdir is used to create directories with the specified names. + Compute and check SHA1 message digest -config BUSYBOX_FEATURE_MKDIR_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_MKDIR && BUSYBOX_LONG_OPTS +config BUSYBOX_SHA256SUM + bool "sha256sum (7 kb)" + default y help - Support long options for the mkdir applet. + Compute and check SHA256 message digest -config BUSYBOX_MKFIFO - bool "mkfifo" - default n +config BUSYBOX_SHA512SUM + bool "sha512sum (7.4 kb)" + default y help - mkfifo is used to create FIFOs (named pipes). - The `mknod' program can also create FIFOs. + Compute and check SHA512 message digest -config BUSYBOX_MKNOD - bool "mknod" - default n +config BUSYBOX_SHA3SUM + bool "sha3sum (6.1 kb)" + default y help - mknod is used to create FIFOs or block/character special - files with the specified names. + Compute and check SHA3 message digest -config BUSYBOX_MV - bool "mv" +comment "Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum" + depends on BUSYBOX_MD5SUM || BUSYBOX_SHA1SUM || BUSYBOX_SHA256SUM || BUSYBOX_SHA512SUM || BUSYBOX_SHA3SUM + +config BUSYBOX_FEATURE_MD5_SHA1_SUM_CHECK + bool "Enable -c, -s and -w options" default y + depends on BUSYBOX_MD5SUM || BUSYBOX_SHA1SUM || BUSYBOX_SHA256SUM || BUSYBOX_SHA512SUM || BUSYBOX_SHA3SUM help - mv is used to move or rename files or directories. - -config BUSYBOX_FEATURE_MV_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_MV && BUSYBOX_LONG_OPTS + Enabling the -c options allows files to be checked + against pre-calculated hash values. + -s and -w are useful options when verifying checksums. +config BUSYBOX_MKDIR + bool "mkdir (4.5 kb)" + default y help - Support long options for the mv applet. - + mkdir is used to create directories with the specified names. +config BUSYBOX_MKFIFO + bool "mkfifo (3.8 kb)" + default y + help + mkfifo is used to create FIFOs (named pipes). + The 'mknod' program can also create FIFOs. +config BUSYBOX_MKNOD + bool "mknod (4.5 kb)" + default y + help + mknod is used to create FIFOs or block/character special + files with the specified names. +config BUSYBOX_MKTEMP + bool "mktemp (4.2 kb)" + default y + help + mktemp is used to create unique temporary files +config BUSYBOX_MV + bool "mv (10 kb)" + default y + help + mv is used to move or rename files or directories. config BUSYBOX_NICE - bool "nice" - default n + bool "nice (2.1 kb)" + default y help - nice runs a program with modified scheduling priority. - + nice runs a program with modified scheduling priority. config BUSYBOX_NL bool "nl (4.6 kb)" - default n + default y help nl is used to number lines of files. - config BUSYBOX_NOHUP - bool "nohup" - default n + bool "nohup (2 kb)" + default y help - run a command immune to hangups, with output to a non-tty. - + run a command immune to hangups, with output to a non-tty. config BUSYBOX_NPROC bool "nproc (3.7 kb)" - default n + default y help Print number of CPUs - config BUSYBOX_OD - bool "od" - default n + bool "od (11 kb)" + default y help - od is used to dump binary files in octal and other formats. - + od is used to dump binary files in octal and other formats. config BUSYBOX_PASTE bool "paste (4.9 kb)" - default n + default y help paste is used to paste lines of different files together and write the result to stdout - config BUSYBOX_PRINTENV - bool "printenv" - default n + bool "printenv (1.3 kb)" + default y help - printenv is used to print all or part of environment. - + printenv is used to print all or part of environment. config BUSYBOX_PRINTF - bool "printf" + bool "printf (3.8 kb)" default y help - printf is used to format and print specified strings. - It's similar to `echo' except it has more options. - + printf is used to format and print specified strings. + It's similar to 'echo' except it has more options. config BUSYBOX_PWD - bool "pwd" + bool "pwd (3.7 kb)" default y help - pwd is used to print the current directory. - + pwd is used to print the current directory. config BUSYBOX_READLINK - bool "readlink" - default n + bool "readlink (4 kb)" + default y help - This program reads a symbolic link and returns the name - of the file it points to + This program reads a symbolic link and returns the name + of the file it points to config BUSYBOX_FEATURE_READLINK_FOLLOW bool "Enable canonicalization by following all symlinks (-f)" - default n + default y depends on BUSYBOX_READLINK help - Enable the readlink option (-f). - + Enable the readlink option (-f). config BUSYBOX_REALPATH - bool "realpath" - default n + bool "realpath (1.6 kb)" + default y help - Return the canonicalized absolute pathname. - This isn't provided by GNU shellutils, but where else does it belong. - + Return the canonicalized absolute pathname. + This isn't provided by GNU shellutils, but where else does it belong. config BUSYBOX_RM - bool "rm" + bool "rm (5.4 kb)" default y help - rm is used to remove files or directories. - + rm is used to remove files or directories. config BUSYBOX_RMDIR - bool "rmdir" - default n - help - rmdir is used to remove empty directories. - -config BUSYBOX_FEATURE_RMDIR_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_RMDIR && BUSYBOX_LONG_OPTS + bool "rmdir (3.5 kb)" + default y help - Support long options for the rmdir applet, including - --ignore-fail-on-non-empty for compatibility with GNU rmdir. - + rmdir is used to remove empty directories. config BUSYBOX_SEQ - bool "seq" - default n + bool "seq (3.8 kb)" + default y help - print a sequence of numbers - + print a sequence of numbers config BUSYBOX_SHRED bool "shred (4.9 kb)" - default n + default y help Overwrite a file to hide its contents, and optionally delete it - -config BUSYBOX_SHA1SUM - bool "sha1sum" - default n - help - Compute and check SHA1 message digest - -config BUSYBOX_SHA256SUM - bool "sha256sum" - default n - help - Compute and check SHA256 message digest - -config BUSYBOX_SHA512SUM - bool "sha512sum" - default n +config BUSYBOX_SHUF + bool "shuf (5.4 kb)" + default y help - Compute and check SHA512 message digest - -config BUSYBOX_SHA3SUM - bool "sha3sum" - default n - help - Compute and check SHA3 (512-bit) message digest - + Generate random permutations config BUSYBOX_SLEEP - bool "sleep" - default n - help - sleep is used to pause for a specified number of seconds. - It comes in 3 versions: - - small: takes one integer parameter - - fancy: takes multiple integer arguments with suffixes: - sleep 1d 2h 3m 15s - - fancy with fractional numbers: - sleep 2.3s 4.5h sleeps for 16202.3 seconds - Last one is "the most compatible" with coreutils sleep, - but it adds around 1k of code. + bool "sleep (2 kb)" + default y + help + sleep is used to pause for a specified number of seconds. + It comes in 3 versions: + - small: takes one integer parameter + - fancy: takes multiple integer arguments with suffixes: + sleep 1d 2h 3m 15s + - fancy with fractional numbers: + sleep 2.3s 4.5h sleeps for 16202.3 seconds + Last one is "the most compatible" with coreutils sleep, + but it adds around 1k of code. config BUSYBOX_FEATURE_FANCY_SLEEP bool "Enable multiple arguments and s/m/h/d suffixes" - default n - depends on BUSYBOX_SLEEP - help - Allow sleep to pause for specified minutes, hours, and days. - -config BUSYBOX_FEATURE_FLOAT_SLEEP - bool "Enable fractional arguments" default y - depends on BUSYBOX_FEATURE_FANCY_SLEEP + depends on BUSYBOX_SLEEP help - Allow for fractional numeric parameters. - + Allow sleep to pause for specified minutes, hours, and days. config BUSYBOX_SORT - bool "sort" - default n + bool "sort (7.7 kb)" + default y help - sort is used to sort lines of text in specified files. + sort is used to sort lines of text in specified files. config BUSYBOX_FEATURE_SORT_BIG - bool "Full SuSv3 compliant sort (support -ktcsbdfiozgM)" + bool "Full SuSv3 compliant sort (support -ktcbdfiogM)" default y depends on BUSYBOX_SORT help - Without this, sort only supports -r, -u, and an integer version - of -n. Selecting this adds sort keys, floating point support, and - more. This adds a little over 3k to a nonstatic build on x86. + Without this, sort only supports -rusz, and an integer version + of -n. Selecting this adds sort keys, floating point support, and + more. This adds a little over 3k to a nonstatic build on x86. - The SuSv3 sort standard is available at: - http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html + The SuSv3 sort standard is available at: + http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html config BUSYBOX_FEATURE_SORT_OPTIMIZE_MEMORY bool "Use less memory (but might be slower)" @@ -821,219 +602,305 @@ config BUSYBOX_FEATURE_SORT_OPTIMIZE_MEMORY help Attempt to use less memory (by storing only one copy of duplicated lines, and such). Useful if you work on huge files. - config BUSYBOX_SPLIT - bool "split" - default n + bool "split (5 kb)" + default y help - split a file into pieces. + Split a file into pieces. config BUSYBOX_FEATURE_SPLIT_FANCY bool "Fancy extensions" - default n + default y depends on BUSYBOX_SPLIT help - Add support for features not required by SUSv3. - Supports additional suffixes 'b' for 512 bytes, - 'g' for 1GiB for the -b option. - + Add support for features not required by SUSv3. + Supports additional suffixes 'b' for 512 bytes, + 'g' for 1GiB for the -b option. config BUSYBOX_STAT - bool "stat" - default n - select BUSYBOX_PLATFORM_LINUX # statfs() + bool "stat (11 kb)" + default y help - display file or filesystem status. + display file or filesystem status. config BUSYBOX_FEATURE_STAT_FORMAT bool "Enable custom formats (-c)" - default n + default y depends on BUSYBOX_STAT help - Without this, stat will not support the '-c format' option where - users can pass a custom format string for output. This adds about - 7k to a nonstatic build on amd64. + Without this, stat will not support the '-c format' option where + users can pass a custom format string for output. This adds about + 7k to a nonstatic build on amd64. config BUSYBOX_FEATURE_STAT_FILESYSTEM bool "Enable display of filesystem status (-f)" - default n + default y depends on BUSYBOX_STAT select BUSYBOX_PLATFORM_LINUX # statfs() help - Without this, stat will not support the '-f' option to display - information about filesystem status. - + Without this, stat will not support the '-f' option to display + information about filesystem status. config BUSYBOX_STTY - bool "stty" - default n + bool "stty (8.9 kb)" + default y help - stty is used to change and print terminal line settings. - + stty is used to change and print terminal line settings. config BUSYBOX_SUM - bool "sum" - default n + bool "sum (4 kb)" + default y help - checksum and count the blocks in a file - + checksum and count the blocks in a file config BUSYBOX_SYNC - bool "sync" - default n + bool "sync (3.8 kb)" + default y help - sync is used to flush filesystem buffers. - + sync is used to flush filesystem buffers. config BUSYBOX_FEATURE_SYNC_FANCY - bool "Enable -d and -f flags (requres syncfs(2) in libc)" - default n + bool "Enable -d and -f flags (requires syncfs(2) in libc)" + default y depends on BUSYBOX_SYNC help - sync -d FILE... executes fdatasync() on each FILE. - sync -f FILE... executes syncfs() on each FILE. - + sync -d FILE... executes fdatasync() on each FILE. + sync -f FILE... executes syncfs() on each FILE. +config BUSYBOX_FSYNC + bool "fsync (3.6 kb)" + default y + help + fsync is used to flush file-related cached blocks to disk. config BUSYBOX_TAC - bool "tac" - default n + bool "tac (3.9 kb)" + default y help - tac is used to concatenate and print files in reverse. - + tac is used to concatenate and print files in reverse. config BUSYBOX_TAIL - bool "tail" - default n + bool "tail (6.8 kb)" + default y help - tail is used to print the last specified number of lines - from files. + tail is used to print the last specified number of lines + from files. config BUSYBOX_FEATURE_FANCY_TAIL - bool "Enable extra tail options (-q, -s, -v, and -F)" - default n + bool "Enable -q, -s, -v, and -F options" + default y depends on BUSYBOX_TAIL help - The options (-q, -s, and -v) are provided by GNU tail, but - are not specific in the SUSv3 standard. - - -q Never output headers giving file names - -s SEC Wait SEC seconds between reads with -f - -v Always output headers giving file names - + These options are provided by GNU tail, but + are not specified in the SUSv3 standard: + -q Never output headers giving file names + -s SEC Wait SEC seconds between reads with -f + -v Always output headers giving file names + -F Same as -f, but keep retrying config BUSYBOX_TEE - bool "tee" - default n + bool "tee (4.2 kb)" + default y help - tee is used to read from standard input and write - to standard output and files. + tee is used to read from standard input and write + to standard output and files. config BUSYBOX_FEATURE_TEE_USE_BLOCK_IO bool "Enable block I/O (larger/faster) instead of byte I/O" default y depends on BUSYBOX_TEE help - Enable this option for a faster tee, at expense of size. + Enable this option for a faster tee, at expense of size. +config BUSYBOX_TEST + bool "test (4.1 kb)" + default y + help + test is used to check file types and compare values, + returning an appropriate exit code. The bash shell + has test built in, ash can build it in optionally. -config BUSYBOX_TRUE - bool "true" - default n +config BUSYBOX_TEST1 + bool "test as [" + default y help - true returns an exit code of TRUE (0). + Provide test command in the "[ EXPR ]" form -config BUSYBOX_TTY - bool "tty" - default n +config BUSYBOX_TEST2 + bool "test as [[" + default y + help + Provide test command in the "[[ EXPR ]]" form + +config BUSYBOX_FEATURE_TEST_64 + bool "Extend test to 64 bit" + default y + depends on BUSYBOX_TEST || BUSYBOX_TEST1 || BUSYBOX_TEST2 || BUSYBOX_ASH_TEST || BUSYBOX_HUSH_TEST + help + Enable 64-bit support in test. +config BUSYBOX_TIMEOUT + bool "timeout (6 kb)" + default y + help + Runs a program and watches it. If it does not terminate in + specified number of seconds, it is sent a signal. +config BUSYBOX_TOUCH + bool "touch (5.9 kb)" + default y + help + touch is used to create or change the access and/or + modification timestamp of specified files. + +config BUSYBOX_FEATURE_TOUCH_NODEREF + bool "Add support for -h" + default y + depends on BUSYBOX_TOUCH + help + Enable touch to have the -h option. + This requires libc support for lutimes() function. + +config BUSYBOX_FEATURE_TOUCH_SUSV3 + bool "Add support for SUSV3 features (-d -t -r)" + default y + depends on BUSYBOX_TOUCH help - tty is used to print the name of the current terminal to - standard output. + Enable touch to use a reference file or a given date/time argument. +config BUSYBOX_TR + bool "tr (5.1 kb)" + default y + help + tr is used to squeeze, and/or delete characters from standard + input, writing to standard output. +config BUSYBOX_FEATURE_TR_CLASSES + bool "Enable character classes (such as [:upper:])" + default y + depends on BUSYBOX_TR + help + Enable character classes, enabling commands such as: + tr [:upper:] [:lower:] to convert input into lowercase. + +config BUSYBOX_FEATURE_TR_EQUIV + bool "Enable equivalence classes" + default y + depends on BUSYBOX_TR + help + Enable equivalence classes, which essentially add the enclosed + character to the current set. For instance, tr [=a=] xyz would + replace all instances of 'a' with 'xyz'. This option is mainly + useful for cases when no other way of expressing a character + is possible. +config BUSYBOX_TRUE + bool "true (tiny)" + default y + help + true returns an exit code of TRUE (0). +config BUSYBOX_TRUNCATE + bool "truncate (4.2 kb)" + default y + help + truncate truncates files to a given size. If a file does + not exist, it is created unless told otherwise. +config BUSYBOX_TTY + bool "tty (3.6 kb)" + default y + help + tty is used to print the name of the current terminal to + standard output. config BUSYBOX_UNAME - bool "uname" + bool "uname (3.9 kb)" default y help - uname is used to print system information. + uname is used to print system information. config BUSYBOX_UNAME_OSNAME string "Operating system name" default "GNU/Linux" depends on BUSYBOX_UNAME help - Sets the operating system name reported by uname -o. The - default is "GNU/Linux". + Sets the operating system name reported by uname -o. The + default is "GNU/Linux". config BUSYBOX_BB_ARCH bool "arch (1.1 kb)" - default n + default y help Same as uname -m. - -config BUSYBOX_UNEXPAND - bool "unexpand" - default n - help - By default, convert only leading sequences of blanks to tabs. - -config BUSYBOX_FEATURE_UNEXPAND_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_UNEXPAND && BUSYBOX_LONG_OPTS - help - Support long options for the unexpand applet. - config BUSYBOX_UNIQ - bool "uniq" - default n + bool "uniq (4.9 kb)" + default y help - uniq is used to remove duplicate lines from a sorted file. - + uniq is used to remove duplicate lines from a sorted file. +config BUSYBOX_UNLINK + bool "unlink (3.2 kb)" + default y + help + unlink deletes a file by calling unlink() config BUSYBOX_USLEEP - bool "usleep" - default n + bool "usleep (1.3 kb)" + default y help - usleep is used to pause for a specified number of microseconds. - + usleep is used to pause for a specified number of microseconds. config BUSYBOX_UUDECODE - bool "uudecode" - default n + bool "uudecode (5.8 kb)" + default y help - uudecode is used to decode a uuencoded file. - + uudecode is used to decode a uuencoded file. +config BUSYBOX_BASE64 + bool "base64 (4.9 kb)" + default y + help + Base64 encode and decode config BUSYBOX_UUENCODE - bool "uuencode" - default n + bool "uuencode (4.4 kb)" + default y help - uuencode is used to uuencode a file. - + uuencode is used to uuencode a file. config BUSYBOX_WC - bool "wc" - default n + bool "wc (4.5 kb)" + default y help - wc is used to print the number of bytes, words, and lines, - in specified files. + wc is used to print the number of bytes, words, and lines, + in specified files. config BUSYBOX_FEATURE_WC_LARGE - bool "Support very large files in wc" - default n + bool "Support very large counts" + default y depends on BUSYBOX_WC help - Use "unsigned long long" in wc for counter variables. + Use "unsigned long long" for counter variables. +config BUSYBOX_WHO + bool "who (3.9 kb)" + default y + depends on BUSYBOX_FEATURE_UTMP + help + Print users currently logged on. -config BUSYBOX_WHOAMI - bool "whoami" - default n +config BUSYBOX_W + bool "w (3.8 kb)" + default y + depends on BUSYBOX_FEATURE_UTMP help - whoami is used to print the username of the current - user id (same as id -un). + Print users currently logged on. +config BUSYBOX_USERS + bool "users (3.4 kb)" + default y + depends on BUSYBOX_FEATURE_UTMP + help + Print users currently logged on. +config BUSYBOX_WHOAMI + bool "whoami (3.2 kb)" + default y + help + whoami is used to print the username of the current + user id (same as id -un). config BUSYBOX_YES - bool "yes" - default n + bool "yes (1.2 kb)" + default y help - yes is used to repeatedly output a specific string, or - the default string `y'. + yes is used to repeatedly output a specific string, or + the default string 'y'. comment "Common options" config BUSYBOX_FEATURE_VERBOSE bool "Support verbose options (usually -v) for various applets" - default n + default y help - Enable cp -v, rm -v and similar messages. - Also enables long option (--verbose) if it exists. - Without this option, -v is accepted but ignored. + Enable cp -v, rm -v and similar messages. + Also enables long option (--verbose) if it exists. + Without this option, -v is accepted but ignored. comment "Common options for cp and mv" depends on BUSYBOX_CP || BUSYBOX_MV @@ -1043,43 +910,16 @@ config BUSYBOX_FEATURE_PRESERVE_HARDLINKS default y depends on BUSYBOX_CP || BUSYBOX_MV help - Allow cp and mv to preserve hard links. - -comment "Common options for ls, more and telnet" - depends on BUSYBOX_LS || BUSYBOX_MORE || BUSYBOX_TELNET - -config BUSYBOX_FEATURE_AUTOWIDTH - bool "Calculate terminal & column widths" - default y - depends on BUSYBOX_LS || BUSYBOX_MORE || BUSYBOX_TELNET - help - This option allows utilities such as 'ls', 'more' and 'telnet' - to determine the width of the screen, which can allow them to - display additional text or avoid wrapping text onto the next line. - If you leave this disabled, your utilities will be especially - primitive and will be unable to determine the current screen width. + Allow cp and mv to preserve hard links. comment "Common options for df, du, ls" depends on BUSYBOX_DF || BUSYBOX_DU || BUSYBOX_LS config BUSYBOX_FEATURE_HUMAN_READABLE - bool "Support for human readable output (example 13k, 23M, 235G)" + bool "Support human readable output (example 13k, 23M, 235G)" default y depends on BUSYBOX_DF || BUSYBOX_DU || BUSYBOX_LS help - Allow df, du, and ls to have human readable output. - -comment "Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum" - depends on BUSYBOX_MD5SUM || BUSYBOX_SHA1SUM || BUSYBOX_SHA256SUM || BUSYBOX_SHA512SUM || BUSYBOX_SHA3SUM - -config BUSYBOX_FEATURE_MD5_SHA1_SUM_CHECK - bool "Enable -c, -s and -w options" - default y - depends on BUSYBOX_MD5SUM || BUSYBOX_SHA1SUM || BUSYBOX_SHA256SUM || BUSYBOX_SHA512SUM || BUSYBOX_SHA3SUM - help - Enabling the -c options allows files to be checked - against pre-calculated hash values. - - -s and -w are useful options when verifying checksums. + Allow df, du, and ls to have human readable output. endmenu diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in index d48a2aacb..d215debab 100644 --- a/package/busybox/config/debianutils/Config.in +++ b/package/busybox/config/debianutils/Config.in @@ -1,84 +1,70 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Debian Utilities" -config BUSYBOX_MKTEMP - bool "mktemp" - default n - help - mktemp is used to create unique temporary files - config BUSYBOX_PIPE_PROGRESS - bool "pipe_progress" - default n + bool "pipe_progress (275 bytes)" + default y help - Display a dot to indicate pipe activity. - + Display a dot to indicate pipe activity. config BUSYBOX_RUN_PARTS - bool "run-parts" - default n + bool "run-parts (6.1 kb)" + default y help - run-parts is a utility designed to run all the scripts in a directory. + run-parts is a utility designed to run all the scripts in a directory. - It is useful to set up a directory like cron.daily, where you need to - execute all the scripts in that directory. + It is useful to set up a directory like cron.daily, where you need to + execute all the scripts in that directory. - In this implementation of run-parts some features (such as report - mode) are not implemented. + In this implementation of run-parts some features (such as report + mode) are not implemented. - Unless you know that run-parts is used in some of your scripts - you can safely say N here. + Unless you know that run-parts is used in some of your scripts + you can safely say N here. config BUSYBOX_FEATURE_RUN_PARTS_LONG_OPTIONS bool "Enable long options" - default n + default y depends on BUSYBOX_RUN_PARTS && BUSYBOX_LONG_OPTS - help - Support long options for the run-parts applet. config BUSYBOX_FEATURE_RUN_PARTS_FANCY bool "Support additional arguments" - default n + default y depends on BUSYBOX_RUN_PARTS help - Support additional options: - -l --list print the names of the all matching files (not - limited to executables), but don't actually run them. - + Support additional options: + -l --list print the names of the all matching files (not + limited to executables), but don't actually run them. config BUSYBOX_START_STOP_DAEMON - bool "start-stop-daemon" - default n + bool "start-stop-daemon (12 kb)" + default y help - start-stop-daemon is used to control the creation and - termination of system-level processes, usually the ones - started during the startup of the system. - -config BUSYBOX_FEATURE_START_STOP_DAEMON_FANCY - bool "Support additional arguments" - default n - depends on BUSYBOX_START_STOP_DAEMON - help - Support additional arguments. - -o|--oknodo ignored since we exit with 0 anyway - -v|--verbose - -N|--nicelevel N + start-stop-daemon is used to control the creation and + termination of system-level processes, usually the ones + started during the startup of the system. config BUSYBOX_FEATURE_START_STOP_DAEMON_LONG_OPTIONS bool "Enable long options" - default n + default y depends on BUSYBOX_START_STOP_DAEMON && BUSYBOX_LONG_OPTS - help - Support long options for the start-stop-daemon applet. +config BUSYBOX_FEATURE_START_STOP_DAEMON_FANCY + bool "Support additional arguments" + default y + depends on BUSYBOX_START_STOP_DAEMON + help + -o|--oknodo ignored since we exit with 0 anyway + -v|--verbose + -N|--nicelevel N config BUSYBOX_WHICH - bool "which" - default n + bool "which (3.8 kb)" + default y help - which is used to find programs in your PATH and - print out their pathnames. + which is used to find programs in your PATH and + print out their pathnames. endmenu diff --git a/package/busybox/config/e2fsprogs/Config.in b/package/busybox/config/e2fsprogs/Config.in index 6e7755dab..dbf2737ed 100644 --- a/package/busybox/config/e2fsprogs/Config.in +++ b/package/busybox/config/e2fsprogs/Config.in @@ -1,16 +1,35 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Linux Ext2 FS Progs" config BUSYBOX_CHATTR - bool "chattr" - default n + bool "chattr (3.8 kb)" + default y help - chattr changes the file attributes on a second extended file system. + chattr changes the file attributes on a second extended file system. +config BUSYBOX_FSCK + bool "fsck (7.4 kb)" + default y + help + fsck is used to check and optionally repair one or more filesystems. + In actuality, fsck is simply a front-end for the various file system + checkers (fsck.fstype) available under Linux. +config BUSYBOX_LSATTR + bool "lsattr (5.5 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + lsattr lists the file attributes on a second extended file system. +config BUSYBOX_TUNE2FS + bool "tune2fs (4.4 kb)" + default n # off: it is too limited compared to upstream version + help + tune2fs allows the system administrator to adjust various tunable + filesystem parameters on Linux ext2/ext3 filesystems. ### config E2FSCK ### bool "e2fsck" @@ -21,35 +40,13 @@ config BUSYBOX_CHATTR ### The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also ### provided. -config BUSYBOX_FSCK - bool "fsck" - default n - help - fsck is used to check and optionally repair one or more filesystems. - In actuality, fsck is simply a front-end for the various file system - checkers (fsck.fstype) available under Linux. - -config BUSYBOX_LSATTR - bool "lsattr" - default n - select BUSYBOX_PLATFORM_LINUX - help - lsattr lists the file attributes on a second extended file system. - -### config MKE2FS +### config BUSYBOX_MKE2FS ### bool "mke2fs" ### default y ### help ### mke2fs is used to create an ext2/ext3 filesystem. The normal compat ### symlinks 'mkfs.ext2' and 'mkfs.ext3' are also provided. -config BUSYBOX_TUNE2FS - bool "tune2fs" - default n # off: it is too limited compared to upstream version - help - tune2fs allows the system administrator to adjust various tunable - filesystem parameters on Linux ext2/ext3 filesystems. - ### config E2LABEL ### bool "e2label" ### default y @@ -59,7 +56,7 @@ config BUSYBOX_TUNE2FS ### filesystem located on device. ### NB: this one is now provided by util-linux/volume_id/* -### config FINDFS +### config BUSYBOX_FINDFS ### bool "findfs" ### default y ### depends on BUSYBOX_TUNE2FS diff --git a/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in b/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in deleted file mode 100644 index 2146bb9a9..000000000 --- a/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in +++ /dev/null @@ -1,69 +0,0 @@ -# DO NOT EDIT. This file is generated from Config.src -# -# For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. -# - -menu "Linux Ext2 FS Progs" - - -config BUSYBOX_CHATTR - bool "chattr" - default n - help - chattr changes the file attributes on a second extended file system. - -config BUSYBOX_E2FSCK - bool "e2fsck" - default n - help - e2fsck is used to check Linux second extended file systems (ext2fs). - e2fsck also supports ext2 filesystems countaining a journal (ext3). - The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also - provided. - -config BUSYBOX_FSCK - bool "fsck" - default n - help - fsck is used to check and optionally repair one or more filesystems. - In actuality, fsck is simply a front-end for the various file system - checkers (fsck.fstype) available under Linux. - -config BUSYBOX_LSATTR - bool "lsattr" - default n - help - lsattr lists the file attributes on a second extended file system. - -config BUSYBOX_MKE2FS - bool "mke2fs" - default n - help - mke2fs is used to create an ext2/ext3 filesystem. The normal compat - symlinks 'mkfs.ext2' and 'mkfs.ext3' are also provided. - -config BUSYBOX_TUNE2FS - bool "tune2fs" - default n - help - tune2fs allows the system administrator to adjust various tunable - filesystem parameters on Linux ext2/ext3 filesystems. - -config BUSYBOX_E2LABEL - bool "e2label" - default n - depends on BUSYBOX_TUNE2FS - help - e2label will display or change the filesystem label on the ext2 - filesystem located on device. - -config BUSYBOX_FINDFS - bool "findfs" - default n - depends on BUSYBOX_TUNE2FS - help - findfs will search the disks in the system looking for a filesystem - which has a label matching label or a UUID equal to uuid. - -endmenu diff --git a/package/busybox/config/editors/Config.in b/package/busybox/config/editors/Config.in index 5c6b8a8be..3e48e371d 100644 --- a/package/busybox/config/editors/Config.in +++ b/package/busybox/config/editors/Config.in @@ -1,152 +1,207 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Editors" -config BUSYBOX_PATCH - bool "patch" - depends on !BUSYBOX_DISABLE_PATCH - default n +config BUSYBOX_AWK + bool "awk (23 kb)" + default y + help + Awk is used as a pattern scanning and processing language. + +config BUSYBOX_FEATURE_AWK_LIBM + bool "Enable math functions (requires libm)" + default y + depends on BUSYBOX_AWK help - Apply a unified diff formatted patch. + Enable math functions of the Awk programming language. + NOTE: This requires libm to be present for linking. +config BUSYBOX_FEATURE_AWK_GNU_EXTENSIONS + bool "Enable a few GNU extensions" + default y + depends on BUSYBOX_AWK + help + Enable a few features from gawk: + * command line option -e AWK_PROGRAM + * simultaneous use of -f and -e on the command line. + This enables the use of awk library files. + Example: awk -f mylib.awk -e '{print myfunction($1);}' ... +config BUSYBOX_CMP + bool "cmp (4.9 kb)" + default y + help + cmp is used to compare two files and returns the result + to standard output. +config BUSYBOX_DIFF + bool "diff (13 kb)" + default y + help + diff compares two files or directories and outputs the + differences between them in a form that can be given to + the patch command. + +config BUSYBOX_FEATURE_DIFF_LONG_OPTIONS + bool "Enable long options" + default y + depends on BUSYBOX_DIFF && BUSYBOX_LONG_OPTS + +config BUSYBOX_FEATURE_DIFF_DIR + bool "Enable directory support" + default y + depends on BUSYBOX_DIFF + help + This option enables support for directory and subdirectory + comparison. +config BUSYBOX_ED + bool "ed (21 kb)" + default y + help + The original 1970's Unix text editor, from the days of teletypes. + Small, simple, evil. Part of SUSv3. If you're not already using + this, you don't need it. +config BUSYBOX_PATCH + bool "patch (9.4 kb)" + default y + help + Apply a unified diff formatted patch. +config BUSYBOX_SED + bool "sed (12 kb)" + default y + help + sed is used to perform text transformations on a file + or input from a pipeline. config BUSYBOX_VI - bool "vi" + bool "vi (23 kb)" default y help - 'vi' is a text editor. More specifically, it is the One True - text editor . It does, however, have a rather steep - learning curve. If you are not already comfortable with 'vi' - you may wish to use something else. + 'vi' is a text editor. More specifically, it is the One True + text editor . It does, however, have a rather steep + learning curve. If you are not already comfortable with 'vi' + you may wish to use something else. config BUSYBOX_FEATURE_VI_MAX_LEN - int "Maximum screen width in vi" + int "Maximum screen width" range 256 16384 default 4096 depends on BUSYBOX_VI help - Contrary to what you may think, this is not eating much. - Make it smaller than 4k only if you are very limited on memory. + Contrary to what you may think, this is not eating much. + Make it smaller than 4k only if you are very limited on memory. config BUSYBOX_FEATURE_VI_8BIT - bool "Allow vi to display 8-bit chars (otherwise shows dots)" + bool "Allow to display 8-bit chars (otherwise shows dots)" default n depends on BUSYBOX_VI help - If your terminal can display characters with high bit set, - you may want to enable this. Note: vi is not Unicode-capable. - If your terminal combines several 8-bit bytes into one character - (as in Unicode mode), this will not work properly. + If your terminal can display characters with high bit set, + you may want to enable this. Note: vi is not Unicode-capable. + If your terminal combines several 8-bit bytes into one character + (as in Unicode mode), this will not work properly. config BUSYBOX_FEATURE_VI_COLON bool "Enable \":\" colon commands (no \"ex\" mode)" default y depends on BUSYBOX_VI help - Enable a limited set of colon commands for vi. This does not - provide an "ex" mode. + Enable a limited set of colon commands. This does not + provide an "ex" mode. config BUSYBOX_FEATURE_VI_YANKMARK bool "Enable yank/put commands and mark cmds" default y depends on BUSYBOX_VI help - This will enable you to use yank and put, as well as mark in - busybox vi. + This enables you to use yank and put, as well as mark. config BUSYBOX_FEATURE_VI_SEARCH bool "Enable search and replace cmds" default y depends on BUSYBOX_VI help - Select this if you wish to be able to do search and replace in - busybox vi. + Select this if you wish to be able to do search and replace. config BUSYBOX_FEATURE_VI_REGEX_SEARCH bool "Enable regex in search and replace" default n # Uses GNU regex, which may be unavailable. FIXME depends on BUSYBOX_FEATURE_VI_SEARCH help - Use extended regex search. + Use extended regex search. config BUSYBOX_FEATURE_VI_USE_SIGNALS bool "Catch signals" default y depends on BUSYBOX_VI help - Selecting this option will make busybox vi signal aware. This will - make busybox vi support SIGWINCH to deal with Window Changes, catch - Ctrl-Z and Ctrl-C and alarms. + Selecting this option will make vi signal aware. This will support + SIGWINCH to deal with Window Changes, catch ^Z and ^C and alarms. config BUSYBOX_FEATURE_VI_DOT_CMD bool "Remember previous cmd and \".\" cmd" default y depends on BUSYBOX_VI help - Make busybox vi remember the last command and be able to repeat it. + Make vi remember the last command and be able to repeat it. config BUSYBOX_FEATURE_VI_READONLY bool "Enable -R option and \"view\" mode" default y depends on BUSYBOX_VI help - Enable the read-only command line option, which allows the user to - open a file in read-only mode. + Enable the read-only command line option, which allows the user to + open a file in read-only mode. config BUSYBOX_FEATURE_VI_SETOPTS - bool "Enable set-able options, ai ic showmatch" + bool "Enable settable options, ai ic showmatch" default y depends on BUSYBOX_VI help - Enable the editor to set some (ai, ic, showmatch) options. + Enable the editor to set some (ai, ic, showmatch) options. config BUSYBOX_FEATURE_VI_SET - bool "Support for :set" + bool "Support :set" default y depends on BUSYBOX_VI - help - Support for ":set". config BUSYBOX_FEATURE_VI_WIN_RESIZE bool "Handle window resize" default y depends on BUSYBOX_VI help - Make busybox vi behave nicely with terminals that get resized. + Behave nicely with terminals that get resized. config BUSYBOX_FEATURE_VI_ASK_TERMINAL bool "Use 'tell me cursor position' ESC sequence to measure window" default y depends on BUSYBOX_VI help - If terminal size can't be retrieved and $LINES/$COLUMNS are not set, - this option makes vi perform a last-ditch effort to find it: - position cursor to 999,999 and ask terminal to report real - cursor position using "ESC [ 6 n" escape sequence, then read stdin. - - This is not clean but helps a lot on serial lines and such. + If terminal size can't be retrieved and $LINES/$COLUMNS are not set, + this option makes vi perform a last-ditch effort to find it: + position cursor to 999,999 and ask terminal to report real + cursor position using "ESC [ 6 n" escape sequence, then read stdin. + This is not clean but helps a lot on serial lines and such. config BUSYBOX_FEATURE_VI_UNDO - bool "Support undo command 'u'" + bool "Support undo command \"u\"" default y depends on BUSYBOX_VI help - Support the 'u' command to undo insertion, deletion, and replacement - of text. + Support the 'u' command to undo insertion, deletion, and replacement + of text. config BUSYBOX_FEATURE_VI_UNDO_QUEUE bool "Enable undo operation queuing" default y depends on BUSYBOX_FEATURE_VI_UNDO help - The vi undo functions can use an intermediate queue to greatly lower - malloc() calls and overhead. When the maximum size of this queue is - reached, the contents of the queue are committed to the undo stack. - This increases the size of the undo code and allows some undo - operations (especially un-typing/backspacing) to be far more useful. + The vi undo functions can use an intermediate queue to greatly lower + malloc() calls and overhead. When the maximum size of this queue is + reached, the contents of the queue are committed to the undo stack. + This increases the size of the undo code and allows some undo + operations (especially un-typing/backspacing) to be far more useful. config BUSYBOX_FEATURE_VI_UNDO_QUEUE_MAX int "Maximum undo character queue size" @@ -154,94 +209,20 @@ config BUSYBOX_FEATURE_VI_UNDO_QUEUE_MAX range 32 65536 depends on BUSYBOX_FEATURE_VI_UNDO_QUEUE help - This option sets the number of bytes used at runtime for the queue. - Smaller values will create more undo objects and reduce the amount - of typed or backspaced characters that are grouped into one undo - operation; larger values increase the potential size of each undo - and will generally malloc() larger objects and less frequently. - Unless you want more (or less) frequent "undo points" while typing, - you should probably leave this unchanged. - -config BUSYBOX_AWK - bool "awk" - default n - help - Awk is used as a pattern scanning and processing language. This is - the BusyBox implementation of that programming language. - -config BUSYBOX_FEATURE_AWK_LIBM - bool "Enable math functions (requires libm)" - default n - depends on BUSYBOX_AWK - help - Enable math functions of the Awk programming language. - NOTE: This will require libm to be present for linking. - -config BUSYBOX_FEATURE_AWK_GNU_EXTENSIONS - bool "Enable a few GNU extensions" - default n - depends on BUSYBOX_AWK - help - Enable a few features from gawk: - * command line option -e AWK_PROGRAM - * simultaneous use of -f and -e on the command line. - This enables the use of awk library files. - Ex: awk -f mylib.awk -e '{print myfunction($1);}' ... - -config BUSYBOX_CMP - bool "cmp" - default n - help - cmp is used to compare two files and returns the result - to standard output. - -config BUSYBOX_DIFF - bool "diff" - depends on !BUSYBOX_DISABLE_DIFF - default n - help - diff compares two files or directories and outputs the - differences between them in a form that can be given to - the patch command. - -config BUSYBOX_FEATURE_DIFF_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_DIFF && BUSYBOX_LONG_OPTS - help - Enable use of long options. - -config BUSYBOX_FEATURE_DIFF_DIR - bool "Enable directory support" - default n - depends on BUSYBOX_DIFF - help - This option enables support for directory and subdirectory - comparison. - -config BUSYBOX_ED - bool "ed" - depends on !BUSYBOX_DISABLE_ED - default n - help - The original 1970's Unix text editor, from the days of teletypes. - Small, simple, evil. Part of SUSv3. If you're not already using - this, you don't need it. - -config BUSYBOX_SED - bool "sed" - depends on !BUSYBOX_DISABLE_SED - default n - help - sed is used to perform text transformations on a file - or input from a pipeline. + This option sets the number of bytes used at runtime for the queue. + Smaller values will create more undo objects and reduce the amount + of typed or backspaced characters that are grouped into one undo + operation; larger values increase the potential size of each undo + and will generally malloc() larger objects and less frequently. + Unless you want more (or less) frequent "undo points" while typing, + you should probably leave this unchanged. config BUSYBOX_FEATURE_ALLOW_EXEC bool "Allow vi and awk to execute shell commands" - default n + default y depends on BUSYBOX_VI || BUSYBOX_AWK help - Enables vi and awk features which allows user to execute - shell commands (using system() C call). + Enables vi and awk features which allow user to execute + shell commands (using system() C call). endmenu diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in index 09c30f6d5..8a81483e2 100644 --- a/package/busybox/config/findutils/Config.in +++ b/package/busybox/config/findutils/Config.in @@ -1,58 +1,55 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Finding Utilities" config BUSYBOX_FIND - bool "find" - depends on !BUSYBOX_DISABLE_FIND + bool "find (14 kb)" default y help - find is used to search your system to find specified files. + find is used to search your system to find specified files. config BUSYBOX_FEATURE_FIND_PRINT0 bool "Enable -print0: NUL-terminated output" default y depends on BUSYBOX_FIND help - Causes output names to be separated by a NUL character - rather than a newline. This allows names that contain - newlines and other whitespace to be more easily - interpreted by other programs. + Causes output names to be separated by a NUL character + rather than a newline. This allows names that contain + newlines and other whitespace to be more easily + interpreted by other programs. config BUSYBOX_FEATURE_FIND_MTIME bool "Enable -mtime: modified time matching" default y depends on BUSYBOX_FIND help - Allow searching based on the modification time of - files, in days. + Allow searching based on the modification time of + files, in days. config BUSYBOX_FEATURE_FIND_MMIN bool "Enable -mmin: modified time matching by minutes" default y depends on BUSYBOX_FIND help - Allow searching based on the modification time of - files, in minutes. + Allow searching based on the modification time of + files, in minutes. config BUSYBOX_FEATURE_FIND_PERM bool "Enable -perm: permissions matching" default y depends on BUSYBOX_FIND - help - Enable searching based on file permissions. config BUSYBOX_FEATURE_FIND_TYPE bool "Enable -type: file type matching (file/dir/link/...)" default y depends on BUSYBOX_FIND help - Enable searching based on file type (file, - directory, socket, device, etc.). + Enable searching based on file type (file, + directory, socket, device, etc.). config BUSYBOX_FEATURE_FIND_EXECUTABLE bool "Enable -executable: file is executable" @@ -63,108 +60,88 @@ config BUSYBOX_FEATURE_FIND_XDEV bool "Enable -xdev: 'stay in filesystem'" default y depends on BUSYBOX_FIND - help - This option allows find to restrict searches to a single filesystem. config BUSYBOX_FEATURE_FIND_MAXDEPTH bool "Enable -mindepth N and -maxdepth N" default y depends on BUSYBOX_FIND - help - This option enables -mindepth N and -maxdepth N option. config BUSYBOX_FEATURE_FIND_NEWER bool "Enable -newer: compare file modification times" default y depends on BUSYBOX_FIND help - Support the 'find -newer' option for finding any files which have - modification time that is more recent than the specified FILE. + Support the 'find -newer' option for finding any files which have + modification time that is more recent than the specified FILE. config BUSYBOX_FEATURE_FIND_INUM bool "Enable -inum: inode number matching" default y depends on BUSYBOX_FIND - help - Support the 'find -inum' option for searching by inode number. - -config BUSYBOX_FEATURE_FIND_EMPTY - bool "Enable -empty option matching empty files and directories" - default y - depends on BUSYBOX_FIND - help - Support the 'find -empty' option for searching empty files - and directories. config BUSYBOX_FEATURE_FIND_EXEC bool "Enable -exec: execute commands" default y depends on BUSYBOX_FIND help - Support the 'find -exec' option for executing commands based upon - the files matched. + Support the 'find -exec' option for executing commands based upon + the files matched. config BUSYBOX_FEATURE_FIND_EXEC_PLUS bool "Enable -exec ... {} +" default y depends on BUSYBOX_FEATURE_FIND_EXEC help - Support the 'find -exec ... {} +' option for executing commands - for all matched files at once. - Without this option, -exec + is a synonym for -exec ; - (IOW: it works correctly, but without expected speedup) + Support the 'find -exec ... {} +' option for executing commands + for all matched files at once. + Without this option, -exec + is a synonym for -exec ; + (IOW: it works correctly, but without expected speedup) config BUSYBOX_FEATURE_FIND_USER bool "Enable -user: username/uid matching" default y depends on BUSYBOX_FIND - help - Support the 'find -user' option for searching by username or uid. config BUSYBOX_FEATURE_FIND_GROUP bool "Enable -group: group/gid matching" default y depends on BUSYBOX_FIND - help - Support the 'find -group' option for searching by group name or gid. config BUSYBOX_FEATURE_FIND_NOT bool "Enable the 'not' (!) operator" default y depends on BUSYBOX_FIND help - Support the '!' operator to invert the test results. - If 'Enable full-blown desktop' is enabled, then will also support - the non-POSIX notation '-not'. + Support the '!' operator to invert the test results. + If 'Enable full-blown desktop' is enabled, then will also support + the non-POSIX notation '-not'. config BUSYBOX_FEATURE_FIND_DEPTH bool "Enable -depth" default y depends on BUSYBOX_FIND help - Process each directory's contents before the directory itself. + Process each directory's contents before the directory itself. config BUSYBOX_FEATURE_FIND_PAREN bool "Enable parens in options" default y depends on BUSYBOX_FIND help - Enable usage of parens '(' to specify logical order of arguments. + Enable usage of parens '(' to specify logical order of arguments. config BUSYBOX_FEATURE_FIND_SIZE bool "Enable -size: file size matching" default y depends on BUSYBOX_FIND - help - Support the 'find -size' option for searching by file size. config BUSYBOX_FEATURE_FIND_PRUNE bool "Enable -prune: exclude subdirectories" default y depends on BUSYBOX_FIND help - If the file is a directory, dont descend into it. Useful for - exclusion .svn and CVS directories. + If the file is a directory, don't descend into it. Useful for + exclusion .svn and CVS directories. config BUSYBOX_FEATURE_FIND_QUIT bool "Enable -quit: exit" @@ -178,113 +155,116 @@ config BUSYBOX_FEATURE_FIND_DELETE default y depends on BUSYBOX_FIND && BUSYBOX_FEATURE_FIND_DEPTH help - Support the 'find -delete' option for deleting files and directories. - 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. + Support the 'find -delete' option for deleting files and directories. + 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. + +config BUSYBOX_FEATURE_FIND_EMPTY + bool "Enable -empty: match empty files or directories" + default y + depends on BUSYBOX_FIND + help + Support the 'find -empty' option to find empty regular files + or directories. config BUSYBOX_FEATURE_FIND_PATH bool "Enable -path: match pathname with shell pattern" default y depends on BUSYBOX_FIND help - The -path option matches whole pathname instead of just filename. + The -path option matches whole pathname instead of just filename. config BUSYBOX_FEATURE_FIND_REGEX bool "Enable -regex: match pathname with regex" default y depends on BUSYBOX_FIND help - The -regex option matches whole pathname against regular expression. + The -regex option matches whole pathname against regular expression. config BUSYBOX_FEATURE_FIND_CONTEXT bool "Enable -context: security context matching" default n depends on BUSYBOX_FIND && BUSYBOX_SELINUX help - Support the 'find -context' option for matching security context. + Support the 'find -context' option for matching security context. config BUSYBOX_FEATURE_FIND_LINKS bool "Enable -links: link count matching" default y depends on BUSYBOX_FIND help - Support the 'find -links' option for matching number of links. - + Support the 'find -links' option for matching number of links. config BUSYBOX_GREP - bool "grep" - depends on !BUSYBOX_DISABLE_GREP + bool "grep (8.6 kb)" default y help - grep is used to search files for a specified pattern. + grep is used to search files for a specified pattern. config BUSYBOX_EGREP - bool "egrep" - depends on !BUSYBOX_DISABLE_GREP + bool "egrep (7.8 kb)" default y help - Alias to "grep -E" + Alias to "grep -E". config BUSYBOX_FGREP - bool "fgrep" - depends on !BUSYBOX_DISABLE_GREP + bool "fgrep (7.8 kb)" default y help - Alias to "grep -F" + Alias to "grep -F". config BUSYBOX_FEATURE_GREP_CONTEXT bool "Enable before and after context flags (-A, -B and -C)" default y - depends on BUSYBOX_GREP + depends on BUSYBOX_GREP || BUSYBOX_EGREP || BUSYBOX_FGREP help - Print the specified number of leading (-B) and/or trailing (-A) - context surrounding our matching lines. - Print the specified number of context lines (-C). - + Print the specified number of leading (-B) and/or trailing (-A) + context surrounding our matching lines. + Print the specified number of context lines (-C). config BUSYBOX_XARGS - bool "xargs" - default n + bool "xargs (7.2 kb)" + default y help - xargs is used to execute a specified command for - every item from standard input. + xargs is used to execute a specified command for + every item from standard input. config BUSYBOX_FEATURE_XARGS_SUPPORT_CONFIRMATION bool "Enable -p: prompt and confirmation" default y depends on BUSYBOX_XARGS help - Support -p: prompt the user whether to run each command - line and read a line from the terminal. + Support -p: prompt the user whether to run each command + line and read a line from the terminal. config BUSYBOX_FEATURE_XARGS_SUPPORT_QUOTES bool "Enable single and double quotes and backslash" default y depends on BUSYBOX_XARGS help - Support quoting in the input. + Support quoting in the input. config BUSYBOX_FEATURE_XARGS_SUPPORT_TERMOPT bool "Enable -x: exit if -s or -n is exceeded" default y depends on BUSYBOX_XARGS help - Support -x: exit if the command size (see the -s or -n option) - is exceeded. + Support -x: exit if the command size (see the -s or -n option) + is exceeded. config BUSYBOX_FEATURE_XARGS_SUPPORT_ZERO_TERM bool "Enable -0: NUL-terminated input" default y depends on BUSYBOX_XARGS help - Support -0: input items are terminated by a NUL character - instead of whitespace, and the quotes and backslash - are not special. + Support -0: input items are terminated by a NUL character + instead of whitespace, and the quotes and backslash + are not special. config BUSYBOX_FEATURE_XARGS_SUPPORT_REPL_STR bool "Enable -I STR: string to replace" default y depends on BUSYBOX_XARGS help - Support -I STR and -i[STR] options. + Support -I STR and -i[STR] options. config BUSYBOX_FEATURE_XARGS_SUPPORT_PARALLEL bool "Enable -P N: processes to run in parallel" diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in index 33ddd603b..e27e0ea86 100644 --- a/package/busybox/config/init/Config.in +++ b/package/busybox/config/init/Config.in @@ -1,67 +1,66 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Init Utilities" config BUSYBOX_BOOTCHARTD - bool "bootchartd" - default n + bool "bootchartd (10 kb)" + default y help - bootchartd is commonly used to profile the boot process - for the purpose of speeding it up. In this case, it is started - by the kernel as the init process. This is configured by adding - the init=/sbin/bootchartd option to the kernel command line. + bootchartd is commonly used to profile the boot process + for the purpose of speeding it up. In this case, it is started + by the kernel as the init process. This is configured by adding + the init=/sbin/bootchartd option to the kernel command line. - It can also be used to monitor the resource usage of a specific - application or the running system in general. In this case, - bootchartd is started interactively by running bootchartd start - and stopped using bootchartd stop. + It can also be used to monitor the resource usage of a specific + application or the running system in general. In this case, + bootchartd is started interactively by running bootchartd start + and stopped using bootchartd stop. config BUSYBOX_FEATURE_BOOTCHARTD_BLOATED_HEADER bool "Compatible, bloated header" default y depends on BUSYBOX_BOOTCHARTD help - Create extended header file compatible with "big" bootchartd. - "Big" bootchartd is a shell script and it dumps some - "convenient" info int the header, such as: - title = Boot chart for `hostname` (`date`) - system.uname = `uname -srvm` - system.release = `cat /etc/DISTRO-release` - system.cpu = `grep '^model name' /proc/cpuinfo | head -1` ($cpucount) - system.kernel.options = `cat /proc/cmdline` - This data is not mandatory for bootchart graph generation, - and is considered bloat. Nevertheless, this option - makes bootchartd applet to dump a subset of it. + Create extended header file compatible with "big" bootchartd. + "Big" bootchartd is a shell script and it dumps some + "convenient" info into the header, such as: + title = Boot chart for `hostname` (`date`) + system.uname = `uname -srvm` + system.release = `cat /etc/DISTRO-release` + system.cpu = `grep '^model name' /proc/cpuinfo | head -1` ($cpucount) + system.kernel.options = `cat /proc/cmdline` + This data is not mandatory for bootchart graph generation, + and is considered bloat. Nevertheless, this option + makes bootchartd applet to dump a subset of it. config BUSYBOX_FEATURE_BOOTCHARTD_CONFIG_FILE bool "Support bootchartd.conf" default y depends on BUSYBOX_BOOTCHARTD help - Enable reading and parsing of $PWD/bootchartd.conf - and /etc/bootchartd.conf files. - + Enable reading and parsing of $PWD/bootchartd.conf + and /etc/bootchartd.conf files. config BUSYBOX_HALT - bool "halt" + bool "halt (4 kb)" default y help - Stop all processes and either halt, reboot, or power off the system. + Stop all processes and halt the system. config BUSYBOX_POWEROFF - bool "poweroff" + bool "poweroff (4 kb)" default y help - Stop all processes and power off the system. + Stop all processes and power off the system. config BUSYBOX_REBOOT - bool "reboot" + bool "reboot (4 kb)" default y help - Stop all processes and reboot the system. + Stop all processes and reboot the system. config BUSYBOX_FEATURE_WAIT_FOR_INIT bool "Before signaling init, make sure it is ready for it" @@ -76,58 +75,56 @@ config BUSYBOX_FEATURE_WAIT_FOR_INIT config BUSYBOX_FEATURE_CALL_TELINIT bool "Call telinit on shutdown and reboot" - default n - depends on BUSYBOX_HALT && !BUSYBOX_INIT + default y + depends on (BUSYBOX_HALT || BUSYBOX_POWEROFF || BUSYBOX_REBOOT) && !BUSYBOX_INIT help - Call an external program (normally telinit) to facilitate - a switch to a proper runlevel. + Call an external program (normally telinit) to facilitate + a switch to a proper runlevel. - This option is only available if you selected halt and friends, - but did not select init. + This option is only available if you selected halt and friends, + but did not select init. config BUSYBOX_TELINIT_PATH string "Path to telinit executable" default "/sbin/telinit" depends on BUSYBOX_FEATURE_CALL_TELINIT help - When busybox halt and friends have to call external telinit - to facilitate proper shutdown, this path is to be used when - locating telinit executable. - + When busybox halt and friends have to call external telinit + to facilitate proper shutdown, this path is to be used when + locating telinit executable. config BUSYBOX_INIT - bool "init" + bool "init (10 kb)" default y - depends on !ADK_PACKAGE_SIMPLEINIT select BUSYBOX_FEATURE_SYSLOG help - init is the first program run when the system boots. + init is the first program run when the system boots. config BUSYBOX_LINUXRC - bool "Support running init from within an initrd (not initramfs)" - default n + bool "linuxrc: support running init from initrd (not initramfs)" + default y select BUSYBOX_FEATURE_SYSLOG help - Legacy support for running init under the old-style initrd. Allows - the name linuxrc to act as init, and it doesn't assume init is PID 1. + Legacy support for running init under the old-style initrd. Allows + the name linuxrc to act as init, and it doesn't assume init is PID 1. - This does not apply to initramfs, which runs /init as PID 1 and - requires no special support. + This does not apply to initramfs, which runs /init as PID 1 and + requires no special support. config BUSYBOX_FEATURE_USE_INITTAB bool "Support reading an inittab file" default y - depends on BUSYBOX_INIT + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC help - Allow init to read an inittab file when the system boot. + Allow init to read an inittab file when the system boot. config BUSYBOX_FEATURE_KILL_REMOVED bool "Support killing processes that have been removed from inittab" default n depends on BUSYBOX_FEATURE_USE_INITTAB help - When respawn entries are removed from inittab and a SIGHUP is - sent to init, this option will make init kill the processes - that have been removed. + When respawn entries are removed from inittab and a SIGHUP is + sent to init, this option will make init kill the processes + that have been removed. config BUSYBOX_FEATURE_KILL_DELAY int "How long to wait between TERM and KILL (0 - send TERM only)" if FEATURE_KILL_REMOVED @@ -135,97 +132,75 @@ config BUSYBOX_FEATURE_KILL_DELAY default 0 depends on BUSYBOX_FEATURE_KILL_REMOVED help - With nonzero setting, init sends TERM, forks, child waits N - seconds, sends KILL and exits. Setting it too high is unwise - (child will hang around for too long and could actually kill - the wrong process!) + With nonzero setting, init sends TERM, forks, child waits N + seconds, sends KILL and exits. Setting it too high is unwise + (child will hang around for too long and could actually kill + the wrong process!) config BUSYBOX_FEATURE_INIT_SCTTY bool "Run commands with leading dash with controlling tty" default y - depends on BUSYBOX_INIT - help - If this option is enabled, init will try to give a controlling - tty to any command which has leading hyphen (often it's "-/bin/sh"). - More precisely, init will do "ioctl(STDIN_FILENO, TIOCSCTTY, 0)". - If device attached to STDIN_FILENO can be a ctty but is not yet - a ctty for other session, it will become this process' ctty. - This is not the traditional init behavour, but is often what you want - in an embedded system where the console is only accessed during - development or for maintenance. - NB: using cttyhack applet may work better. + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC + help + If this option is enabled, init will try to give a controlling + tty to any command which has leading hyphen (often it's "-/bin/sh"). + More precisely, init will do "ioctl(STDIN_FILENO, TIOCSCTTY, 0)". + If device attached to STDIN_FILENO can be a ctty but is not yet + a ctty for other session, it will become this process' ctty. + This is not the traditional init behavour, but is often what you want + in an embedded system where the console is only accessed during + development or for maintenance. + NB: using cttyhack applet may work better. config BUSYBOX_FEATURE_INIT_SYSLOG bool "Enable init to write to syslog" default y - depends on BUSYBOX_INIT + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC + help + If selected, some init messages are sent to syslog. + Otherwise, they are sent to VT #5 if linux virtual tty is detected + (if not, no separate logging is done). config BUSYBOX_FEATURE_INIT_QUIET bool "Be quiet on boot (no 'init started:' message)" default y depends on BUSYBOX_INIT || BUSYBOX_LINUXRC -config BUSYBOX_FEATURE_EXTRA_QUIET - bool "Be _extra_ quiet on boot" - default y - depends on BUSYBOX_INIT - help - Prevent init from logging some messages to the console during boot. - config BUSYBOX_FEATURE_INIT_COREDUMPS bool "Support dumping core for child processes (debugging only)" - default n - depends on BUSYBOX_INIT + default n # not Y because this is a debug option + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC help - If this option is enabled and the file /.init_enable_core - exists, then init will call setrlimit() to allow unlimited - core file sizes. If this option is disabled, processes - will not generate any core files. + If this option is enabled and the file /.init_enable_core + exists, then init will call setrlimit() to allow unlimited + core file sizes. If this option is disabled, processes + will not generate any core files. config BUSYBOX_INIT_TERMINAL_TYPE string "Initial terminal type" default "linux" - depends on BUSYBOX_INIT + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC help - This is the initial value set by init for the TERM environment - variable. This variable is used by programs which make use of - extended terminal capabilities. + This is the initial value set by init for the TERM environment + variable. This variable is used by programs which make use of + extended terminal capabilities. - Note that on Linux, init attempts to detect serial terminal and - sets TERM to "vt102" if one is found. + Note that on Linux, init attempts to detect serial terminal and + sets TERM to "vt102" if one is found. config BUSYBOX_FEATURE_INIT_MODIFY_CMDLINE - bool "Modify the command-line to \"init\"" - default n - depends on BUSYBOX_INIT || BUSYBOX_LINUXRC - help - When launched as PID 1 and after parsing its arguments, init - wipes all the arguments but argv[0] and rewrites argv[0] to - contain only "init", so that its command-line appears solely as - "init" in tools such as ps. - If this option is set to Y, init will keep its original behavior, - otherwise, all the arguments including argv[0] will be preserved, - be they parsed or ignored by init. - The original command-line used to launch init can then be - retrieved in /proc/1/cmdline on Linux, for example. - -config BUSYBOX_MESG - bool "mesg" - default n - help - Mesg controls access to your terminal by others. It is typically - used to allow or disallow other users to write to your terminal - -config BUSYBOX_FEATURE_MESG_ENABLE_ONLY_GROUP - bool "Enable writing to tty only by group, not by everybody" + bool "Clear init's command line" default y - depends on BUSYBOX_MESG + depends on BUSYBOX_INIT || BUSYBOX_LINUXRC help - Usually, ttys are owned by group "tty", and "write" tool is - setgid to this group. This way, "mesg y" only needs to enable - "write by owning group" bit in tty mode. - - If you set this option to N, "mesg y" will enable writing - by anybody at all. This is not recommended. + When launched as PID 1 and after parsing its arguments, init + wipes all the arguments but argv[0] and rewrites argv[0] to + contain only "init", so that its command line appears solely as + "init" in tools such as ps. + If this option is set to Y, init will keep its original behavior, + otherwise, all the arguments including argv[0] will be preserved, + be they parsed or ignored by init. + The original command-line used to launch init can then be + retrieved in /proc/1/cmdline on Linux, for example. endmenu diff --git a/package/busybox/config/libbb/Config.in b/package/busybox/config/libbb/Config.in index afbc81213..84bed23ea 100644 --- a/package/busybox/config/libbb/Config.in +++ b/package/busybox/config/libbb/Config.in @@ -1,56 +1,55 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # -menu "Busybox Library Tuning" +comment "Library Tuning" config BUSYBOX_FEATURE_USE_BSS_TAIL bool "Use the end of BSS page" default n help - Attempt to reclaim a small unused part of BSS. - - Executables have the following parts: - = read-only executable code and constants, also known as "text" - = read-write data - = non-initialized (zeroed on demand) data, also known as "bss" - - At link time, "text" is padded to a full page. At runtime, all "text" - pages are mapped RO and executable. - "Data" starts on the next page boundary, but is not padded - to a full page at the end. "Bss" starts wherever "data" ends. - At runtime, "data" pages are mapped RW and they are file-backed - (this includes a small portion of "bss" which may live in the last - partial page of "data"). - Pages which are fully in "bss" are mapped to anonymous memory. - - "Bss" end is usually not page-aligned. There is an unused space - in the last page. Linker marks its start with the "_end" symbol. - - This option will attempt to use that space for bb_common_bufsiz1[] - array. If it fits after _end, it will be used, and COMMON_BUFSIZE - will be enlarged from its guaranteed minimum size of 1 kbyte. - This may require recompilation a second time, since value of _end - is known only after final link. - - If you are getting a build error like this: - appletlib.c:(.text.main+0xd): undefined reference to '_end' - disable this option. - + Attempt to reclaim a small unused part of BSS. + + Executables have the following parts: + = read-only executable code and constants, also known as "text" + = read-write data + = non-initialized (zeroed on demand) data, also known as "bss" + + At link time, "text" is padded to a full page. At runtime, all "text" + pages are mapped RO and executable. + + "Data" starts on the next page boundary, but is not padded + to a full page at the end. "Bss" starts wherever "data" ends. + At runtime, "data" pages are mapped RW and they are file-backed + (this includes a small portion of "bss" which may live in the last + partial page of "data"). + Pages which are fully in "bss" are mapped to anonymous memory. + + "Bss" end is usually not page-aligned. There is an unused space + in the last page. Linker marks its start with the "_end" symbol. + + This option will attempt to use that space for bb_common_bufsiz1[] + array. If it fits after _end, it will be used, and COMMON_BUFSIZE + will be enlarged from its guaranteed minimum size of 1 kbyte. + This may require recompilation a second time, since value of _end + is known only after final link. + + If you are getting a build error like this: + appletlib.c:(.text.main+0xd): undefined reference to '_end' + disable this option. config BUSYBOX_FLOAT_DURATION bool "Enable fractional duration arguments" default y help Allow sleep N.NNN, top -d N.NNN etc. - config BUSYBOX_FEATURE_RTMINMAX bool "Support RTMIN[+n] and RTMAX[-n] signal names" default y help - Support RTMIN[+n] and RTMAX[-n] signal names - in kill, killall etc. This costs ~250 bytes. + Support RTMIN[+n] and RTMAX[-n] signal names + in kill, killall etc. This costs ~250 bytes. config BUSYBOX_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS bool "Use the definitions of SIGRTMIN/SIGRTMAX provided by libc" @@ -64,51 +63,74 @@ config BUSYBOX_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS of SIGRTMIN, and not the raw definition provided by the kernel. This behavior matches "kill -l RTMIN+n" from bash. +choice + prompt "Buffer allocation policy" + default BUSYBOX_FEATURE_BUFFERS_USE_MALLOC + help + There are 3 ways busybox can handle buffer allocations: + - Use malloc. This costs code size for the call to xmalloc. + - Put them on stack. For some very small machines with limited stack + space, this can be deadly. For most folks, this works just fine. + - Put them in BSS. This works beautifully for computers with a real + MMU (and OS support), but wastes runtime RAM for uCLinux. This + behavior was the only one available for versions 0.48 and earlier. + +config BUSYBOX_FEATURE_BUFFERS_USE_MALLOC + bool "Allocate with Malloc" + +config BUSYBOX_FEATURE_BUFFERS_GO_ON_STACK + bool "Allocate on the Stack" + +config BUSYBOX_FEATURE_BUFFERS_GO_IN_BSS + bool "Allocate in the .bss section" + +endchoice + config BUSYBOX_PASSWORD_MINLEN int "Minimum password length" default 6 range 5 32 help - Minimum allowable password length. + Minimum allowable password length. config BUSYBOX_MD5_SMALL int "MD5: Trade bytes for speed (0:fast, 3:slow)" - default 1 + default 1 # all "fast or small" options default to small range 0 3 help - Trade binary size versus speed for the md5sum algorithm. - Approximate values running uClibc and hashing - linux-2.4.4.tar.bz2 were: - user times (sec) text size (386) - 0 (fastest) 1.1 6144 - 1 1.4 5392 - 2 3.0 5088 - 3 (smallest) 5.1 4912 + Trade binary size versus speed for the md5sum algorithm. + Approximate values running uClibc and hashing + linux-2.4.4.tar.bz2 were: + value user times (sec) text size (386) + 0 (fastest) 1.1 6144 + 1 1.4 5392 + 2 3.0 5088 + 3 (smallest) 5.1 4912 config BUSYBOX_SHA3_SMALL - int "SHA3: Trade bytes for speed (0:fast, 1:slow)" - default 1 - range 0 1 - help - Trade binary size versus speed for the sha3sum algorithm. - SHA3_SMALL=0 compared to SHA3_SMALL=1 (approximate): - 64-bit x86: +270 bytes of code, 45% faster - 32-bit x86: +450 bytes of code, 75% faster + int "SHA3: Trade bytes for speed (0:fast, 1:slow)" + default 1 # all "fast or small" options default to small + range 0 1 + help + Trade binary size versus speed for the sha3sum algorithm. + SHA3_SMALL=0 compared to SHA3_SMALL=1 (approximate): + 64-bit x86: +270 bytes of code, 45% faster + 32-bit x86: +450 bytes of code, 75% faster config BUSYBOX_FEATURE_FAST_TOP bool "Faster /proc scanning code (+100 bytes)" - default y + default n # all "fast or small" options default to small help - This option makes top (and ps) ~20% faster (or 20% less CPU hungry), - but code size is slightly bigger. + This option makes top and ps ~20% faster (or 20% less CPU hungry), + but code size is slightly bigger. config BUSYBOX_FEATURE_ETC_NETWORKS - bool "Support for /etc/networks" + bool "Support /etc/networks" default n help - Enable support for network names in /etc/networks. This is - a rarely used feature which allows you to use names - instead of IP/mask pairs in route command. + Enable support for network names in /etc/networks. This is + a rarely used feature which allows you to use names + instead of IP/mask pairs in route command. config BUSYBOX_FEATURE_ETC_SERVICES bool "Consult /etc/services even for well-known ports" @@ -122,23 +144,11 @@ config BUSYBOX_FEATURE_ETC_SERVICES specified as a service name (e.g. "telnet HOST PORTNAME"), it will still be looked up in /etc/services. - -config BUSYBOX_FEATURE_USE_TERMIOS - bool "Use termios to manipulate the screen" - default y - depends on BUSYBOX_MORE || BUSYBOX_TOP || BUSYBOX_POWERTOP - help - This option allows utilities such as 'more' and 'top' to determine - the size of the screen. If you leave this disabled, your utilities - that display things on the screen will be especially primitive and - will be unable to determine the current screen size, and will be - unable to move the cursor. - config BUSYBOX_FEATURE_EDITING bool "Command line editing" default y help - Enable line editing (mainly for shell command line). + Enable line editing (mainly for shell command line). config BUSYBOX_FEATURE_EDITING_MAX_LEN int "Maximum length of input" @@ -146,17 +156,17 @@ config BUSYBOX_FEATURE_EDITING_MAX_LEN default 1024 depends on BUSYBOX_FEATURE_EDITING help - Line editing code uses on-stack buffers for storage. - You may want to decrease this parameter if your target machine - benefits from smaller stack usage. + Line editing code uses on-stack buffers for storage. + You may want to decrease this parameter if your target machine + benefits from smaller stack usage. config BUSYBOX_FEATURE_EDITING_VI bool "vi-style line editing commands" default n depends on BUSYBOX_FEATURE_EDITING help - Enable vi-style line editing. In shells, this mode can be - turned on and off with "set -o vi" and "set +o vi". + Enable vi-style line editing. In shells, this mode can be + turned on and off with "set -o vi" and "set +o vi". config BUSYBOX_FEATURE_EDITING_HISTORY int "History size" @@ -165,51 +175,47 @@ config BUSYBOX_FEATURE_EDITING_HISTORY default 255 depends on BUSYBOX_FEATURE_EDITING help - Specify command history size (0 - disable). + Specify command history size (0 - disable). config BUSYBOX_FEATURE_EDITING_SAVEHISTORY bool "History saving" default y depends on BUSYBOX_FEATURE_EDITING help - Enable history saving in shells. + Enable history saving in shells. config BUSYBOX_FEATURE_EDITING_SAVE_ON_EXIT bool "Save history on shell exit, not after every command" default n depends on BUSYBOX_FEATURE_EDITING_SAVEHISTORY help - Save history on shell exit, not after every command. + Save history on shell exit, not after every command. config BUSYBOX_FEATURE_REVERSE_SEARCH bool "Reverse history search" default y - depends on BUSYBOX_FEATURE_EDITING_SAVEHISTORY + depends on BUSYBOX_FEATURE_EDITING help - Enable readline-like Ctrl-R combination for reverse history search. - Increases code by about 0.5k. + Enable readline-like Ctrl-R combination for reverse history search. + Increases code by about 0.5k. config BUSYBOX_FEATURE_TAB_COMPLETION bool "Tab completion" default y depends on BUSYBOX_FEATURE_EDITING - help - Enable tab completion. config BUSYBOX_FEATURE_USERNAME_COMPLETION bool "Username completion" - default n + default y depends on BUSYBOX_FEATURE_TAB_COMPLETION - help - Enable username completion. config BUSYBOX_FEATURE_EDITING_FANCY_PROMPT bool "Fancy shell prompts" default y depends on BUSYBOX_FEATURE_EDITING help - Setting this option allows for prompts to use things like \w and - \$ and escape codes. + Setting this option allows for prompts to use things like \w and + \$ and escape codes. config BUSYBOX_FEATURE_EDITING_WINCH bool "Enable automatic tracking of window size changes" @@ -221,90 +227,229 @@ config BUSYBOX_FEATURE_EDITING_ASK_TERMINAL default n depends on BUSYBOX_FEATURE_EDITING help - Allow usage of "ESC [ 6 n" sequence. Terminal answers back with - current cursor position. This information is used to make line - editing more robust in some cases. - If you are not sure whether your terminals respond to this code - correctly, or want to save on code size (about 400 bytes), - then do not turn this option on. + Allow usage of "ESC [ 6 n" sequence. Terminal answers back with + current cursor position. This information is used to make line + editing more robust in some cases. + If you are not sure whether your terminals respond to this code + correctly, or want to save on code size (about 400 bytes), + then do not turn this option on. + +config BUSYBOX_LOCALE_SUPPORT + bool "Enable locale support (system needs locale for this to work)" + default n + help + Enable this if your system has locale support and you would like + busybox to support locale settings. + +config BUSYBOX_UNICODE_SUPPORT + bool "Support Unicode" + default y + help + This makes various applets aware that one byte is not + one character on screen. + + Busybox aims to eventually work correctly with Unicode displays. + Any older encodings are not guaranteed to work. + Probably by the time when busybox will be fully Unicode-clean, + other encodings will be mainly of historic interest. + +config BUSYBOX_UNICODE_USING_LOCALE + bool "Use libc routines for Unicode (else uses internal ones)" + default n + depends on BUSYBOX_UNICODE_SUPPORT && BUSYBOX_LOCALE_SUPPORT + help + With this option on, Unicode support is implemented using libc + routines. Otherwise, internal implementation is used. + Internal implementation is smaller. + +config BUSYBOX_FEATURE_CHECK_UNICODE_IN_ENV + bool "Check $LC_ALL, $LC_CTYPE and $LANG environment variables" + default n + depends on BUSYBOX_UNICODE_SUPPORT && !BUSYBOX_UNICODE_USING_LOCALE + help + With this option on, Unicode support is activated + only if locale-related variables have the value of the form + "xxxx.utf8" + + Otherwise, Unicode support will be always enabled and active. + +config BUSYBOX_SUBST_WCHAR + int "Character code to substitute unprintable characters with" + depends on BUSYBOX_UNICODE_SUPPORT + default 63 + help + Typical values are 63 for '?' (works with any output device), + 30 for ASCII substitute control code, + 65533 (0xfffd) for Unicode replacement character. + +config BUSYBOX_LAST_SUPPORTED_WCHAR + int "Range of supported Unicode characters" + depends on BUSYBOX_UNICODE_SUPPORT + default 767 + help + Any character with Unicode value bigger than this is assumed + to be non-printable on output device. Many applets replace + such characters with substitution character. + + The idea is that many valid printable Unicode chars + nevertheless are not displayed correctly. Think about + combining charachers, double-wide hieroglyphs, obscure + characters in dozens of ancient scripts... + Many terminals, terminal emulators, xterms etc will fail + to handle them correctly. Choose the smallest value + which suits your needs. + + Typical values are: + 126 - ASCII only + 767 (0x2ff) - there are no combining chars in [0..767] range + (the range includes Latin 1, Latin Ext. A and B), + code is ~700 bytes smaller for this case. + 4351 (0x10ff) - there are no double-wide chars in [0..4351] range, + code is ~300 bytes smaller for this case. + 12799 (0x31ff) - nearly all non-ideographic characters are + available in [0..12799] range, including + East Asian scripts like katakana, hiragana, hangul, + bopomofo... + 0 - off, any valid printable Unicode character will be printed. + +config BUSYBOX_UNICODE_COMBINING_WCHARS + bool "Allow zero-width Unicode characters on output" + default n + depends on BUSYBOX_UNICODE_SUPPORT + help + With this option off, any Unicode char with width of 0 + is substituted on output. + +config BUSYBOX_UNICODE_WIDE_WCHARS + bool "Allow wide Unicode characters on output" + default n + depends on BUSYBOX_UNICODE_SUPPORT + help + With this option off, any Unicode char with width > 1 + is substituted on output. + +config BUSYBOX_UNICODE_BIDI_SUPPORT + bool "Bidirectional character-aware line input" + default n + depends on BUSYBOX_UNICODE_SUPPORT && !BUSYBOX_UNICODE_USING_LOCALE + help + With this option on, right-to-left Unicode characters + are treated differently on input (e.g. cursor movement). + +config BUSYBOX_UNICODE_NEUTRAL_TABLE + bool "In bidi input, support non-ASCII neutral chars too" + default n + depends on BUSYBOX_UNICODE_BIDI_SUPPORT + help + In most cases it's enough to treat only ASCII non-letters + (i.e. punctuation, numbers and space) as characters + with neutral directionality. + With this option on, more extensive (and bigger) table + of neutral chars will be used. + +config BUSYBOX_UNICODE_PRESERVE_BROKEN + bool "Make it possible to enter sequences of chars which are not Unicode" + default n + depends on BUSYBOX_UNICODE_SUPPORT + help + With this option on, on line-editing input (such as used by shells) + invalid UTF-8 bytes are not substituted with the selected + substitution character. + For example, this means that entering 'l', 's', ' ', 0xff, [Enter] + at shell prompt will list file named 0xff (single char name + with char value 255), not file named '?'. config BUSYBOX_FEATURE_NON_POSIX_CP bool "Non-POSIX, but safer, copying to special nodes" default y help - With this option, "cp file symlink" will delete symlink - and create a regular file. This does not conform to POSIX, - but prevents a symlink attack. - Similarly, "cp file device" will not send file's data - to the device. (To do that, use "cat file >device") + With this option, "cp file symlink" will delete symlink + and create a regular file. This does not conform to POSIX, + but prevents a symlink attack. + Similarly, "cp file device" will not send file's data + to the device. (To do that, use "cat file >device") config BUSYBOX_FEATURE_VERBOSE_CP_MESSAGE bool "Give more precise messages when copy fails (cp, mv etc)" default n help - Error messages with this feature enabled: - $ cp file /does_not_exist/file - cp: cannot create '/does_not_exist/file': Path does not exist - $ cp file /vmlinuz/file - cp: cannot stat '/vmlinuz/file': Path has non-directory component - If this feature is not enabled, they will be, respectively: - cp: cannot create '/does_not_exist/file': No such file or directory - cp: cannot stat '/vmlinuz/file': Not a directory - This will cost you ~60 bytes. + Error messages with this feature enabled: + + $ cp file /does_not_exist/file + cp: cannot create '/does_not_exist/file': Path does not exist + $ cp file /vmlinuz/file + cp: cannot stat '/vmlinuz/file': Path has non-directory component + + If this feature is not enabled, they will be, respectively: + + cp: cannot create '/does_not_exist/file': No such file or directory + cp: cannot stat '/vmlinuz/file': Not a directory + + This will cost you ~60 bytes. + +config BUSYBOX_FEATURE_USE_SENDFILE + bool "Use sendfile system call" + default y + select BUSYBOX_PLATFORM_LINUX + help + When enabled, busybox will use the kernel sendfile() function + instead of read/write loops to copy data between file descriptors + (for example, cp command does this a lot). + If sendfile() doesn't work, copying code falls back to read/write + loop. sendfile() was originally implemented for faster I/O + from files to sockets, but since Linux 2.6.33 it was extended + to work for many more file types. config BUSYBOX_FEATURE_COPYBUF_KB int "Copy buffer size, in kilobytes" range 1 1024 default 4 help - Size of buffer used by cp, mv, install, wget etc. - Buffers which are 4 kb or less will be allocated on stack. - Bigger buffers will be allocated with mmap, with fallback to 4 kb - stack buffer if mmap fails. + Size of buffer used by cp, mv, install, wget etc. + Buffers which are 4 kb or less will be allocated on stack. + Bigger buffers will be allocated with mmap, with fallback to 4 kb + stack buffer if mmap fails. config BUSYBOX_FEATURE_SKIP_ROOTFS bool "Skip rootfs in mount table" default y help - Ignore rootfs entry in mount table. + Ignore rootfs entry in mount table. - In Linux, kernel has a special filesystem, rootfs, which is initially - mounted on /. It contains initramfs data, if kernel is configured - to have one. Usually, another file system is mounted over / early - in boot process, and therefore most tools which manipulate - mount table, such as df, will skip rootfs entry. + In Linux, kernel has a special filesystem, rootfs, which is initially + mounted on /. It contains initramfs data, if kernel is configured + to have one. Usually, another file system is mounted over / early + in boot process, and therefore most tools which manipulate + mount table, such as df, will skip rootfs entry. - However, some systems do not mount anything on /. - If you need to configure busybox for one of these systems, - you may find it useful to turn this option off to make df show - initramfs statistics. + However, some systems do not mount anything on /. + If you need to configure busybox for one of these systems, + you may find it useful to turn this option off to make df show + initramfs statistics. - Otherwise, choose Y. + Otherwise, choose Y. config BUSYBOX_MONOTONIC_SYSCALL bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" default y select BUSYBOX_PLATFORM_LINUX help - Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring - time intervals (time, ping, traceroute etc need this). - Probably requires Linux 2.6+. If not selected, gettimeofday - will be used instead (which gives wrong results if date/time - is reset). + Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring + time intervals (time, ping, traceroute etc need this). + Probably requires Linux 2.6+. If not selected, gettimeofday + will be used instead (which gives wrong results if date/time + is reset). config BUSYBOX_IOCTL_HEX2STR_ERROR bool "Use ioctl names rather than hex values in error messages" default y help - Use ioctl names rather than hex values in error messages - (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this - saves about 1400 bytes. + Use ioctl names rather than hex values in error messages + (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this + saves about 1400 bytes. config BUSYBOX_FEATURE_HWIB bool "Support infiniband HW" - default n + default y help - Support for printing infiniband addresses in - network applets. - -endmenu + Support for printing infiniband addresses in network applets. diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 03aba2b07..5f12bbbee 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -1,363 +1,330 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Login/Password Management Utilities" -config BUSYBOX_ADD_SHELL - bool "add-shell" - default y if DESKTOP - help - Add shells to /etc/shells. - -config BUSYBOX_REMOVE_SHELL - bool "remove-shell" - default y if DESKTOP - help - Remove shells from /etc/shells. - config BUSYBOX_FEATURE_SHADOWPASSWDS - bool "Support for shadow passwords" + bool "Support shadow passwords" default y help - Build support for shadow password in /etc/shadow. This file is only - readable by root and thus the encrypted passwords are no longer - publicly readable. + Build support for shadow password in /etc/shadow. This file is only + readable by root and thus the encrypted passwords are no longer + publicly readable. config BUSYBOX_USE_BB_PWD_GRP bool "Use internal password and group functions rather than system functions" - default n + default y help - If you leave this disabled, busybox will use the system's password - and group functions. And if you are using the GNU C library - (glibc), you will then need to install the /etc/nsswitch.conf - configuration file and the required /lib/libnss_* libraries in - order for the password and group functions to work. This generally - makes your embedded system quite a bit larger. + If you leave this disabled, busybox will use the system's password + and group functions. And if you are using the GNU C library + (glibc), you will then need to install the /etc/nsswitch.conf + configuration file and the required /lib/libnss_* libraries in + order for the password and group functions to work. This generally + makes your embedded system quite a bit larger. - Enabling this option will cause busybox to directly access the - system's /etc/password, /etc/group files (and your system will be - smaller, and I will get fewer emails asking about how glibc NSS - works). When this option is enabled, you will not be able to use - PAM to access remote LDAP password servers and whatnot. And if you - want hostname resolution to work with glibc, you still need the - /lib/libnss_* libraries. + Enabling this option will cause busybox to directly access the + system's /etc/password, /etc/group files (and your system will be + smaller, and I will get fewer emails asking about how glibc NSS + works). When this option is enabled, you will not be able to use + PAM to access remote LDAP password servers and whatnot. And if you + want hostname resolution to work with glibc, you still need the + /lib/libnss_* libraries. - If you need to use glibc's nsswitch.conf mechanism - (e.g. if user/group database is NOT stored in /etc/passwd etc), - you must NOT use this option. + If you need to use glibc's nsswitch.conf mechanism + (e.g. if user/group database is NOT stored in /etc/passwd etc), + you must NOT use this option. - If you enable this option, it will add about 1.5k. + If you enable this option, it will add about 1.5k. config BUSYBOX_USE_BB_SHADOW bool "Use internal shadow password functions" - default n + default y depends on BUSYBOX_USE_BB_PWD_GRP && BUSYBOX_FEATURE_SHADOWPASSWDS help - If you leave this disabled, busybox will use the system's shadow - password handling functions. And if you are using the GNU C library - (glibc), you will then need to install the /etc/nsswitch.conf - configuration file and the required /lib/libnss_* libraries in - order for the shadow password functions to work. This generally - makes your embedded system quite a bit larger. + If you leave this disabled, busybox will use the system's shadow + password handling functions. And if you are using the GNU C library + (glibc), you will then need to install the /etc/nsswitch.conf + configuration file and the required /lib/libnss_* libraries in + order for the shadow password functions to work. This generally + makes your embedded system quite a bit larger. - Enabling this option will cause busybox to directly access the - system's /etc/shadow file when handling shadow passwords. This - makes your system smaller (and I will get fewer emails asking about - how glibc NSS works). When this option is enabled, you will not be - able to use PAM to access shadow passwords from remote LDAP - password servers and whatnot. + Enabling this option will cause busybox to directly access the + system's /etc/shadow file when handling shadow passwords. This + makes your system smaller (and I will get fewer emails asking about + how glibc NSS works). When this option is enabled, you will not be + able to use PAM to access shadow passwords from remote LDAP + password servers and whatnot. config BUSYBOX_USE_BB_CRYPT bool "Use internal crypt functions" - default n + default y help - Busybox has internal DES and MD5 crypt functions. - They produce results which are identical to corresponding - standard C library functions. + Busybox has internal DES and MD5 crypt functions. + They produce results which are identical to corresponding + standard C library functions. - If you leave this disabled, busybox will use the system's - crypt functions. Most C libraries use large (~70k) - static buffers there, and also combine them with more general - DES encryption/decryption. + If you leave this disabled, busybox will use the system's + crypt functions. Most C libraries use large (~70k) + static buffers there, and also combine them with more general + DES encryption/decryption. - For busybox, having large static buffers is undesirable, - especially on NOMMU machines. Busybox also doesn't need - DES encryption/decryption and can do with smaller code. + For busybox, having large static buffers is undesirable, + especially on NOMMU machines. Busybox also doesn't need + DES encryption/decryption and can do with smaller code. - If you enable this option, it will add about 4.8k of code - if you are building dynamically linked executable. - In static build, it makes code _smaller_ by about 1.2k, - and likely many kilobytes less of bss. + If you enable this option, it will add about 4.8k of code + if you are building dynamically linked executable. + In static build, it makes code _smaller_ by about 1.2k, + and likely many kilobytes less of bss. config BUSYBOX_USE_BB_CRYPT_SHA bool "Enable SHA256/512 crypt functions" - default n + default y depends on BUSYBOX_USE_BB_CRYPT help - Enable this if you have passwords starting with "$5$" or "$6$" - in your /etc/passwd or /etc/shadow files. These passwords - are hashed using SHA256 and SHA512 algorithms. Support for them - was added to glibc in 2008. - With this option off, login will fail password check for any - user which has password encrypted with these algorithms. + Enable this if you have passwords starting with "$5$" or "$6$" + in your /etc/passwd or /etc/shadow files. These passwords + are hashed using SHA256 and SHA512 algorithms. Support for them + was added to glibc in 2008. + With this option off, login will fail password check for any + user which has password encrypted with these algorithms. -config BUSYBOX_ADDUSER - bool "adduser" - default n +config BUSYBOX_ADD_SHELL + bool "add-shell (3.1 kb)" + default y if BUSYBOX_DESKTOP help - Utility for creating a new user account. + Add shells to /etc/shells. -config BUSYBOX_FEATURE_ADDUSER_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_ADDUSER && BUSYBOX_LONG_OPTS +config BUSYBOX_REMOVE_SHELL + bool "remove-shell (3 kb)" + default y if BUSYBOX_DESKTOP + help + Remove shells from /etc/shells. +config BUSYBOX_ADDGROUP + bool "addgroup (8.6 kb)" + default y + select BUSYBOX_LONG_OPTS + help + Utility for creating a new group account. + +config BUSYBOX_FEATURE_ADDUSER_TO_GROUP + bool "Support adding users to groups" + default y + depends on BUSYBOX_ADDGROUP + help + If called with two non-option arguments, + addgroup will add an existing user to an + existing group. +config BUSYBOX_ADDUSER + bool "adduser (15 kb)" + default y + select BUSYBOX_LONG_OPTS help - Support long options for the adduser applet. + Utility for creating a new user account. config BUSYBOX_FEATURE_CHECK_NAMES bool "Enable sanity check on user/group names in adduser and addgroup" default n depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP help - Enable sanity check on user and group names in adduser and addgroup. - To avoid problems, the user or group name should consist only of - letters, digits, underscores, periods, at signs and dashes, - and not start with a dash (as defined by IEEE Std 1003.1-2001). - For compatibility with Samba machine accounts "$" is also supported - at the end of the user or group name. + Enable sanity check on user and group names in adduser and addgroup. + To avoid problems, the user or group name should consist only of + letters, digits, underscores, periods, at signs and dashes, + and not start with a dash (as defined by IEEE Std 1003.1-2001). + For compatibility with Samba machine accounts "$" is also supported + at the end of the user or group name. config BUSYBOX_LAST_ID int "Last valid uid or gid for adduser and addgroup" depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP default 60000 help - Last valid uid or gid for adduser and addgroup + Last valid uid or gid for adduser and addgroup config BUSYBOX_FIRST_SYSTEM_ID int "First valid system uid or gid for adduser and addgroup" depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP - range 0 64900 + range 0 BUSYBOX_LAST_ID default 100 help - First valid system uid or gid for adduser and addgroup + First valid system uid or gid for adduser and addgroup config BUSYBOX_LAST_SYSTEM_ID int "Last valid system uid or gid for adduser and addgroup" depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP - range 0 64900 + range BUSYBOX_FIRST_SYSTEM_ID BUSYBOX_LAST_ID default 999 help - Last valid system uid or gid for adduser and addgroup - -config BUSYBOX_ADDGROUP - bool "addgroup" - default n + Last valid system uid or gid for adduser and addgroup +config BUSYBOX_CHPASSWD + bool "chpasswd (18 kb)" + default y help - Utility for creating a new group account. + Reads a file of user name and password pairs from standard input + and uses this information to update a group of existing users. -config BUSYBOX_FEATURE_ADDGROUP_LONG_OPTIONS - bool "Enable long options" - default n - depends on BUSYBOX_ADDGROUP && BUSYBOX_LONG_OPTS +config BUSYBOX_FEATURE_DEFAULT_PASSWD_ALGO + string "Default encryption method (passwd -a, cryptpw -m, chpasswd -c ALG)" + default "des" + depends on BUSYBOX_PASSWD || BUSYBOX_CRYPTPW || BUSYBOX_CHPASSWD help - Support long options for the addgroup applet. - -config BUSYBOX_FEATURE_ADDUSER_TO_GROUP - bool "Support for adding users to groups" - default n - depends on BUSYBOX_ADDGROUP + Possible choices are "d[es]", "m[d5]", "s[ha256]" or "sha512". +config BUSYBOX_CRYPTPW + bool "cryptpw (14 kb)" + default y help - If called with two non-option arguments, - addgroup will add an existing user to an - existing group. + Encrypts the given password with the crypt(3) libc function + using the given salt. +config BUSYBOX_MKPASSWD + bool "mkpasswd (15 kb)" + default y + help + Encrypts the given password with the crypt(3) libc function + using the given salt. Debian has this utility under mkpasswd + name. Busybox provides mkpasswd as an alias for cryptpw. config BUSYBOX_DELUSER - bool "deluser" - default n + bool "deluser (9.1 kb)" + default y help - Utility for deleting a user account. + Utility for deleting a user account. config BUSYBOX_DELGROUP - bool "delgroup" - default n + bool "delgroup (6.4 kb)" + default y help - Utility for deleting a group account. + Utility for deleting a group account. config BUSYBOX_FEATURE_DEL_USER_FROM_GROUP - bool "Support for removing users from groups" - default n + bool "Support removing users from groups" + default y depends on BUSYBOX_DELGROUP help - If called with two non-option arguments, deluser - or delgroup will remove an user from a specified group. - + If called with two non-option arguments, deluser + or delgroup will remove an user from a specified group. config BUSYBOX_GETTY - bool "getty" + bool "getty (10 kb)" default y select BUSYBOX_FEATURE_SYSLOG help - getty lets you log in on a tty. It is normally invoked by init. - - Note that you can save a few bytes by disabling it and - using login applet directly. - If you need to reset tty attributes before calling login, - this script approximates getty: + getty lets you log in on a tty. It is normally invoked by init. - exec /dev/$1 2>&1 || BUSYBOX_exit 1 - reset - stty sane; stty ispeed 38400; stty ospeed 38400 - printf "%s login: " "`hostname`" - read -r login - exec /bin/login "$login" + Note that you can save a few bytes by disabling it and + using login applet directly. + If you need to reset tty attributes before calling login, + this script approximates getty: + exec /dev/$1 2>&1 || exit 1 + reset + stty sane; stty ispeed 38400; stty ospeed 38400 + printf "%s login: " "`hostname`" + read -r login + exec /bin/login "$login" config BUSYBOX_LOGIN - bool "login" + bool "login (24 kb)" default y select BUSYBOX_FEATURE_SYSLOG help - login is used when signing onto a system. + login is used when signing onto a system. - Note that Busybox binary must be setuid root for this applet to - work properly. + Note that busybox binary must be setuid root for this applet to + work properly. config BUSYBOX_LOGIN_SESSION_AS_CHILD bool "Run logged in session in a child process" - default y if PAM - depends on BUSYBOX_LOGIN - help - Run the logged in session in a child process. This allows - login to clean up things such as utmp entries or PAM sessions - when the login session is complete. If you use PAM, you - almost always would want this to be set to Y, else PAM session - will not be cleaned up. - -config BUSYBOX_PAM - bool "Support for PAM (Pluggable Authentication Modules)" - depends on !BUSYBOX_DISABLE_PAM - default n + default y if BUSYBOX_PAM depends on BUSYBOX_LOGIN help - Use PAM in login(1) instead of direct access to password database. + Run the logged in session in a child process. This allows + login to clean up things such as utmp entries or PAM sessions + when the login session is complete. If you use PAM, you + almost always would want this to be set to Y, else PAM session + will not be cleaned up. config BUSYBOX_LOGIN_SCRIPTS - bool "Support for login scripts" + bool "Support login scripts" depends on BUSYBOX_LOGIN - default n + default y help - Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT - just prior to switching from root to logged-in user. + Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT + just prior to switching from root to logged-in user. config BUSYBOX_FEATURE_NOLOGIN - bool "Support for /etc/nologin" - default n + bool "Support /etc/nologin" + default y depends on BUSYBOX_LOGIN help - The file /etc/nologin is used by (some versions of) login(1). - If it exists, non-root logins are prohibited. + The file /etc/nologin is used by (some versions of) login(1). + If it exists, non-root logins are prohibited. config BUSYBOX_FEATURE_SECURETTY - bool "Support for /etc/securetty" - default n + bool "Support /etc/securetty" + default y depends on BUSYBOX_LOGIN help - The file /etc/securetty is used by (some versions of) login(1). - The file contains the device names of tty lines (one per line, - without leading /dev/) on which root is allowed to login. - + The file /etc/securetty is used by (some versions of) login(1). + The file contains the device names of tty lines (one per line, + without leading /dev/) on which root is allowed to login. config BUSYBOX_PASSWD - bool "passwd" - default n + bool "passwd (21 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - passwd changes passwords for user and group accounts. A normal user - may only change the password for his/her own account, the super user - may change the password for any account. The administrator of a group - may change the password for the group. + passwd changes passwords for user and group accounts. A normal user + may only change the password for his/her own account, the super user + may change the password for any account. The administrator of a group + may change the password for the group. - Note that Busybox binary must be setuid root for this applet to - work properly. + Note that busybox binary must be setuid root for this applet to + work properly. config BUSYBOX_FEATURE_PASSWD_WEAK_CHECK bool "Check new passwords for weakness" - default n + default y depends on BUSYBOX_PASSWD help - With this option passwd will refuse new passwords which are "weak". - -config BUSYBOX_CRYPTPW - bool "cryptpw" - default n - help - Encrypts the given password with the crypt(3) libc function - using the given salt. Debian has this utility under mkpasswd - name. Busybox provides mkpasswd as an alias for cryptpw. - -config BUSYBOX_MKPASSWD - bool "mkpasswd" - default n - help - Encrypts the given password with the crypt(3) libc function - using the given salt. Debian has this utility under mkpasswd - name. Busybox provides mkpasswd as an alias for cryptpw. - -config BUSYBOX_CHPASSWD - bool "chpasswd" - default n - help - Reads a file of user name and password pairs from standard input - and uses this information to update a group of existing users. - -config BUSYBOX_FEATURE_DEFAULT_PASSWD_ALGO - string "Default password encryption method (passwd -a, cryptpw -m parameter)" - default "des" - depends on BUSYBOX_PASSWD || BUSYBOX_CRYPTPW - help - Possible choices are "d[es]", "m[d5]", "s[ha256]" or "sha512". - + With this option passwd will refuse new passwords which are "weak". config BUSYBOX_SU - bool "su" - default n + bool "su (19 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - su is used to become another user during a login session. - Invoked without a username, su defaults to becoming the super user. - - Note that Busybox binary must be setuid root for this applet to - work properly. + su is used to become another user during a login session. + Invoked without a username, su defaults to becoming the super user. + Note that busybox binary must be setuid root for this applet to + work properly. config BUSYBOX_FEATURE_SU_SYSLOG - bool "Enable su to write to syslog" + bool "Log to syslog all attempts to use su" default y depends on BUSYBOX_SU config BUSYBOX_FEATURE_SU_CHECKS_SHELLS - bool "Enable su to check user's shell to be listed in /etc/shells" - depends on BUSYBOX_SU + bool "If user's shell is not in /etc/shells, disallow -s PROG" default y + depends on BUSYBOX_SU config BUSYBOX_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY bool "Allow blank passwords only on TTYs in /etc/securetty" default n depends on BUSYBOX_SU - config BUSYBOX_SULOGIN - bool "sulogin" - default n + bool "sulogin (17 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - sulogin is invoked when the system goes into single user - mode (this is done through an entry in inittab). - + sulogin is invoked when the system goes into single user + mode (this is done through an entry in inittab). config BUSYBOX_VLOCK - bool "vlock" - default n + bool "vlock (17 kb)" + default y help - Build the "vlock" applet which allows you to lock (virtual) terminals. + Build the "vlock" applet which allows you to lock (virtual) terminals. - Note that Busybox binary must be setuid root for this applet to - work properly. + Note that busybox binary must be setuid root for this applet to + work properly. endmenu diff --git a/package/busybox/config/mailutils/Config.in b/package/busybox/config/mailutils/Config.in index 263f80dd7..1b793ef7c 100644 --- a/package/busybox/config/mailutils/Config.in +++ b/package/busybox/config/mailutils/Config.in @@ -1,55 +1,51 @@ # DO NOT EDIT. This file is generated from Config.src menu "Mail Utilities" - config BUSYBOX_MAKEMIME - bool "makemime" - default n - help - Create MIME-formatted messages. - -config BUSYBOX_FEATURE_MIME_CHARSET - string "Default charset" - default "us-ascii" - depends on BUSYBOX_MAKEMIME || BUSYBOX_REFORMIME || BUSYBOX_SENDMAIL + bool "makemime (5.4 kb)" + default y help - Default charset of the message. - + Create MIME-formatted messages. config BUSYBOX_POPMAILDIR - bool "popmaildir" - default n + bool "popmaildir (10 kb)" + default y help - Simple yet powerful POP3 mail popper. Delivers content - of remote mailboxes to local Maildir. + Simple yet powerful POP3 mail popper. Delivers content + of remote mailboxes to local Maildir. config BUSYBOX_FEATURE_POPMAILDIR_DELIVERY bool "Allow message filters and custom delivery program" default y depends on BUSYBOX_POPMAILDIR help - Allow to use a custom program to filter the content - of the message before actual delivery (-F "prog [args...]"). - Allow to use a custom program for message actual delivery - (-M "prog [args...]"). - + Allow to use a custom program to filter the content + of the message before actual delivery (-F "prog [args...]"). + Allow to use a custom program for message actual delivery + (-M "prog [args...]"). config BUSYBOX_REFORMIME - bool "reformime" - default n + bool "reformime (7.5 kb)" + default y help - Parse MIME-formatted messages. + Parse MIME-formatted messages. config BUSYBOX_FEATURE_REFORMIME_COMPAT bool "Accept and ignore options other than -x and -X" default y depends on BUSYBOX_REFORMIME help - Accept (for compatibility only) and ignore options - other than -x and -X. - + Accept (for compatibility only) and ignore options + other than -x and -X. config BUSYBOX_SENDMAIL - bool "sendmail" - default n + bool "sendmail (14 kb)" + default y + help + Barebones sendmail. + +config BUSYBOX_FEATURE_MIME_CHARSET + string "Default charset" + default "us-ascii" + depends on BUSYBOX_MAKEMIME || BUSYBOX_REFORMIME || BUSYBOX_SENDMAIL help - Barebones sendmail. + Default charset of the message. endmenu diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in index b4424f39b..d7d60a0cd 100644 --- a/package/busybox/config/miscutils/Config.in +++ b/package/busybox/config/miscutils/Config.in @@ -1,293 +1,138 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Miscellaneous Utilities" -config BUSYBOX_CONSPY - bool "conspy" - default n - select BUSYBOX_PLATFORM_LINUX - help - A text-mode VNC like program for Linux virtual terminals. - example: conspy NUM shared access to console num - or conspy -nd NUM screenshot of console num - or conspy -cs NUM poor man's GNU screen like - -config BUSYBOX_I2CGET - bool "i2cget" - default n - select BUSYBOX_PLATFORM_LINUX - help - Read from I2C/SMBus chip registers. - -config BUSYBOX_I2CSET - bool "i2cset" - default n - select BUSYBOX_PLATFORM_LINUX - help - Set I2C registers. - -config BUSYBOX_I2CDUMP - bool "i2cdump" - default n - select BUSYBOX_PLATFORM_LINUX - help - Examine I2C registers. - -config BUSYBOX_I2CDETECT - bool "i2cdetect" - default n - select BUSYBOX_PLATFORM_LINUX - help - Detect I2C chips. - -config BUSYBOX_I2CTRANSFER - bool "i2ctransfer (4.0 kb)" - default n +config BUSYBOX_ADJTIMEX + bool "adjtimex (4.7 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Send user-defined I2C messages in one transfer. - -config BUSYBOX_LESS - bool "less" - depends on !BUSYBOX_DISABLE_LESS + Adjtimex reads and optionally sets adjustment parameters for + the Linux clock adjustment algorithm. +config BUSYBOX_BBCONFIG + bool "bbconfig (9.7 kb)" default n help - 'less' is a pager, meaning that it displays text files. It possesses - a wide array of features, and is an improvement over 'more'. - -config BUSYBOX_FEATURE_LESS_MAXLINES - int "Max number of input lines less will try to eat" - default 9999999 - depends on BUSYBOX_LESS - -config BUSYBOX_FEATURE_LESS_BRACKETS - bool "Enable bracket searching" - default y - depends on BUSYBOX_LESS - help - This option adds the capability to search for matching left and right - brackets, facilitating programming. + The bbconfig applet will print the config file with which + busybox was built. -config BUSYBOX_FEATURE_LESS_FLAGS - bool "Enable -m/-M" - default y - depends on BUSYBOX_LESS - help - The -M/-m flag enables a more sophisticated status line. - -config BUSYBOX_FEATURE_LESS_TRUNCATE - bool "Enable -S" - default y - depends on BUSYBOX_LESS - help - The -S flag causes long lines to be truncated rather than - wrapped. - -config BUSYBOX_FEATURE_LESS_MARKS - bool "Enable marks" - default y - depends on BUSYBOX_LESS - help - Marks enable positions in a file to be stored for easy reference. - -config BUSYBOX_FEATURE_LESS_REGEXP - bool "Enable regular expressions" - default y - depends on BUSYBOX_LESS - help - Enable regular expressions, allowing complex file searches. - -config BUSYBOX_FEATURE_LESS_WINCH - bool "Enable automatic resizing on window size changes" +config BUSYBOX_FEATURE_COMPRESS_BBCONFIG + bool "Compress bbconfig data" default y - depends on BUSYBOX_LESS + depends on BUSYBOX_BBCONFIG help - Makes less track window size changes. + Store bbconfig data in compressed form, uncompress them on-the-fly + before output. -config BUSYBOX_FEATURE_LESS_ASK_TERMINAL - bool "Use 'tell me cursor position' ESC sequence to measure window" + If you have a really tiny busybox with few applets enabled (and + bunzip2 isn't one of them), the overhead of the decompressor might + be noticeable. Also, if you run executables directly from ROM + and have very little memory, this might not be a win. Otherwise, + you probably want this. +config BUSYBOX_BC + bool "bc (45 kb)" default y - depends on BUSYBOX_FEATURE_LESS_WINCH + select BUSYBOX_FEATURE_DC_BIG help - Makes less track window size changes. - If terminal size can't be retrieved and $LINES/$COLUMNS are not set, - this option makes less perform a last-ditch effort to find it: - position cursor to 999,999 and ask terminal to report real - cursor position using "ESC [ 6 n" escape sequence, then read stdin. + bc is a command-line, arbitrary-precision calculator with a + Turing-complete language. See the GNU bc manual + (https://www.gnu.org/software/bc/manual/bc.html) and bc spec + (http://pubs.opengroup.org/onlinepubs/9699919799/utilities/bc.html). - This is not clean but helps a lot on serial lines and such. + This bc has five differences to the GNU bc: + 1) The period (.) is a shortcut for "last", as in the BSD bc. + 2) Arrays are copied before being passed as arguments to + functions. This behavior is required by the bc spec. + 3) Arrays can be passed to the builtin "length" function to get + the number of elements in the array. This prints "1": + a[0] = 0; length(a[]) + 4) The precedence of the boolean "not" operator (!) is equal to + that of the unary minus (-) negation operator. This still + allows POSIX-compliant scripts to work while somewhat + preserving expected behavior (versus C) and making parsing + easier. + 5) "read()" accepts expressions, not only numeric literals. -config BUSYBOX_FEATURE_LESS_DASHCMD - bool "Enable flag changes ('-' command)" +config BUSYBOX_DC + bool "dc (36 kb)" default y - depends on BUSYBOX_LESS help - This enables the ability to change command-line flags within - less itself ('-' keyboard command). - -config BUSYBOX_FEATURE_LESS_LINENUMS - bool "Enable dynamic switching of line numbers" + dc is a reverse-polish notation command-line calculator which + supports unlimited precision arithmetic. See the FreeBSD man page + (https://www.unix.com/man-page/FreeBSD/1/dc/) and GNU dc manual + (https://www.gnu.org/software/bc/manual/dc-1.05/html_mono/dc.html). + + This dc has a few differences from the two above: + 1) When printing a byte stream (command "P"), this dc follows what + the FreeBSD dc does. + 2) Implements the GNU extensions for divmod ("~") and + modular exponentiation ("|"). + 3) Implements all FreeBSD extensions, except for "J" and "M". + 4) Like the FreeBSD dc, this dc supports extended registers. + However, they are implemented differently. When it encounters + whitespace where a register should be, it skips the whitespace. + If the character following is not a lowercase letter, an error + is issued. Otherwise, the register name is parsed by the + following regex: [a-z][a-z0-9_]* + This generally means that register names will be surrounded by + whitespace. Examples: + l idx s temp L index S temp2 < do_thing + Also note that, like the FreeBSD dc, extended registers are not + allowed unless the "-x" option is given. + +if BUSYBOX_BC || BUSYBOX_DC # for menuconfig indenting + +config BUSYBOX_FEATURE_DC_BIG + bool "Use bc code base for dc (larger, more features)" default y - depends on BUSYBOX_FEATURE_LESS_DASHCMD - help - Enables "-N" command. -config BUSYBOX_FEATURE_LESS_RAW - bool "Enable -R ('raw control characters')" +config BUSYBOX_FEATURE_DC_LIBM + bool "Enable power and exp functions (requires libm)" default y - depends on BUSYBOX_FEATURE_LESS_DASHCMD + depends on BUSYBOX_DC && !BUSYBOX_BC && !BUSYBOX_FEATURE_DC_BIG help - This is essential for less applet to work with tools that use colors - and paging, such as git, systemd tools or nmcli. + Enable power and exp functions. + NOTE: This will require libm to be present for linking. -config BUSYBOX_FEATURE_LESS_ENV - bool "Take options from $LESS environment variable" +config BUSYBOX_FEATURE_BC_INTERACTIVE + bool "Interactive mode (+4kb)" default y - depends on BUSYBOX_FEATURE_LESS_DASHCMD - help - This is essential for less applet to work with tools that use colors - and paging, such as git, systemd tools or nmcli. - -config BUSYBOX_LSSCSI - bool "lsscsi (2.5 kb)" - default n - #select PLATFORM_LINUX - help - lsscsi is a utility for displaying information about SCSI buses in the - system and devices connected to them. - - This version uses sysfs (/sys/bus/scsi/devices) only. - -config BUSYBOX_NANDWRITE - bool "nandwrite" - default n - select BUSYBOX_PLATFORM_LINUX - help - Write to the specified MTD device, with bad blocks awareness - -config BUSYBOX_NANDDUMP - bool "nanddump" - default n - select BUSYBOX_PLATFORM_LINUX - help - Dump the content of raw NAND chip - -config BUSYBOX_PARTPROBE - bool "partprobe (3.5 kb)" - default n - select BUSYBOX_PLATFORM_LINUX - help - Ask kernel to rescan partition table. - -config BUSYBOX_SETFATTR - bool "setfattr (3.7 kb)" - default n - help - Set/delete extended attributes on files - -config BUSYBOX_SETSERIAL - bool "setserial" - default n - select BUSYBOX_PLATFORM_LINUX - help - Retrieve or set Linux serial port. - -config BUSYBOX_UBIATTACH - bool "ubiattach" - default n - select BUSYBOX_PLATFORM_LINUX - help - Attach MTD device to an UBI device. - -config BUSYBOX_UBIDETACH - bool "ubidetach" - default n - select BUSYBOX_PLATFORM_LINUX - help - Detach MTD device from an UBI device. - -config BUSYBOX_UBIMKVOL - bool "ubimkvol" - default n - select BUSYBOX_PLATFORM_LINUX - help - Create a UBI volume. - -config BUSYBOX_UBIRMVOL - bool "ubirmvol" - default n - select BUSYBOX_PLATFORM_LINUX - help - Delete a UBI volume. - -config BUSYBOX_UBIRSVOL - bool "ubirsvol" - default n - select BUSYBOX_PLATFORM_LINUX - help - Resize a UBI volume. - -config BUSYBOX_UBIUPDATEVOL - bool "ubiupdatevol" - default n - select BUSYBOX_PLATFORM_LINUX + depends on BUSYBOX_BC || (BUSYBOX_DC && BUSYBOX_FEATURE_DC_BIG) help - Update a UBI volume. + Enable interactive mode: when started on a tty, + ^C interrupts execution and returns to command line, + errors also return to command line instead of exiting, + line editing with history is available. -config BUSYBOX_UBIRENAME - bool "ubirename" - default n - select BUSYBOX_PLATFORM_LINUX - help - Utility to rename UBI volumes + With this option off, input can still be taken from tty, + but all errors are fatal, ^C is fatal, + tty is treated exactly the same as any other + standard input (IOW: no line editing). -config BUSYBOX_ADJTIMEX - bool "adjtimex" - default n - select BUSYBOX_PLATFORM_LINUX - help - Adjtimex reads and optionally sets adjustment parameters for - the Linux clock adjustment algorithm. - -config BUSYBOX_BBCONFIG - bool "bbconfig" - default n - help - The bbconfig applet will print the config file with which - busybox was built. - -config BUSYBOX_FEATURE_COMPRESS_BBCONFIG - bool "Compress bbconfig data" +config BUSYBOX_FEATURE_BC_LONG_OPTIONS + bool "Enable bc/dc long options" default y - depends on BUSYBOX_BBCONFIG - help - Store bbconfig data in compressed form, uncompress them on-the-fly - before output. - - If you have a really tiny busybox with few applets enabled (and - bunzip2 isn't one of them), the overhead of the decompressor might - be noticeable. Also, if you run executables directly from ROM - and have very little memory, this might not be a win. Otherwise, - you probably want this. + depends on BUSYBOX_BC || (BUSYBOX_DC && BUSYBOX_FEATURE_DC_BIG) +endif config BUSYBOX_BEEP - bool "beep" - default n + bool "beep (2.4 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The beep applets beeps in a given freq/Hz. + The beep applets beeps in a given freq/Hz. config BUSYBOX_FEATURE_BEEP_FREQ int "default frequency" - range 0 2147483647 + range 20 50000 # allowing 0 here breaks the build default 4000 depends on BUSYBOX_BEEP help - Frequency for default beep. + Frequency for default beep. config BUSYBOX_FEATURE_BEEP_LENGTH_MS int "default length" @@ -295,423 +140,477 @@ config BUSYBOX_FEATURE_BEEP_LENGTH_MS default 30 depends on BUSYBOX_BEEP help - Length in ms for default beep. - + Length in ms for default beep. config BUSYBOX_CHAT - bool "chat" - default n + bool "chat (6.3 kb)" + default y help - Simple chat utility. + Simple chat utility. config BUSYBOX_FEATURE_CHAT_NOFAIL bool "Enable NOFAIL expect strings" depends on BUSYBOX_CHAT default y help - When enabled expect strings which are started with a dash trigger - no-fail mode. That is when expectation is not met within timeout - the script is not terminated but sends next SEND string and waits - for next EXPECT string. This allows to compose far more flexible - scripts. + When enabled expect strings which are started with a dash trigger + no-fail mode. That is when expectation is not met within timeout + the script is not terminated but sends next SEND string and waits + for next EXPECT string. This allows to compose far more flexible + scripts. config BUSYBOX_FEATURE_CHAT_TTY_HIFI bool "Force STDIN to be a TTY" depends on BUSYBOX_CHAT default n help - Original chat always treats STDIN as a TTY device and sets for it - so-called raw mode. This option turns on such behaviour. + Original chat always treats STDIN as a TTY device and sets for it + so-called raw mode. This option turns on such behaviour. config BUSYBOX_FEATURE_CHAT_IMPLICIT_CR bool "Enable implicit Carriage Return" depends on BUSYBOX_CHAT default y help - When enabled make chat to terminate all SEND strings with a "\r" - unless "\c" is met anywhere in the string. + When enabled make chat to terminate all SEND strings with a "\r" + unless "\c" is met anywhere in the string. config BUSYBOX_FEATURE_CHAT_SWALLOW_OPTS bool "Swallow options" depends on BUSYBOX_CHAT default y help - Busybox chat require no options. To make it not fail when used - in place of original chat (which has a bunch of options) turn - this on. + Busybox chat require no options. To make it not fail when used + in place of original chat (which has a bunch of options) turn + this on. config BUSYBOX_FEATURE_CHAT_SEND_ESCAPES bool "Support weird SEND escapes" depends on BUSYBOX_CHAT default y help - Original chat uses some escape sequences in SEND arguments which - are not sent to device but rather performs special actions. - E.g. "\K" means to send a break sequence to device. - "\d" delays execution for a second, "\p" -- for a 1/100 of second. - Before turning this option on think twice: do you really need them? + Original chat uses some escape sequences in SEND arguments which + are not sent to device but rather performs special actions. + E.g. "\K" means to send a break sequence to device. + "\d" delays execution for a second, "\p" -- for a 1/100 of second. + Before turning this option on think twice: do you really need them? config BUSYBOX_FEATURE_CHAT_VAR_ABORT_LEN bool "Support variable-length ABORT conditions" depends on BUSYBOX_CHAT default y help - Original chat uses fixed 50-bytes length ABORT conditions. Say N here. + Original chat uses fixed 50-bytes length ABORT conditions. Say N here. config BUSYBOX_FEATURE_CHAT_CLR_ABORT bool "Support revoking of ABORT conditions" depends on BUSYBOX_CHAT default y help - Support CLR_ABORT directive. - -config BUSYBOX_CHRT - bool "chrt" - default n + Support CLR_ABORT directive. +config BUSYBOX_CONSPY + bool "conspy (10 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - manipulate real-time attributes of a process. - This requires sched_{g,s}etparam support in your libc. - + A text-mode VNC like program for Linux virtual terminals. + example: conspy NUM shared access to console num + or conspy -nd NUM screenshot of console num + or conspy -cs NUM poor man's GNU screen like config BUSYBOX_CROND - bool "crond" - default n + bool "crond (14 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - Crond is a background daemon that parses individual crontab - files and executes commands on behalf of the users in question. - This is a port of dcron from slackware. It uses files of the - format /var/spool/cron/crontabs/ files, for example: - $ cat /var/spool/cron/crontabs/root - # Run daily cron jobs at 4:40 every day: - 40 4 * * * /etc/cron/daily > /dev/null 2>&1 + Crond is a background daemon that parses individual crontab + files and executes commands on behalf of the users in question. + This is a port of dcron from slackware. It uses files of the + format /var/spool/cron/crontabs/ files, for example: + $ cat /var/spool/cron/crontabs/root + # Run daily cron jobs at 4:40 every day: + 40 4 * * * /etc/cron/daily > /dev/null 2>&1 config BUSYBOX_FEATURE_CROND_D - bool "Support option -d to redirect output to stderr" + bool "Support -d (redirect output to stderr)" depends on BUSYBOX_CROND default y help - -d sets loglevel to 0 (most verbose) and directs all output to stderr. + -d N sets loglevel (0:most verbose) and directs all output to stderr. config BUSYBOX_FEATURE_CROND_CALL_SENDMAIL bool "Report command output via email (using sendmail)" - default n + default y + depends on BUSYBOX_CROND + help + Command output will be sent to corresponding user via email. + +config BUSYBOX_FEATURE_CROND_SPECIAL_TIMES + bool "Support special times (@reboot, @daily, etc) in crontabs" + default y depends on BUSYBOX_CROND help - Command output will be sent to corresponding user via email. + string meaning + ------ ------- + @reboot Run once, at startup + @yearly Run once a year: "0 0 1 1 *" + @annually Same as @yearly: "0 0 1 1 *" + @monthly Run once a month: "0 0 1 * *" + @weekly Run once a week: "0 0 * * 0" + @daily Run once a day: "0 0 * * *" + @midnight Same as @daily: "0 0 * * *" + @hourly Run once an hour: "0 * * * *" config BUSYBOX_FEATURE_CROND_DIR string "crond spool directory" default "/var/spool/cron" depends on BUSYBOX_CROND || BUSYBOX_CRONTAB help - Location of crond spool. - + Location of crond spool. config BUSYBOX_CRONTAB - bool "crontab" - default n - help - Crontab manipulates the crontab for a particular user. Only - the superuser may specify a different user and/or crontab directory. - Note that Busybox binary must be setuid root for this applet to - work properly. - -config BUSYBOX_BC - bool "bc (45 kb)" - default n - select BUSYBOX_FEATURE_DC_BIG - help - bc is a command-line, arbitrary-precision calculator with a - Turing-complete language. See the GNU bc manual - (https://www.gnu.org/software/bc/manual/bc.html) and bc spec - (http://pubs.opengroup.org/onlinepubs/9699919799/utilities/bc.html). - - This bc has five differences to the GNU bc: - 1) The period (.) is a shortcut for "last", as in the BSD bc. - 2) Arrays are copied before being passed as arguments to - functions. This behavior is required by the bc spec. - 3) Arrays can be passed to the builtin "length" function to get - the number of elements in the array. This prints "1": - a[0] = 0; length(a[]) - 4) The precedence of the boolean "not" operator (!) is equal to - that of the unary minus (-) negation operator. This still - allows POSIX-compliant scripts to work while somewhat - preserving expected behavior (versus C) and making parsing - easier. - 5) "read()" accepts expressions, not only numeric literals. - - -config BUSYBOX_DC - bool "dc" - default n - help - Dc is a reverse-polish desk calculator which supports unlimited - precision arithmetic. - -config BUSYBOX_FEATURE_DC_LIBM - bool "Enable power and exp functions (requires libm)" - default n - depends on BUSYBOX_DC + bool "crontab (10 kb)" + default y help - Enable power and exp functions. - NOTE: This will require libm to be present for linking. - + Crontab manipulates the crontab for a particular user. Only + the superuser may specify a different user and/or crontab directory. + Note that busybox binary must be setuid root for this applet to + work properly. config BUSYBOX_DEVFSD bool "devfsd (obsolete)" default n select BUSYBOX_PLATFORM_LINUX select BUSYBOX_FEATURE_SYSLOG help - This is deprecated and should NOT be used anymore. - Use linux >= 2.6 (optionally with hotplug) and mdev instead! - See docs/mdev.txt for detailed instructions on how to use mdev - instead. + This is deprecated and should NOT be used anymore. + Use linux >= 2.6 (optionally with hotplug) and mdev instead! + See docs/mdev.txt for detailed instructions on how to use mdev + instead. - Provides compatibility with old device names on a devfs systems. - You should set it to true if you have devfs enabled. - The following keywords in devsfd.conf are supported: - "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", - "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", - "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". + Provides compatibility with old device names on a devfs systems. + You should set it to true if you have devfs enabled. + The following keywords in devsfd.conf are supported: + "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", + "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", + "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". - But only if they are written UPPERCASE!!!!!!!! + But only if they are written UPPERCASE!!!!!!!! config BUSYBOX_DEVFSD_MODLOAD bool "Adds support for MODLOAD keyword in devsfd.conf" - default n + default y depends on BUSYBOX_DEVFSD help - This actually doesn't work with busybox modutils but needs - the external modutils. + This actually doesn't work with busybox modutils but needs + the external modutils. config BUSYBOX_DEVFSD_FG_NP - bool "Enables the -fg and -np options" - default n + bool "Enable the -fg and -np options" + default y depends on BUSYBOX_DEVFSD help - -fg Run the daemon in the foreground. - -np Exit after parsing the configuration file. - Do not poll for events. + -fg Run the daemon in the foreground. + -np Exit after parsing config. Do not poll for events. config BUSYBOX_DEVFSD_VERBOSE bool "Increases logging (and size)" - default n + default y depends on BUSYBOX_DEVFSD help - Increases logging to stderr or syslog. - -config BUSYBOX_FEATURE_DEVFS - bool "Use devfs names for all devices (obsolete)" - default n - select BUSYBOX_PLATFORM_LINUX - help - This is obsolete and should NOT be used anymore. - Use linux >= 2.6 (optionally with hotplug) and mdev instead! - - For legacy systems -- if there is no way around devfsd -- this - tells busybox to look for names like /dev/loop/0 instead of - /dev/loop0. If your /dev directory has normal names instead of - devfs names, you don't want this. - -config BUSYBOX_DEVMEM - bool "devmem" - default n - help - devmem is a small program that reads and writes from physical - memory using /dev/mem. + Increases logging to stderr or syslog. -config BUSYBOX_EJECT - bool "eject" +config BUSYBOX_FEATURE_DEVFS + bool "Use devfs names for all devices (obsolete)" default n select BUSYBOX_PLATFORM_LINUX help - Used to eject cdroms. (defaults to /dev/cdrom) + This is obsolete and should NOT be used anymore. + Use linux >= 2.6 (optionally with hotplug) and mdev instead! -config BUSYBOX_FEATURE_EJECT_SCSI - bool "SCSI support" - default n - depends on BUSYBOX_EJECT + For legacy systems -- if there is no way around devfsd -- this + tells busybox to look for names like /dev/loop/0 instead of + /dev/loop0. If your /dev directory has normal names instead of + devfs names, you don't want this. +config BUSYBOX_DEVMEM + bool "devmem (2.5 kb)" + default y help - Add the -s option to eject, this allows to eject SCSI-Devices and - usb-storage devices. - + devmem is a small program that reads and writes from physical + memory using /dev/mem. config BUSYBOX_FBSPLASH - bool "fbsplash" - default n + bool "fbsplash (26 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Shows splash image and progress bar on framebuffer device. - Can be used during boot phase of an embedded device. ~2kb. - Usage: - - use kernel option 'vga=xxx' or otherwise enable fb device. - - put somewhere fbsplash.cfg file and an image in .ppm format. - - $ setsid fbsplash [params] & + Shows splash image and progress bar on framebuffer device. + Can be used during boot phase of an embedded device. + Usage: + - use kernel option 'vga=xxx' or otherwise enable fb device. + - put somewhere fbsplash.cfg file and an image in .ppm format. + - $ setsid fbsplash [params] & -c: hide cursor -d /dev/fbN: framebuffer device (if not /dev/fb0) -s path_to_image_file (can be "-" for stdin) -i path_to_cfg_file (can be "-" for stdin) -f path_to_fifo (can be "-" for stdin) - - if you want to run it only in presence of kernel parameter: - grep -q "fbsplash=on" = 2.6.13 - -config BUSYBOX_INOTIFYD - bool "inotifyd" - default n # doesn't build on Knoppix 5 - help - Simple inotify daemon. Reports filesystem changes. Requires - kernel >= 2.6.13 - -config BUSYBOX_LAST - bool "last" - default n - depends on BUSYBOX_FEATURE_WTMP - help - 'last' displays a list of the last users that logged into the system. - -choice - prompt "Choose last implementation" - depends on BUSYBOX_LAST - default FEATURE_LAST_FANCY - -config BUSYBOX_FEATURE_LAST_SMALL - bool "small" - help - This is a small version of last with just the basic set of - features. - -config BUSYBOX_FEATURE_LAST_FANCY - bool "huge" - help - 'last' displays detailed information about the last users that - logged into the system (mimics sysvinit last). +900 bytes. -endchoice - + The flashcp binary, inspired by mtd-utils as of git head 5eceb74f7. + This utility is used to copy images into a MTD device. config BUSYBOX_HDPARM - bool "hdparm" - default n - depends on !BUSYBOX_DISABLE_HDPARM + bool "hdparm (25 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Get/Set hard drive parameters. Primarily intended for ATA - drives. Adds about 13k (or around 30k if you enable the - FEATURE_HDPARM_GET_IDENTITY option).... + Get/Set hard drive parameters. Primarily intended for ATA + drives. config BUSYBOX_FEATURE_HDPARM_GET_IDENTITY bool "Support obtaining detailed information directly from drives" default y depends on BUSYBOX_HDPARM help - Enables the -I and -i options to obtain detailed information - directly from drives about their capabilities and supported ATA - feature set. If no device name is specified, hdparm will read - identify data from stdin. Enabling this option will add about 16k... + Enable the -I and -i options to obtain detailed information + directly from drives about their capabilities and supported ATA + feature set. If no device name is specified, hdparm will read + identify data from stdin. Enabling this option will add about 16k... config BUSYBOX_FEATURE_HDPARM_HDIO_SCAN_HWIF bool "Register an IDE interface (DANGEROUS)" default y depends on BUSYBOX_HDPARM help - Enables the 'hdparm -R' option to register an IDE interface. - This is dangerous stuff, so you should probably say N. + Enable the 'hdparm -R' option to register an IDE interface. + This is dangerous stuff, so you should probably say N. config BUSYBOX_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF bool "Un-register an IDE interface (DANGEROUS)" default y depends on BUSYBOX_HDPARM help - Enables the 'hdparm -U' option to un-register an IDE interface. - This is dangerous stuff, so you should probably say N. + Enable the 'hdparm -U' option to un-register an IDE interface. + This is dangerous stuff, so you should probably say N. config BUSYBOX_FEATURE_HDPARM_HDIO_DRIVE_RESET bool "Perform device reset (DANGEROUS)" default y depends on BUSYBOX_HDPARM help - Enables the 'hdparm -w' option to perform a device reset. - This is dangerous stuff, so you should probably say N. + Enable the 'hdparm -w' option to perform a device reset. + This is dangerous stuff, so you should probably say N. config BUSYBOX_FEATURE_HDPARM_HDIO_TRISTATE_HWIF bool "Tristate device for hotswap (DANGEROUS)" default y depends on BUSYBOX_HDPARM help - Enables the 'hdparm -x' option to tristate device for hotswap, - and the '-b' option to get/set bus state. This is dangerous - stuff, so you should probably say N. + Enable the 'hdparm -x' option to tristate device for hotswap, + and the '-b' option to get/set bus state. This is dangerous + stuff, so you should probably say N. config BUSYBOX_FEATURE_HDPARM_HDIO_GETSET_DMA bool "Get/set using_dma flag" default y depends on BUSYBOX_HDPARM help - Enables the 'hdparm -d' option to get/set using_dma flag. - + Enable the 'hdparm -d' option to get/set using_dma flag. config BUSYBOX_HEXEDIT bool "hexedit (21 kb)" - default n + default y help Edit file in hexadecimal. +config BUSYBOX_I2CGET + bool "i2cget (5.5 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Read from I2C/SMBus chip registers. + +config BUSYBOX_I2CSET + bool "i2cset (6.7 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Set I2C registers. + +config BUSYBOX_I2CDUMP + bool "i2cdump (7.1 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Examine I2C registers. + +config BUSYBOX_I2CDETECT + bool "i2cdetect (7.1 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Detect I2C chips. + +config BUSYBOX_I2CTRANSFER + bool "i2ctransfer (4.0 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Send user-defined I2C messages in one transfer. + +config BUSYBOX_INOTIFYD + bool "inotifyd (3.6 kb)" + default n # doesn't build on Knoppix 5 + help + Simple inotify daemon. Reports filesystem changes. Requires + kernel >= 2.6.13 +config BUSYBOX_LESS + bool "less (16 kb)" + default y + help + 'less' is a pager, meaning that it displays text files. It possesses + a wide array of features, and is an improvement over 'more'. + +config BUSYBOX_FEATURE_LESS_MAXLINES + int "Max number of input lines less will try to eat" + default 9999999 + depends on BUSYBOX_LESS + +config BUSYBOX_FEATURE_LESS_BRACKETS + bool "Enable bracket searching" + default y + depends on BUSYBOX_LESS + help + This option adds the capability to search for matching left and right + brackets, facilitating programming. + +config BUSYBOX_FEATURE_LESS_FLAGS + bool "Enable -m/-M" + default y + depends on BUSYBOX_LESS + help + The -M/-m flag enables a more sophisticated status line. + +config BUSYBOX_FEATURE_LESS_TRUNCATE + bool "Enable -S" + default y + depends on BUSYBOX_LESS + help + The -S flag causes long lines to be truncated rather than + wrapped. + +config BUSYBOX_FEATURE_LESS_MARKS + bool "Enable marks" + default y + depends on BUSYBOX_LESS + help + Marks enable positions in a file to be stored for easy reference. + +config BUSYBOX_FEATURE_LESS_REGEXP + bool "Enable regular expressions" + default y + depends on BUSYBOX_LESS + help + Enable regular expressions, allowing complex file searches. + +config BUSYBOX_FEATURE_LESS_WINCH + bool "Enable automatic resizing on window size changes" + default y + depends on BUSYBOX_LESS + help + Makes less track window size changes. + +config BUSYBOX_FEATURE_LESS_ASK_TERMINAL + bool "Use 'tell me cursor position' ESC sequence to measure window" + default y + depends on BUSYBOX_FEATURE_LESS_WINCH + help + Makes less track window size changes. + If terminal size can't be retrieved and $LINES/$COLUMNS are not set, + this option makes less perform a last-ditch effort to find it: + position cursor to 999,999 and ask terminal to report real + cursor position using "ESC [ 6 n" escape sequence, then read stdin. + This is not clean but helps a lot on serial lines and such. + +config BUSYBOX_FEATURE_LESS_DASHCMD + bool "Enable flag changes ('-' command)" + default y + depends on BUSYBOX_LESS + help + This enables the ability to change command-line flags within + less itself ('-' keyboard command). + +config BUSYBOX_FEATURE_LESS_LINENUMS + bool "Enable -N (dynamic switching of line numbers)" + default y + depends on BUSYBOX_FEATURE_LESS_DASHCMD + +config BUSYBOX_FEATURE_LESS_RAW + bool "Enable -R ('raw control characters')" + default y + depends on BUSYBOX_FEATURE_LESS_DASHCMD + help + This is essential for less applet to work with tools that use colors + and paging, such as git, systemd tools or nmcli. + +config BUSYBOX_FEATURE_LESS_ENV + bool "Take options from $LESS environment variable" + default y + depends on BUSYBOX_FEATURE_LESS_DASHCMD + help + This is essential for less applet to work with tools that use colors + and paging, such as git, systemd tools or nmcli. +config BUSYBOX_LSSCSI + bool "lsscsi (2.5 kb)" + default y + #select BUSYBOX_PLATFORM_LINUX + help + lsscsi is a utility for displaying information about SCSI buses in the + system and devices connected to them. + This version uses sysfs (/sys/bus/scsi/devices) only. config BUSYBOX_MAKEDEVS - bool "makedevs" - default n + bool "makedevs (9.2 kb)" + default y help - 'makedevs' is a utility used to create a batch of devices with - one command. + 'makedevs' is a utility used to create a batch of devices with + one command. - There are two choices for command line behaviour, the interface - as used by LEAF/Linux Router Project, or a device table file. + There are two choices for command line behaviour, the interface + as used by LEAF/Linux Router Project, or a device table file. - 'leaf' is traditionally what busybox follows, it allows multiple - devices of a particluar type to be created per command. - e.g. /dev/hda[0-9] - Device properties are passed as command line arguments. + 'leaf' is traditionally what busybox follows, it allows multiple + devices of a particluar type to be created per command. + e.g. /dev/hda[0-9] + Device properties are passed as command line arguments. - 'table' reads device properties from a file or stdin, allowing - a batch of unrelated devices to be made with one command. - User/group names are allowed as an alternative to uid/gid. + 'table' reads device properties from a file or stdin, allowing + a batch of unrelated devices to be made with one command. + User/group names are allowed as an alternative to uid/gid. choice prompt "Choose makedevs behaviour" depends on BUSYBOX_MAKEDEVS - default FEATURE_MAKEDEVS_TABLE + default BUSYBOX_FEATURE_MAKEDEVS_TABLE config BUSYBOX_FEATURE_MAKEDEVS_LEAF bool "leaf" @@ -720,179 +619,197 @@ config BUSYBOX_FEATURE_MAKEDEVS_TABLE bool "table" endchoice - config BUSYBOX_MAN - bool "man" - default n + bool "man (26 kb)" + default y help - Format and display manual pages. - + Format and display manual pages. config BUSYBOX_MICROCOM - bool "microcom" - default n + bool "microcom (5.7 kb)" + default y 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_MIM bool "mim (0.5 kb)" - default n + default y depends on BUSYBOX_FEATURE_SH_EMBEDDED_SCRIPTS help Run a script from a Makefile-like specification file. Unlike 'make' dependencies aren't supported. - -config BUSYBOX_MOUNTPOINT - bool "mountpoint" - default n - help - mountpoint checks if the directory is a mountpoint. - config BUSYBOX_MT - bool "mt" - default n + bool "mt (2.5 kb)" + default y + help + mt is used to control tape devices. You can use the mt utility + to advance or rewind a tape past a specified number of archive + files on the tape. +config BUSYBOX_NANDWRITE + bool "nandwrite (4.8 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - mt is used to control tape devices. You can use the mt utility - to advance or rewind a tape past a specified number of archive - files on the tape. + Write to the specified MTD device, with bad blocks awareness +config BUSYBOX_NANDDUMP + bool "nanddump (5.2 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Dump the content of raw NAND chip +config BUSYBOX_PARTPROBE + bool "partprobe (3.5 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Ask kernel to rescan partition table. config BUSYBOX_RAIDAUTORUN - bool "raidautorun" - default n + bool "raidautorun (1.3 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - raidautorun tells the kernel md driver to - search and start RAID arrays. - + raidautorun tells the kernel md driver to + search and start RAID arrays. config BUSYBOX_READAHEAD - bool "readahead" - default n + bool "readahead (1.5 kb)" + default y depends on BUSYBOX_LFS select BUSYBOX_PLATFORM_LINUX help - Preload the files listed on the command line into RAM cache so that - subsequent reads on these files will not block on disk I/O. + Preload the files listed on the command line into RAM cache so that + subsequent reads on these files will not block on disk I/O. - This applet just calls the readahead(2) system call on each file. - It is mainly useful in system startup scripts to preload files - or executables before they are used. When used at the right time - (in particular when a CPU bound process is running) it can - significantly speed up system startup. - - As readahead(2) blocks until each file has been read, it is best to - run this applet as a background job. + This applet just calls the readahead(2) system call on each file. + It is mainly useful in system startup scripts to preload files + or executables before they are used. When used at the right time + (in particular when a CPU bound process is running) it can + significantly speed up system startup. + As readahead(2) blocks until each file has been read, it is best to + run this applet as a background job. config BUSYBOX_RFKILL - bool "rfkill" - depends on !BUSYBOX_DISABLE_RFKILL - default n + bool "rfkill (4.4 kb)" + default n # doesn't build on Ubuntu 9.04 select BUSYBOX_PLATFORM_LINUX help - Enable/disable wireless devices. + Enable/disable wireless devices. - rfkill list : list all wireless devices - rfkill list bluetooth : list all bluetooth devices - rfkill list 1 : list device corresponding to the given index - rfkill block|unblock wlan : block/unblock all wlan(wifi) devices + rfkill list : list all wireless devices + rfkill list bluetooth : list all bluetooth devices + rfkill list 1 : list device corresponding to the given index + rfkill block|unblock wlan : block/unblock all wlan(wifi) devices config BUSYBOX_RUNLEVEL - bool "runlevel" - default n + bool "runlevel (559 bytes)" + default y depends on BUSYBOX_FEATURE_UTMP help - find the current and previous system runlevel. - - This applet uses utmp but does not rely on busybox supporing - utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc. + Find the current and previous system runlevel. + This applet uses utmp but does not rely on busybox supporing + utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc. config BUSYBOX_RX - bool "rx" - default n + bool "rx (2.9 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Receive files using the Xmodem protocol. - -config BUSYBOX_SETSID - bool "setsid" - default n - help - setsid runs a program in a new session - -config BUSYBOX_STRINGS - bool "strings" - default n + Receive files using the Xmodem protocol. +config BUSYBOX_SETFATTR + bool "setfattr (3.7 kb)" + default y help - strings prints the printable character sequences for each file - specified. - -config BUSYBOX_TASKSET - bool "taskset" - default n # doesn't build on some non-x86 targets (m68k) + Set/delete extended attributes on files +config BUSYBOX_SETSERIAL + bool "setserial (6.9 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Retrieve or set a processes's CPU affinity. - This requires sched_{g,s}etaffinity support in your libc. - -config BUSYBOX_FEATURE_TASKSET_FANCY - bool "Fancy output" + Retrieve or set Linux serial port. +config BUSYBOX_STRINGS + bool "strings (4.6 kb)" default y - depends on BUSYBOX_TASKSET help - Add code for fancy output. This merely silences a compiler-warning - and adds about 135 Bytes. May be needed for machines with alot - of CPUs. - + strings prints the printable character sequences for each file + specified. config BUSYBOX_TIME - bool "time" - default n + bool "time (6.8 kb)" + default y help - The time command runs the specified program with the given arguments. - When the command finishes, time writes a message to standard output - giving timing statistics about this program run. - + The time command runs the specified program with the given arguments. + When the command finishes, time writes a message to standard output + giving timing statistics about this program run. config BUSYBOX_TS bool "ts (450 bytes)" - default n + default y +config BUSYBOX_TTYSIZE + bool "ttysize (432 bytes)" + default y + help + A replacement for "stty size". Unlike stty, can report only width, + only height, or both, in any order. It also does not complain on + error, but returns default 80x24. + Usage in shell scripts: width=`ttysize w`. +config BUSYBOX_UBIATTACH + bool "ubiattach (4.2 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Attach MTD device to an UBI device. -config BUSYBOX_TIMEOUT - bool "timeout" - default n +config BUSYBOX_UBIDETACH + bool "ubidetach (4.1 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Runs a program and watches it. If it does not terminate in - specified number of seconds, it is sent a signal. + Detach MTD device from an UBI device. -config BUSYBOX_TTYSIZE - bool "ttysize" - default n +config BUSYBOX_UBIMKVOL + bool "ubimkvol (5.3 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - A replacement for "stty size". Unlike stty, can report only width, - only height, or both, in any order. It also does not complain on - error, but returns default 80x24. - Usage in shell scripts: width=`ttysize w`. + Create a UBI volume. -config BUSYBOX_VOLNAME - bool "volname" - default n +config BUSYBOX_UBIRMVOL + bool "ubirmvol (4.9 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Prints a CD-ROM volume name. + Delete a UBI volume. -config BUSYBOX_WALL - bool "wall" - default n - depends on BUSYBOX_FEATURE_UTMP +config BUSYBOX_UBIRSVOL + bool "ubirsvol (4.2 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Write a message to all users that are logged in. + Resize a UBI volume. +config BUSYBOX_UBIUPDATEVOL + bool "ubiupdatevol (5.2 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Update a UBI volume. +config BUSYBOX_UBIRENAME + bool "ubirename (2.4 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Utility to rename UBI volumes +config BUSYBOX_VOLNAME + bool "volname (1.6 kb)" + default y + help + Prints a CD-ROM volume name. config BUSYBOX_WATCHDOG - bool "watchdog" - default y if ADK_TARGET_WITH_WATCHDOG - default n - depends on !BUSYBOX_DISABLE_WATCHDOG + bool "watchdog (5.3 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The watchdog utility is used with hardware or software watchdog - device drivers. It opens the specified watchdog device special file - and periodically writes a magic character to the device. If the - watchdog applet ever fails to write the magic character within a - certain amount of time, the watchdog device assumes the system has - hung, and will cause the hardware to reboot. + The watchdog utility is used with hardware or software watchdog + device drivers. It opens the specified watchdog device special file + and periodically writes a magic character to the device. If the + watchdog applet ever fails to write the magic character within a + certain amount of time, the watchdog device assumes the system has + hung, and will cause the hardware to reboot. endmenu diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in index 22d554eca..141e5ea85 100644 --- a/package/busybox/config/modutils/Config.in +++ b/package/busybox/config/modutils/Config.in @@ -1,138 +1,98 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Linux Module Utilities" -config BUSYBOX_MODINFO - bool "modinfo" - default n - depends on !BUSYBOX_DISABLE_KMOD - select BUSYBOX_PLATFORM_LINUX - help - Show information about a Linux Kernel module - config BUSYBOX_MODPROBE_SMALL bool "Simplified modutils" - default n - depends on !BUSYBOX_DISABLE_KMOD - select BUSYBOX_PLATFORM_LINUX + default y help - Simplified modutils. - - With this option modprobe does not require modules.dep file - and does not use /etc/modules.conf file. - It scans module files in /lib/modules/`uname -r` and - determines dependencies and module alias names on the fly. - This may make module loading slower, most notably - when one needs to load module by alias (this requires - scanning through module _bodies_). + Build smaller (~1.5 kbytes), simplified module tools. - At the first attempt to load a module by alias modprobe - will try to generate modules.dep.bb file in order to speed up - future loads by alias. Failure to do so (read-only /lib/modules, - etc) is not reported, and future modprobes will be slow too. + This option by itself does not enable any applets - + you need to select applets individually below. - NB: modules.dep.bb file format is not compatible - with modules.dep file as created/used by standard module tools. + With this option modprobe does not require modules.dep file + and does not use /etc/modules.conf file. + It scans module files in /lib/modules/`uname -r` and + determines dependencies and module alias names on the fly. + This may make module loading slower, most notably + when one needs to load module by alias (this requires + scanning through module _bodies_). - Additional module parameters can be stored in - /etc/modules/$module_name files. + At the first attempt to load a module by alias modprobe + will try to generate modules.dep.bb file in order to speed up + future loads by alias. Failure to do so (read-only /lib/modules, + etc) is not reported, and future modprobes will be slow too. - Apart from modprobe, other utilities are also provided: - - insmod is an alias to modprobe - - rmmod is an alias to modprobe -r - - depmod generates modules.dep.bb + NB: modules.dep.bb file format is not compatible + with modules.dep file as created/used by standard module tools. - As of 2008-07, this code is experimental. It is 14kb smaller - than "non-small" modutils. + Additional module parameters can be stored in + /etc/modules/$module_name files. -config BUSYBOX_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE - bool "Accept module options on modprobe command line" +config BUSYBOX_DEPMOD + bool "depmod (27 kb)" default y - depends on BUSYBOX_MODPROBE_SMALL select BUSYBOX_PLATFORM_LINUX help - Allow insmod and modprobe take module options from command line. - -config BUSYBOX_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED - bool "Skip loading of already loaded modules" - default y - depends on BUSYBOX_MODPROBE_SMALL - help - Check if the module is already loaded. - + depmod generates modules.dep (and potentially modules.alias + and modules.symbols) that contain dependency information + for modprobe. config BUSYBOX_INSMOD - bool "insmod" + bool "insmod (22 kb)" default y - depends on !BUSYBOX_MODPROBE_SMALL - depends on !BUSYBOX_DISABLE_KMOD select BUSYBOX_PLATFORM_LINUX help - insmod is used to load specified modules in the running kernel. - -config BUSYBOX_RMMOD - bool "rmmod" - default y - depends on !BUSYBOX_MODPROBE_SMALL - depends on !BUSYBOX_DISABLE_KMOD - select BUSYBOX_PLATFORM_LINUX - help - rmmod is used to unload specified modules from the kernel. - + insmod is used to load specified modules in the running kernel. config BUSYBOX_LSMOD - bool "lsmod" + bool "lsmod (1.9 kb)" default y - depends on !BUSYBOX_MODPROBE_SMALL - depends on !BUSYBOX_DISABLE_KMOD select BUSYBOX_PLATFORM_LINUX help - lsmod is used to display a list of loaded modules. + lsmod is used to display a list of loaded modules. config BUSYBOX_FEATURE_LSMOD_PRETTY_2_6_OUTPUT bool "Pretty output" - default n - depends on BUSYBOX_LSMOD + default y + depends on BUSYBOX_LSMOD && !BUSYBOX_MODPROBE_SMALL + help + This option makes output format of lsmod adjusted to + the format of module-init-tools for Linux kernel 2.6. + Increases size somewhat. +config BUSYBOX_MODINFO + bool "modinfo (24 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - This option makes output format of lsmod adjusted to - the format of module-init-tools for Linux kernel 2.6. - Increases size somewhat. - + Show information about a Linux Kernel module config BUSYBOX_MODPROBE - bool "modprobe" - default n - depends on !BUSYBOX_DISABLE_KMOD - depends on !BUSYBOX_MODPROBE_SMALL + bool "modprobe (28 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Handle the loading of modules, and their dependencies on a high - level. + Handle the loading of modules, and their dependencies on a high + level. config BUSYBOX_FEATURE_MODPROBE_BLACKLIST bool "Blacklist support" - default n - depends on BUSYBOX_MODPROBE - select BUSYBOX_PLATFORM_LINUX + default y + depends on BUSYBOX_MODPROBE && !BUSYBOX_MODPROBE_SMALL help - Say 'y' here to enable support for the 'blacklist' command in - modprobe.conf. This prevents the alias resolver to resolve - blacklisted modules. This is useful if you want to prevent your - hardware autodetection scripts to load modules like evdev, frame - buffer drivers etc. - -config BUSYBOX_DEPMOD - bool "depmod" - default n - depends on !BUSYBOX_DISABLE_KMOD - depends on !BUSYBOX_MODPROBE_SMALL + Say 'y' here to enable support for the 'blacklist' command in + modprobe.conf. This prevents the alias resolver to resolve + blacklisted modules. This is useful if you want to prevent your + hardware autodetection scripts to load modules like evdev, frame + buffer drivers etc. +config BUSYBOX_RMMOD + bool "rmmod (3.3 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - depmod generates modules.dep (and potentially modules.alias - and modules.symbols) that contain dependency information - for modprobe. + rmmod is used to unload specified modules from the kernel. comment "Options common to multiple modutils" @@ -154,138 +114,132 @@ config BUSYBOX_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED config BUSYBOX_FEATURE_2_4_MODULES bool "Support version 2.2/2.4 Linux kernels" default n - depends on BUSYBOX_INSMOD || BUSYBOX_RMMOD || BUSYBOX_LSMOD - select BUSYBOX_PLATFORM_LINUX + depends on (BUSYBOX_INSMOD || BUSYBOX_LSMOD || BUSYBOX_MODPROBE || BUSYBOX_RMMOD) && !BUSYBOX_MODPROBE_SMALL help - Support module loading for 2.2.x and 2.4.x Linux kernels. - This increases size considerably. Say N unless you plan - to run ancient kernels. - -config BUSYBOX_FEATURE_INSMOD_TRY_MMAP - bool "Try to load module from a mmap'ed area" - default n - depends on BUSYBOX_INSMOD || BUSYBOX_MODPROBE_SMALL - select BUSYBOX_PLATFORM_LINUX - help - This option causes module loading code to try to mmap - module first. If it does not work (for example, - it does not work for compressed modules), module will be read - (and unpacked if needed) into a memory block allocated by malloc. - - The only case when mmap works but malloc does not is when - you are trying to load a big module on a very memory-constrained - machine. Malloc will momentarily need 2x as much memory as mmap. - - Choosing N saves about 250 bytes of code (on 32-bit x86). + Support module loading for 2.2.x and 2.4.x Linux kernels. + This increases size considerably. Say N unless you plan + to run ancient kernels. config BUSYBOX_FEATURE_INSMOD_VERSION_CHECKING bool "Enable module version checking" default n depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE) - select BUSYBOX_PLATFORM_LINUX help - Support checking of versions for modules. This is used to - ensure that the kernel and module are made for each other. + Support checking of versions for modules. This is used to + ensure that the kernel and module are made for each other. config BUSYBOX_FEATURE_INSMOD_KSYMOOPS_SYMBOLS bool "Add module symbols to kernel symbol table" default n depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE) - select BUSYBOX_PLATFORM_LINUX help - By adding module symbols to the kernel symbol table, Oops messages - occuring within kernel modules can be properly debugged. By enabling - this feature, module symbols will always be added to the kernel symbol - table for proper debugging support. If you are not interested in - Oops messages from kernel modules, say N. + By adding module symbols to the kernel symbol table, Oops messages + occurring within kernel modules can be properly debugged. By enabling + this feature, module symbols will always be added to the kernel symbol + table for proper debugging support. If you are not interested in + Oops messages from kernel modules, say N. config BUSYBOX_FEATURE_INSMOD_LOADINKMEM bool "In kernel memory optimization (uClinux only)" default n depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE) - select BUSYBOX_PLATFORM_LINUX help - This is a special uClinux only memory optimization that lets insmod - load the specified kernel module directly into kernel space, reducing - memory usage by preventing the need for two copies of the module - being loaded into memory. + This is a special uClinux only memory optimization that lets insmod + load the specified kernel module directly into kernel space, reducing + memory usage by preventing the need for two copies of the module + being loaded into memory. config BUSYBOX_FEATURE_INSMOD_LOAD_MAP bool "Enable insmod load map (-m) option" default n depends on BUSYBOX_FEATURE_2_4_MODULES && BUSYBOX_INSMOD - select BUSYBOX_PLATFORM_LINUX help - Enabling this, one would be able to get a load map - output on stdout. This makes kernel module debugging - easier. - If you don't plan to debug kernel modules, you - don't need this option. + Enabling this, one would be able to get a load map + output on stdout. This makes kernel module debugging + easier. + If you don't plan to debug kernel modules, you + don't need this option. config BUSYBOX_FEATURE_INSMOD_LOAD_MAP_FULL bool "Symbols in load map" - default n - depends on BUSYBOX_FEATURE_INSMOD_LOAD_MAP && !BUSYBOX_MODPROBE_SMALL - select BUSYBOX_PLATFORM_LINUX + default y + depends on BUSYBOX_FEATURE_INSMOD_LOAD_MAP help - Without this option, -m will only output section - load map. With this option, -m will also output - symbols load map. + Without this option, -m will only output section + load map. With this option, -m will also output + symbols load map. config BUSYBOX_FEATURE_CHECK_TAINTED_MODULE bool "Support tainted module checking with new kernels" default y depends on (BUSYBOX_LSMOD || BUSYBOX_FEATURE_2_4_MODULES) && !BUSYBOX_MODPROBE_SMALL - select BUSYBOX_PLATFORM_LINUX help - Support checking for tainted modules. These are usually binary - only modules that will make the linux-kernel list ignore your - support request. - This option is required to support GPLONLY modules. + Support checking for tainted modules. These are usually binary + only modules that will make the linux-kernel list ignore your + support request. + This option is required to support GPLONLY modules. + +config BUSYBOX_FEATURE_INSMOD_TRY_MMAP + bool "Try to load module from a mmap'ed area" + default n + depends on (BUSYBOX_INSMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL + help + This option causes module loading code to try to mmap + module first. If it does not work (for example, + it does not work for compressed modules), module will be read + (and unpacked if needed) into a memory block allocated by malloc. + + The only case when mmap works but malloc does not is when + you are trying to load a big module on a very memory-constrained + machine. Malloc will momentarily need 2x as much memory as mmap. + + Choosing N saves about 250 bytes of code (on 32-bit x86). config BUSYBOX_FEATURE_MODUTILS_ALIAS - bool "Support for module.aliases file" + bool "Support module.aliases file" default y - depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE - select BUSYBOX_PLATFORM_LINUX + depends on (BUSYBOX_DEPMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL help - Generate and parse modules.alias containing aliases for bus - identifiers: - alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs + Generate and parse modules.alias containing aliases for bus + identifiers: + alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs - and aliases for logical modules names e.g.: - alias padlock_aes aes - alias aes_i586 aes - alias aes_generic aes + and aliases for logical modules names e.g.: + alias padlock_aes aes + alias aes_i586 aes + alias aes_generic aes - Say Y if unsure. + Say Y if unsure. config BUSYBOX_FEATURE_MODUTILS_SYMBOLS - bool "Support for module.symbols file" + bool "Support module.symbols file" default y - depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE - select BUSYBOX_PLATFORM_LINUX + depends on (BUSYBOX_DEPMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL help - Generate and parse modules.symbols containing aliases for - symbol_request() kernel calls, such as: - alias symbol:usb_sg_init usbcore + Generate and parse modules.symbols containing aliases for + symbol_request() kernel calls, such as: + alias symbol:usb_sg_init usbcore - Say Y if unsure. + Say Y if unsure. config BUSYBOX_DEFAULT_MODULES_DIR string "Default directory containing modules" default "/lib/modules" - depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODPROBE_SMALL || BUSYBOX_MODINFO + depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODINFO help - Directory that contains kernel modules. - Defaults to "/lib/modules" + Directory that contains kernel modules. + Defaults to "/lib/modules" config BUSYBOX_DEFAULT_DEPMOD_FILE string "Default name of modules.dep" default "modules.dep" - depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODPROBE_SMALL || BUSYBOX_MODINFO - help - Filename that contains kernel modules dependencies. - Defaults to "modules.dep" + depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODINFO + help + Filename that contains kernel modules dependencies. + Defaults to "modules.dep". + If you configured the "simplified modutils" (BUSYBOX_MODPROBE_SMALL), a + ".bb" suffix will be added after this name. Do not specify ".bb" + here unless you intend your depmod or modprobe to work on + "modules.dep.bb.bb" or such. endmenu diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in index 8ef4edf92..85171edcb 100644 --- a/package/busybox/config/networking/Config.in +++ b/package/busybox/config/networking/Config.in @@ -1,155 +1,51 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Networking Utilities" -config BUSYBOX_NAMEIF - bool "nameif" - default n - select BUSYBOX_PLATFORM_LINUX - select BUSYBOX_FEATURE_SYSLOG - help - nameif is used to rename network interface by its MAC address. - Renamed interfaces MUST be in the down state. - It is possible to use a file (default: /etc/mactab) - with list of new interface names and MACs. - Maximum interface name length: IFNAMSIZ = 16 - File fields are separated by space or tab. - File format: - # Comment - new_interface_name XX:XX:XX:XX:XX:XX - -config BUSYBOX_FEATURE_NAMEIF_EXTENDED - bool "Extended nameif" - default y - depends on BUSYBOX_NAMEIF - help - This extends the nameif syntax to support the bus_info, driver, - phyaddr selectors. The syntax is compatible to the normal nameif. - File format: - new_interface_name driver=asix bus=usb-0000:00:08.2-3 - new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5 - new_interface_name phy_address=2 00:80:C8:38:91:B5 - new_interface_name mac=00:80:C8:38:91:B5 - new_interface_name 00:80:C8:38:91:B5 - -config BUSYBOX_NBDCLIENT - bool "nbd-client" - default n - help - Network block device client - -config BUSYBOX_NC - bool "nc" - default n - help - A simple Unix utility which reads and writes data across network - connections. - -config BUSYBOX_NETCAT - bool "netcat (11 kb)" - default y - help - Alias to nc. - -config BUSYBOX_NC_SERVER - bool "Netcat server options (-l)" - default n - depends on BUSYBOX_NC || BUSYBOX_NETCAT - help - Allow netcat to act as a server. - -config BUSYBOX_NC_EXTRA - bool "Netcat extensions (-eiw and filename)" - default y - depends on BUSYBOX_NC || BUSYBOX_NETCAT - help - Add -e (support for executing the rest of the command line after - making or receiving a successful connection), -i (delay interval for - lines sent), -w (timeout for initial connection). - -config BUSYBOX_NC_110_COMPAT - bool "Netcat 1.10 compatibility (+2.5k)" - default n # off specially for Rob - depends on BUSYBOX_NC || BUSYBOX_NETCAT - help - This option makes nc closely follow original nc-1.10. - The code is about 2.5k bigger. It enables - -s ADDR, -n, -u, -v, -o FILE, -z options, but loses - busybox-specific extensions: -f FILE and -ll. - -config BUSYBOX_PING - bool "ping" - default y if ADK_TARGET_WITH_NET - select BUSYBOX_PLATFORM_LINUX - help - ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to - elicit an ICMP ECHO_RESPONSE from a host or gateway. - -config BUSYBOX_PING6 - bool "ping6" - default y if ADK_TARGET_WITH_NET - depends on BUSYBOX_FEATURE_IPV6 && BUSYBOX_PING - help - This will give you a ping that can talk IPv6. - -config BUSYBOX_FEATURE_FANCY_PING - bool "Enable fancy ping output" - default y - depends on BUSYBOX_PING - help - Make the output from the ping applet include statistics, and at the - same time provide full support for ICMP packets. - -config BUSYBOX_WHOIS - bool "whois" - default n - help - whois is a client for the whois directory service - config BUSYBOX_FEATURE_IPV6 bool "Enable IPv6 support" - default n + default y help - Enable IPv6 support in busybox. - This adds IPv6 support in the networking applets. + Enable IPv6 support in busybox. + This adds IPv6 support in the networking applets. config BUSYBOX_FEATURE_UNIX_LOCAL bool "Enable Unix domain socket support (usually not needed)" default n help - Enable Unix domain socket support in all busybox networking - applets. Address of the form local:/path/to/unix/socket - will be recognized. + Enable Unix domain socket support in all busybox networking + applets. Address of the form local:/path/to/unix/socket + will be recognized. - This extension is almost never used in real world usage. - You most likely want to say N. + This extension is almost never used in real world usage. + You most likely want to say N. config BUSYBOX_FEATURE_PREFER_IPV4_ADDRESS bool "Prefer IPv4 addresses from DNS queries" default y depends on BUSYBOX_FEATURE_IPV6 help - Use IPv4 address of network host if it has one. + Use IPv4 address of network host if it has one. - If this option is off, the first returned address will be used. - This may cause problems when your DNS server is IPv6-capable and - is returning IPv6 host addresses too. If IPv6 address - precedes IPv4 one in DNS reply, busybox network applets - (e.g. wget) will use IPv6 address. On an IPv6-incapable host - or network applets will fail to connect to the host - using IPv6 address. + If this option is off, the first returned address will be used. + This may cause problems when your DNS server is IPv6-capable and + is returning IPv6 host addresses too. If IPv6 address + precedes IPv4 one in DNS reply, busybox network applets + (e.g. wget) will use IPv6 address. On an IPv6-incapable host + or network applets will fail to connect to the host + using IPv6 address. config BUSYBOX_VERBOSE_RESOLUTION_ERRORS bool "Verbose resolution errors" default n help - Enable if you are not satisfied with simplistic - "can't resolve 'hostname.com'" and want to know more. - This may increase size of your executable a bit. + Enable if you are not satisfied with simplistic + "can't resolve 'hostname.com'" and want to know more. + This may increase size of your executable a bit. config BUSYBOX_FEATURE_TLS_SHA1 bool "In TLS code, support ciphers which use deprecated SHA1" @@ -163,1028 +59,1140 @@ config BUSYBOX_FEATURE_TLS_SHA1 considered possibly insecure (although not yet definitely broken). config BUSYBOX_ARP - bool "arp" - default n + bool "arp (10 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Manipulate the system ARP cache. - + Manipulate the system ARP cache. config BUSYBOX_ARPING - bool "arping" - default n + bool "arping (9 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Ping hosts by ARP packets. - + Ping hosts by ARP packets. config BUSYBOX_BRCTL - bool "brctl" - depends on !BUSYBOX_DISABLE_BRCTL - default n + bool "brctl (4.7 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Manage ethernet bridges. - Supports addbr/delbr and addif/delif. + Manage ethernet bridges. + Supports addbr/delbr and addif/delif. config BUSYBOX_FEATURE_BRCTL_FANCY bool "Fancy options" default y depends on BUSYBOX_BRCTL help - Add support for extended option like: - setageing, setfd, sethello, setmaxage, - setpathcost, setportprio, setbridgeprio, - stp - This adds about 600 bytes. + Add support for extended option like: + setageing, setfd, sethello, setmaxage, + setpathcost, setportprio, setbridgeprio, + stp + This adds about 600 bytes. config BUSYBOX_FEATURE_BRCTL_SHOW - bool "Support show, showmac and showstp" + bool "Support show" default y depends on BUSYBOX_BRCTL && BUSYBOX_FEATURE_BRCTL_FANCY help - Add support for option which prints the current config: - showmacs, showstp, show - + Add support for option which prints the current config: + show config BUSYBOX_DNSD - bool "dnsd" - default n + bool "dnsd (9.8 kb)" + default y help - Small and static DNS server daemon. - + Small and static DNS server daemon. config BUSYBOX_ETHER_WAKE - bool "ether-wake" - depends on !BUSYBOX_DISABLE_ETHER_WAKE - default n + bool "ether-wake (4.9 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Send a magic packet to wake up sleeping machines. - -config BUSYBOX_FAKEIDENTD - bool "fakeidentd" - default n - select BUSYBOX_FEATURE_SYSLOG - help - fakeidentd listens on the ident port and returns a predefined - fake value on any query. - + Send a magic packet to wake up sleeping machines. config BUSYBOX_FTPD - bool "ftpd" - default n + bool "ftpd (30 kb)" + default y help - simple FTP daemon. You have to run it via inetd. + Simple FTP daemon. You have to run it via inetd. -config BUSYBOX_FEATURE_FTP_WRITE - bool "Enable upload commands" +config BUSYBOX_FEATURE_FTPD_WRITE + bool "Enable -w (upload commands)" default y depends on BUSYBOX_FTPD help - Enable all kinds of FTP upload commands (-w option) + Enable -w option. "ftpd -w" will accept upload commands + such as STOR, STOU, APPE, DELE, MKD, RMD, rename commands. config BUSYBOX_FEATURE_FTPD_ACCEPT_BROKEN_LIST bool "Enable workaround for RFC-violating clients" default y depends on BUSYBOX_FTPD help - Some ftp clients (among them KDE's Konqueror) issue illegal - "LIST -l" requests. This option works around such problems. - It might prevent you from listing files starting with "-" and - it increases the code size by ~40 bytes. - Most other ftp servers seem to behave similar to this. + Some ftp clients (among them KDE's Konqueror) issue illegal + "LIST -l" requests. This option works around such problems. + It might prevent you from listing files starting with "-" and + it increases the code size by ~40 bytes. + Most other ftp servers seem to behave similar to this. +config BUSYBOX_FEATURE_FTPD_AUTHENTICATION + bool "Enable authentication" + default y + depends on BUSYBOX_FTPD + help + Require login, and change to logged in user's UID:GID before + accessing any files. Option "-a USER" allows "anonymous" + logins (treats them as if USER logged in). + + If this option is not selected, ftpd runs with the rights + of the user it was started under, and does not require login. + Take care to not launch it under root. config BUSYBOX_FTPGET - bool "ftpget" - default n + bool "ftpget (7.8 kb)" + default y help - Retrieve a remote file via FTP. + Retrieve a remote file via FTP. config BUSYBOX_FTPPUT - bool "ftpput" - default n + bool "ftpput (7.5 kb)" + default y help - Store a remote file via FTP. + Store a remote file via FTP. config BUSYBOX_FEATURE_FTPGETPUT_LONG_OPTIONS bool "Enable long options in ftpget/ftpput" default y depends on BUSYBOX_LONG_OPTS && (BUSYBOX_FTPGET || BUSYBOX_FTPPUT) - help - Support long options for the ftpget/ftpput applet. - config BUSYBOX_HOSTNAME - bool "hostname" + bool "hostname (5.5 kb)" default y help - Show or set the system's host name. + Show or set the system's host name. config BUSYBOX_DNSDOMAINNAME - bool "dnsdomainname" - default n + bool "dnsdomainname (3.6 kb)" + default y help - Alias to "hostname -d". - + Alias to "hostname -d". config BUSYBOX_HTTPD - bool "httpd" - default n + bool "httpd (32 kb)" + default y help - Serve web pages via an HTTP server. + HTTP server. config BUSYBOX_FEATURE_HTTPD_RANGES bool "Support 'Ranges:' header" default y depends on BUSYBOX_HTTPD help - Makes httpd emit "Accept-Ranges: bytes" header and understand - "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted - downloads, seeking in multimedia players etc. - -config BUSYBOX_FEATURE_HTTPD_USE_SENDFILE - bool "Use sendfile system call" - default y - depends on BUSYBOX_HTTPD - help - When enabled, httpd will use the kernel sendfile() function - instead of read/write loop. + Makes httpd emit "Accept-Ranges: bytes" header and understand + "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted + downloads, seeking in multimedia players etc. config BUSYBOX_FEATURE_HTTPD_SETUID bool "Enable -u option" default y depends on BUSYBOX_HTTPD help - This option allows the server to run as a specific user - rather than defaulting to the user that starts the server. - Use of this option requires special privileges to change to a - different user. + This option allows the server to run as a specific user + rather than defaulting to the user that starts the server. + Use of this option requires special privileges to change to a + different user. config BUSYBOX_FEATURE_HTTPD_BASIC_AUTH - bool "Enable Basic http Authentication" + bool "Enable HTTP authentication" default y depends on BUSYBOX_HTTPD help - Utilizes password settings from /etc/httpd.conf for basic - authentication on a per url basis. - Example for httpd.conf file: - /adm:toor:PaSsWd + Utilizes password settings from /etc/httpd.conf for basic + authentication on a per url basis. + Example for httpd.conf file: + /adm:toor:PaSsWd config BUSYBOX_FEATURE_HTTPD_AUTH_MD5 - bool "Support MD5 crypted passwords for http Authentication" + bool "Support MD5-encrypted passwords in HTTP authentication" default y depends on BUSYBOX_FEATURE_HTTPD_BASIC_AUTH help - Enables encrypted passwords, and wildcard user/passwords - in httpd.conf file. - User '*' means 'any system user name is ok', - password of '*' means 'use system password for this user' - Examples: - /adm:toor:$1$P/eKnWXS$aI1aPGxT.dJD5SzqAKWrF0 - /adm:root:* - /wiki:*:* + Enables encrypted passwords, and wildcard user/passwords + in httpd.conf file. + User '*' means 'any system user name is ok', + password of '*' means 'use system password for this user' + Examples: + /adm:toor:$1$P/eKnWXS$aI1aPGxT.dJD5SzqAKWrF0 + /adm:root:* + /wiki:*:* config BUSYBOX_FEATURE_HTTPD_CGI bool "Support Common Gateway Interface (CGI)" default y depends on BUSYBOX_HTTPD help - This option allows scripts and executables to be invoked - when specific URLs are requested. + This option allows scripts and executables to be invoked + when specific URLs are requested. config BUSYBOX_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR - bool "Support for running scripts through an interpreter" + bool "Support running scripts through an interpreter" default y depends on BUSYBOX_FEATURE_HTTPD_CGI help - This option enables support for running scripts through an - interpreter. Turn this on if you want PHP scripts to work - properly. You need to supply an additional line in your - httpd.conf file: - *.php:/path/to/your/php + This option enables support for running scripts through an + interpreter. Turn this on if you want PHP scripts to work + properly. You need to supply an additional line in your + httpd.conf file: + *.php:/path/to/your/php config BUSYBOX_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV bool "Set REMOTE_PORT environment variable for CGI" default y depends on BUSYBOX_FEATURE_HTTPD_CGI help - Use of this option can assist scripts in generating - references that contain a unique port number. + Use of this option can assist scripts in generating + references that contain a unique port number. config BUSYBOX_FEATURE_HTTPD_ENCODE_URL_STR bool "Enable -e option (useful for CGIs written as shell scripts)" default y depends on BUSYBOX_HTTPD help - This option allows html encoding of arbitrary strings for display - by the browser. Output goes to stdout. - For example, httpd -e "" produces - "<Hello World>". + This option allows html encoding of arbitrary strings for display + by the browser. Output goes to stdout. + For example, httpd -e "" produces + "<Hello World>". config BUSYBOX_FEATURE_HTTPD_ERROR_PAGES - bool "Support for custom error pages" + bool "Support custom error pages" default y depends on BUSYBOX_HTTPD help - This option allows you to define custom error pages in - the configuration file instead of the default HTTP status - error pages. For instance, if you add the line: - E404:/path/e404.html - in the config file, the server will respond the specified - '/path/e404.html' file instead of the terse '404 NOT FOUND' - message. + This option allows you to define custom error pages in + the configuration file instead of the default HTTP status + error pages. For instance, if you add the line: + E404:/path/e404.html + in the config file, the server will respond the specified + '/path/e404.html' file instead of the terse '404 NOT FOUND' + message. config BUSYBOX_FEATURE_HTTPD_PROXY - bool "Support for reverse proxy" + bool "Support reverse proxy" default y depends on BUSYBOX_HTTPD help - This option allows you to define URLs that will be forwarded - to another HTTP server. To setup add the following line to the - configuration file - P:/url/:http://hostname[:port]/new/path/ - Then a request to /url/myfile will be forwarded to - http://hostname[:port]/new/path/myfile. + This option allows you to define URLs that will be forwarded + to another HTTP server. To setup add the following line to the + configuration file + P:/url/:http://hostname[:port]/new/path/ + Then a request to /url/myfile will be forwarded to + http://hostname[:port]/new/path/myfile. config BUSYBOX_FEATURE_HTTPD_GZIP - bool "Support for GZIP content encoding" + bool "Support GZIP content encoding" default y depends on BUSYBOX_HTTPD help - Makes httpd send files using GZIP content encoding if the - client supports it and a pre-compressed .gz exists. - + Makes httpd send files using GZIP content encoding if the + client supports it and a pre-compressed .gz exists. config BUSYBOX_IFCONFIG - bool "ifconfig" - default y if ADK_TARGET_WITH_NET + bool "ifconfig (12 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Ifconfig is used to configure the kernel-resident network interfaces. + Ifconfig is used to configure the kernel-resident network interfaces. config BUSYBOX_FEATURE_IFCONFIG_STATUS bool "Enable status reporting output (+7k)" default y depends on BUSYBOX_IFCONFIG help - If ifconfig is called with no arguments it will display the status - of the currently active interfaces. + If ifconfig is called with no arguments it will display the status + of the currently active interfaces. config BUSYBOX_FEATURE_IFCONFIG_SLIP bool "Enable slip-specific options \"keepalive\" and \"outfill\"" - default n + default y depends on BUSYBOX_IFCONFIG help - Allow "keepalive" and "outfill" support for SLIP. If you're not - planning on using serial lines, leave this unchecked. + Allow "keepalive" and "outfill" support for SLIP. If you're not + planning on using serial lines, leave this unchecked. config BUSYBOX_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ bool "Enable options \"mem_start\", \"io_addr\", and \"irq\"" - default n + default y depends on BUSYBOX_IFCONFIG help - Allow the start address for shared memory, start address for I/O, - and/or the interrupt line used by the specified device. + Allow the start address for shared memory, start address for I/O, + and/or the interrupt line used by the specified device. config BUSYBOX_FEATURE_IFCONFIG_HW bool "Enable option \"hw\" (ether only)" default y depends on BUSYBOX_IFCONFIG help - Set the hardware address of this interface, if the device driver - supports this operation. Currently, we only support the 'ether' - class. + Set the hardware address of this interface, if the device driver + supports this operation. Currently, we only support the 'ether' + class. config BUSYBOX_FEATURE_IFCONFIG_BROADCAST_PLUS bool "Set the broadcast automatically" default y depends on BUSYBOX_IFCONFIG help - Setting this will make ifconfig attempt to find the broadcast - automatically if the value '+' is used. - + Setting this will make ifconfig attempt to find the broadcast + automatically if the value '+' is used. config BUSYBOX_IFENSLAVE - bool "ifenslave" - select ADK_LINUX_KERNEL_BONDING m if ADK_TARGET_OS_LINUX - default n + bool "ifenslave (13 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Userspace application to bind several interfaces - to a logical interface (use with kernel bonding driver). - + Userspace application to bind several interfaces + to a logical interface (use with kernel bonding driver). config BUSYBOX_IFPLUGD - bool "ifplugd" - default n + bool "ifplugd (10 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Network interface plug detection daemon. - + Network interface plug detection daemon. config BUSYBOX_IFUP - bool "ifup" - default y if ADK_TARGET_WITH_NET - help - Activate the specified interfaces. This applet makes use - of either "ifconfig" and "route" or the "ip" command to actually - configure network interfaces. Therefore, you will probably also want - to enable either IFCONFIG and ROUTE, or enable - FEATURE_IFUPDOWN_IP and the various IP options. Of - course you could use non-busybox versions of these programs, so - against my better judgement (since this will surely result in plenty - of support questions on the mailing list), I do not force you to - enable these additional options. It is up to you to supply either - "ifconfig", "route" and "run-parts" or the "ip" command, either - via busybox or via standalone utilities. + bool "ifup (14 kb)" + default y + help + Activate the specified interfaces. This applet makes use + of either "ifconfig" and "route" or the "ip" command to actually + configure network interfaces. Therefore, you will probably also want + to enable either IFCONFIG and ROUTE, or enable + FEATURE_IFUPDOWN_IP and the various IP options. Of + course you could use non-busybox versions of these programs, so + against my better judgement (since this will surely result in plenty + of support questions on the mailing list), I do not force you to + enable these additional options. It is up to you to supply either + "ifconfig", "route" and "run-parts" or the "ip" command, either + via busybox or via standalone utilities. config BUSYBOX_IFDOWN - bool "ifdown" - default y if ADK_TARGET_WITH_NET + bool "ifdown (13 kb)" + default y help - Deactivate the specified interfaces. + Deactivate the specified interfaces. config BUSYBOX_IFUPDOWN_IFSTATE_PATH string "Absolute path to ifstate file" default "/var/run/ifstate" - depends on BUSYBOX_IFUP + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN help - ifupdown keeps state information in a file called ifstate. - Typically it is located in /var/run/ifstate, however - some distributions tend to put it in other places - (debian, for example, uses /etc/network/run/ifstate). - This config option defines location of ifstate. + ifupdown keeps state information in a file called ifstate. + Typically it is located in /var/run/ifstate, however + some distributions tend to put it in other places + (debian, for example, uses /etc/network/run/ifstate). + This config option defines location of ifstate. config BUSYBOX_FEATURE_IFUPDOWN_IP - bool "Use ip applet" + bool "Use ip tool (else ifconfig/route is used)" default y - depends on BUSYBOX_IFUP + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN help - Use the iproute "ip" command to implement "ifup" and "ifdown", rather - than the default of using the older 'ifconfig' and 'route' utilities. + Use the iproute "ip" command to implement "ifup" and "ifdown", rather + than the default of using the older "ifconfig" and "route" utilities. -config BUSYBOX_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN - bool "Use busybox ifconfig and route applets" - default n - depends on BUSYBOX_IFUP && !BUSYBOX_FEATURE_IFUPDOWN_IP - select BUSYBOX_IFCONFIG - select BUSYBOX_ROUTE - help - Use the busybox iproute "ifconfig" and "route" applets to - implement the "ifup" and "ifdown" utilities. + If Y: you must install either the full-blown iproute2 package + or enable "ip" applet in busybox, or the "ifup" and "ifdown" applets + will not work. - If left disabled, you must install the full-blown ifconfig - and route utilities, or the "ifup" and "ifdown" applets will not - work. + If N: you must install either the full-blown ifconfig and route + utilities, or enable these applets in busybox. config BUSYBOX_FEATURE_IFUPDOWN_IPV4 - bool "Support for IPv4" + bool "Support IPv4" default y - depends on BUSYBOX_IFUP + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN help - If you want ifup/ifdown to talk IPv4, leave this on. + If you want ifup/ifdown to talk IPv4, leave this on. config BUSYBOX_FEATURE_IFUPDOWN_IPV6 - bool "Support for IPv6" + bool "Support IPv6" default y - depends on BUSYBOX_IFUP && BUSYBOX_FEATURE_IPV6 + depends on (BUSYBOX_IFUP || BUSYBOX_IFDOWN) && BUSYBOX_FEATURE_IPV6 help - If you need support for IPv6, turn this option on. + If you need support for IPv6, turn this option on. -### UNUSED -###config FEATURE_IFUPDOWN_IPX -### bool "Support for IPX" -### default y -### depends on BUSYBOX_IFUPDOWN -### help -### If this option is selected you can use busybox to work with IPX -### networks. config BUSYBOX_FEATURE_IFUPDOWN_MAPPING bool "Enable mapping support" - default n - depends on BUSYBOX_IFUP + default y + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN help - This enables support for the "mapping" stanza, unless you have - a weird network setup you don't need it. + This enables support for the "mapping" stanza, unless you have + a weird network setup you don't need it. config BUSYBOX_FEATURE_IFUPDOWN_EXTERNAL_DHCP - bool "Support for external dhcp clients" + bool "Support external DHCP clients" default n - depends on BUSYBOX_IFUP + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN help - This enables support for the external dhcp clients. Clients are - tried in the following order: dhcpcd, dhclient, pump and udhcpc. - Otherwise, if udhcpc applet is enabled, it is used. - Otherwise, ifup/ifdown will have no support for DHCP. - + This enables support for the external dhcp clients. Clients are + tried in the following order: dhcpcd, dhclient, pump and udhcpc. + Otherwise, if udhcpc applet is enabled, it is used. + Otherwise, ifup/ifdown will have no support for DHCP. config BUSYBOX_INETD - bool "inetd" - default n + bool "inetd (18 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - Internet superserver daemon + Internet superserver daemon config BUSYBOX_FEATURE_INETD_SUPPORT_BUILTIN_ECHO - bool "Support echo service" + bool "Support echo service on port 7" default y depends on BUSYBOX_INETD help - Echo received data internal inetd service + Internal service which echoes data back. + Activated by configuration lines like these: + echo stream tcp nowait root internal + echo dgram udp wait root internal config BUSYBOX_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD - bool "Support discard service" + bool "Support discard service on port 8" default y depends on BUSYBOX_INETD help - Internet /dev/null internal inetd service + Internal service which discards all input. + Activated by configuration lines like these: + discard stream tcp nowait root internal + discard dgram udp wait root internal config BUSYBOX_FEATURE_INETD_SUPPORT_BUILTIN_TIME - bool "Support time service" + bool "Support time service on port 37" default y depends on BUSYBOX_INETD help - Return 32 bit time since 1900 internal inetd service + Internal service which returns big-endian 32-bit number + of seconds passed since 1900-01-01. The number wraps around + on overflow. + Activated by configuration lines like these: + time stream tcp nowait root internal + time dgram udp wait root internal config BUSYBOX_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME - bool "Support daytime service" + bool "Support daytime service on port 13" default y depends on BUSYBOX_INETD help - Return human-readable time internal inetd service + Internal service which returns human-readable time. + Activated by configuration lines like these: + daytime stream tcp nowait root internal + daytime dgram udp wait root internal config BUSYBOX_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN - bool "Support chargen service" + bool "Support chargen service on port 19" default y depends on BUSYBOX_INETD help - Familiar character generator internal inetd service + Internal service which generates endless stream + of all ASCII chars beetween space and char 126. + Activated by configuration lines like these: + chargen stream tcp nowait root internal + chargen dgram udp wait root internal config BUSYBOX_FEATURE_INETD_RPC bool "Support RPC services" - default n + default n # very rarely used, and needs Sun RPC support in libc depends on BUSYBOX_INETD - select BUSYBOX_FEATURE_HAVE_RPC help - Support Sun-RPC based services - + Support Sun-RPC based services config BUSYBOX_IP - bool "ip" - depends on !BUSYBOX_DISABLE_IP - default y if ADK_TARGET_WITH_NET + bool "ip (35 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + The "ip" applet is a TCP/BUSYBOX_IP interface configuration and routing + utility. + Short forms (enabled below) are busybox-specific extensions. + The standard "ip" utility does not provide them. If you are + trying to be portable, it's better to use "ip CMD" forms. + +config BUSYBOX_IPADDR + bool "ipaddr (14 kb)" + default y + select BUSYBOX_FEATURE_IP_ADDRESS + select BUSYBOX_PLATFORM_LINUX + help + Short form of "ip addr" + +config BUSYBOX_IPLINK + bool "iplink (17 kb)" + default y + select BUSYBOX_FEATURE_IP_LINK + select BUSYBOX_PLATFORM_LINUX + help + Short form of "ip link" + +config BUSYBOX_IPROUTE + bool "iproute (15 kb)" + default y + select BUSYBOX_FEATURE_IP_ROUTE + select BUSYBOX_PLATFORM_LINUX + help + Short form of "ip route" + +config BUSYBOX_IPTUNNEL + bool "iptunnel (9.6 kb)" + default y + select BUSYBOX_FEATURE_IP_TUNNEL select BUSYBOX_PLATFORM_LINUX help - The "ip" applet is a TCP/IP interface configuration and routing - utility. You generally don't need "ip" to use busybox with - TCP/IP. + Short form of "ip tunnel" + +config BUSYBOX_IPRULE + bool "iprule (10 kb)" + default y + select BUSYBOX_FEATURE_IP_RULE + select BUSYBOX_PLATFORM_LINUX + help + Short form of "ip rule" + +config BUSYBOX_IPNEIGH + bool "ipneigh (8.3 kb)" + default y + select BUSYBOX_FEATURE_IP_NEIGH + select BUSYBOX_PLATFORM_LINUX + help + Short form of "ip neigh" config BUSYBOX_FEATURE_IP_ADDRESS bool "ip address" default y - depends on BUSYBOX_IP + depends on BUSYBOX_IP || BUSYBOX_IPADDR help - Address manipulation support for the "ip" applet. + Address manipulation support for the "ip" applet. config BUSYBOX_FEATURE_IP_LINK bool "ip link" default y - depends on BUSYBOX_IP + depends on BUSYBOX_IP || BUSYBOX_IPLINK help - Configure network devices with "ip". + Configure network devices with "ip". config BUSYBOX_FEATURE_IP_ROUTE bool "ip route" default y - depends on BUSYBOX_IP + depends on BUSYBOX_IP || BUSYBOX_IPROUTE help - Add support for routing table management to "ip". + Add support for routing table management to "ip". config BUSYBOX_FEATURE_IP_ROUTE_DIR string "ip route configuration directory" default "/etc/iproute2" depends on BUSYBOX_FEATURE_IP_ROUTE help - Location of the "ip" applet routing configuration. + Location of the "ip" applet routing configuration. config BUSYBOX_FEATURE_IP_TUNNEL bool "ip tunnel" - default n - depends on BUSYBOX_IP + default y + depends on BUSYBOX_IP || BUSYBOX_IPTUNNEL help - Add support for tunneling commands to "ip". + Add support for tunneling commands to "ip". config BUSYBOX_FEATURE_IP_RULE bool "ip rule" - default n - depends on BUSYBOX_IP + default y + depends on BUSYBOX_IP || BUSYBOX_IPRULE help - Add support for rule commands to "ip". + Add support for rule commands to "ip". config BUSYBOX_FEATURE_IP_NEIGH bool "ip neighbor" - default n - depends on BUSYBOX_IP + default y + depends on BUSYBOX_IP || BUSYBOX_IPNEIGH help - Add support for neighbor commands to "ip". + Add support for neighbor commands to "ip". config BUSYBOX_FEATURE_IP_RARE_PROTOCOLS bool "Support displaying rarely used link types" default n - depends on BUSYBOX_IP + depends on BUSYBOX_IP || BUSYBOX_IPADDR || BUSYBOX_IPLINK || BUSYBOX_IPROUTE || BUSYBOX_IPTUNNEL || BUSYBOX_IPRULE || BUSYBOX_IPNEIGH help - If you are not going to use links of type "frad", "econet", - "bif" etc, you probably don't need to enable this. - Ethernet, wireless, infrared, ppp/slip, ip tunnelling - link types are supported without this option selected. - -config BUSYBOX_IPADDR - bool - default n - -config BUSYBOX_IPLINK - bool - default n - -config BUSYBOX_IPROUTE - bool - default n + If you are not going to use links of type "frad", "econet", + "bif" etc, you probably don't need to enable this. + Ethernet, wireless, infrared, ppp/slip, ip tunnelling + link types are supported without this option selected. +config BUSYBOX_IPCALC + bool "ipcalc (4.4 kb)" + default y + help + ipcalc takes an IP address and netmask and calculates the + resulting broadcast, network, and host range. -config BUSYBOX_IPTUNNEL - bool - default n +config BUSYBOX_FEATURE_IPCALC_LONG_OPTIONS + bool "Enable long options" + default y + depends on BUSYBOX_IPCALC && BUSYBOX_LONG_OPTS -config BUSYBOX_IPRULE - bool - default n +config BUSYBOX_FEATURE_IPCALC_FANCY + bool "Fancy IPCALC, more options, adds 1 kbyte" + default y + depends on BUSYBOX_IPCALC + help + Adds the options hostname, prefix and silent to the output of + "ipcalc". +config BUSYBOX_FAKEIDENTD + bool "fakeidentd (8.7 kb)" + default y + select BUSYBOX_FEATURE_SYSLOG + help + fakeidentd listens on the ident port and returns a predefined + fake value on any query. +config BUSYBOX_NAMEIF + bool "nameif (6.6 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + select BUSYBOX_FEATURE_SYSLOG + help + nameif is used to rename network interface by its MAC address. + Renamed interfaces MUST be in the down state. + It is possible to use a file (default: /etc/mactab) + with list of new interface names and MACs. + Maximum interface name length: IFNAMSIZ = 16 + File fields are separated by space or tab. + File format: + # Comment + new_interface_name XX:XX:XX:XX:XX:XX -config BUSYBOX_IPNEIGH - bool - default n +config BUSYBOX_FEATURE_NAMEIF_EXTENDED + bool "Extended nameif" + default y + depends on BUSYBOX_NAMEIF + help + This extends the nameif syntax to support the bus_info, driver, + phyaddr selectors. The syntax is compatible to the normal nameif. + File format: + new_interface_name driver=asix bus=usb-0000:00:08.2-3 + new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5 + new_interface_name phy_address=2 00:80:C8:38:91:B5 + new_interface_name mac=00:80:C8:38:91:B5 + new_interface_name 00:80:C8:38:91:B5 +config BUSYBOX_NBDCLIENT + bool "nbd-client (6 kb)" + default y + help + Network block device client +config BUSYBOX_NC + bool "nc (11 kb)" + default y + help + A simple Unix utility which reads and writes data across network + connections. -config BUSYBOX_IPCALC - bool "ipcalc" +config BUSYBOX_NETCAT + bool "netcat (11 kb)" default n help - ipcalc takes an IP address and netmask and calculates the - resulting broadcast, network, and host range. + Alias to nc. -config BUSYBOX_FEATURE_IPCALC_FANCY - bool "Fancy IPCALC, more options, adds 1 kbyte" +config BUSYBOX_NC_SERVER + bool "Netcat server options (-l)" default y - depends on BUSYBOX_IPCALC + depends on BUSYBOX_NC || BUSYBOX_NETCAT help - Adds the options hostname, prefix and silent to the output of - "ipcalc". + Allow netcat to act as a server. -config BUSYBOX_FEATURE_IPCALC_LONG_OPTIONS - bool "Enable long options" +config BUSYBOX_NC_EXTRA + bool "Netcat extensions (-eiw and -f FILE)" default y - depends on BUSYBOX_IPCALC && BUSYBOX_LONG_OPTS + depends on BUSYBOX_NC || BUSYBOX_NETCAT help - Support long options for the ipcalc applet. + Add -e (support for executing the rest of the command line after + making or receiving a successful connection), -i (delay interval for + lines sent), -w (timeout for initial connection). +config BUSYBOX_NC_110_COMPAT + bool "Netcat 1.10 compatibility (+2.5k)" + default y + depends on BUSYBOX_NC || BUSYBOX_NETCAT + help + This option makes nc closely follow original nc-1.10. + The code is about 2.5k bigger. It enables + -s ADDR, -n, -u, -v, -o FILE, -z options, but loses + busybox-specific extensions: -f FILE. config BUSYBOX_NETSTAT - bool "netstat" - default y if ADK_TARGET_WITH_NET + bool "netstat (10 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - netstat prints information about the Linux networking subsystem. + netstat prints information about the Linux networking subsystem. config BUSYBOX_FEATURE_NETSTAT_WIDE - bool "Enable wide netstat output" - default n + bool "Enable wide output" + default y depends on BUSYBOX_NETSTAT help - Add support for wide columns. Useful when displaying IPv6 addresses - (-W option). + Add support for wide columns. Useful when displaying IPv6 addresses + (-W option). config BUSYBOX_FEATURE_NETSTAT_PRG bool "Enable PID/Program name output" default y depends on BUSYBOX_NETSTAT help - Add support for -p flag to print out PID and program name. - +700 bytes of code. - + Add support for -p flag to print out PID and program name. + +700 bytes of code. config BUSYBOX_NSLOOKUP - bool "nslookup" - default y if ADK_TARGET_WITH_NET + bool "nslookup (9.7 kb)" + default y help - nslookup is a tool to query Internet name servers. + nslookup is a tool to query Internet name servers. config BUSYBOX_FEATURE_NSLOOKUP_BIG bool "Use internal resolver code instead of libc" depends on BUSYBOX_NSLOOKUP - default n + default y config BUSYBOX_FEATURE_NSLOOKUP_LONG_OPTIONS bool "Enable long options" - default n + default y depends on BUSYBOX_FEATURE_NSLOOKUP_BIG && BUSYBOX_LONG_OPTS - config BUSYBOX_NTPD - bool "ntpd" - depends on !BUSYBOX_DISABLE_NTPD - default n + bool "ntpd (22 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The NTP client/server daemon. + The NTP client/server daemon. config BUSYBOX_FEATURE_NTPD_SERVER bool "Make ntpd usable as a NTP server" - default n - depends on !BUSYBOX_DISABLE_NTPD + default y depends on BUSYBOX_NTPD help - Make ntpd usable as a NTP server. If you disable this option - ntpd will be usable only as a NTP client. + Make ntpd usable as a NTP server. If you disable this option + ntpd will be usable only as a NTP client. config BUSYBOX_FEATURE_NTPD_CONF bool "Make ntpd understand /etc/ntp.conf" - default n + default y depends on BUSYBOX_NTPD help - Make ntpd look in /etc/ntp.conf for peers. Only "server address" - is supported. + Make ntpd look in /etc/ntp.conf for peers. Only "server address" + is supported. -config BUSYBOX_PSCAN - bool "pscan" - default n +config BUSYBOX_FEATURE_NTP_AUTH + bool "Support md5/sha1 message authentication codes" + default y + depends on BUSYBOX_NTPD +config BUSYBOX_PING + bool "ping (10 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to + elicit an ICMP ECHO_RESPONSE from a host or gateway. + +config BUSYBOX_PING6 + bool "ping6 (11 kb)" + default y + depends on BUSYBOX_FEATURE_IPV6 help - Simple network port scanner. + Alias to "ping -6". +config BUSYBOX_FEATURE_FANCY_PING + bool "Enable fancy ping output" + default y + depends on BUSYBOX_PING || BUSYBOX_PING6 + help + With this option off, ping will say "HOST is alive!" + or terminate with SIGALRM in 5 seconds otherwise. + No command-line options will be recognized. +config BUSYBOX_PSCAN + bool "pscan (6 kb)" + default y + help + Simple network port scanner. config BUSYBOX_ROUTE - bool "route" - default y if ADK_TARGET_WITH_NET + bool "route (8.7 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Route displays or manipulates the kernel's IP routing tables. - + Route displays or manipulates the kernel's IP routing tables. config BUSYBOX_SLATTACH - bool "slattach" - default n + bool "slattach (6.2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - slattach is a small utility to attach network interfaces to serial - lines. - + slattach configures serial line as SLIP network interface. config BUSYBOX_SSL_CLIENT bool "ssl_client (25 kb)" - default n + default y select BUSYBOX_TLS help This tool pipes data to/from a socket, TLS-encrypting it. - config BUSYBOX_TC - bool "tc" - default n + bool "tc (8.3 kb)" + default y help - show / manipulate traffic control settings -# -#config FEATURE_TC_INGRESS -# def_bool n -# depends on BUSYBOX_TC + Show / manipulate traffic control settings +config BUSYBOX_FEATURE_TC_INGRESS + bool "Enable ingress" + default y + depends on BUSYBOX_TC config BUSYBOX_TCPSVD - bool "tcpsvd" - default n + bool "tcpsvd (14 kb)" + default y help - tcpsvd listens on a TCP port and runs a program for each new - connection. + tcpsvd listens on a TCP port and runs a program for each new + connection. +config BUSYBOX_UDPSVD + bool "udpsvd (13 kb)" + default y + help + udpsvd listens on an UDP port and runs a program for each new + connection. config BUSYBOX_TELNET - bool "telnet" - default y if ADK_TARGET_WITH_NET + bool "telnet (8.8 kb)" + default y help - Telnet is an interface to the TELNET protocol, but is also commonly - used to test other simple protocols. + Telnet is an interface to the TELNET protocol, but is also commonly + used to test other simple protocols. config BUSYBOX_FEATURE_TELNET_TTYPE bool "Pass TERM type to remote host" default y depends on BUSYBOX_TELNET help - Setting this option will forward the TERM environment variable to the - remote host you are connecting to. This is useful to make sure that - things like ANSI colors and other control sequences behave. + Setting this option will forward the TERM environment variable to the + remote host you are connecting to. This is useful to make sure that + things like ANSI colors and other control sequences behave. config BUSYBOX_FEATURE_TELNET_AUTOLOGIN bool "Pass USER type to remote host" default y depends on BUSYBOX_TELNET help - Setting this option will forward the USER environment variable to the - remote host you are connecting to. This is useful when you need to - log into a machine without telling the username (autologin). This - option enables `-a' and `-l USER' arguments. + Setting this option will forward the USER environment variable to the + remote host you are connecting to. This is useful when you need to + log into a machine without telling the username (autologin). This + option enables '-a' and '-l USER' options. config BUSYBOX_FEATURE_TELNET_WIDTH bool "Enable window size autodetection" default y depends on BUSYBOX_TELNET - config BUSYBOX_TELNETD - bool "telnetd" - default n + bool "telnetd (12 kb)" + default y select BUSYBOX_FEATURE_SYSLOG help - A daemon for the TELNET protocol, allowing you to log onto the host - running the daemon. Please keep in mind that the TELNET protocol - sends passwords in plain text. If you can't afford the space for an - SSH daemon and you trust your network, you may say 'y' here. As a - more secure alternative, you should seriously consider installing the - very small Dropbear SSH daemon instead: + A daemon for the TELNET protocol, allowing you to log onto the host + running the daemon. Please keep in mind that the TELNET protocol + sends passwords in plain text. If you can't afford the space for an + SSH daemon and you trust your network, you may say 'y' here. As a + more secure alternative, you should seriously consider installing the + very small Dropbear SSH daemon instead: http://matt.ucc.asn.au/dropbear/dropbear.html - Note that for busybox telnetd to work you need several things: - First of all, your kernel needs: - UNIX98_PTYS=y - DEVPTS_FS=y + Note that for busybox telnetd to work you need several things: + First of all, your kernel needs: + CONFIG_UNIX98_PTYS=y - Next, you need a /dev/pts directory on your root filesystem: + Next, you need a /dev/pts directory on your root filesystem: $ ls -ld /dev/pts drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/ - Next you need the pseudo terminal master multiplexer /dev/ptmx: + Next you need the pseudo terminal master multiplexer /dev/ptmx: $ ls -la /dev/ptmx crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx - Any /dev/ttyp[0-9]* files you may have can be removed. - Next, you need to mount the devpts filesystem on /dev/pts using: + Any /dev/ttyp[0-9]* files you may have can be removed. + Next, you need to mount the devpts filesystem on /dev/pts using: mount -t devpts devpts /dev/pts - You need to be sure that busybox has LOGIN and - FEATURE_SUID enabled. And finally, you should make - certain that Busybox has been installed setuid root: + You need to be sure that busybox has LOGIN and + FEATURE_SUID enabled. And finally, you should make + certain that busybox has been installed setuid root: chown root.root /bin/busybox chmod 4755 /bin/busybox - with all that done, telnetd _should_ work.... - + with all that done, telnetd _should_ work.... config BUSYBOX_FEATURE_TELNETD_STANDALONE bool "Support standalone telnetd (not inetd only)" default y depends on BUSYBOX_TELNETD help - Selecting this will make telnetd able to run standalone. + Selecting this will make telnetd able to run standalone. config BUSYBOX_FEATURE_TELNETD_INETD_WAIT bool "Support -w SEC option (inetd wait mode)" default y depends on BUSYBOX_FEATURE_TELNETD_STANDALONE help - This option allows you to run telnetd in "inet wait" mode. - Example inetd.conf line (note "wait", not usual "nowait"): - - telnet stream tcp wait root /bin/telnetd telnetd -w10 + This option allows you to run telnetd in "inet wait" mode. + Example inetd.conf line (note "wait", not usual "nowait"): - In this example, inetd passes _listening_ socket_ as fd 0 - to telnetd when connection appears. - telnetd will wait for connections until all existing - connections are closed, and no new connections - appear during 10 seconds. Then it exits, and inetd continues - to listen for new connections. + telnet stream tcp wait root /bin/telnetd telnetd -w10 - This option is rarely used. "tcp nowait" is much more usual - way of running tcp services, including telnetd. - You most probably want to say N here. + In this example, inetd passes _listening_ socket_ as fd 0 + to telnetd when connection appears. + telnetd will wait for connections until all existing + connections are closed, and no new connections + appear during 10 seconds. Then it exits, and inetd continues + to listen for new connections. + This option is rarely used. "tcp nowait" is much more usual + way of running tcp services, including telnetd. + You most probably want to say N here. config BUSYBOX_TFTP - bool "tftp" - default n + bool "tftp (11 kb)" + default y help - This enables the Trivial File Transfer Protocol client program. TFTP - is usually used for simple, small transfers such as a root image - for a network-enabled bootloader. + Trivial File Transfer Protocol client. TFTP is usually used + for simple, small transfers such as a root image + for a network-enabled bootloader. + +config BUSYBOX_FEATURE_TFTP_PROGRESS_BAR + bool "Enable progress bar" + default y + depends on BUSYBOX_TFTP + +config BUSYBOX_FEATURE_TFTP_HPA_COMPAT + bool "tftp-hpa compat (support -c get/put FILE)" + default y + depends on BUSYBOX_TFTP config BUSYBOX_TFTPD - bool "tftpd" - default n + bool "tftpd (10 kb)" + default y help - This enables the Trivial File Transfer Protocol server program. - It expects that stdin is a datagram socket and a packet - is already pending on it. It will exit after one transfer. - In other words: it should be run from inetd in nowait mode, - or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR" - -comment "Common options for tftp/tftpd" - depends on BUSYBOX_TFTP || BUSYBOX_TFTPD + Trivial File Transfer Protocol server. + It expects that stdin is a datagram socket and a packet + is already pending on it. It will exit after one transfer. + In other words: it should be run from inetd in nowait mode, + or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR" config BUSYBOX_FEATURE_TFTP_GET bool "Enable 'tftp get' and/or tftpd upload code" default y depends on BUSYBOX_TFTP || BUSYBOX_TFTPD help - Add support for the GET command within the TFTP client. This allows - a client to retrieve a file from a TFTP server. - Also enable upload support in tftpd, if tftpd is selected. + Add support for the GET command within the TFTP client. This allows + a client to retrieve a file from a TFTP server. + Also enable upload support in tftpd, if tftpd is selected. - Note: this option does _not_ make tftpd capable of download - (the usual operation people need from it)! + Note: this option does _not_ make tftpd capable of download + (the usual operation people need from it)! config BUSYBOX_FEATURE_TFTP_PUT bool "Enable 'tftp put' and/or tftpd download code" default y depends on BUSYBOX_TFTP || BUSYBOX_TFTPD help - Add support for the PUT command within the TFTP client. This allows - a client to transfer a file to a TFTP server. - Also enable download support in tftpd, if tftpd is selected. + Add support for the PUT command within the TFTP client. This allows + a client to transfer a file to a TFTP server. + Also enable download support in tftpd, if tftpd is selected. config BUSYBOX_FEATURE_TFTP_BLOCKSIZE bool "Enable 'blksize' and 'tsize' protocol options" default y depends on BUSYBOX_TFTP || BUSYBOX_TFTPD help - Allow tftp to specify block size, and tftpd to understand - "blksize" and "tsize" options. - -config BUSYBOX_FEATURE_TFTP_PROGRESS_BAR - bool "Enable tftp progress meter" - default y - depends on BUSYBOX_TFTP && BUSYBOX_FEATURE_TFTP_BLOCKSIZE - help - Show progress bar. + Allow tftp to specify block size, and tftpd to understand + "blksize" and "tsize" options. config BUSYBOX_TFTP_DEBUG bool "Enable debug" default n depends on BUSYBOX_TFTP || BUSYBOX_TFTPD help - Make tftp[d] print debugging messages on stderr. - This is useful if you are diagnosing a bug in tftp[d]. - + Make tftp[d] print debugging messages on stderr. + This is useful if you are diagnosing a bug in tftp[d]. config BUSYBOX_TLS bool #No description makes it a hidden option default n - config BUSYBOX_TRACEROUTE - bool "traceroute" - default n + bool "traceroute (11 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Utility to trace the route of IP packets. + Utility to trace the route of IP packets. config BUSYBOX_TRACEROUTE6 - bool "traceroute6" - default n - depends on BUSYBOX_FEATURE_IPV6 && BUSYBOX_TRACEROUTE + bool "traceroute6 (13 kb)" + default y + depends on BUSYBOX_FEATURE_IPV6 help - Utility to trace the route of IPv6 packets. + Utility to trace the route of IPv6 packets. config BUSYBOX_FEATURE_TRACEROUTE_VERBOSE bool "Enable verbose output" default y - depends on BUSYBOX_TRACEROUTE + depends on BUSYBOX_TRACEROUTE || BUSYBOX_TRACEROUTE6 help - Add some verbosity to traceroute. This includes among other things - hostnames and ICMP response types. - -config BUSYBOX_FEATURE_TRACEROUTE_SOURCE_ROUTE - bool "Enable loose source route" - default n - depends on BUSYBOX_TRACEROUTE - help - Add option to specify a loose source route gateway - (8 maximum). + Add some verbosity to traceroute. This includes among other things + hostnames and ICMP response types. config BUSYBOX_FEATURE_TRACEROUTE_USE_ICMP - bool "Use ICMP instead of UDP" - default n - depends on BUSYBOX_TRACEROUTE - help - Add option -I to use ICMP ECHO instead of UDP datagrams. - + bool "Enable -I option (use ICMP instead of UDP)" + default y + depends on BUSYBOX_TRACEROUTE || BUSYBOX_TRACEROUTE6 config BUSYBOX_TUNCTL - bool "tunctl" - default n + bool "tunctl (6.2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - tunctl creates or deletes tun devices. + tunctl creates or deletes tun devices. config BUSYBOX_FEATURE_TUNCTL_UG bool "Support owner:group assignment" default y depends on BUSYBOX_TUNCTL help - Allow to specify owner and group of newly created interface. - 340 bytes of pure bloat. Say no here. - -source package/busybox/config/networking/udhcp/Config.in - -config BUSYBOX_IFUPDOWN_UDHCPC_CMD_OPTIONS - string "ifup udhcpc command line options" - default "-R" if BUSYBOX_NOMMU - default "-R -b" - depends on BUSYBOX_IFUP && BUSYBOX_UDHCPC - help - Command line options to pass to udhcpc from ifup. - Intended to alter options not available in /etc/network/interfaces. - (IE: --syslog --background etc...) - -config BUSYBOX_UDPSVD - bool "udpsvd" - default n - help - udpsvd listens on an UDP port and runs a program for each new - connection. - + Allow to specify owner and group of newly created interface. + 340 bytes of pure bloat. Say no here. config BUSYBOX_VCONFIG - bool "vconfig" - default n + bool "vconfig (2.3 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Creates, removes, and configures VLAN interfaces - + Creates, removes, and configures VLAN interfaces config BUSYBOX_WGET - bool "wget" - depends on !BUSYBOX_DISABLE_WGET - default n + bool "wget (38 kb)" + default y help - wget is a utility for non-interactive download of files from HTTP, - HTTPS, and FTP servers. + wget is a utility for non-interactive download of files from HTTP + and FTP servers. + +config BUSYBOX_FEATURE_WGET_LONG_OPTIONS + bool "Enable long options" + default y + depends on BUSYBOX_WGET && BUSYBOX_LONG_OPTS config BUSYBOX_FEATURE_WGET_STATUSBAR - bool "Enable a nifty process meter (+2k)" - default n + bool "Enable progress bar (+2k)" + default y depends on BUSYBOX_WGET - help - Enable the transfer progress bar for wget transfers. config BUSYBOX_FEATURE_WGET_AUTHENTICATION bool "Enable HTTP authentication" default y depends on BUSYBOX_WGET help - Support authenticated HTTP transfers. + Support authenticated HTTP transfers. -config BUSYBOX_FEATURE_WGET_LONG_OPTIONS - bool "Enable long options" +config BUSYBOX_FEATURE_WGET_TIMEOUT + bool "Enable timeout option -T SEC" default y - depends on BUSYBOX_WGET && BUSYBOX_LONG_OPTS + depends on BUSYBOX_WGET help - Support long options for the wget applet. + Supports network read and connect timeouts for wget, + so that wget will give up and timeout, through the -T + command line option. -config BUSYBOX_FEATURE_WGET_TIMEOUT - bool "Enable read timeout option -T SEC" + Currently only connect and network data read timeout are + supported (i.e., timeout is not applied to the DNS query). When + FEATURE_WGET_LONG_OPTIONS is also enabled, the --timeout option + will work in addition to -T. + +config BUSYBOX_FEATURE_WGET_HTTPS + bool "Support HTTPS using internal TLS code" default y depends on BUSYBOX_WGET + select BUSYBOX_TLS help - Supports network read timeout for wget, so that wget will give - up and timeout when reading network data, through the -T command - line option. Currently only network data read timeout is - supported (i.e., timeout is not applied to the DNS nor TCP - connection initialization). When FEATURE_WGET_LONG_OPTIONS is - also enabled, the --timeout option will work in addition to -T. + wget will use internal TLS code to connect to https:// URLs. + Note: + On NOMMU machines, ssl_helper applet should be available + in the $PATH for this to work. Make sure to select that applet. + + Note: currently, TLS code only makes TLS I/O work, it + does *not* check that the peer is who it claims to be, etc. + IOW: it uses peer-supplied public keys to establish encryption + and signing keys, then encrypts and signs outgoing data and + decrypts incoming data. + It does not check signature hashes on the incoming data: + this means that attackers manipulating TCP packets can + send altered data and we unknowingly receive garbage. + (This check might be relatively easy to add). + It does not check public key's certificate: + this means that the peer may be an attacker impersonating + the server we think we are talking to. + + If you think this is unacceptable, consider this. As more and more + servers switch to HTTPS-only operation, without such "crippled" + TLS code it is *impossible* to simply download a kernel source + from kernel.org. Which can in real world translate into + "my small automatic tooling to build cross-compilers from sources + no longer works, I need to additionally keep a local copy + of ~4 megabyte source tarball of a SSL library and ~2 megabyte + source of wget, need to compile and built both before I can + download anything. All this despite the fact that the build + is done in a QEMU sandbox on a machine with absolutely nothing + worth stealing, so I don't care if someone would go to a lot + of trouble to intercept my HTTPS download to send me an altered + kernel tarball". + + If you still think this is unacceptable, send patches. + + If you still think this is unacceptable, do not want to send + patches, but do want to waste bandwidth expaining how wrong + it is, you will be ignored. + + FEATURE_WGET_OPENSSL does implement TLS verification + using the certificates available to OpenSSL. config BUSYBOX_FEATURE_WGET_OPENSSL bool "Try to connect to HTTPS using openssl" - default n + default y depends on BUSYBOX_WGET help - Choose how wget establishes SSL connection for https:// URLs. - - Busybox itself contains no SSL code. wget will spawn - a helper program to talk over HTTPS. - - OpenSSL has a simple SSL client for debug purposes. - If you select "openssl" helper, wget will effectively call - "openssl s_client -quiet -connect IP:443 2>/dev/null" - and pipe its data through it. - Note inconvenient API: host resolution is done twice, - and there is no guarantee openssl's idea of IPv6 address - format is the same as ours. - Another problem is that s_client prints debug information - to stderr, and it needs to be suppressed. This means - all error messages get suppressed too. - openssl is also a big binary, often dynamically linked - against ~15 libraries. - -config BUSYBOX_FEATURE_WGET_SSL_HELPER - bool "Try to connect to HTTPS using ssl_helper" - default n - depends on BUSYBOX_WGET + Try to use openssl to handle HTTPS. + + OpenSSL has a simple SSL client for debug purposes. + If you select this option, wget will effectively run: + "openssl s_client -quiet -connect hostname:443 + -servername hostname 2>/dev/null" and pipe its data + through it. -servername is not used if hostname is numeric. + Note inconvenient API: host resolution is done twice, + and there is no guarantee openssl's idea of IPv6 address + format is the same as ours. + Another problem is that s_client prints debug information + to stderr, and it needs to be suppressed. This means + all error messages get suppressed too. + openssl is also a big binary, often dynamically linked + against ~15 libraries. + + If openssl can't be executed, internal TLS code will be used + (if you enabled it); if openssl can be executed but fails later, + wget can't detect this, and download will fail. + + By default BUSYBOX_TLS verification is performed, unless + --no-check-certificate option is passed. +config BUSYBOX_WHOIS + bool "whois (6.3 kb)" + default y help - Choose how wget establishes SSL connection for https:// URLs. - - Busybox itself contains no SSL code. wget will spawn - a helper program to talk over HTTPS. - - ssl_helper is a tool which can be built statically - from busybox sources against a small embedded SSL library. - Please see networking/ssl_helper/README. - It does not require double host resolution and emits - error messages to stderr. - - Precompiled static binary may be available at - http://busybox.net/downloads/binaries/ - + whois is a client for the whois directory service config BUSYBOX_ZCIP - bool "zcip" - default n + bool "zcip (8.4 kb)" + default y select BUSYBOX_PLATFORM_LINUX select BUSYBOX_FEATURE_SYSLOG help - ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. - It's a daemon that allocates and defends a dynamically assigned - address on the 169.254/16 network, requiring no system administrator. + BUSYBOX_ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. + It's a daemon that allocates and defends a dynamically assigned + address on the 169.254/16 network, requiring no system administrator. + + See http://www.zeroconf.org for further details, and "zcip.script" + in the busybox examples. - See http://www.zeroconf.org for further details, and "zcip.script" - in the busybox examples. +source package/busybox/config/networking/udhcp/Config.in + +config BUSYBOX_IFUPDOWN_UDHCPC_CMD_OPTIONS + string "ifup udhcpc command line options" + default "-R -n" + depends on BUSYBOX_IFUP || BUSYBOX_IFDOWN + help + Command line options to pass to udhcpc from ifup. + Intended to alter options not available in /etc/network/interfaces. + (IE: --syslog --background etc...) endmenu diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in index 02e56c3ef..9edb9a214 100644 --- a/package/busybox/config/networking/udhcp/Config.in +++ b/package/busybox/config/networking/udhcp/Config.in @@ -1,148 +1,168 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # -config BUSYBOX_UDHCPC6 - bool "udhcp client for DHCPv6 (udhcpc6)" - default n # not yet ready - help - udhcpc6 is a DHCPv6 client - config BUSYBOX_UDHCPD - bool "udhcp server (udhcpd)" - default n + bool "udhcpd (21 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - udhcpd is a DHCP server geared primarily toward embedded systems, - while striving to be fully functional and RFC compliant. + udhcpd is a DHCP server geared primarily toward embedded systems, + while striving to be fully functional and RFC compliant. -config BUSYBOX_DHCPRELAY - bool "dhcprelay" +config BUSYBOX_FEATURE_UDHCPD_BASE_IP_ON_MAC + bool "Select IP address based on client MAC" default n + depends on BUSYBOX_UDHCPD help - dhcprelay listens for dhcp requests on one or more interfaces - and forwards these requests to a different interface or dhcp - server. + If selected, udhcpd will base its selection of BUSYBOX_IP address to offer + on the client's hardware address. Otherwise udhcpd uses the next + consecutive free address. -config BUSYBOX_DUMPLEASES - bool "Lease display utility (dumpleases)" - default n - help - dumpleases displays the leases written out by the udhcpd server. - Lease times are stored in the file by time remaining in lease, or - by the absolute time that it expires in seconds from epoch. + This reduces the frequency of IP address changes for clients + which let their lease expire, and makes consecutive DHCPOFFERS + for the same client to (almost always) contain the same + IP address. config BUSYBOX_FEATURE_UDHCPD_WRITE_LEASES_EARLY - bool "Rewrite the lease file at every new acknowledge" + bool "Rewrite lease file at every new acknowledge" default y depends on BUSYBOX_UDHCPD help - If selected, udhcpd will write a new file with leases every - time a new lease has been accepted, thus eliminating the need - to send SIGUSR1 for the initial writing or updating. Any timed - rewriting remains undisturbed. - -config BUSYBOX_FEATURE_UDHCPD_BASE_IP_ON_MAC - bool "Select IP address based on client MAC" - default n - depends on BUSYBOX_UDHCPD - help - If selected, udhcpd will base its selection of IP address to offer - on the client's hardware address. Otherwise udhcpd uses the next - consecutive free address. - - This reduces the frequency of IP address changes for clients - which let their lease expire, and makes consecutive DHCPOFFERS - for the same client to (almost always) contain the same - IP address. + If selected, udhcpd will write a new file with leases every + time a new lease has been accepted, thus eliminating the need + to send SIGUSR1 for the initial writing or updating. Any timed + rewriting remains undisturbed. config BUSYBOX_DHCPD_LEASES_FILE string "Absolute path to lease file" default "/var/lib/misc/udhcpd.leases" depends on BUSYBOX_UDHCPD help - udhcpd stores addresses in a lease file. This is the absolute path - of the file. Normally it is safe to leave it untouched. + udhcpd stores addresses in a lease file. This is the absolute path + of the file. Normally it is safe to leave it untouched. + +config BUSYBOX_DUMPLEASES + bool "dumpleases (5.1 kb)" + default y + help + dumpleases displays the leases written out by the udhcpd. + Lease times are stored in the file by time remaining in lease, or + by the absolute time that it expires in seconds from epoch. + +config BUSYBOX_DHCPRELAY + bool "dhcprelay (5.2 kb)" + default y + help + dhcprelay listens for DHCP requests on one or more interfaces + and forwards these requests to a different interface or DHCP + server. config BUSYBOX_UDHCPC - bool "udhcp client (udhcpc)" + bool "udhcpc (24 kb)" default y select BUSYBOX_PLATFORM_LINUX help - udhcpc is a DHCP client geared primarily toward embedded systems, - while striving to be fully functional and RFC compliant. + udhcpc is a DHCP client geared primarily toward embedded systems, + while striving to be fully functional and RFC compliant. - The udhcp client negotiates a lease with the DHCP server and - runs a script when a lease is obtained or lost. + The udhcp client negotiates a lease with the DHCP server and + runs a script when a lease is obtained or lost. config BUSYBOX_FEATURE_UDHCPC_ARPING bool "Verify that the offered address is free, using ARP ping" default y depends on BUSYBOX_UDHCPC help - If selected, udhcpc will send ARP probes and make sure - the offered address is really not in use by anyone. The client - will DHCPDECLINE the offer if the address is in use, - and restart the discover process. + If selected, udhcpc will send BUSYBOX_ARP probes and make sure + the offered address is really not in use by anyone. The client + will DHCPDECLINE the offer if the address is in use, + and restart the discover process. config BUSYBOX_FEATURE_UDHCPC_SANITIZEOPT bool "Do not pass malformed host and domain names" default y depends on BUSYBOX_UDHCPC help - If selected, udhcpc will check some options (such as option 12 - - hostname) and if they don't look like valid hostnames - (for example, if they start with dash or contain spaces), - they will be replaced with string "bad" when exporting - to the environment. + If selected, udhcpc will check some options (such as option 12 - + hostname) and if they don't look like valid hostnames + (for example, if they start with dash or contain spaces), + they will be replaced with string "bad" when exporting + to the environment. -config BUSYBOX_FEATURE_UDHCP_PORT - bool "Enable '-P port' option for udhcpd and udhcpc" - default n - depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC +config BUSYBOX_UDHCPC_DEFAULT_SCRIPT + string "Absolute path to config script" + default "/usr/share/udhcpc/default.script" + depends on BUSYBOX_UDHCPC || BUSYBOX_UDHCPC6 help - At the cost of ~300 bytes, enables -P port option. - This feature is typically not needed. + This script is called after udhcpc receives an answer. See + examples/udhcp for a working example. Normally it is safe + to leave this untouched. -config BUSYBOX_UDHCP_DEBUG - int "Maximum verbosity level for udhcp applets (0..9)" - default 0 - range 0 9 - depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC || BUSYBOX_DHCPRELAY +# udhcpc6 config is inserted here: +config BUSYBOX_UDHCPC6 + bool "udhcpc6 (21 kb)" + default y + depends on BUSYBOX_FEATURE_IPV6 help - Verbosity can be increased with multiple -v options. - This option controls how high it can be cranked up. + udhcpc6 is a DHCPv6 client - Bigger values result in bigger code. Levels above 1 - are very verbose and useful for debugging only. +config BUSYBOX_FEATURE_UDHCPC6_RFC3646 + bool "Support RFC 3646 (DNS server and search list)" + default y + depends on BUSYBOX_UDHCPC6 + help + List of DNS servers and domain search list can be requested with + "-O dns" and "-O search". If server gives these values, + they will be set in environment variables "dns" and "search". -config BUSYBOX_FEATURE_UDHCP_RFC3397 - bool "Support for RFC3397 domain search (experimental)" +config BUSYBOX_FEATURE_UDHCPC6_RFC4704 + bool "Support RFC 4704 (Client FQDN)" default y - depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC + depends on BUSYBOX_UDHCPC6 help - If selected, both client and server will support passing of domain - search lists via option 119, specified in RFC 3397, - and SIP servers option 120, specified in RFC 3361. + You can request FQDN to be given by server using "-O fqdn". -config BUSYBOX_FEATURE_UDHCP_8021Q - bool "Support for 802.1Q VLAN parameters" +config BUSYBOX_FEATURE_UDHCPC6_RFC4833 + bool "Support RFC 4833 (Timezones)" default y - depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC + depends on BUSYBOX_UDHCPC6 help - If selected, both client and server will support passing of VLAN - ID and priority via options 132 and 133 as per 802.1Q. + You can request POSIX timezone with "-O tz" and timezone name + with "-O timezone". -config BUSYBOX_UDHCPC_DEFAULT_SCRIPT - string "Absolute path to config script" - default "/usr/share/udhcpc/default.script" - depends on BUSYBOX_UDHCPC +config BUSYBOX_FEATURE_UDHCPC6_RFC5970 + bool "Support RFC 5970 (Network Boot)" + default y + depends on BUSYBOX_UDHCPC6 + help + You can request bootfile-url with "-O bootfile_url" and + bootfile-params with "-O bootfile_params". + +comment "Common options for DHCP applets" + depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC || BUSYBOX_UDHCPC6 || BUSYBOX_DHCPRELAY + +config BUSYBOX_FEATURE_UDHCP_PORT + bool "Enable '-P port' option for udhcpd and udhcpc" + default n + depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC || BUSYBOX_UDHCPC6 help - This script is called after udhcpc receives an answer. See - examples/udhcp for a working example. Normally it is safe - to leave this untouched. + At the cost of ~300 bytes, enables -P port option. + This feature is typically not needed. + +config BUSYBOX_UDHCP_DEBUG + int "Maximum verbosity level (0..9)" + default 2 + range 0 9 + depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC || BUSYBOX_UDHCPC6 || BUSYBOX_DHCPRELAY + help + Verbosity can be increased with multiple -v options. + This option controls how high it can be cranked up. + + Bigger values result in bigger code. Levels above 1 + are very verbose and useful for debugging only. config BUSYBOX_UDHCPC_SLACK_FOR_BUGGY_SERVERS int "DHCP options slack buffer size" @@ -150,19 +170,36 @@ config BUSYBOX_UDHCPC_SLACK_FOR_BUGGY_SERVERS range 0 924 depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC help - Some buggy DHCP servers send DHCP offer packets with option - field larger than we expect (which might also be considered a - buffer overflow attempt). These packets are normally discarded. - If circumstances beyond your control force you to support such - servers, this may help. The upper limit (924) makes dhcpc accept - even 1500 byte packets (maximum-sized ethernet packets). - - This option does not make dhcp[cd] emit non-standard - sized packets. - - Known buggy DHCP servers: - 3Com OfficeConnect Remote 812 ADSL Router: - seems to confuse maximum allowed UDP packet size with - maximum size of entire IP packet, and sends packets which are - 28 bytes too large. - Seednet (ISP) VDSL: sends packets 2 bytes too large. + Some buggy DHCP servers send DHCP offer packets with option + field larger than we expect (which might also be considered a + buffer overflow attempt). These packets are normally discarded. + If circumstances beyond your control force you to support such + servers, this may help. The upper limit (924) makes udhcpc accept + even 1500 byte packets (maximum-sized ethernet packets). + + This option does not make udhcp[cd] emit non-standard + sized packets. + + Known buggy DHCP servers: + 3Com OfficeConnect Remote 812 ADSL Router: + seems to confuse maximum allowed UDP packet size with + maximum size of entire IP packet, and sends packets + which are 28 bytes too large. + Seednet (ISP) VDSL: sends packets 2 bytes too large. + +config BUSYBOX_FEATURE_UDHCP_RFC3397 + bool "Support RFC 3397 domain search options" + default y + depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC + help + If selected, both client and server will support passing of domain + search lists via option 119, specified in RFC 3397, + and SIP servers option 120, specified in RFC 3361. + +config BUSYBOX_FEATURE_UDHCP_8021Q + bool "Support 802.1Q VLAN parameters options" + default y + depends on BUSYBOX_UDHCPD || BUSYBOX_UDHCPC + help + If selected, both client and server will support passing of VLAN + ID and priority via options 132 and 133 as per 802.1Q. diff --git a/package/busybox/config/printutils/Config.in b/package/busybox/config/printutils/Config.in index b5dd69e39..2f3d8a680 100644 --- a/package/busybox/config/printutils/Config.in +++ b/package/busybox/config/printutils/Config.in @@ -1,28 +1,26 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Print Utilities" - config BUSYBOX_LPD - bool "lpd" - default n + bool "lpd (5.5 kb)" + default y help - lpd is a print spooling daemon. - + lpd is a print spooling daemon. config BUSYBOX_LPR - bool "lpr" - default n + bool "lpr (9.9 kb)" + default y help - lpr sends files (or standard input) to a print spooling daemon. + lpr sends files (or standard input) to a print spooling daemon. config BUSYBOX_LPQ - bool "lpq" - default n + bool "lpq (9.9 kb)" + default y help - lpq is a print spool queue examination and manipulation program. + lpq is a print spool queue examination and manipulation program. endmenu diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in index 052b77e41..dfd4e2c14 100644 --- a/package/busybox/config/procps/Config.in +++ b/package/busybox/config/procps/Config.in @@ -1,223 +1,190 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Process Utilities" -config BUSYBOX_IOSTAT - bool "iostat" - default n - help - Report CPU and I/O statistics - -config BUSYBOX_LSOF - bool "lsof" - default n - help - Show open files in the format of: - PID /path/to/executable /path/to/opened/file - -config BUSYBOX_MPSTAT - bool "mpstat" - default n - help - Per-processor statistics - -config BUSYBOX_NMETER - bool "nmeter" - default n - help - Prints selected system stats continuously, one line per update. - -config BUSYBOX_PMAP - bool "pmap" - default n - help - Display processes' memory mappings. - -config BUSYBOX_POWERTOP - bool "powertop" - default n - help - Analyze power consumption on Intel-based laptops - -config BUSYBOX_PSTREE - bool "pstree" - default n - help - Display a tree of processes. - -config BUSYBOX_PWDX - bool "pwdx" - default n - help - Report current working directory of a process - -config BUSYBOX_SMEMCAP - bool "smemcap" - default n - help - smemcap is a tool for capturing process data for smem, - a memory usage statistic tool. - -config BUSYBOX_UPTIME - bool "uptime" - default y - select BUSYBOX_PLATFORM_LINUX #sysinfo() - help - uptime gives a one line display of the current time, how long - the system has been running, how many users are currently logged - on, and the system load averages for the past 1, 5, and 15 minutes. - -config BUSYBOX_FEATURE_UPTIME_UTMP_SUPPORT - bool "Support for showing the number of users" - default n - depends on BUSYBOX_UPTIME && BUSYBOX_FEATURE_UTMP - help - Makes uptime display the number of users currently logged on. - config BUSYBOX_FREE - bool "free" - default n + bool "free (3.1 kb)" + default y select BUSYBOX_PLATFORM_LINUX #sysinfo() help - free displays the total amount of free and used physical and swap - memory in the system, as well as the buffers used by the kernel. - The shared memory column should be ignored; it is obsolete. - + free displays the total amount of free and used physical and swap + memory in the system, as well as the buffers used by the kernel. + The shared memory column should be ignored; it is obsolete. config BUSYBOX_FUSER - bool "fuser" - default n + bool "fuser (7 kb)" + default y help - fuser lists all PIDs (Process IDs) that currently have a given - file open. fuser can also list all PIDs that have a given network - (TCP or UDP) port open. - + fuser lists all PIDs (Process IDs) that currently have a given + file open. fuser can also list all PIDs that have a given network + (TCP or UDP) port open. +config BUSYBOX_IOSTAT + bool "iostat (7.6 kb)" + default y + help + Report CPU and I/O statistics config BUSYBOX_KILL - bool "kill" + bool "kill (3.1 kb)" default y help - The command kill sends the specified signal to the specified - process or process group. If no signal is specified, the TERM - signal is sent. + The command kill sends the specified signal to the specified + process or process group. If no signal is specified, the TERM + signal is sent. config BUSYBOX_KILLALL - bool "killall" - default n - depends on BUSYBOX_KILL + bool "killall (5.6 kb)" + default y help - killall sends a signal to all processes running any of the - specified commands. If no signal name is specified, SIGTERM is - sent. + killall sends a signal to all processes running any of the + specified commands. If no signal name is specified, SIGTERM is + sent. config BUSYBOX_KILLALL5 - bool "killall5" + bool "killall5 (5.3 kb)" default y - depends on BUSYBOX_KILL - + help + The SystemV killall command. killall5 sends a signal + to all processes except kernel threads and the processes + in its own session, so it won't kill the shell that is running + the script it was called from. +config BUSYBOX_LSOF + bool "lsof (3.4 kb)" + default y + help + Show open files in the format of: + PID /path/to/executable /path/to/opened/file +config BUSYBOX_MPSTAT + bool "mpstat (9.8 kb)" + default y + help + Per-processor statistics +config BUSYBOX_NMETER + bool "nmeter (11 kb)" + default y + help + Prints selected system stats continuously, one line per update. config BUSYBOX_PGREP - bool "pgrep" + bool "pgrep (6.5 kb)" default y help - Look for processes by name. + Look for processes by name. +config BUSYBOX_PKILL + bool "pkill (7.5 kb)" + default y + help + Send signals to processes by name. config BUSYBOX_PIDOF - bool "pidof" - default n + bool "pidof (6.3 kb)" + default y help - Pidof finds the process id's (pids) of the named programs. It prints - those id's on the standard output. + Pidof finds the process id's (pids) of the named programs. It prints + those id's on the standard output. config BUSYBOX_FEATURE_PIDOF_SINGLE - bool "Enable argument for single shot (-s)" + bool "Enable single shot (-s)" default y depends on BUSYBOX_PIDOF help - Support argument '-s' for returning only the first pid found. + Support '-s' for returning only the first pid found. config BUSYBOX_FEATURE_PIDOF_OMIT - bool "Enable argument for omitting pids (-o)" + bool "Enable omitting pids (-o PID)" default y depends on BUSYBOX_PIDOF help - Support argument '-o' for omitting the given pids in output. - The special pid %PPID can be used to name the parent process - of the pidof, in other words the calling shell or shell script. - -config BUSYBOX_PKILL - bool "pkill" - default n + Support '-o PID' for omitting the given pid(s) in output. + The special pid %PPID can be used to name the parent process + of the pidof, in other words the calling shell or shell script. +config BUSYBOX_PMAP + bool "pmap (6 kb)" + default y help - Send signals to processes by name. + Display processes' memory mappings. +config BUSYBOX_POWERTOP + bool "powertop (9.6 kb)" + default y + help + Analyze power consumption on Intel-based laptops +config BUSYBOX_FEATURE_POWERTOP_INTERACTIVE + bool "Accept keyboard commands" + default y + depends on BUSYBOX_POWERTOP + help + Without this, powertop will only refresh display every 10 seconds. + No keyboard commands will work, only ^C to terminate. config BUSYBOX_PS - bool "ps" - depends on !BUSYBOX_DISABLE_PS + bool "ps (11 kb)" default y help - ps gives a snapshot of the current processes. + ps gives a snapshot of the current processes. config BUSYBOX_FEATURE_PS_WIDE - bool "Enable wide output option (-w)" + bool "Enable wide output (-w)" default y - depends on BUSYBOX_PS && !BUSYBOX_DESKTOP + depends on (BUSYBOX_PS || BUSYBOX_MINIPS) && !BUSYBOX_DESKTOP help - Support argument 'w' for wide output. - If given once, 132 chars are printed, and if given more - than once, the length is unlimited. + Support argument 'w' for wide output. + If given once, 132 chars are printed, and if given more + than once, the length is unlimited. config BUSYBOX_FEATURE_PS_LONG - bool "Enable long output option (-l)" - default n - depends on BUSYBOX_PS && !BUSYBOX_DESKTOP + bool "Enable long output (-l)" + default y + depends on (BUSYBOX_PS || BUSYBOX_MINIPS) && !BUSYBOX_DESKTOP help - Support argument 'l' for long output. - Adds fields PPID, RSS, START, TIME & TTY + Support argument 'l' for long output. + Adds fields PPID, RSS, START, TIME & TTY config BUSYBOX_FEATURE_PS_TIME - bool "Enable time and elapsed time output" - default n - depends on BUSYBOX_PS && BUSYBOX_DESKTOP + bool "Enable -o time and -o etime specifiers" + default y + depends on (BUSYBOX_PS || BUSYBOX_MINIPS) && BUSYBOX_DESKTOP select BUSYBOX_PLATFORM_LINUX - help - Support -o time and -o etime output specifiers. - -config BUSYBOX_FEATURE_PS_ADDITIONAL_COLUMNS - bool "Enable additional ps columns" - default n - depends on BUSYBOX_PS && BUSYBOX_DESKTOP - help - Support -o rgroup, -o ruser, -o nice output specifiers. config BUSYBOX_FEATURE_PS_UNUSUAL_SYSTEMS bool "Support Linux prior to 2.4.0 and non-ELF systems" default n depends on BUSYBOX_FEATURE_PS_TIME help - Include support for measuring HZ on old kernels and non-ELF systems - (if you are on Linux 2.4.0+ and use ELF, you don't need this) + Include support for measuring HZ on old kernels and non-ELF systems + (if you are on Linux 2.4.0+ and use ELF, you don't need this) -config BUSYBOX_RENICE - bool "renice" - default n +config BUSYBOX_FEATURE_PS_ADDITIONAL_COLUMNS + bool "Enable -o rgroup, -o ruser, -o nice specifiers" + default y + depends on (BUSYBOX_PS || BUSYBOX_MINIPS) && BUSYBOX_DESKTOP +config BUSYBOX_PSTREE + bool "pstree (9.3 kb)" + default y help - Renice alters the scheduling priority of one or more running - processes. - + Display a tree of processes. +config BUSYBOX_PWDX + bool "pwdx (3.7 kb)" + default y + help + Report current working directory of a process +config BUSYBOX_SMEMCAP + bool "smemcap (2.5 kb)" + default y + help + smemcap is a tool for capturing process data for smem, + a memory usage statistic tool. config BUSYBOX_BB_SYSCTL - bool "sysctl" + bool "sysctl (7.4 kb)" default y help - Configure kernel parameters at runtime. - + Configure kernel parameters at runtime. config BUSYBOX_TOP - bool "top" - default n + bool "top (18 kb)" + default y help - The top program provides a dynamic real-time view of a running - system. + The top program provides a dynamic real-time view of a running + system. config BUSYBOX_FEATURE_TOP_INTERACTIVE bool "Accept keyboard commands" @@ -232,61 +199,75 @@ config BUSYBOX_FEATURE_TOP_CPU_USAGE_PERCENTAGE default y depends on BUSYBOX_TOP help - Make top display CPU usage for each process. - This adds about 2k. + Make top display CPU usage for each process. + This adds about 2k. config BUSYBOX_FEATURE_TOP_CPU_GLOBAL_PERCENTS bool "Show CPU global usage percentage" default y depends on BUSYBOX_FEATURE_TOP_CPU_USAGE_PERCENTAGE help - Makes top display "CPU: NN% usr NN% sys..." line. - This adds about 0.5k. + Makes top display "CPU: NN% usr NN% sys..." line. + This adds about 0.5k. config BUSYBOX_FEATURE_TOP_SMP_CPU bool "SMP CPU usage display ('c' key)" default y depends on BUSYBOX_FEATURE_TOP_CPU_GLOBAL_PERCENTS help - Allow 'c' key to switch between individual/cumulative CPU stats - This adds about 0.5k. + Allow 'c' key to switch between individual/cumulative CPU stats + This adds about 0.5k. config BUSYBOX_FEATURE_TOP_DECIMALS bool "Show 1/10th of a percent in CPU/mem statistics" default y depends on BUSYBOX_FEATURE_TOP_CPU_USAGE_PERCENTAGE help - Show 1/10th of a percent in CPU/mem statistics. - This adds about 0.3k. + Show 1/10th of a percent in CPU/mem statistics. + This adds about 0.3k. config BUSYBOX_FEATURE_TOP_SMP_PROCESS bool "Show CPU process runs on ('j' field)" default y depends on BUSYBOX_TOP help - Show CPU where process was last found running on. - This is the 'j' field. + Show CPU where process was last found running on. + This is the 'j' field. config BUSYBOX_FEATURE_TOPMEM bool "Topmem command ('s' key)" default y depends on BUSYBOX_TOP help - Enable 's' in top (gives lots of memory info). - -config BUSYBOX_FEATURE_SHOW_THREADS - bool "Support for showing threads in ps/pstree/top" + Enable 's' in top (gives lots of memory info). +config BUSYBOX_UPTIME + bool "uptime (3.7 kb)" default y - depends on BUSYBOX_PS || BUSYBOX_TOP || BUSYBOX_PSTREE + select BUSYBOX_PLATFORM_LINUX #sysinfo() help - Enables the ps -T option, showing of threads in pstree, - and 'h' command in top. + uptime gives a one line display of the current time, how long + the system has been running, how many users are currently logged + on, and the system load averages for the past 1, 5, and 15 minutes. +config BUSYBOX_FEATURE_UPTIME_UTMP_SUPPORT + bool "Show the number of users" + default y + depends on BUSYBOX_UPTIME && BUSYBOX_FEATURE_UTMP + help + Display the number of users currently logged on. config BUSYBOX_WATCH - bool "watch" - default n + bool "watch (4.4 kb)" + default y + help + watch is used to execute a program periodically, showing + output to the screen. + +config BUSYBOX_FEATURE_SHOW_THREADS + bool "Support thread display in ps/pstree/top" + default y + depends on BUSYBOX_PS || BUSYBOX_TOP || BUSYBOX_PSTREE help - watch is used to execute a program periodically, showing - output to the screen. + Enables the ps -T option, showing of threads in pstree, + and 'h' command in top. endmenu diff --git a/package/busybox/config/runit/Config.in b/package/busybox/config/runit/Config.in index 2df1c2d90..ac1a248ac 100644 --- a/package/busybox/config/runit/Config.in +++ b/package/busybox/config/runit/Config.in @@ -1,103 +1,98 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Runit Utilities" +config BUSYBOX_CHPST + bool "chpst (9 kb)" + default y + help + chpst changes the process state according to the given options, and + execs specified program. -config BUSYBOX_RUNSV - bool "runsv" - default n +config BUSYBOX_SETUIDGID + bool "setuidgid (4 kb)" + default y + help + Sets soft resource limits as specified by options + +config BUSYBOX_ENVUIDGID + bool "envuidgid (3.9 kb)" + default y + help + Sets $UID to account's uid and $GID to account's gid + +config BUSYBOX_ENVDIR + bool "envdir (2.5 kb)" + default y help - runsv starts and monitors a service and optionally an appendant log - service. + Sets various environment variables as specified by files + in the given directory +config BUSYBOX_SOFTLIMIT + bool "softlimit (4.5 kb)" + default y + help + Sets soft resource limits as specified by options +config BUSYBOX_RUNSV + bool "runsv (7.8 kb)" + default y + help + runsv starts and monitors a service and optionally an appendant log + service. config BUSYBOX_RUNSVDIR - bool "runsvdir" - default n + bool "runsvdir (6.3 kb)" + default y help - runsvdir starts a runsv process for each subdirectory, or symlink to - a directory, in the services directory dir, up to a limit of 1000 - subdirectories, and restarts a runsv process if it terminates. + runsvdir starts a runsv process for each subdirectory, or symlink to + a directory, in the services directory dir, up to a limit of 1000 + subdirectories, and restarts a runsv process if it terminates. config BUSYBOX_FEATURE_RUNSVDIR_LOG bool "Enable scrolling argument log" depends on BUSYBOX_RUNSVDIR default n help - Enable feature where second parameter of runsvdir holds last error - message (viewable via top/ps). Otherwise (feature is off - or no parameter), error messages go to stderr only. - + Enable feature where second parameter of runsvdir holds last error + message (viewable via top/ps). Otherwise (feature is off + or no parameter), error messages go to stderr only. config BUSYBOX_SV - bool "sv" - default n + bool "sv (8.5 kb)" + default y help - sv reports the current status and controls the state of services - monitored by the runsv supervisor. + sv reports the current status and controls the state of services + monitored by the runsv supervisor. config BUSYBOX_SV_DEFAULT_SERVICE_DIR string "Default directory for services" default "/var/service" depends on BUSYBOX_SV || BUSYBOX_SVC || BUSYBOX_SVOK help - Default directory for services. - Defaults to "/var/service" + Default directory for services. + Defaults to "/var/service" config BUSYBOX_SVC - bool "svc" - default n + bool "svc (8.4 kb)" + default y help - svc controls the state of services monitored by the runsv supervisor. - It is comaptible with daemontools command with the same name. + svc controls the state of services monitored by the runsv supervisor. + It is compatible with daemontools command with the same name. config BUSYBOX_SVOK bool "svok (1.5 kb)" - default n + default y help svok checks whether runsv supervisor is running. It is compatible with daemontools command with the same name. - config BUSYBOX_SVLOGD - bool "svlogd" - default n - help - svlogd continuously reads log data from its standard input, optionally - filters log messages, and writes the data to one or more automatically - rotated logs. - -config BUSYBOX_CHPST - bool "chpst" - default n - help - chpst changes the process state according to the given options, and - execs specified program. - -config BUSYBOX_SETUIDGID - bool "setuidgid" - default n - help - Sets soft resource limits as specified by options - -config BUSYBOX_ENVUIDGID - bool "envuidgid" - default n - help - Sets $UID to account's uid and $GID to account's gid - -config BUSYBOX_ENVDIR - bool "envdir" - default n - help - Sets various environment variables as specified by files - in the given directory - -config BUSYBOX_SOFTLIMIT - bool "softlimit" - default n + bool "svlogd (16 kb)" + default y help - Sets soft resource limits as specified by options + svlogd continuously reads log data from its standard input, optionally + filters log messages, and writes the data to one or more automatically + rotated logs. endmenu diff --git a/package/busybox/config/selinux/Config.in b/package/busybox/config/selinux/Config.in index 8818ef5a1..ab2d8a206 100644 --- a/package/busybox/config/selinux/Config.in +++ b/package/busybox/config/selinux/Config.in @@ -1,124 +1,99 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "SELinux Utilities" depends on BUSYBOX_SELINUX - config BUSYBOX_CHCON - bool "chcon" + bool "chcon (8.9 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to change the security context of file. - -config BUSYBOX_FEATURE_CHCON_LONG_OPTIONS - bool "Enable long options" - default y - depends on BUSYBOX_CHCON && BUSYBOX_LONG_OPTS - help - Support long options for the chcon applet. - + Enable support to change the security context of file. config BUSYBOX_GETENFORCE - bool "getenforce" + bool "getenforce (1.7 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to get the current mode of SELinux. - + Enable support to get the current mode of SELinux. config BUSYBOX_GETSEBOOL - bool "getsebool" + bool "getsebool (5.5 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to get SELinux boolean values. - + Enable support to get SELinux boolean values. config BUSYBOX_LOAD_POLICY - bool "load_policy" + bool "load_policy (1.6 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to load SELinux policy. - + Enable support to load SELinux policy. config BUSYBOX_MATCHPATHCON - bool "matchpathcon" + bool "matchpathcon (6.1 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to get default security context of the - specified path from the file contexts configuration. - -config BUSYBOX_RESTORECON - bool "restorecon" + Enable support to get default security context of the + specified path from the file contexts configuration. +config BUSYBOX_RUNCON + bool "runcon (6.6 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to relabel files. The feature is almost - the same as setfiles, but usage is a little different. - -config BUSYBOX_RUNCON - bool "runcon" + Enable support to run command in specified security context. +config BUSYBOX_SELINUXENABLED + bool "selinuxenabled (321 bytes)" default n depends on BUSYBOX_SELINUX help - Enable support to run command in speficied security context. - -config BUSYBOX_FEATURE_RUNCON_LONG_OPTIONS - bool "Enable long options" - default y - depends on BUSYBOX_RUNCON && BUSYBOX_LONG_OPTS - help - Support long options for the runcon applet. - -config BUSYBOX_SELINUXENABLED - bool "selinuxenabled" + Enable support for this command to be used within shell scripts + to determine if selinux is enabled. +config BUSYBOX_SESTATUS + bool "sestatus (12 kb)" default n depends on BUSYBOX_SELINUX help - Enable support for this command to be used within shell scripts - to determine if selinux is enabled. - + Displays the status of SELinux. config BUSYBOX_SETENFORCE - bool "setenforce" + bool "setenforce (2.1 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to modify the mode SELinux is running in. - + Enable support to modify the mode SELinux is running in. config BUSYBOX_SETFILES - bool "setfiles" + bool "setfiles (13 kb)" default n depends on BUSYBOX_SELINUX help - Enable support to modify to relabel files. - Notice: If you built libselinux with -D_FILE_OFFSET_BITS=64, - (It is default in libselinux's Makefile), you _must_ enable - CONFIG_LFS. + Enable support to modify to relabel files. + Notice: If you built libselinux with -D_FILE_OFFSET_BITS=64, + (It is default in libselinux's Makefile), you _must_ enable + CONFIG_LFS. config BUSYBOX_FEATURE_SETFILES_CHECK_OPTION bool "Enable check option" default n depends on BUSYBOX_SETFILES help - Support "-c" option (check the validity of the contexts against - the specified binary policy) for setfiles. Requires libsepol. + Support "-c" option (check the validity of the contexts against + the specified binary policy) for setfiles. Requires libsepol. -config BUSYBOX_SETSEBOOL - bool "setsebool" +config BUSYBOX_RESTORECON + bool "restorecon (12 kb)" default n depends on BUSYBOX_SELINUX help - Enable support for change boolean. - semanage and -P option is not supported yet. - -config BUSYBOX_SESTATUS - bool "sestatus" + Enable support to relabel files. The feature is almost + the same as setfiles, but usage is a little different. +config BUSYBOX_SETSEBOOL + bool "setsebool (1.7 kb)" default n depends on BUSYBOX_SELINUX help - Displays the status of SELinux. + Enable support for change boolean. + semanage and -P option is not supported yet. endmenu diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index c19c95d4c..bc96b0267 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -1,214 +1,303 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Shells" -config BUSYBOX_ASH + +choice + prompt "Choose which shell is aliased to 'sh' name" + default BUSYBOX_SH_IS_ASH + help + Choose which shell you want to be executed by 'sh' alias. + The ash shell is the most bash compatible and full featured one. + +# note: cannot use "select BUSYBOX_ASH" here, it breaks "make allnoconfig" +config BUSYBOX_SH_IS_ASH + depends on !BUSYBOX_NOMMU bool "ash" - default n + select BUSYBOX_SHELL_ASH + help + Choose ash to be the shell executed by 'sh' name. + The ash code will be built into busybox. If you don't select + "ash" choice (CONFIG_ASH), this shell may only be invoked by + the name 'sh' (and not 'ash'). + +config BUSYBOX_SH_IS_HUSH + bool "hush" + select BUSYBOX_SHELL_HUSH + help + Choose hush to be the shell executed by 'sh' name. + The hush code will be built into busybox. If you don't select + "hush" choice (CONFIG_HUSH), this shell may only be invoked by + the name 'sh' (and not 'hush'). + +config BUSYBOX_SH_IS_NONE + bool "none" + +endchoice + +choice + prompt "Choose which shell is aliased to 'bash' name" + default BUSYBOX_BASH_IS_NONE + help + Choose which shell you want to be executed by 'bash' alias. + The ash shell is the most bash compatible and full featured one, + although compatibility is far from being complete. + + Note that selecting this option does not switch on any bash + compatibility code. It merely makes it possible to install + /bin/bash (sym)link and run scripts which start with + #!/bin/bash line. + + Many systems use it in scripts which use bash-specific features, + even simple ones like $RANDOM. Without this option, busybox + can't be used for running them because it won't recongnize + "bash" as a supported applet name. + +config BUSYBOX_BASH_IS_ASH depends on !BUSYBOX_NOMMU + bool "ash" + select BUSYBOX_SHELL_ASH + help + Choose ash to be the shell executed by 'bash' name. + The ash code will be built into busybox. If you don't select + "ash" choice (CONFIG_ASH), this shell may only be invoked by + the name 'bash' (and not 'ash'). + +config BUSYBOX_BASH_IS_HUSH + bool "hush" + select BUSYBOX_SHELL_HUSH help - Tha 'ash' shell adds about 60k in the default configuration and is - the most complete and most pedantically correct shell included with - busybox. This shell is actually a derivative of the Debian 'dash' - shell (by Herbert Xu), which was created by porting the 'ash' shell - (written by Kenneth Almquist) from NetBSD. + Choose hush to be the shell executed by 'bash' name. + The hush code will be built into busybox. If you don't select + "hush" choice (CONFIG_HUSH), this shell may only be invoked by + the name 'bash' (and not 'hush'). + +config BUSYBOX_BASH_IS_NONE + bool "none" + +endchoice + + +config BUSYBOX_SHELL_ASH + bool #hidden option + depends on !BUSYBOX_NOMMU + +config BUSYBOX_ASH + bool "ash (78 kb)" + default y + depends on !BUSYBOX_NOMMU + select BUSYBOX_SHELL_ASH + help + The most complete and most pedantically correct shell included with + busybox. This shell is actually a derivative of the Debian 'dash' + shell (by Herbert Xu), which was created by porting the 'ash' shell + (written by Kenneth Almquist) from NetBSD. + +# ash options +# note: Don't remove !NOMMU part in the next line; it would break +# menuconfig's indenting. +if !BUSYBOX_NOMMU && (BUSYBOX_SHELL_ASH || BUSYBOX_ASH || BUSYBOX_SH_IS_ASH || BUSYBOX_BASH_IS_ASH) + +config BUSYBOX_ASH_OPTIMIZE_FOR_SIZE + bool "Optimize for size instead of speed" + default y + depends on BUSYBOX_SHELL_ASH + +config BUSYBOX_ASH_INTERNAL_GLOB + bool "Use internal glob() implementation" + default y # Y is bigger, but because of uclibc glob() bug, let Y be default for now + depends on BUSYBOX_SHELL_ASH + help + Do not use glob() function from libc, use internal implementation. + Use this if you are getting "glob.h: No such file or directory" + or similar build errors. + Note that as of now (2017-01), uclibc and musl glob() both have bugs + which would break ash if you select N here. config BUSYBOX_ASH_BASH_COMPAT bool "bash-compatible extensions" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH + +config BUSYBOX_ASH_BASH_SOURCE_CURDIR + bool "'source' and '.' builtins search current directory after $PATH" + default n # do not encourage non-standard behavior + depends on BUSYBOX_ASH_BASH_COMPAT help - Enable bash-compatible extensions. + This is not compliant with standards. Avoid if possible. -config BUSYBOX_ASH_IDLE_TIMEOUT - bool "Idle timeout variable" - default n - depends on BUSYBOX_ASH +config BUSYBOX_ASH_BASH_NOT_FOUND_HOOK + bool "command_not_found_handle hook support" + default y + depends on BUSYBOX_ASH_BASH_COMPAT help - Enables bash-like auto-logout after $TMOUT seconds of idle time. + Enable support for the 'command_not_found_handle' hook function, + from GNU bash, which allows for alternative command not found + handling. config BUSYBOX_ASH_JOB_CONTROL bool "Job control" default y - depends on BUSYBOX_ASH - help - Enable job control in the ash shell. + depends on BUSYBOX_SHELL_ASH config BUSYBOX_ASH_ALIAS bool "Alias support" default y - depends on BUSYBOX_ASH - help - Enable alias support in the ash shell. + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_GETOPTS - bool "Builtin getopt to parse positional parameters" +config BUSYBOX_ASH_RANDOM_SUPPORT + bool "Pseudorandom generator and $RANDOM variable" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH help - Enable support for getopts builtin in ash. + Enable pseudorandom generator and dynamic variable "$RANDOM". + Each read of "$RANDOM" will generate a new pseudorandom value. + You can reset the generator by using a specified start value. + After "unset RANDOM" the generator will switch off and this + variable will no longer have special treatment. -config BUSYBOX_ASH_BUILTIN_ECHO - bool "Builtin version of 'echo'" +config BUSYBOX_ASH_EXPAND_PRMT + bool "Expand prompt string" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH help - Enable support for echo builtin in ash. + $PS# may contain volatile content, such as backquote commands. + This option recreates the prompt string from the environment + variable each time it is displayed. -config BUSYBOX_ASH_BUILTIN_PRINTF - bool "Builtin version of 'printf'" +config BUSYBOX_ASH_IDLE_TIMEOUT + bool "Idle timeout variable $TMOUT" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH help - Enable support for printf builtin in ash. + Enable bash-like auto-logout after $TMOUT seconds of idle time. -config BUSYBOX_ASH_BUILTIN_TEST - bool "Builtin version of 'test'" +config BUSYBOX_ASH_MAIL + bool "Check for new mail in interactive shell" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH help - Enable support for test builtin in ash. + Enable "check for new mail" function: + if set, $MAIL file and $MAILPATH list of files + are checked for mtime changes, and "you have mail" + message is printed if change is detected. -config BUSYBOX_ASH_HELP - bool "help builtin" +config BUSYBOX_ASH_ECHO + bool "echo builtin" default y - depends on BUSYBOX_ASH - help - Enable help builtin in ash. + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_CMDCMD - bool "'command' command to override shell builtins" +config BUSYBOX_ASH_PRINTF + bool "printf builtin" default y - depends on BUSYBOX_ASH - help - Enable support for the ash 'command' builtin, which allows - you to run the specified command with the specified arguments, - even when there is an ash builtin command with the same name. + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_MAIL - bool "Check for new mail on interactive shells" - default n - depends on BUSYBOX_ASH - help - Enable "check for new mail" function in the ash shell. - -config BUSYBOX_ASH_OPTIMIZE_FOR_SIZE - bool "Optimize for size instead of speed" +config BUSYBOX_ASH_TEST + bool "test builtin" default y - depends on BUSYBOX_ASH - help - Compile ash for reduced size at the price of speed. + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_INTERNAL_GLOB - bool "Use internal glob() implementation" - default y # Y is bigger, but because of uclibc glob() bug, let Y be default for now - depends on BUSYBOX_ASH - help - Do not use glob() function from libc, use internal implementation. - Use this if you are getting "glob.h: No such file or directory" - or similar build errors. +config BUSYBOX_ASH_HELP + bool "help builtin" + default y + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_RANDOM_SUPPORT - bool "Pseudorandom generator and $RANDOM variable" +config BUSYBOX_ASH_GETOPTS + bool "getopts builtin" default y - depends on BUSYBOX_ASH - help - Enable pseudorandom generator and dynamic variable "$RANDOM". - Each read of "$RANDOM" will generate a new pseudorandom value. - You can reset the generator by using a specified start value. - After "unset RANDOM" the generator will switch off and this - variable will no longer have special treatment. + depends on BUSYBOX_SHELL_ASH -config BUSYBOX_ASH_EXPAND_PRMT - bool "Expand prompt string" +config BUSYBOX_ASH_CMDCMD + bool "command builtin" default y - depends on BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH help - "PS#" may contain volatile content, such as backquote commands. - This option recreates the prompt string from the environment - variable each time it is displayed. + Enable support for the 'command' builtin, which allows + you to run the specified command or builtin, + even when there is a function with the same name. +endif # ash options config BUSYBOX_CTTYHACK - bool "cttyhack" - default n + bool "cttyhack (2.4 kb)" + default y help - One common problem reported on the mailing list is the "can't - access tty; job control turned off" error message, which typically - appears when one tries to use a shell with stdin/stdout on - /dev/console. - This device is special - it cannot be a controlling tty. + One common problem reported on the mailing list is the "can't + access tty; job control turned off" error message, which typically + appears when one tries to use a shell with stdin/stdout on + /dev/console. + This device is special - it cannot be a controlling tty. - The proper solution is to use the correct device instead of - /dev/console. + The proper solution is to use the correct device instead of + /dev/console. - cttyhack provides a "quick and dirty" solution to this problem. - It analyzes stdin with various ioctls, trying to determine whether - it is a /dev/ttyN or /dev/ttySN (virtual terminal or serial line). - On Linux it also checks sysfs for a pointer to the active console. - If cttyhack is able to find the real console device, it closes - stdin/out/err and reopens that device. - Then it executes the given program. Opening the device will make - that device a controlling tty. This may require cttyhack - to be a session leader. + cttyhack provides a "quick and dirty" solution to this problem. + It analyzes stdin with various ioctls, trying to determine whether + it is a /dev/ttyN or /dev/ttySN (virtual terminal or serial line). + On Linux it also checks sysfs for a pointer to the active console. + If cttyhack is able to find the real console device, it closes + stdin/out/err and reopens that device. + Then it executes the given program. Opening the device will make + that device a controlling tty. This may require cttyhack + to be a session leader. - Example for /etc/inittab (for busybox init): + Example for /etc/inittab (for busybox init): - ::respawn:/bin/cttyhack /bin/sh + ::respawn:/bin/cttyhack /bin/sh - Starting an interactive shell from boot shell script: + Starting an interactive shell from boot shell script: - setsid cttyhack sh + setsid cttyhack sh - Giving controlling tty to shell running with PID 1: + Giving controlling tty to shell running with PID 1: - # exec cttyhack sh + # exec cttyhack sh - Without cttyhack, you need to know exact tty name, - and do something like this: + Without cttyhack, you need to know exact tty name, + and do something like this: - # exec setsid sh -c 'exec sh /dev/tty1 2>&1' + # exec setsid sh -c 'exec sh /dev/tty1 2>&1' - Starting getty on a controlling tty from a shell script: - - # getty 115200 $(cttyhack) + Starting getty on a controlling tty from a shell script: + # getty 115200 $(cttyhack) config BUSYBOX_HUSH - bool "hush" - default y if ADK_TARGET_UCLINUX - default n + bool "hush (68 kb)" + default y select BUSYBOX_SHELL_HUSH help - hush is a small shell (25k). It handles the normal flow control - constructs such as if/then/elif/else/fi, for/in/do/done, while loops, - case/esac. Redirections, here documents, $((arithmetic)) - and functions are supported. + 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, + case/esac. Redirections, here documents, $((arithmetic)) + and functions are supported. - It will compile and work on no-mmu systems. + It will compile and work on no-mmu systems. - It does not handle select, aliases, tilde expansion, - &>file and >&file redirection of stdout+stderr. + It does not handle select, aliases, tilde expansion, + &>file and >&file redirection of stdout+stderr. config BUSYBOX_SHELL_HUSH bool "Internal shell for embedded script support" default n +# hush options +# It's only needed to get "nice" menuconfig indenting. +if BUSYBOX_SHELL_HUSH || BUSYBOX_HUSH || BUSYBOX_SH_IS_HUSH || BUSYBOX_BASH_IS_HUSH + config BUSYBOX_HUSH_BASH_COMPAT bool "bash-compatible extensions" default y - depends on BUSYBOX_HUSH - help - Enable bash-compatible extensions. + depends on BUSYBOX_SHELL_HUSH config BUSYBOX_HUSH_BRACE_EXPANSION bool "Brace expansion" default y depends on BUSYBOX_HUSH_BASH_COMPAT help - Enable {abc,def} extension. + Enable {abc,def} extension. config BUSYBOX_HUSH_LINENO_VAR bool "$LINENO variable" @@ -222,105 +311,85 @@ config BUSYBOX_HUSH_BASH_SOURCE_CURDIR help This is not compliant with standards. Avoid if possible. -config BUSYBOX_HUSH_HELP - bool "help builtin" - default y - depends on BUSYBOX_HUSH - help - Enable help builtin in hush. Code size + ~1 kbyte. - config BUSYBOX_HUSH_INTERACTIVE bool "Interactive mode" default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - Enable interactive mode (prompt and command editing). - Without this, hush simply reads and executes commands - from stdin just like a shell script from a file. - No prompt, no PS1/PS2 magic shell variables. + Enable interactive mode (prompt and command editing). + Without this, hush simply reads and executes commands + from stdin just like a shell script from a file. + No prompt, no PS1/PS2 magic shell variables. config BUSYBOX_HUSH_SAVEHISTORY bool "Save command history to .hush_history" default y depends on BUSYBOX_HUSH_INTERACTIVE && BUSYBOX_FEATURE_EDITING_SAVEHISTORY - help - Enable history saving in hush. config BUSYBOX_HUSH_JOB bool "Job control" default y depends on BUSYBOX_HUSH_INTERACTIVE help - Enable job control: Ctrl-Z backgrounds, Ctrl-C interrupts current - command (not entire shell), fg/bg builtins work. Without this option, - "cmd &" still works by simply spawning a process and immediately - prompting for next command (or executing next command in a script), - but no separate process group is formed. + Enable job control: Ctrl-Z backgrounds, Ctrl-C interrupts current + command (not entire shell), fg/bg builtins work. Without this option, + "cmd &" still works by simply spawning a process and immediately + prompting for next command (or executing next command in a script), + but no separate process group is formed. config BUSYBOX_HUSH_TICK - bool "Process substitution" + bool "Support command substitution" default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - Enable process substitution `command` and $(command) in hush. + Enable `command` and $(command). config BUSYBOX_HUSH_IF bool "Support if/then/elif/else/fi" default y - depends on BUSYBOX_HUSH - help - Enable if/then/elif/else/fi in hush. + depends on BUSYBOX_SHELL_HUSH config BUSYBOX_HUSH_LOOPS bool "Support for, while and until loops" default y - depends on BUSYBOX_HUSH - help - Enable for, while and until loops in hush. + depends on BUSYBOX_SHELL_HUSH config BUSYBOX_HUSH_CASE bool "Support case ... esac statement" default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - Enable case ... esac statement in hush. +400 bytes. + Enable case ... esac statement. +400 bytes. config BUSYBOX_HUSH_FUNCTIONS bool "Support funcname() { commands; } syntax" default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - Enable support for shell functions in hush. +800 bytes. + Enable support for shell functions. +800 bytes. config BUSYBOX_HUSH_LOCAL - bool "Support local builtin" + bool "local builtin" default y depends on BUSYBOX_HUSH_FUNCTIONS help - Enable support for local variables in functions. + Enable support for local variables in functions. config BUSYBOX_HUSH_RANDOM_SUPPORT bool "Pseudorandom generator and $RANDOM variable" default y - depends on BUSYBOX_HUSH - help - Enable pseudorandom generator and dynamic variable "$RANDOM". - Each read of "$RANDOM" will generate a new pseudorandom value. - -config BUSYBOX_HUSH_EXPORT_N - bool "Support 'export -n' option" - default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - export -n unexports variables. It is a bash extension. + Enable pseudorandom generator and dynamic variable "$RANDOM". + Each read of "$RANDOM" will generate a new pseudorandom value. config BUSYBOX_HUSH_MODE_X bool "Support 'hush -x' option and 'set -x' command" default y - depends on BUSYBOX_HUSH + depends on BUSYBOX_SHELL_HUSH help - This instructs hush to print commands before execution. - Adds ~300 bytes. + This instructs hush to print commands before execution. + Adds ~300 bytes. config BUSYBOX_HUSH_ECHO bool "echo builtin" @@ -426,50 +495,27 @@ config BUSYBOX_HUSH_MEMLEAK default n depends on BUSYBOX_SHELL_HUSH +endif # hush options -choice -prompt "Choose which shell is aliased to 'sh' name" -config BUSYBOX_SH_IS_NONE - bool "none" - -config BUSYBOX_SH_IS_ASH - bool "ash" - -config BUSYBOX_SH_IS_HUSH - bool "hush" - -endchoice - -choice -prompt "Choose which shell is aliased to 'bash' name" - -config BUSYBOX_BASH_IS_NONE - bool "none" - -config BUSYBOX_BASH_IS_ASH - bool "ash" - -config BUSYBOX_BASH_IS_HUSH - bool "hush" - -endchoice +comment "Options common to all shells" +if BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH config BUSYBOX_FEATURE_SH_MATH bool "POSIX math support" default y - depends on BUSYBOX_ASH || BUSYBOX_HUSH + depends on BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH help - Enable math support in the shell via $((...)) syntax. + Enable math support in the shell via $((...)) syntax. config BUSYBOX_FEATURE_SH_MATH_64 bool "Extend POSIX math support to 64 bit" default y depends on BUSYBOX_FEATURE_SH_MATH help - Enable 64-bit math support in the shell. This will make the shell - slightly larger, but will allow computation with very large numbers. - This is not in POSIX, so do not rely on this in portable code. + Enable 64-bit math support in the shell. This will make the shell + slightly larger, but will allow computation with very large numbers. + This is not in POSIX, so do not rely on this in portable code. config BUSYBOX_FEATURE_SH_MATH_BASE bool "Support BASE#nnnn literals" @@ -479,60 +525,48 @@ config BUSYBOX_FEATURE_SH_MATH_BASE config BUSYBOX_FEATURE_SH_EXTRA_QUIET bool "Hide message on interactive shell startup" default y - depends on BUSYBOX_HUSH || BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH help - Remove the busybox introduction when starting a shell. + Remove the busybox introduction when starting a shell. config BUSYBOX_FEATURE_SH_STANDALONE bool "Standalone shell" default n - depends on (BUSYBOX_HUSH || BUSYBOX_ASH) - help - This option causes busybox shells to use busybox applets - in preference to executables in the PATH whenever possible. For - example, entering the command 'ifconfig' into the shell would cause - busybox to use the ifconfig busybox applet. Specifying the fully - qualified executable name, such as '/sbin/ifconfig' will still - execute the /sbin/ifconfig executable on the filesystem. This option - is generally used when creating a statically linked version of busybox - for use as a rescue shell, in the event that you screw up your system. - - This is implemented by re-execing /proc/self/exe (typically) - with right parameters. Some selected applets ("NOFORK" applets) - can even be executed without creating new process. - Instead, busybox will call _main() internally. - - However, this causes problems in chroot jails without mounted /proc - and with ps/top (command name can be shown as 'exe' for applets - started this way). -# untrue? -# Note that this will *also* cause applets to take precedence -# over shell builtins of the same name. So turning this on will -# eliminate any performance gained by turning on the builtin "echo" -# and "test" commands in ash. -# untrue? -# Note that when using this option, the shell will attempt to directly -# run '/bin/busybox'. If you do not have the busybox binary sitting in -# that exact location with that exact name, this option will not work at -# all. + depends on BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH + help + This option causes busybox shells to use busybox applets + in preference to executables in the PATH whenever possible. For + example, entering the command 'ifconfig' into the shell would cause + busybox to use the ifconfig busybox applet. Specifying the fully + qualified executable name, such as '/sbin/ifconfig' will still + execute the /sbin/ifconfig executable on the filesystem. This option + is generally used when creating a statically linked version of busybox + for use as a rescue shell, in the event that you screw up your system. + + This is implemented by re-execing /proc/self/exe (typically) + with right parameters. + + However, there are drawbacks: it is problematic in chroot jails + without mounted /proc, and ps/top may show command name as 'exe' + for applets started this way. config BUSYBOX_FEATURE_SH_NOFORK bool "Run 'nofork' applets directly" default n - depends on (BUSYBOX_HUSH || BUSYBOX_ASH) + depends on BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH help - This option causes busybox shells to not execute typical - fork/exec/wait sequence, but call _main directly, - if possible. (Sometimes it is not possible: for example, - this is not possible in pipes). + This option causes busybox shells to not execute typical + fork/exec/wait sequence, but call _main directly, + if possible. (Sometimes it is not possible: for example, + this is not possible in pipes). - This will be done only for some applets (those which are marked - NOFORK in include/applets.h). + This will be done only for some applets (those which are marked + NOFORK in include/applets.h). - This may significantly speed up some shell scripts. + This may significantly speed up some shell scripts. - This feature is relatively new. Use with care. Report bugs - to project mailing list. + This feature is relatively new. Use with care. Report bugs + to project mailing list. config BUSYBOX_FEATURE_SH_READ_FRAC bool "read -t N.NNN support (+110 bytes)" @@ -544,11 +578,11 @@ config BUSYBOX_FEATURE_SH_READ_FRAC config BUSYBOX_FEATURE_SH_HISTFILESIZE bool "Use $HISTFILESIZE" default y - depends on BUSYBOX_HUSH || BUSYBOX_ASH + depends on BUSYBOX_SHELL_ASH || BUSYBOX_SHELL_HUSH help - This option makes busybox shells to use $HISTFILESIZE variable - to set shell history size. Note that its max value is capped - by "History size" setting in library tuning section. + This option makes busybox shells to use $HISTFILESIZE variable + to set shell history size. Note that its max value is capped + by "History size" setting in library tuning section. config BUSYBOX_FEATURE_SH_EMBEDDED_SCRIPTS bool "Embed scripts in the binary" @@ -564,4 +598,6 @@ config BUSYBOX_FEATURE_SH_EMBEDDED_SCRIPTS the script in 'applets_sh' and a stub C file containing configuration in the appropriate subsystem directory. +endif # Options common to all shells + endmenu diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in index aaa6509e1..4c2a54e87 100644 --- a/package/busybox/config/sysklogd/Config.in +++ b/package/busybox/config/sysklogd/Config.in @@ -1,63 +1,120 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "System Logging Utilities" +config BUSYBOX_KLOGD + bool "klogd (5.7 kb)" + default y + help + klogd is a utility which intercepts and logs all + messages from the Linux kernel and sends the messages + out to the 'syslogd' utility so they can be logged. If + you wish to record the messages produced by the kernel, + you should enable this option. + +comment "klogd should not be used together with syslog to kernel printk buffer" + depends on BUSYBOX_KLOGD && BUSYBOX_FEATURE_KMSG_SYSLOG + +config BUSYBOX_FEATURE_KLOGD_KLOGCTL + bool "Use the klogctl() interface" + default y + depends on BUSYBOX_KLOGD + select BUSYBOX_PLATFORM_LINUX + help + The klogd applet supports two interfaces for reading + kernel messages. Linux provides the klogctl() interface + which allows reading messages from the kernel ring buffer + independently from the file system. + + If you answer 'N' here, klogd will use the more portable + approach of reading them from /proc or a device node. + However, this method requires the file to be available. + + If in doubt, say 'Y'. +config BUSYBOX_LOGGER + bool "logger (6.3 kb)" + default y + select BUSYBOX_FEATURE_SYSLOG + help + The logger utility allows you to send arbitrary text + messages to the system log (i.e. the 'syslogd' utility) so + they can be logged. This is generally used to help locate + problems that occur within programs and scripts. +config BUSYBOX_LOGREAD + bool "logread (4.8 kb)" + default y + help + If you enabled Circular Buffer support, you almost + certainly want to enable this feature as well. This + utility will allow you to read the messages that are + stored in the syslogd circular buffer. + +config BUSYBOX_FEATURE_LOGREAD_REDUCED_LOCKING + bool "Double buffering" + default y + depends on BUSYBOX_LOGREAD + help + 'logread' output to slow serial terminals can have + side effects on syslog because of the semaphore. + This option make logread to double buffer copy + from circular buffer, minimizing semaphore + contention at some minor memory expense. config BUSYBOX_SYSLOGD - bool "syslogd" + bool "syslogd (13 kb)" default y help - The syslogd utility is used to record logs of all the - significant events that occur on a system. Every - message that is logged records the date and time of the - event, and will generally also record the name of the - application that generated the message. When used in - conjunction with klogd, messages from the Linux kernel - can also be recorded. This is terribly useful, - especially for finding what happened when something goes - wrong. And something almost always will go wrong if - you wait long enough.... + The syslogd utility is used to record logs of all the + significant events that occur on a system. Every + message that is logged records the date and time of the + event, and will generally also record the name of the + application that generated the message. When used in + conjunction with klogd, messages from the Linux kernel + can also be recorded. This is terribly useful, + especially for finding what happened when something goes + wrong. And something almost always will go wrong if + you wait long enough.... config BUSYBOX_FEATURE_ROTATE_LOGFILE bool "Rotate message files" default y depends on BUSYBOX_SYSLOGD help - This enables syslogd to rotate the message files - on his own. No need to use an external rotatescript. + This enables syslogd to rotate the message files + on his own. No need to use an external rotate script. config BUSYBOX_FEATURE_REMOTE_LOG bool "Remote Log support" default y depends on BUSYBOX_SYSLOGD help - When you enable this feature, the syslogd utility can - be used to send system log messages to another system - connected via a network. This allows the remote - machine to log all the system messages, which can be - terribly useful for reducing the number of serial - cables you use. It can also be a very good security - measure to prevent system logs from being tampered with - by an intruder. + When you enable this feature, the syslogd utility can + be used to send system log messages to another system + connected via a network. This allows the remote + machine to log all the system messages, which can be + terribly useful for reducing the number of serial + cables you use. It can also be a very good security + measure to prevent system logs from being tampered with + by an intruder. config BUSYBOX_FEATURE_SYSLOGD_DUP bool "Support -D (drop dups) option" default y depends on BUSYBOX_SYSLOGD help - Option -D instructs syslogd to drop consecutive messages - which are totally the same. + Option -D instructs syslogd to drop consecutive messages + which are totally the same. config BUSYBOX_FEATURE_SYSLOGD_CFG bool "Support syslog.conf" - default n + default y depends on BUSYBOX_SYSLOGD help - Supports restricted syslogd config. See docs/syslog.conf.txt + Supports restricted syslogd config. See docs/syslog.conf.txt config BUSYBOX_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS bool "Include milliseconds in timestamps" @@ -73,105 +130,44 @@ config BUSYBOX_FEATURE_SYSLOGD_READ_BUFFER_SIZE range 256 20000 depends on BUSYBOX_SYSLOGD help - This option sets the size of the syslog read buffer. - Actual memory usage increases around five times the - change done here. + This option sets the size of the syslog read buffer. + Actual memory usage increases around five times the + change done here. config BUSYBOX_FEATURE_IPC_SYSLOG bool "Circular Buffer support" default y depends on BUSYBOX_SYSLOGD help - When you enable this feature, the syslogd utility will - use a circular buffer to record system log messages. - When the buffer is filled it will continue to overwrite - the oldest messages. This can be very useful for - systems with little or no permanent storage, since - otherwise system logs can eventually fill up your - entire filesystem, which may cause your system to - break badly. + When you enable this feature, the syslogd utility will + use a circular buffer to record system log messages. + When the buffer is filled it will continue to overwrite + the oldest messages. This can be very useful for + systems with little or no permanent storage, since + otherwise system logs can eventually fill up your + entire filesystem, which may cause your system to + break badly. config BUSYBOX_FEATURE_IPC_SYSLOG_BUFFER_SIZE int "Circular buffer size in Kbytes (minimum 4KB)" - default 32 + default 16 range 4 2147483647 depends on BUSYBOX_FEATURE_IPC_SYSLOG help - This option sets the size of the circular buffer - used to record system log messages. + This option sets the size of the circular buffer + used to record system log messages. config BUSYBOX_FEATURE_KMSG_SYSLOG - bool "Linux kernel printk buffer support" - default n - depends on BUSYBOX_SYSLOGD - select BUSYBOX_PLATFORM_LINUX - help - When you enable this feature, the syslogd utility will - write system log message to the Linux kernel's printk buffer. - This can be used as a smaller alternative to the syslogd IPC - support, as klogd and logread aren't needed. - - NOTICE: Syslog facilities in log entries needs kernel 3.5+. - -config BUSYBOX_LOGREAD - bool "logread" - default y - depends on BUSYBOX_FEATURE_IPC_SYSLOG - help - If you enabled Circular Buffer support, you almost - certainly want to enable this feature as well. This - utility will allow you to read the messages that are - stored in the syslogd circular buffer. - -config BUSYBOX_FEATURE_LOGREAD_REDUCED_LOCKING - bool "Double buffering" - default y - depends on BUSYBOX_LOGREAD - help - 'logread' ouput to slow serial terminals can have - side effects on syslog because of the semaphore. - This option make logread to double buffer copy - from circular buffer, minimizing semaphore - contention at some minor memory expense. - -config BUSYBOX_KLOGD - bool "klogd" - default y - help - klogd is a utility which intercepts and logs all - messages from the Linux kernel and sends the messages - out to the 'syslogd' utility so they can be logged. If - you wish to record the messages produced by the kernel, - you should enable this option. - -comment "klogd should not be used together with syslog to kernel printk buffer" - depends on BUSYBOX_KLOGD && BUSYBOX_FEATURE_KMSG_SYSLOG - -config BUSYBOX_FEATURE_KLOGD_KLOGCTL - bool "Use the klogctl() interface" + bool "Linux kernel printk buffer support" default y - depends on BUSYBOX_KLOGD + depends on BUSYBOX_SYSLOGD select BUSYBOX_PLATFORM_LINUX help - The klogd applet supports two interfaces for reading - kernel messages. Linux provides the klogctl() interface - which allows reading messages from the kernel ring buffer - independently from the file system. - - If you answer 'N' here, klogd will use the more portable - approach of reading them from /proc or a device node. - However, this method requires the file to be available. + When you enable this feature, the syslogd utility will + write system log message to the Linux kernel's printk buffer. + This can be used as a smaller alternative to the syslogd IPC + support, as klogd and logread aren't needed. - If in doubt, say 'Y'. - -config BUSYBOX_LOGGER - bool "logger" - default y - select BUSYBOX_FEATURE_SYSLOG - help - The logger utility allows you to send arbitrary text - messages to the system log (i.e. the 'syslogd' utility) so - they can be logged. This is generally used to help locate - problems that occur within programs and scripts. + NOTICE: Syslog facilities in log entries needs kernel 3.5+. endmenu diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index ff9dae4d1..bd6de5d38 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -1,677 +1,623 @@ # DO NOT EDIT. This file is generated from Config.src # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # menu "Linux System Utilities" -config BUSYBOX_BLKDISCARD - bool "blkdiscard" - default n - help - blkdiscard discards sectors on a given device. - -config BUSYBOX_BLOCKDEV - bool "blockdev" - default n +config BUSYBOX_ACPID + bool "acpid (9 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Performs some ioctls with block devices. + acpid listens to ACPI events coming either in textual form from + /proc/acpi/event (though it is marked deprecated it is still widely + used and _is_ a standard) or in binary form from specified evdevs + (just use /dev/input/event*). -config BUSYBOX_FALLOCATE - bool "fallocate (4.1 kb)" - default n - help - Preallocate space for files. + It parses the event to retrieve ACTION and a possible PARAMETER. + It then spawns /etc/acpi/[/] either via run-parts + (if the resulting path is a directory) or directly as an executable. -config BUSYBOX_FATATTR - bool "fatattr" - default n - select BUSYBOX_PLATFORM_LINUX - help - fatattr lists or changes the file attributes on a fat file system. + N.B. acpid relies on run-parts so have the latter installed. -config BUSYBOX_FSTRIM - bool "fstrim" - default n - select BUSYBOX_PLATFORM_LINUX +config BUSYBOX_FEATURE_ACPID_COMPAT + bool "Accept and ignore redundant options" + default y + depends on BUSYBOX_ACPID help - Discard unused blocks on a mounted filesystem. - -config BUSYBOX_MDEV - bool "mdev" + Accept and ignore compatibility options -g -m -s -S -v. +config BUSYBOX_BLKDISCARD + bool "blkdiscard (4.3 kb)" default y select BUSYBOX_PLATFORM_LINUX help - mdev is a mini-udev implementation for dynamically creating device - nodes in the /dev directory. - - For more information, please see docs/mdev.txt - -config BUSYBOX_FEATURE_MDEV_CONF - bool "Support /etc/mdev.conf" + blkdiscard discards sectors on a given device. +config BUSYBOX_BLKID + bool "blkid (12 kb)" default y - depends on BUSYBOX_MDEV + select BUSYBOX_PLATFORM_LINUX + select BUSYBOX_VOLUMEID help - Add support for the mdev config file to control ownership and - permissions of the device nodes. + Lists labels and UUIDs of all filesystems. - For more information, please see docs/mdev.txt - -config BUSYBOX_FEATURE_MDEV_RENAME - bool "Support subdirs/symlinks" +config BUSYBOX_FEATURE_BLKID_TYPE + bool "Print filesystem type" default y - depends on BUSYBOX_FEATURE_MDEV_CONF + depends on BUSYBOX_BLKID help - Add support for renaming devices and creating symlinks. - - For more information, please see docs/mdev.txt - -config BUSYBOX_FEATURE_MDEV_RENAME_REGEXP - bool "Support regular expressions substitutions when renaming device" + Show TYPE="filesystem type" +config BUSYBOX_BLOCKDEV + bool "blockdev (2.3 kb)" default y - depends on BUSYBOX_FEATURE_MDEV_RENAME help - Add support for regular expressions substitutions when renaming - device. - -config BUSYBOX_FEATURE_MDEV_EXEC - bool "Support command execution at device addition/removal" + Performs some ioctls with block devices. +config BUSYBOX_CAL + bool "cal (5.8 kb)" default y - depends on BUSYBOX_FEATURE_MDEV_CONF help - This adds support for an optional field to /etc/mdev.conf for - executing commands when devices are created/removed. - - For more information, please see docs/mdev.txt - -config BUSYBOX_FEATURE_MDEV_LOAD_FIRMWARE - bool "Support loading of firmwares" + cal is used to display a monthly calendar. +config BUSYBOX_CHRT + bool "chrt (4.7 kb)" default y - depends on BUSYBOX_MDEV help - Some devices need to load firmware before they can be usable. - - These devices will request userspace look up the files in - /lib/firmware/ and if it exists, send it to the kernel for - loading into the hardware. - -config BUSYBOX_FEATURE_MDEV_DAEMON - bool "Support daemon mode" + Manipulate real-time attributes of a process. + This requires sched_{g,s}etparam support in your libc. +config BUSYBOX_DMESG + bool "dmesg (3.7 kb)" default y - depends on BUSYBOX_MDEV - help - Adds the -d option to run mdev in daemon mode handling hotplug - events from the kernel like udev. If the system generates many - hotplug events this mode of operation will consume less - resources than registering mdev as hotplug helper or using the - uevent applet. - -config BUSYBOX_MKE2FS - bool "mke2fs" - default n - select PLATFORM_LINUX - help - Utility to create EXT2 filesystems. - -config BUSYBOX_MKFS_EXT2 - bool "mkfs.ext2" - default n - select PLATFORM_LINUX - help - Alias to "mke2fs". - -config BUSYBOX_MKDOSFS - bool "mkdosfs" - default n - select PLATFORM_LINUX - help - Utility to create FAT32 filesystems. - -config BUSYBOX_NOLOGIN - bool "nologin" - default n - depends on BUSYBOX_FEATURE_SH_EMBEDDED_SCRIPTS - help - Politely refuse a login - -config BUSYBOX_NOLOGIN_DEPENDENCIES - bool "Enable dependencies for nologin" - default n # Y default makes it harder to select single-applet test - depends on BUSYBOX_NOLOGIN - select BUSYBOX_CAT - select BUSYBOX_ECHO - select BUSYBOX_SLEEP - help - nologin is implemented as a shell script. It requires the - following in the runtime environment: - cat echo sleep - If you know these will be available externally you can - disable this option. - -config BUSYBOX_NSENTER - bool "nsenter" - default n select BUSYBOX_PLATFORM_LINUX help - Run program with namespaces of other processes. + dmesg is used to examine or control the kernel ring buffer. When the + Linux kernel prints messages to the system log, they are stored in + the kernel ring buffer. You can use dmesg to print the kernel's ring + buffer, clear the kernel ring buffer, change the size of the kernel + ring buffer, and change the priority level at which kernel messages + are also logged to the system console. Enable this option if you + wish to enable the 'dmesg' utility. -config BUSYBOX_FEATURE_NSENTER_LONG_OPTS - bool "Enable long options" - default n - depends on BUSYBOX_NSENTER && BUSYBOX_LONG_OPTS - help - Support long options for the nsenter applet. This makes - the busybox implementation more compatible with upstream. - -config BUSYBOX_REV - bool "rev" - default n - help - Reverse lines of a file or files. - -config BUSYBOX_UEVENT - bool "uevent" - default n - select BUSYBOX_PLATFORM_LINUX +config BUSYBOX_FEATURE_DMESG_PRETTY + bool "Pretty output" + default y + depends on BUSYBOX_DMESG help - uevent is a netlink listener for kernel uevent notifications - sent via netlink. It is usually used for dynamic device creation. + If you wish to scrub the syslog level from the output, say 'Y' here. + The syslog level is a string prefixed to every line with the form + "<#>". -config BUSYBOX_UNSHARE - bool "unshare" - default n - depends on BUSYBOX_LONG_OPTS && !BUSYBOX_NOMMU - select BUSYBOX_PLATFORM_LINUX - help - Run program with some namespaces unshared from parent. + With this option you will see: + # dmesg + Linux version 2.6.17.4 ..... + BIOS-provided physical RAM map: + BIOS-e820: 0000000000000000 - 000000000009f000 (usable) -config BUSYBOX_ACPID - bool "acpid" - default n + Without this option you will see: + # dmesg + <5>Linux version 2.6.17.4 ..... + <6>BIOS-provided physical RAM map: + <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable) +config BUSYBOX_EJECT + bool "eject (4 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - acpid listens to ACPI events coming either in textual form from - /proc/acpi/event (though it is marked deprecated it is still widely - used and _is_ a standard) or in binary form from specified evdevs - (just use /dev/input/event*). + Used to eject cdroms. (defaults to /dev/cdrom) - It parses the event to retrieve ACTION and a possible PARAMETER. - It then spawns /etc/acpi/[/] either via run-parts - (if the resulting path is a directory) or directly as an executable. - - N.B. acpid relies on run-parts so have the latter installed. - -config BUSYBOX_FEATURE_ACPID_COMPAT - bool "Accept and ignore redundant options" +config BUSYBOX_FEATURE_EJECT_SCSI + bool "SCSI support" default y - depends on BUSYBOX_ACPID + depends on BUSYBOX_EJECT help - Accept and ignore compatibility options -g -m -s -S -v. - -config BUSYBOX_BLKID - bool "blkid" + Add the -s option to eject, this allows to eject SCSI-Devices and + usb-storage devices. +config BUSYBOX_FALLOCATE + bool "fallocate (4.1 kb)" default y - select BUSYBOX_PLATFORM_LINUX - select BUSYBOX_VOLUMEID - help - Lists labels and UUIDs of all filesystems. - WARNING: - With all submodules selected, it will add ~8k to busybox. - -config BUSYBOX_FEATURE_BLKID_TYPE - bool "Print filesystem type" - default n - depends on BUSYBOX_BLKID help - Show TYPE="filesystem type" - -config BUSYBOX_DMESG - bool "dmesg" + Preallocate space for files. +config BUSYBOX_FATATTR + bool "fatattr (1.9 kb)" default y select BUSYBOX_PLATFORM_LINUX help - dmesg is used to examine or control the kernel ring buffer. When the - Linux kernel prints messages to the system log, they are stored in - the kernel ring buffer. You can use dmesg to print the kernel's ring - buffer, clear the kernel ring buffer, change the size of the kernel - ring buffer, and change the priority level at which kernel messages - are also logged to the system console. Enable this option if you - wish to enable the 'dmesg' utility. - -config BUSYBOX_FEATURE_DMESG_PRETTY - bool "Pretty dmesg output" - default y - depends on BUSYBOX_DMESG - help - If you wish to scrub the syslog level from the output, say 'Y' here. - The syslog level is a string prefixed to every line with the form - "<#>". - - With this option you will see: - # dmesg - Linux version 2.6.17.4 ..... - BIOS-provided physical RAM map: - BIOS-e820: 0000000000000000 - 000000000009f000 (usable) - - Without this option you will see: - # dmesg - <5>Linux version 2.6.17.4 ..... - <6>BIOS-provided physical RAM map: - <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable) - + fatattr lists or changes the file attributes on a fat file system. config BUSYBOX_FBSET - bool "fbset" - depends on !BUSYBOX_DISABLE_FBSET - default n + bool "fbset (5.9 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - fbset is used to show or change the settings of a Linux frame buffer - device. The frame buffer device provides a simple and unique - interface to access a graphics display. Enable this option - if you wish to enable the 'fbset' utility. + fbset is used to show or change the settings of a Linux frame buffer + device. The frame buffer device provides a simple and unique + interface to access a graphics display. Enable this option + if you wish to enable the 'fbset' utility. config BUSYBOX_FEATURE_FBSET_FANCY - bool "Turn on extra fbset options" + bool "Enable extra options" default y depends on BUSYBOX_FBSET help - This option enables extended fbset options, allowing one to set the - framebuffer size, color depth, etc. interface to access a graphics - display. Enable this option if you wish to enable extended fbset - options. + This option enables extended fbset options, allowing one to set the + framebuffer size, color depth, etc. interface to access a graphics + display. Enable this option if you wish to enable extended fbset + options. config BUSYBOX_FEATURE_FBSET_READMODE - bool "Turn on fbset readmode support" + bool "Enable readmode support" default y depends on BUSYBOX_FBSET help - This option allows fbset to read the video mode database stored by - default as /etc/fb.modes, which can be used to set frame buffer - device to pre-defined video modes. - -config BUSYBOX_FDFLUSH - bool "fdflush" - default n - select BUSYBOX_PLATFORM_LINUX - help - fdflush is only needed when changing media on slightly-broken - removable media drives. It is used to make Linux believe that a - hardware disk-change switch has been actuated, which causes Linux to - forget anything it has cached from the previous media. If you have - such a slightly-broken drive, you will need to run fdflush every time - you change a disk. Most people have working hardware and can safely - leave this disabled. - + This option allows fbset to read the video mode database stored by + default as /etc/fb.modes, which can be used to set frame buffer + device to pre-defined video modes. config BUSYBOX_FDFORMAT - bool "fdformat" - default n + bool "fdformat (4.4 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - fdformat is used to low-level format a floppy disk. - + fdformat is used to low-level format a floppy disk. config BUSYBOX_FDISK - bool "fdisk" - default n - depends on !BUSYBOX_DISABLE_FDISK + bool "fdisk (37 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The fdisk utility is used to divide hard disks into one or more - logical disks, which are generally called partitions. This utility - can be used to list and edit the set of partitions or BSD style - 'disk slices' that are defined on a hard drive. + The fdisk utility is used to divide hard disks into one or more + logical disks, which are generally called partitions. This utility + can be used to list and edit the set of partitions or BSD style + 'disk slices' that are defined on a hard drive. config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS bool "Support over 4GB disks" default y depends on BUSYBOX_FDISK - depends on !BUSYBOX_LFS # with LFS no special code is needed - help - Enable this option to support large disks > 4GB. + depends on !BUSYBOX_LFS # with BUSYBOX_LFS no special code is needed config BUSYBOX_FEATURE_FDISK_WRITABLE bool "Write support" default y depends on BUSYBOX_FDISK help - Enabling this option allows you to create or change a partition table - and write those changes out to disk. If you leave this option - disabled, you will only be able to view the partition table. + Enabling this option allows you to create or change a partition table + and write those changes out to disk. If you leave this option + disabled, you will only be able to view the partition table. config BUSYBOX_FEATURE_AIX_LABEL bool "Support AIX disklabels" default n depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to create or change AIX disklabels. - Most people can safely leave this option disabled. + Enabling this option allows you to create or change AIX disklabels. + Most people can safely leave this option disabled. config BUSYBOX_FEATURE_SGI_LABEL bool "Support SGI disklabels" default n depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to create or change SGI disklabels. - Most people can safely leave this option disabled. + Enabling this option allows you to create or change SGI disklabels. + Most people can safely leave this option disabled. config BUSYBOX_FEATURE_SUN_LABEL bool "Support SUN disklabels" default n depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to create or change SUN disklabels. - Most people can safely leave this option disabled. + Enabling this option allows you to create or change SUN disklabels. + Most people can safely leave this option disabled. config BUSYBOX_FEATURE_OSF_LABEL bool "Support BSD disklabels" default n depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to create or change BSD disklabels - and define and edit BSD disk slices. + Enabling this option allows you to create or change BSD disklabels + and define and edit BSD disk slices. config BUSYBOX_FEATURE_GPT_LABEL bool "Support GPT disklabels" default n depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to view GUID Partition Table - disklabels. + Enabling this option allows you to view GUID Partition Table + disklabels. config BUSYBOX_FEATURE_FDISK_ADVANCED bool "Support expert mode" default y depends on BUSYBOX_FDISK && BUSYBOX_FEATURE_FDISK_WRITABLE help - Enabling this option allows you to do terribly unsafe things like - define arbitrary drive geometry, move the beginning of data in a - partition, and similarly evil things. Unless you have a very good - reason you would be wise to leave this disabled. - + Enabling this option allows you to do terribly unsafe things like + define arbitrary drive geometry, move the beginning of data in a + partition, and similarly evil things. Unless you have a very good + reason you would be wise to leave this disabled. config BUSYBOX_FINDFS - bool "findfs" - default n + bool "findfs (12 kb)" + default y select BUSYBOX_PLATFORM_LINUX select BUSYBOX_VOLUMEID help - Prints the name of a filesystem with given label or UUID. - WARNING: - With all submodules selected, it will add ~8k to busybox. - + Prints the name of a filesystem with given label or UUID. config BUSYBOX_FLOCK - bool "flock" - default n + bool "flock (6.3 kb)" + default y + help + Manage locks from shell scripts +config BUSYBOX_FDFLUSH + bool "fdflush (1.3 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Manage locks from shell scripts + fdflush is only needed when changing media on slightly-broken + removable media drives. It is used to make Linux believe that a + hardware disk-change switch has been actuated, which causes Linux to + forget anything it has cached from the previous media. If you have + such a slightly-broken drive, you will need to run fdflush every time + you change a disk. Most people have working hardware and can safely + leave this disabled. config BUSYBOX_FREERAMDISK - bool "freeramdisk" - default n + bool "freeramdisk (1.3 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Linux allows you to create ramdisks. This utility allows you to - delete them and completely free all memory that was used for the - ramdisk. For example, if you boot Linux into a ramdisk and later - pivot_root, you may want to free the memory that is allocated to the - ramdisk. If you have no use for freeing memory from a ramdisk, leave - this disabled. - + Linux allows you to create ramdisks. This utility allows you to + delete them and completely free all memory that was used for the + ramdisk. For example, if you boot Linux into a ramdisk and later + pivot_root, you may want to free the memory that is allocated to the + ramdisk. If you have no use for freeing memory from a ramdisk, leave + this disabled. config BUSYBOX_FSCK_MINIX - bool "fsck_minix" - default n + bool "fsck.minix (13 kb)" + default y help - The minix filesystem is a nice, small, compact, read-write filesystem - with little overhead. It is not a journaling filesystem however and - can experience corruption if it is not properly unmounted or if the - power goes off in the middle of a write. This utility allows you to - check for and attempt to repair any corruption that occurs to a minix - filesystem. - + The minix filesystem is a nice, small, compact, read-write filesystem + with little overhead. It is not a journaling filesystem however and + can experience corruption if it is not properly unmounted or if the + power goes off in the middle of a write. This utility allows you to + check for and attempt to repair any corruption that occurs to a minix + filesystem. config BUSYBOX_FSFREEZE bool "fsfreeze (3.5 kb)" - default n + default y select BUSYBOX_PLATFORM_LINUX select BUSYBOX_LONG_OPTS help Halt new accesses and flush writes on a mounted filesystem. - -config BUSYBOX_MKFS_EXT2 - bool "mkfs_ext2" - default n +config BUSYBOX_FSTRIM + bool "fstrim (4.4 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Utility to create EXT2 filesystems. + Discard unused blocks on a mounted filesystem. +config BUSYBOX_GETOPT + bool "getopt (5.8 kb)" + default y + help + The getopt utility is used to break up (parse) options in command + lines to make it easy to write complex shell scripts that also check + for legal (and illegal) options. If you want to write horribly + complex shell scripts, or use some horribly complex shell script + written by others, this utility may be for you. Most people will + wisely leave this disabled. -config BUSYBOX_MKFS_MINIX - bool "mkfs_minix" - default n +config BUSYBOX_FEATURE_GETOPT_LONG + bool "Support -l LONGOPTs" + default y + depends on BUSYBOX_GETOPT && BUSYBOX_LONG_OPTS + help + Enable support for long options (option -l). +config BUSYBOX_HEXDUMP + bool "hexdump (8.6 kb)" + default y + help + The hexdump utility is used to display binary data in a readable + way that is comparable to the output from most hex editors. + +config BUSYBOX_FEATURE_HEXDUMP_REVERSE + bool "Support -R, reverse of 'hexdump -Cv'" + default y + depends on BUSYBOX_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_HD + bool "hd (7.8 kb)" + default y + help + hd is an alias to hexdump -C. +config BUSYBOX_XXD + bool "xxd (8.9 kb)" + default y + help + The xxd utility is used to display binary data in a readable + way that is comparable to the output from most hex editors. +config BUSYBOX_HWCLOCK + bool "hwclock (5.8 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The minix filesystem is a nice, small, compact, read-write filesystem - with little overhead. If you wish to be able to create minix - filesystems this utility will do the job for you. + The hwclock utility is used to read and set the hardware clock + on a system. This is primarily used to set the current time on + shutdown in the hardware clock, so the hardware will keep the + correct time when Linux is _not_ running. -config BUSYBOX_FEATURE_MINIX2 - bool "Support Minix fs v2 (fsck_minix/mkfs_minix)" +config BUSYBOX_FEATURE_HWCLOCK_ADJTIME_FHS + bool "Use FHS /var/lib/hwclock/adjtime" + default n # util-linux-ng in Fedora 13 still uses /etc/adjtime + depends on BUSYBOX_HWCLOCK + help + Starting with FHS 2.3, the adjtime state file is supposed to exist + at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish + to use the FHS behavior, answer Y here, otherwise answer N for the + classic /etc/adjtime path. + + pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO +config BUSYBOX_IONICE + bool "ionice (3.8 kb)" default y - depends on BUSYBOX_FSCK_MINIX || BUSYBOX_MKFS_MINIX + select BUSYBOX_PLATFORM_LINUX help - If you wish to be able to create version 2 minix filesystems, enable - this. If you enabled 'mkfs_minix' then you almost certainly want to - be using the version 2 filesystem support. + Set/set program io scheduling class and priority + Requires kernel >= 2.6.13 +config BUSYBOX_IPCRM + bool "ipcrm (3.2 kb)" + default y + help + The ipcrm utility allows the removal of System V interprocess + communication (IPC) objects and the associated data structures + from the system. +config BUSYBOX_IPCS + bool "ipcs (11 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + The ipcs utility is used to provide information on the currently + allocated System V interprocess (IPC) objects in the system. +config BUSYBOX_LAST + bool "last (6.1 kb)" + default y + depends on BUSYBOX_FEATURE_WTMP + help + 'last' displays a list of the last users that logged into the system. -config BUSYBOX_MKFS_REISER - bool "mkfs_reiser" - default n +config BUSYBOX_FEATURE_LAST_FANCY + bool "Output extra information" + default y + depends on BUSYBOX_LAST + help + 'last' displays detailed information about the last users that + logged into the system (mimics sysvinit last). +900 bytes. +config BUSYBOX_LOSETUP + bool "losetup (5.5 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Utility to create ReiserFS filesystems. - Note: this applet needs a lot of testing and polishing. + losetup is used to associate or detach a loop device with a regular + file or block device, and to query the status of a loop device. This + version does not currently support enabling data encryption. +config BUSYBOX_LSPCI + bool "lspci (6.3 kb)" + default y + #select BUSYBOX_PLATFORM_LINUX + help + lspci is a utility for displaying information about PCI buses in the + system and devices connected to them. -config BUSYBOX_MKFS_VFAT - bool "mkfs_vfat" - default n + This version uses sysfs (/sys/bus/pci/devices) only. +config BUSYBOX_LSUSB + bool "lsusb (4.2 kb)" + default y + #select BUSYBOX_PLATFORM_LINUX + help + lsusb is a utility for displaying information about USB buses in the + system and devices connected to them. + + This version uses sysfs (/sys/bus/usb/devices) only. +config BUSYBOX_MDEV + bool "mdev (17 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Utility to create FAT32 filesystems. + mdev is a mini-udev implementation for dynamically creating device + nodes in the /dev directory. + + For more information, please see docs/mdev.txt + +config BUSYBOX_FEATURE_MDEV_CONF + bool "Support /etc/mdev.conf" + default y + depends on BUSYBOX_MDEV + help + Add support for the mdev config file to control ownership and + permissions of the device nodes. + + For more information, please see docs/mdev.txt + +config BUSYBOX_FEATURE_MDEV_RENAME + bool "Support subdirs/symlinks" + default y + depends on BUSYBOX_FEATURE_MDEV_CONF + help + Add support for renaming devices and creating symlinks. + + For more information, please see docs/mdev.txt + +config BUSYBOX_FEATURE_MDEV_RENAME_REGEXP + bool "Support regular expressions substitutions when renaming device" + default y + depends on BUSYBOX_FEATURE_MDEV_RENAME + help + Add support for regular expressions substitutions when renaming + device. + +config BUSYBOX_FEATURE_MDEV_EXEC + bool "Support command execution at device addition/removal" + default y + depends on BUSYBOX_FEATURE_MDEV_CONF + help + This adds support for an optional field to /etc/mdev.conf for + executing commands when devices are created/removed. -config BUSYBOX_GETOPT - bool "getopt" - default n - help - The getopt utility is used to break up (parse) options in command - lines to make it easy to write complex shell scripts that also check - for legal (and illegal) options. If you want to write horribly - complex shell scripts, or use some horribly complex shell script - written by others, this utility may be for you. Most people will - wisely leave this disabled. + For more information, please see docs/mdev.txt -config BUSYBOX_FEATURE_GETOPT_LONG - bool "Support option -l" - default y if LONG_OPTS - depends on BUSYBOX_GETOPT +config BUSYBOX_FEATURE_MDEV_LOAD_FIRMWARE + bool "Support loading of firmware" + default y + depends on BUSYBOX_MDEV help - Enable support for long options (option -l). + Some devices need to load firmware before they can be usable. -config BUSYBOX_HEXDUMP - bool "hexdump" - default n - help - The hexdump utility is used to display binary data in a readable - way that is comparable to the output from most hex editors. + These devices will request userspace look up the files in + /lib/firmware/ and if it exists, send it to the kernel for + loading into the hardware. -config BUSYBOX_FEATURE_HEXDUMP_REVERSE - bool "Support -R, reverse of 'hexdump -Cv'" +config BUSYBOX_FEATURE_MDEV_DAEMON + bool "Support daemon mode" default y - depends on BUSYBOX_HEXDUMP + depends on BUSYBOX_MDEV 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_HD - bool "hd" - default n + Adds the -d option to run mdev in daemon mode handling hotplug + events from the kernel like udev. If the system generates many + hotplug events this mode of operation will consume less + resources than registering mdev as hotplug helper or using the + uevent applet. +config BUSYBOX_MESG + bool "mesg (1.4 kb)" + default y help - hd is an alias to hexdump -C. + Mesg controls access to your terminal by others. It is typically + used to allow or disallow other users to write to your terminal -config BUSYBOX_XXD - bool "xxd (8.9 kb)" - default n +config BUSYBOX_FEATURE_MESG_ENABLE_ONLY_GROUP + bool "Enable writing to tty only by group, not by everybody" + default y + depends on BUSYBOX_MESG help - The xxd utility is used to display binary data in a readable - way that is comparable to the output from most hex editors. + Usually, ttys are owned by group "tty", and "write" tool is + setgid to this group. This way, "mesg y" only needs to enable + "write by owning group" bit in tty mode. -config BUSYBOX_HWCLOCK - bool "hwclock" - default y if ADK_TARGET_WITH_RTC - default n + If you set this option to N, "mesg y" will enable writing + by anybody at all. This is not recommended. +config BUSYBOX_MKE2FS + bool "mke2fs (10 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The hwclock utility is used to read and set the hardware clock - on a system. This is primarily used to set the current time on - shutdown in the hardware clock, so the hardware will keep the - correct time when Linux is _not_ running. + Utility to create EXT2 filesystems. -config BUSYBOX_FEATURE_HWCLOCK_LONG_OPTIONS - bool "Support long options (--hctosys,...)" +config BUSYBOX_MKFS_EXT2 + bool "mkfs.ext2 (10 kb)" default y - depends on BUSYBOX_HWCLOCK && BUSYBOX_LONG_OPTS + select BUSYBOX_PLATFORM_LINUX help - By default, the hwclock utility only uses short options. If you - are overly fond of its long options, such as --hctosys, --utc, etc) - then enable this option. - -config BUSYBOX_FEATURE_HWCLOCK_ADJTIME_FHS - bool "Use FHS /var/lib/hwclock/adjtime" - default n # util-linux-ng in Fedora 13 still uses /etc/adjtime - depends on BUSYBOX_HWCLOCK + Alias to "mke2fs". +config BUSYBOX_MKFS_MINIX + bool "mkfs.minix (10 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Starting with FHS 2.3, the adjtime state file is supposed to exist - at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish - to use the FHS behavior, answer Y here, otherwise answer N for the - classic /etc/adjtime path. + The minix filesystem is a nice, small, compact, read-write filesystem + with little overhead. If you wish to be able to create minix + filesystems this utility will do the job for you. - pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO - -config BUSYBOX_IPCRM - bool "ipcrm" - default n +config BUSYBOX_FEATURE_MINIX2 + bool "Support Minix fs v2 (fsck_minix/mkfs_minix)" + default y + depends on BUSYBOX_FSCK_MINIX || BUSYBOX_MKFS_MINIX help - The ipcrm utility allows the removal of System V interprocess - communication (IPC) objects and the associated data structures - from the system. - -config BUSYBOX_IPCS - bool "ipcs" + If you wish to be able to create version 2 minix filesystems, enable + this. If you enabled 'mkfs_minix' then you almost certainly want to + be using the version 2 filesystem support. +config BUSYBOX_MKFS_REISER + bool "mkfs_reiser" default n select BUSYBOX_PLATFORM_LINUX help - The ipcs utility is used to provide information on the currently - allocated System V interprocess (IPC) objects in the system. - -config BUSYBOX_LOSETUP - bool "losetup" - default n + Utility to create ReiserFS filesystems. + Note: this applet needs a lot of testing and polishing. +config BUSYBOX_MKDOSFS + bool "mkdosfs (7.2 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - losetup is used to associate or detach a loop device with a regular - file or block device, and to query the status of a loop device. This - version does not currently support enabling data encryption. - -config BUSYBOX_LSPCI - bool "lspci" - depends on !BUSYBOX_DISABLE_LSPCI - default n - #select PLATFORM_LINUX - help - lspci is a utility for displaying information about PCI buses in the - system and devices connected to them. + Utility to create FAT32 filesystems. - This version uses sysfs (/sys/bus/pci/devices) only. - -config BUSYBOX_LSUSB - bool "lsusb" - depends on !BUSYBOX_DISABLE_LSUSB - default n - #select PLATFORM_LINUX +config BUSYBOX_MKFS_VFAT + bool "mkfs.vfat (7.2 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - lsusb is a utility for displaying information about USB buses in the - system and devices connected to them. - - This version uses sysfs (/sys/bus/usb/devices) only. - + Alias to "mkdosfs". config BUSYBOX_MKSWAP - bool "mkswap" - default n + bool "mkswap (6.3 kb)" + default y help - The mkswap utility is used to configure a file or disk partition as - Linux swap space. This allows Linux to use the entire file or - partition as if it were additional RAM, which can greatly increase - the capability of low-memory machines. This additional memory is - much slower than real RAM, but can be very helpful at preventing your - applications being killed by the Linux out of memory (OOM) killer. - Once you have created swap space using 'mkswap' you need to enable - the swap space using the 'swapon' utility. + The mkswap utility is used to configure a file or disk partition as + Linux swap space. This allows Linux to use the entire file or + partition as if it were additional RAM, which can greatly increase + the capability of low-memory machines. This additional memory is + much slower than real RAM, but can be very helpful at preventing your + applications being killed by the Linux out of memory (OOM) killer. + Once you have created swap space using 'mkswap' you need to enable + the swap space using the 'swapon' utility. config BUSYBOX_FEATURE_MKSWAP_UUID bool "UUID support" default y depends on BUSYBOX_MKSWAP help - Generate swap spaces with universally unique identifiers. - + Generate swap spaces with universally unique identifiers. config BUSYBOX_MORE - bool "more" - default n + bool "more (7 kb)" + default y help - more is a simple utility which allows you to read text one screen - sized page at a time. If you want to read text that is larger than - the screen, and you are using anything faster than a 300 baud modem, - you will probably find this utility very helpful. If you don't have - any need to reading text files, you can leave this disabled. - + more is a simple utility which allows you to read text one screen + sized page at a time. If you want to read text that is larger than + the screen, and you are using anything faster than a 300 baud modem, + you will probably find this utility very helpful. If you don't have + any need to reading text files, you can leave this disabled. config BUSYBOX_MOUNT - bool "mount" + bool "mount (23 kb)" default y - depends on !BUSYBOX_DISABLE_MOUNT select BUSYBOX_PLATFORM_LINUX help - All files and filesystems in Unix are arranged into one big directory - tree. The 'mount' utility is used to graft a filesystem onto a - particular part of the tree. A filesystem can either live on a block - device, or it can be accessible over the network, as is the case with - NFS filesystems. Most people using BusyBox will also want to enable - the 'mount' utility. + All files and filesystems in Unix are arranged into one big directory + tree. The 'mount' utility is used to graft a filesystem onto a + particular part of the tree. A filesystem can either live on a block + device, or it can be accessible over the network, as is the case with + NFS filesystems. config BUSYBOX_FEATURE_MOUNT_FAKE - bool "Support option -f" - default n + bool "Support -f (fake mount)" + default y depends on BUSYBOX_MOUNT help - Enable support for faking a file system mount. + Enable support for faking a file system mount. config BUSYBOX_FEATURE_MOUNT_VERBOSE - bool "Support option -v" - default n + bool "Support -v (verbose)" + default y depends on BUSYBOX_MOUNT help - Enable multi-level -v[vv...] verbose messages. Useful if you - debug mount problems and want to see what is exactly passed - to the kernel. + Enable multi-level -v[vv...] verbose messages. Useful if you + debug mount problems and want to see what is exactly passed + to the kernel. config BUSYBOX_FEATURE_MOUNT_HELPERS bool "Support mount helpers" - default y + default n depends on BUSYBOX_MOUNT help - Enable mounting of virtual file systems via external helpers. - E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call - "obexfs -b00.11.22.33.44.55 /mnt" - Also "mount -t sometype [-o opts] fs /mnt" will try - "sometype [-o opts] fs /mnt" if simple mount syscall fails. - The idea is to use such virtual filesystems in /etc/fstab. + Enable mounting of virtual file systems via external helpers. + E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call + "obexfs -b00.11.22.33.44.55 /mnt" + Also "mount -t sometype [-o opts] fs /mnt" will try + "sometype [-o opts] fs /mnt" if simple mount syscall fails. + The idea is to use such virtual filesystems in /etc/fstab. config BUSYBOX_FEATURE_MOUNT_LABEL bool "Support specifying devices by label or UUID" @@ -679,138 +625,168 @@ config BUSYBOX_FEATURE_MOUNT_LABEL depends on BUSYBOX_MOUNT select BUSYBOX_VOLUMEID help - This allows for specifying a device by label or uuid, rather than by - name. This feature utilizes the same functionality as blkid/findfs. - This also enables label or uuid support for swapon. + This allows for specifying a device by label or uuid, rather than by + name. This feature utilizes the same functionality as blkid/findfs. config BUSYBOX_FEATURE_MOUNT_NFS bool "Support mounting NFS file systems on Linux < 2.6.23" default n depends on BUSYBOX_MOUNT - select BUSYBOX_FEATURE_HAVE_RPC select BUSYBOX_FEATURE_SYSLOG help - Enable mounting of NFS file systems on Linux kernels prior - to version 2.6.23. Note that in this case mounting of NFS - over IPv6 will not be possible. + Enable mounting of NFS file systems on Linux kernels prior + to version 2.6.23. Note that in this case mounting of NFS + over IPv6 will not be possible. - Note that this option links in RPC support from libc, - which is rather large (~10 kbytes on uclibc). + Note that this option links in RPC support from libc, + which is rather large (~10 kbytes on uclibc). config BUSYBOX_FEATURE_MOUNT_CIFS bool "Support mounting CIFS/SMB file systems" - default n + default y depends on BUSYBOX_MOUNT help - Enable support for samba mounts. + Enable support for samba mounts. config BUSYBOX_FEATURE_MOUNT_FLAGS depends on BUSYBOX_MOUNT - bool "Support lots of -o flags in mount" + bool "Support lots of -o flags" default y help - Without this, mount only supports ro/rw/remount. With this, it - supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime, - noatime, diratime, nodiratime, loud, bind, move, shared, slave, - private, unbindable, rshared, rslave, rprivate, and runbindable. + Without this, mount only supports ro/rw/remount. With this, it + supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime, + noatime, diratime, nodiratime, loud, bind, move, shared, slave, + private, unbindable, rshared, rslave, rprivate, and runbindable. config BUSYBOX_FEATURE_MOUNT_FSTAB depends on BUSYBOX_MOUNT - bool "Support /etc/fstab and -a" + bool "Support /etc/fstab and -a (mount all)" default y help - Support mount all and looking for files in /etc/fstab. + Support mount all and looking for files in /etc/fstab. config BUSYBOX_FEATURE_MOUNT_OTHERTAB depends on BUSYBOX_FEATURE_MOUNT_FSTAB bool "Support -T " - default n + default y + help + Support mount -T (specifying an alternate fstab) +config BUSYBOX_MOUNTPOINT + bool "mountpoint (4.9 kb)" + default y + help + mountpoint checks if the directory is a mountpoint. +config BUSYBOX_NOLOGIN + bool "nologin" + default y + depends on BUSYBOX_FEATURE_SH_EMBEDDED_SCRIPTS help - Support mount -T (specifying an alternate fstab) + Politely refuse a login +config BUSYBOX_NOLOGIN_DEPENDENCIES + bool "Enable dependencies for nologin" + default n # Y default makes it harder to select single-applet test + depends on BUSYBOX_NOLOGIN + select BUSYBOX_CAT + select BUSYBOX_ECHO + select BUSYBOX_SLEEP + help + nologin is implemented as a shell script. It requires the + following in the runtime environment: + cat echo sleep + If you know these will be available externally you can + disable this option. +config BUSYBOX_NSENTER + bool "nsenter (6.5 kb)" + default y + select BUSYBOX_PLATFORM_LINUX + help + Run program with namespaces of other processes. config BUSYBOX_PIVOT_ROOT - bool "pivot_root" - default n + bool "pivot_root (1.1 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The pivot_root utility swaps the mount points for the root filesystem - with some other mounted filesystem. This allows you to do all sorts - of wild and crazy things with your Linux system and is far more - powerful than 'chroot'. - - Note: This is for initrd in linux 2.4. Under initramfs (introduced - in linux 2.6) use switch_root instead. + The pivot_root utility swaps the mount points for the root filesystem + with some other mounted filesystem. This allows you to do all sorts + of wild and crazy things with your Linux system and is far more + powerful than 'chroot'. + Note: This is for initrd in linux 2.4. Under initramfs (introduced + in linux 2.6) use switch_root instead. config BUSYBOX_RDATE - bool "rdate" - depends on !BUSYBOX_DISABLE_RDATE - default n + bool "rdate (5.6 kb)" + default y help - The rdate utility allows you to synchronize the date and time of your - system clock with the date and time of a remote networked system using - the RFC868 protocol, which is built into the inetd daemon on most - systems. - + The rdate utility allows you to synchronize the date and time of your + system clock with the date and time of a remote networked system using + the RFC868 protocol, which is built into the inetd daemon on most + systems. config BUSYBOX_RDEV - bool "rdev" + bool "rdev (1.8 kb)" default y help - Print the device node associated with the filesystem mounted at '/'. - + Print the device node associated with the filesystem mounted at '/'. config BUSYBOX_READPROFILE - bool "readprofile" - default n - #select PLATFORM_LINUX + bool "readprofile (7.1 kb)" + default y + #select BUSYBOX_PLATFORM_LINUX help - This allows you to parse /proc/profile for basic profiling. - + This allows you to parse /proc/profile for basic profiling. +config BUSYBOX_RENICE + bool "renice (4.2 kb)" + default y + help + Renice alters the scheduling priority of one or more running + processes. +config BUSYBOX_REV + bool "rev (4.4 kb)" + default y + help + Reverse lines of a file or files. config BUSYBOX_RTCWAKE - bool "rtcwake" - default n + bool "rtcwake (6.8 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - Enter a system sleep state until specified wakeup time. - + Enter a system sleep state until specified wakeup time. config BUSYBOX_SCRIPT - bool "script" - default n + bool "script (8.6 kb)" + default y help - The script makes typescript of terminal session. - + The script makes typescript of terminal session. config BUSYBOX_SCRIPTREPLAY - bool "scriptreplay" - default n + bool "scriptreplay (2.4 kb)" + default y help - This program replays a typescript, using timing information - given by script -t. - + This program replays a typescript, using timing information + given by script -t. config BUSYBOX_SETARCH - bool "setarch" - default n + bool "setarch (3.6 kb)" + default y select BUSYBOX_PLATFORM_LINUX help - The linux32 utility is used to create a 32bit environment for the - specified program (usually a shell). It only makes sense to have - this util on a system that supports both 64bit and 32bit userland - (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). + The linux32 utility is used to create a 32bit environment for the + specified program (usually a shell). It only makes sense to have + this util on a system that supports both 64bit and 32bit userland + (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). config BUSYBOX_LINUX32 - bool "linux32" - default n - select PLATFORM_LINUX + bool "linux32 (3.3 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Alias to "setarch linux32". + Alias to "setarch linux32". config BUSYBOX_LINUX64 - bool "linux64" - default n - select PLATFORM_LINUX + bool "linux64 (3.3 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - Alias to "setarch linux64". - + Alias to "setarch linux64". config BUSYBOX_SETPRIV bool "setpriv (6.6 kb)" - default n + default y select BUSYBOX_PLATFORM_LINUX select BUSYBOX_LONG_OPTS help @@ -844,411 +820,188 @@ config BUSYBOX_FEATURE_SETPRIV_CAPABILITY_NAMES e.g. "net_admin", or using their index, e.g. "cap_12". Enabling this option allows using the human-readable names in addition to the index-based names. - +config BUSYBOX_SETSID + bool "setsid (3.6 kb)" + default y + help + setsid runs a program in a new session config BUSYBOX_SWAPON - bool "swapon" - default n - select PLATFORM_LINUX + bool "swapon (15 kb)" + default y + select BUSYBOX_PLATFORM_LINUX help - This option enables the 'swapon' utility. - Once you have created some swap space using 'mkswap', you also need - to enable your swap space with the 'swapon' utility. The 'swapoff' - utility is used, typically at system shutdown, to disable any swap - space. If you are not using any swap space, you can leave this - option disabled. + Once you have created some swap space using 'mkswap', you also need + to enable your swap space with the 'swapon' utility. The 'swapoff' + utility is used, typically at system shutdown, to disable any swap + space. If you are not using any swap space, you can leave this + option disabled. config BUSYBOX_FEATURE_SWAPON_DISCARD bool "Support discard option -d" - default n + default y depends on BUSYBOX_SWAPON help - Enable support for discarding swap area blocks at swapon and/or as - the kernel frees them. This option enables both the -d option on - 'swapon' and the 'discard' option for swap entries in /etc/fstab. + Enable support for discarding swap area blocks at swapon and/or as + the kernel frees them. This option enables both the -d option on + 'swapon' and the 'discard' option for swap entries in /etc/fstab. config BUSYBOX_FEATURE_SWAPON_PRI bool "Support priority option -p" default y depends on BUSYBOX_SWAPON help - Enable support for setting swap device priority in swapon. + Enable support for setting swap device priority in swapon. config BUSYBOX_SWAPOFF - bool "swapoff" - default n - select PLATFORM_LINUX - help - This option enables the 'swapoff' utility. - -config BUSYBOX_SWITCH_ROOT - bool "switch_root" - default n - select BUSYBOX_PLATFORM_LINUX - help - The switch_root utility is used from initramfs to select a new - root device. Under initramfs, you have to use this instead of - pivot_root. (Stop reading here if you don't care why.) - - Booting with initramfs extracts a gzipped cpio archive into rootfs - (which is a variant of ramfs/tmpfs). Because rootfs can't be moved - or unmounted*, pivot_root will not work from initramfs. Instead, - switch_root deletes everything out of rootfs (including itself), - does a mount --move that overmounts rootfs with the new root, and - then execs the specified init program. - - * Because the Linux kernel uses rootfs internally as the starting - and ending point for searching through the kernel's doubly linked - list of active mount points. That's why. - -config BUSYBOX_UMOUNT - bool "umount" + bool "swapoff (14 kb)" default y - depends on !BUSYBOX_DISABLE_UMOUNT select BUSYBOX_PLATFORM_LINUX - help - When you want to remove a mounted filesystem from its current mount - point, for example when you are shutting down the system, the - 'umount' utility is the tool to use. If you enabled the 'mount' - utility, you almost certainly also want to enable 'umount'. - -config BUSYBOX_FEATURE_UMOUNT_ALL - bool "Support option -a" - default y - depends on BUSYBOX_UMOUNT - help - Support -a option to unmount all currently mounted filesystems. - -comment "Common options for mount/umount" - depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT - -config BUSYBOX_FEATURE_MOUNT_LOOP - bool "Support loopback mounts" - default y - depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT - help - Enabling this feature allows automatic mounting of files (containing - filesystem images) via the linux kernel's loopback devices. - The mount command will detect you are trying to mount a file instead - of a block device, and transparently associate the file with a - loopback device. The umount command will also free that loopback - device. - - You can still use the 'losetup' utility (to manually associate files - with loop devices) if you need to do something advanced, such as - specify an offset or cryptographic options to the loopback device. - (If you don't want umount to free the loop device, use "umount -D".) - -config BUSYBOX_FEATURE_MOUNT_LOOP_CREATE - bool "Create new loopback devices if needed" - default y - depends on BUSYBOX_FEATURE_MOUNT_LOOP - help - Linux kernels >= 2.6.24 support unlimited loopback devices. They are - allocated for use when trying to use a loop device. The loop device - must however exist. - - This feature lets mount to try to create next /dev/loopN device - if it does not find a free one. -config BUSYBOX_FEATURE_MTAB_SUPPORT - bool "Support for the old /etc/mtab file" - default n - depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT - select BUSYBOX_FEATURE_MOUNT_FAKE - help - Historically, Unix systems kept track of the currently mounted - partitions in the file "/etc/mtab". These days, the kernel exports - the list of currently mounted partitions in "/proc/mounts", rendering - the old mtab file obsolete. (In modern systems, /etc/mtab should be - a symlink to /proc/mounts.) - - The only reason to have mount maintain an /etc/mtab file itself is if - your stripped-down embedded system does not have a /proc directory. - If you must use this, keep in mind it's inherently brittle (for - example a mount under chroot won't update it), can't handle modern - features like separate per-process filesystem namespaces, requires - that your /etc directory be writable, tends to get easily confused - by --bind or --move mounts, won't update if you rename a directory - that contains a mount point, and so on. (In brief: avoid.) - - About the only reason to use this is if you've removed /proc from - your kernel. - -config BUSYBOX_VOLUMEID - bool #No description makes it a hidden option - default n - -menu "Filesystem/Volume identification" - depends on BUSYBOX_VOLUMEID - -config BUSYBOX_FEATURE_VOLUMEID_BCACHE - bool "bcache filesystem" - default n - depends on BUSYBOX_VOLUMEID - help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_EXT - bool "Ext filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_BTRFS - bool "btrfs filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_REISERFS - bool "Reiser filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_F2FS - bool "f2fs filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - F2FS (aka Flash-Friendly File System) is a log-structured file system, - which is adapted to newer forms of storage. F2FS also remedies some - known issues of the older log structured file systems, such as high - cleaning overhead. - -config BUSYBOX_FEATURE_VOLUMEID_FAT - bool "fat filesystem" +config BUSYBOX_FEATURE_SWAPONOFF_LABEL + bool "Support specifying devices by label or UUID" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_SWAPON || BUSYBOX_SWAPOFF + select BUSYBOX_VOLUMEID help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_EXFAT - bool "exFAT filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - exFAT (extended FAT) is a proprietary file system designed especially - for flash drives. It has many features from NTFS, but with less - overhead. exFAT is used on most SDXC cards for consumer electronics. - -config BUSYBOX_FEATURE_VOLUMEID_HFS - bool "hfs filesystem" + This allows for specifying a device by label or uuid, rather than by + name. This feature utilizes the same functionality as blkid/findfs. +config BUSYBOX_SWITCH_ROOT + bool "switch_root (5.5 kb)" default y - depends on BUSYBOX_VOLUMEID + select BUSYBOX_PLATFORM_LINUX help - TODO + The switch_root utility is used from initramfs to select a new + root device. Under initramfs, you have to use this instead of + pivot_root. (Stop reading here if you don't care why.) -config BUSYBOX_FEATURE_VOLUMEID_MINIX - bool "minix filesystem" - default y - depends on BUSYBOX_VOLUMEID + Booting with initramfs extracts a gzipped cpio archive into rootfs + (which is a variant of ramfs/tmpfs). Because rootfs can't be moved + or unmounted*, pivot_root will not work from initramfs. Instead, + switch_root deletes everything out of rootfs (including itself), + does a mount --move that overmounts rootfs with the new root, and + then execs the specified init program. -config BUSYBOX_FEATURE_VOLUMEID_NILFS - bool "nilfs filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - TODO + * Because the Linux kernel uses rootfs internally as the starting + and ending point for searching through the kernel's doubly linked + list of active mount points. That's why. -config BUSYBOX_FEATURE_VOLUMEID_JFS - bool "jfs filesystem" +config BUSYBOX_TASKSET + bool "taskset (4.2 kb)" default y - depends on BUSYBOX_VOLUMEID help - TODO + Retrieve or set a processes's CPU affinity. + This requires sched_{g,s}etaffinity support in your libc. -### config FEATURE_VOLUMEID_UFS -### bool "ufs filesystem" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -config BUSYBOX_FEATURE_VOLUMEID_XFS - bool "xfs filesystem" +config BUSYBOX_FEATURE_TASKSET_FANCY + bool "Fancy output" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_TASKSET help - TODO + Needed for machines with more than 32-64 CPUs: + affinity parameter 0xHHHHHHHHHHHHHHHHHHHH can be arbitrarily long + in this case. Otherwise, it is limited to sizeof(long). -config BUSYBOX_FEATURE_VOLUMEID_NTFS - bool "ntfs filesystem" +config BUSYBOX_FEATURE_TASKSET_CPULIST + bool "CPU list support (-c option)" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_FEATURE_TASKSET_FANCY help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_ISO9660 - bool "iso9660 filesystem" + 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_UEVENT + bool "uevent (3.1 kb)" default y - depends on BUSYBOX_VOLUMEID + select BUSYBOX_PLATFORM_LINUX help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_UDF - bool "udf filesystem" + uevent is a netlink listener for kernel uevent notifications + sent via netlink. It is usually used for dynamic device creation. +config BUSYBOX_UMOUNT + bool "umount (5.1 kb)" default y - depends on BUSYBOX_VOLUMEID + select BUSYBOX_PLATFORM_LINUX help - TODO + When you want to remove a mounted filesystem from its current mount + point, for example when you are shutting down the system, the + 'umount' utility is the tool to use. If you enabled the 'mount' + utility, you almost certainly also want to enable 'umount'. -config BUSYBOX_FEATURE_VOLUMEID_LUKS - bool "luks filesystem" +config BUSYBOX_FEATURE_UMOUNT_ALL + bool "Support -a (unmount all)" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_UMOUNT help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_LINUXSWAP - bool "linux swap filesystem" + Support -a option to unmount all currently mounted filesystems. +config BUSYBOX_UNSHARE + bool "unshare (7.2 kb)" default y - depends on BUSYBOX_VOLUMEID + depends on !BUSYBOX_NOMMU + select BUSYBOX_PLATFORM_LINUX + select BUSYBOX_LONG_OPTS help - TODO - -### config FEATURE_VOLUMEID_LVM -### bool "lvm" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -config BUSYBOX_FEATURE_VOLUMEID_CRAMFS - bool "cramfs filesystem" + Run program with some namespaces unshared from parent. +config BUSYBOX_WALL + bool "wall (2.6 kb)" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_FEATURE_UTMP help - TODO + Write a message to all users that are logged in. -### config FEATURE_VOLUMEID_HPFS -### bool "hpfs filesystem" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO +comment "Common options for mount/umount" + depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT -config BUSYBOX_FEATURE_VOLUMEID_ROMFS - bool "romfs filesystem" +config BUSYBOX_FEATURE_MOUNT_LOOP + bool "Support loopback mounts" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT help - TODO + Enabling this feature allows automatic mounting of files (containing + filesystem images) via the linux kernel's loopback devices. + The mount command will detect you are trying to mount a file instead + of a block device, and transparently associate the file with a + loopback device. The umount command will also free that loopback + device. -config BUSYBOX_FEATURE_VOLUMEID_SQUASHFS - bool "SquashFS filesystem" - default y - depends on BUSYBOX_VOLUMEID && BUSYBOX_FEATURE_BLKID_TYPE - help - Squashfs is a compressed read-only filesystem for Linux. Squashfs is - intended for general read-only filesystem use and in constrained block - device/memory systems (e.g. embedded systems) where low overhead is - needed. + You can still use the 'losetup' utility (to manually associate files + with loop devices) if you need to do something advanced, such as + specify an offset or cryptographic options to the loopback device. + (If you don't want umount to free the loop device, use "umount -D".) -config BUSYBOX_FEATURE_VOLUMEID_SYSV - bool "sysv filesystem" +config BUSYBOX_FEATURE_MOUNT_LOOP_CREATE + bool "Create new loopback devices if needed" default y - depends on BUSYBOX_VOLUMEID + depends on BUSYBOX_FEATURE_MOUNT_LOOP help - TODO - -### config FEATURE_VOLUMEID_MINIX -### bool "minix filesystem" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO + Linux kernels >= 2.6.24 support unlimited loopback devices. They are + allocated for use when trying to use a loop device. The loop device + must however exist. -### These only detect partition tables - not used (yet?) -### config FEATURE_VOLUMEID_MAC -### bool "mac filesystem" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO -### -### config FEATURE_VOLUMEID_MSDOS -### bool "msdos filesystem" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO + This feature lets mount to try to create next /dev/loopN device + if it does not find a free one. -config BUSYBOX_FEATURE_VOLUMEID_OCFS2 - bool "ocfs2 filesystem" - default y - depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_MTAB_SUPPORT + bool "Support old /etc/mtab file" + default n + depends on BUSYBOX_MOUNT || BUSYBOX_UMOUNT + select BUSYBOX_FEATURE_MOUNT_FAKE help - TODO - -### config FEATURE_VOLUMEID_HIGHPOINTRAID -### bool "highpoint raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_ISWRAID -### bool "intel raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_LSIRAID -### bool "lsi raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_VIARAID -### bool "via raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_SILICONRAID -### bool "silicon raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_NVIDIARAID -### bool "nvidia raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -### config FEATURE_VOLUMEID_PROMISERAID -### bool "promise raid" -### default y -### depends on BUSYBOX_VOLUMEID -### help -### TODO - -config BUSYBOX_FEATURE_VOLUMEID_LINUXRAID - bool "linuxraid" - default y - depends on BUSYBOX_VOLUMEID - help - TODO - -config BUSYBOX_FEATURE_VOLUMEID_UBIFS - bool "UBIFS filesystem" - default y - depends on BUSYBOX_VOLUMEID - help - UBIFS (Unsorted Block Image File System) is a file - system for use with raw flash memory media. - - -endmenu + Historically, Unix systems kept track of the currently mounted + partitions in the file "/etc/mtab". These days, the kernel exports + the list of currently mounted partitions in "/proc/mounts", rendering + the old mtab file obsolete. (In modern systems, /etc/mtab should be + a symlink to /proc/mounts.) + + The only reason to have mount maintain an /etc/mtab file itself is if + your stripped-down embedded system does not have a /proc directory. + If you must use this, keep in mind it's inherently brittle (for + example a mount under chroot won't update it), can't handle modern + features like separate per-process filesystem namespaces, requires + that your /etc directory be writable, tends to get easily confused + by --bind or --move mounts, won't update if you rename a directory + that contains a mount point, and so on. (In brief: avoid.) + + About the only reason to use this is if you've removed /proc from + your kernel. + +source package/busybox/config/util-linux/volume_id/Config.in endmenu diff --git a/package/busybox/config/util-linux/volume_id/Config.in b/package/busybox/config/util-linux/volume_id/Config.in new file mode 100644 index 000000000..72696b126 --- /dev/null +++ b/package/busybox/config/util-linux/volume_id/Config.in @@ -0,0 +1,197 @@ +# DO NOT EDIT. This file is generated from Config.src +# +# For a description of the syntax of this configuration file, +# see docs/Kconfig-language.txt. +# + +config BUSYBOX_VOLUMEID + bool #No description makes it a hidden option + default n + +menu "Filesystem/Volume identification" + depends on BUSYBOX_VOLUMEID + +config BUSYBOX_FEATURE_VOLUMEID_BCACHE + bool "bcache filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_BTRFS + bool "btrfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_CRAMFS + bool "cramfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_EXFAT + bool "exFAT filesystem" + default y + depends on BUSYBOX_VOLUMEID + help + exFAT (extended FAT) is a proprietary file system designed especially + for flash drives. It has many features from NTFS, but with less + overhead. exFAT is used on most SDXC cards for consumer electronics. +config BUSYBOX_FEATURE_VOLUMEID_EXT + bool "Ext filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_F2FS + bool "f2fs filesystem" + default y + depends on BUSYBOX_VOLUMEID + help + F2FS (aka Flash-Friendly File System) is a log-structured file system, + which is adapted to newer forms of storage. F2FS also remedies some + known issues of the older log structured file systems, such as high + cleaning overhead. +config BUSYBOX_FEATURE_VOLUMEID_FAT + bool "fat filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_HFS + bool "hfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_ISO9660 + bool "iso9660 filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_JFS + bool "jfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_LFS + bool "LittleFS filesystem" + default y + depends on BUSYBOX_VOLUMEID && BUSYBOX_FEATURE_BLKID_TYPE + help + LittleFS is a small fail-safe filesystem designed for embedded + systems. It has strong copy-on-write guarantees and storage on disk + is always kept in a valid state. It also provides a form of dynamic + wear levelling for systems that can not fit a full flash translation + layer. +config BUSYBOX_FEATURE_VOLUMEID_LINUXRAID + bool "linuxraid" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_LINUXSWAP + bool "linux swap filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_LUKS + bool "luks filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_MINIX + bool "minix filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_NILFS + bool "nilfs filesystem" + default y + depends on BUSYBOX_VOLUMEID + help + NILFS is a New Implementation of a Log-Structured File System (LFS) + that supports continuous snapshots. This provides features like + versioning of the entire filesystem, restoration of files that + were deleted a few minutes ago. NILFS keeps consistency like + conventional LFS, so it provides quick recovery after system crashes. + + The possible use of NILFS includes versioning, tamper detection, + SOX compliance logging, and so forth. It can serve as an alternative + filesystem for Linux desktop environment, or as a basis of advanced + storage appliances. +config BUSYBOX_FEATURE_VOLUMEID_NTFS + bool "ntfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_OCFS2 + bool "ocfs2 filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_REISERFS + bool "Reiser filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_ROMFS + bool "romfs filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_SQUASHFS + bool "SquashFS filesystem" + default y + depends on BUSYBOX_VOLUMEID && BUSYBOX_FEATURE_BLKID_TYPE + help + Squashfs is a compressed read-only filesystem for Linux. Squashfs is + intended for general read-only filesystem use and in constrained block + device/memory systems (e.g. embedded systems) where low overhead is + needed. +config BUSYBOX_FEATURE_VOLUMEID_SYSV + bool "sysv filesystem" + default y + depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_UBIFS + bool "UBIFS filesystem" + default y + depends on BUSYBOX_VOLUMEID + help + UBIFS (Unsorted Block Image File System) is a file + system for use with raw flash memory media. +config BUSYBOX_FEATURE_VOLUMEID_UDF + bool "udf filesystem" + default y + depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_HIGHPOINTRAID +### bool "highpoint raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_HPFS +### bool "hpfs filesystem" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_ISWRAID +### bool "intel raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_LSIRAID +### bool "lsi raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_LVM +### bool "lvm" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_MAC +### bool "mac filesystem" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_MSDOS +### bool "msdos filesystem" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_NVIDIARAID +### bool "nvidia raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_PROMISERAID +### bool "promise raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_SILICONRAID +### bool "silicon raid" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_UFS +### bool "ufs filesystem" +### default y +### depends on BUSYBOX_VOLUMEID +### config FEATURE_VOLUMEID_VIARAID +### bool "via raid" +### default y +### depends on BUSYBOX_VOLUMEID +config BUSYBOX_FEATURE_VOLUMEID_XFS + bool "xfs filesystem" + default y + depends on BUSYBOX_VOLUMEID + +endmenu -- cgit v1.2.3