diff options
Diffstat (limited to 'package/busybox/config')
20 files changed, 859 insertions, 275 deletions
diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index 4df12cc8bb..d3c1cb6341 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -100,8 +100,7 @@ config BUSYBOX_CONFIG_FEATURE_INSTALLER 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. This feature requires the - /proc filesystem. + applets that are compiled into busybox. config BUSYBOX_CONFIG_LOCALE_SUPPORT bool "Enable locale support (system needs locale for this to work)" @@ -140,6 +139,13 @@ config BUSYBOX_CONFIG_FEATURE_CLEAN_UP Don't enable this unless you have a really good reason to clean things up manually. +config BUSYBOX_CONFIG_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. + config BUSYBOX_CONFIG_FEATURE_SUID bool "Support for SUID/SGID handling" default y @@ -155,13 +161,6 @@ config BUSYBOX_CONFIG_FEATURE_SUID are login, passwd, su, ping, traceroute, crontab, dnsd, ipcrm, ipcs, and vlock. -config BUSYBOX_CONFIG_FEATURE_SYSLOG - bool "Support for syslog" - default y - 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. - config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG bool "Runtime SUID/SGID configuration via /etc/busybox.conf" default n if BUSYBOX_CONFIG_FEATURE_SUID @@ -202,14 +201,6 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET /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_CONFIG_FEATURE_HAVE_RPC - bool "RPC support" - default y - help - Select this if you have rpc support. - This automatically turns off all configuration options that rely - on RPC. - config BUSYBOX_CONFIG_SELINUX bool "Support NSA Security Enhanced Linux" default n @@ -230,6 +221,20 @@ config BUSYBOX_CONFIG_SELINUX Most people will leave this set to 'N'. +config BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS + bool "exec prefers applets" + default y + 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_CONFIG_BUSYBOX_EXEC_PATH string "Path to BusyBox executable" default "/proc/self/exe" @@ -240,6 +245,22 @@ config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH executable. If you haven't got /proc, set this to wherever you want to run BusyBox from. +# These are auto-selected by other options + +config BUSYBOX_CONFIG_FEATURE_SYSLOG + bool "Support for logging to syslog" + default y + 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. + +config BUSYBOX_CONFIG_FEATURE_HAVE_RPC + bool "RPC support" + default y + help + This is automatically selected if any of enabled applets need it. + You do not need to select it manually. + endmenu menu 'Build Options' @@ -298,7 +319,7 @@ config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX You need to have a working dynamic linker to use this variant. config BUSYBOX_CONFIG_LFS - bool "Support large files over 2 GB" + bool default y select BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS help @@ -343,21 +364,29 @@ config BUSYBOX_CONFIG_DEBUG Most people should answer N. -config BUSYBOX_CONFIG_DEBUG_PESSIMIZE - bool "Disable compiler optimizations." +config BUSYBOX_CONFIG_WERROR + bool "Abort compilation on any warning" default n - depends on BUSYBOX_CONFIG_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. + Selecting this will add -Werror to gcc command line. + + Most people should answer N. + +# Seems to be unused +#config DEBUG_PESSIMIZE +# bool "Disable compiler optimizations." +# default n +# depends on 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. choice prompt "Additional debugging library" default BUSYBOX_CONFIG_NO_DEBUG_LIB - depends on BUSYBOX_CONFIG_DEBUG help Using an additional debugging library will make BusyBox become considerable larger and will cause it to run more slowly. You @@ -417,31 +446,30 @@ config BUSYBOX_CONFIG_INSTALL_NO_USR that you really want this behaviour. choice - prompt "Applets links" - default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS - help - Choose how you install applets links. + prompt "Applets links" + default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS + help + Choose how you install applets links. config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS - bool "as soft-links" - help - Install applets as soft-links to the busybox binary. This needs some - free inodes on the filesystem, but might help with filesystem - generators that can't cope with hard-links. + bool "as soft-links" + help + Install applets as soft-links to the busybox binary. This needs some + free inodes on the filesystem, but might help with filesystem + generators that can't cope with hard-links. config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS - bool "as hard-links" - help - Install applets as hard-links to the busybox binary. This might count - on a filesystem with few inodes. + bool "as hard-links" + help + Install applets as hard-links to the busybox binary. This might count + on a filesystem with few inodes. config BUSYBOX_CONFIG_INSTALL_APPLET_DONT - bool - prompt "not installed" - depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL - help - Do not install applet links. Useful when using the -install feature - or a standalone shell for rescue pruposes. + bool "not installed" + depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE || BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS + help + Do not install applet links. Useful when using the -install feature + or a standalone shell for rescue purposes. endchoice @@ -476,3 +504,5 @@ source package/busybox/config/procps/Config.in source package/busybox/config/shell/Config.in source package/busybox/config/sysklogd/Config.in source package/busybox/config/runit/Config.in +source package/busybox/config/selinux/Config.in +source package/busybox/config/ipsvd/Config.in diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in index 989d8d5c7e..9895dba04b 100644 --- a/package/busybox/config/archival/Config.in +++ b/package/busybox/config/archival/Config.in @@ -142,6 +142,13 @@ config BUSYBOX_CONFIG_RPM help Mini RPM applet - queries and extracts RPM packages. +config BUSYBOX_CONFIG_FEATURE_RPM_BZ2 + bool "Enable handling of rpms with bzip2-compressed data inside" + default n + depends on BUSYBOX_CONFIG_RPM + help + Enable handling of rpms with bzip2-compressed data inside. + config BUSYBOX_CONFIG_TAR bool "tar" default y @@ -207,6 +214,15 @@ config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY the old GNU format; help to kill this old format by repacking your ancient archives with the new format. +config BUSYBOX_CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY + bool "Enable untarring of tarballs with checksums produced by buggy Sun tar" + default n + depends on BUSYBOX_CONFIG_TAR + 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. + config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS bool "Enable support for some GNU tar extensions" default y diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in index 661e8947c6..7b044ead9c 100644 --- a/package/busybox/config/console-tools/Config.in +++ b/package/busybox/config/console-tools/Config.in @@ -85,7 +85,7 @@ config BUSYBOX_CONFIG_SETCONSOLE config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS bool "Enable long options" default n - depends on BUSYBOX_CONFIG_SET_CONSOLE && BUSYBOX_CONFIG_GETOPT_LONG + depends on BUSYBOX_CONFIG_SETCONSOLE && BUSYBOX_CONFIG_GETOPT_LONG help Support long options for the setconsole applet. diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in index 91f93e19bd..5a0220cdd7 100644 --- a/package/busybox/config/coreutils/Config.in +++ b/package/busybox/config/coreutils/Config.in @@ -65,13 +65,6 @@ config BUSYBOX_CONFIG_CKSUM help cksum is used to calculate the CRC32 checksum of a file. -config BUSYBOX_CONFIG_CMP - bool "cmp" - default n - help - cmp is used to compare two files and returns the result - to standard output. - config BUSYBOX_CONFIG_COMM bool "comm" default n @@ -142,38 +135,6 @@ config BUSYBOX_CONFIG_DF df reports the amount of disk space used and available on filesystems. -config BUSYBOX_CONFIG_DIFF - bool "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_CONFIG_FEATURE_DIFF_BINARY - bool "Enable checks for binary files" - default n - depends on BUSYBOX_CONFIG_DIFF - help - This option enables support for checking for binary files - before a comparison is carried out. - -config BUSYBOX_CONFIG_FEATURE_DIFF_DIR - bool "Enable directory support" - default n - depends on BUSYBOX_CONFIG_DIFF - help - This option enables support for directory and subdirectory - comparison. - -config BUSYBOX_CONFIG_FEATURE_DIFF_MINIMAL - bool "Enable -d option to find smaller sets of changes" - default n - depends on BUSYBOX_CONFIG_DIFF - help - Enabling this option allows the use of -d to make diff - try hard to find the smallest possible set of changes. - config BUSYBOX_CONFIG_DIRNAME bool "dirname" default y @@ -239,6 +200,19 @@ config BUSYBOX_CONFIG_FEATURE_ENV_LONG_OPTIONS help Support long options for the env applet. +config BUSYBOX_CONFIG_EXPAND + bool "expand" + default n + help + By default, convert all tabs to spaces. + +config BUSYBOX_CONFIG_FEATURE_EXPAND_LONG_OPTIONS + bool "Enable long options" + default n + depends on BUSYBOX_CONFIG_EXPAND && BUSYBOX_CONFIG_GETOPT_LONG + help + Support long options for the expand applet. + config BUSYBOX_CONFIG_EXPR bool "expr" default y @@ -474,6 +448,20 @@ config BUSYBOX_CONFIG_PWD help pwd is used to print the current directory. +config BUSYBOX_CONFIG_READLINK + bool "readlink" + default n + help + This program reads a symbolic link and returns the name + of the file it points to + +config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW + bool "Enable canonicalization by following all symlinks (-f)" + default n + depends on BUSYBOX_CONFIG_READLINK + help + Enable the readlink option (-f). + config BUSYBOX_CONFIG_REALPATH bool "realpath" default n @@ -536,6 +524,21 @@ config BUSYBOX_CONFIG_FEATURE_SORT_BIG The SuSv3 sort standard is available at: http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html +config BUSYBOX_CONFIG_SPLIT + bool "split" + default n + help + split a file into pieces. + +config BUSYBOX_CONFIG_FEATURE_SPLIT_FANCY + bool "fancy extensions" + default n + depends on BUSYBOX_CONFIG_SPLIT + help + Add support for features not required by SUSv3. + Supports additional suffixes 'b' for 512 bytes, + 'g' for 1GiB for the -b option. + config BUSYBOX_CONFIG_STAT bool "stat" default n @@ -665,6 +668,19 @@ config BUSYBOX_CONFIG_UNAME help uname is used to print system information. +config BUSYBOX_CONFIG_UNEXPAND + bool "unexpand" + default n + help + By default, convert only leading sequences of blanks to tabs. + +config BUSYBOX_CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS + bool "Enable long options" + default n + depends on BUSYBOX_CONFIG_UNEXPAND && BUSYBOX_CONFIG_GETOPT_LONG + help + Support long options for the unexpand applet. + config BUSYBOX_CONFIG_UNIQ bool "uniq" default y @@ -689,14 +705,6 @@ config BUSYBOX_CONFIG_UUENCODE help uuencode is used to uuencode a file. -config BUSYBOX_CONFIG_WATCH - bool "watch" - default n - select BUSYBOX_CONFIG_DATE - help - watch is used to execute a program periodically, showing - output to the screen. - config BUSYBOX_CONFIG_WC bool "wc" default y diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in index f047a90f22..bc37c15fbe 100644 --- a/package/busybox/config/debianutils/Config.in +++ b/package/busybox/config/debianutils/Config.in @@ -17,20 +17,6 @@ config BUSYBOX_CONFIG_PIPE_PROGRESS help Display a dot to indicate pipe activity. -config BUSYBOX_CONFIG_READLINK - bool "readlink" - default n - help - This program reads a symbolic link and returns the name - of the file it points to - -config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW - bool "Enable canonicalization by following all symlinks (-f)" - default n - depends on BUSYBOX_CONFIG_READLINK - help - Enable the readlink option (-f). - config BUSYBOX_CONFIG_RUN_PARTS bool "run-parts" default n @@ -53,6 +39,15 @@ config BUSYBOX_CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS help Support long options for the run-parts applet. +config BUSYBOX_CONFIG_FEATURE_RUN_PARTS_FANCY + bool "Support additional arguments" + default n + depends on BUSYBOX_CONFIG_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. + config BUSYBOX_CONFIG_START_STOP_DAEMON bool "start-stop-daemon" default y diff --git a/package/busybox/config/editors/Config.in b/package/busybox/config/editors/Config.in index 8973c3667b..6d1f6f2bc4 100644 --- a/package/busybox/config/editors/Config.in +++ b/package/busybox/config/editors/Config.in @@ -27,6 +27,45 @@ config BUSYBOX_CONFIG_FEATURE_AWK_MATH Enable math functions of the Awk programming language. NOTE: This will require libm to be present for linking. +config BUSYBOX_CONFIG_CMP + bool "cmp" + default n + help + cmp is used to compare two files and returns the result + to standard output. + +config BUSYBOX_CONFIG_DIFF + bool "diff" + 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_CONFIG_FEATURE_DIFF_BINARY + bool "Enable checks for binary files" + default n + depends on BUSYBOX_CONFIG_DIFF + help + This option enables support for checking for binary files + before a comparison is carried out. + +config BUSYBOX_CONFIG_FEATURE_DIFF_DIR + bool "Enable directory support" + default n + depends on BUSYBOX_CONFIG_DIFF + help + This option enables support for directory and subdirectory + comparison. + +config BUSYBOX_CONFIG_FEATURE_DIFF_MINIMAL + bool "Enable -d option to find smaller sets of changes" + default n + depends on BUSYBOX_CONFIG_DIFF + help + Enabling this option allows the use of -d to make diff + try hard to find the smallest possible set of changes. + config BUSYBOX_CONFIG_ED bool "ed" default n @@ -57,6 +96,16 @@ config BUSYBOX_CONFIG_VI learning curve. If you are not already comfortable with 'vi' you may wish to use something else. +config BUSYBOX_CONFIG_FEATURE_VI_MAX_LEN + int "Maximum line length in vi" + range 256 16384 + default 1024 + depends on BUSYBOX_CONFIG_VI + help + vi uses on-stack buffers for intermediate line buffers. + You may want to decrease this parameter if your target machine + benefits from smaller stack usage. + config BUSYBOX_CONFIG_FEATURE_VI_COLON bool "Enable \":\" colon commands (no \"ex\" mode)" default y diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in index dc0bbcec3f..3f89c336fa 100644 --- a/package/busybox/config/findutils/Config.in +++ b/package/busybox/config/findutils/Config.in @@ -30,7 +30,7 @@ config BUSYBOX_CONFIG_FEATURE_FIND_MTIME files, in days. config BUSYBOX_CONFIG_FEATURE_FIND_MMIN - bool "Enable modified time matching (-min) option" + bool "Enable modified time matching (-mmin) option" default n depends on BUSYBOX_CONFIG_FIND help @@ -57,8 +57,14 @@ config BUSYBOX_CONFIG_FEATURE_FIND_XDEV default y depends on BUSYBOX_CONFIG_FIND help - This option will allow find to restrict searches to a single - filesystem. + This option allows find to restrict searches to a single filesystem. + +config BUSYBOX_CONFIG_FEATURE_FIND_MAXDEPTH + bool "Enable -maxdepth N option" + default y + depends on BUSYBOX_CONFIG_FIND + help + This option enables -maxdepth N option. config BUSYBOX_CONFIG_FEATURE_FIND_NEWER bool "Enable -newer option for comparing file mtimes" @@ -83,6 +89,88 @@ config BUSYBOX_CONFIG_FEATURE_FIND_EXEC Support the 'find -exec' option for executing commands based upon the files matched. +config BUSYBOX_CONFIG_FEATURE_FIND_USER + bool "Enable username/uid matching (-user) option" + default y + depends on BUSYBOX_CONFIG_FIND + help + Support the 'find -user' option for searching by username or uid. + +config BUSYBOX_CONFIG_FEATURE_FIND_GROUP + bool "Enable group/gid matching (-group) option" + default y + depends on BUSYBOX_CONFIG_FIND + help + Support the 'find -group' option for searching by group name or gid. + +config BUSYBOX_CONFIG_FEATURE_FIND_NOT + bool "Enable the 'not' (!) operator" + default y + depends on BUSYBOX_CONFIG_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'. + +config BUSYBOX_CONFIG_FEATURE_FIND_DEPTH + bool "Enable the -depth option" + default y + depends on BUSYBOX_CONFIG_FIND + help + Process each directory's contents before the directory itself. + +config BUSYBOX_CONFIG_FEATURE_FIND_PAREN + bool "Enable parens in options" + default y + depends on BUSYBOX_CONFIG_FIND + help + Enable usage of parens '(' to specify logical order of arguments. + +config BUSYBOX_CONFIG_FEATURE_FIND_SIZE + bool "Enable (-size) option allowing matching for file size" + default y + depends on BUSYBOX_CONFIG_FIND + help + Support the 'find -size' option for searching by file size. + +config BUSYBOX_CONFIG_FEATURE_FIND_PRUNE + bool "Enable (-prune) option allowing to exclude subdirectories" + default y + depends on BUSYBOX_CONFIG_FIND + help + If the file is a directory, dont descend into it. Useful for + exclusion .svn and CVS directories. + +config BUSYBOX_CONFIG_FEATURE_FIND_DELETE + bool "Enable -delete option allowing to delete files" + default n + depends on BUSYBOX_CONFIG_FIND && BUSYBOX_CONFIG_FEATURE_FIND_DEPTH + help + Support the 'find -delete' option for deleting files and direcotries. + 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_CONFIG_FEATURE_FIND_PATH + bool "Enable -path option allowing to match pathname patterns" + default y + depends on BUSYBOX_CONFIG_FIND + help + The -path option matches whole pathname instead of just filename. + +config BUSYBOX_CONFIG_FEATURE_FIND_REGEX + bool "Enable -regex: match pathname to regex" + default y + depends on BUSYBOX_CONFIG_FIND + help + The -regex option matches whole pathname against regular expression. + +config BUSYBOX_CONFIG_FEATURE_FIND_CONTEXT + bool "Enable (-context) option for matching security context" + default n + depends on BUSYBOX_CONFIG_FIND && BUSYBOX_CONFIG_SELINUX + help + Support the 'find -context' option for matching security context. + config BUSYBOX_CONFIG_GREP bool "grep" default y diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in index b8ad0d664e..104af2614b 100644 --- a/package/busybox/config/init/Config.in +++ b/package/busybox/config/init/Config.in @@ -38,6 +38,11 @@ config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY behavour, but is often what you want in an embedded system where the console is only accessed during development or for maintenance. +config BUSYBOX_CONFIG_FEATURE_INIT_SYSLOG + bool "Enable init to write to syslog" + default y + depends on BUSYBOX_CONFIG_INIT + config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET bool "Be _extra_ quiet on boot" default n diff --git a/package/busybox/config/ipsvd/Config.in b/package/busybox/config/ipsvd/Config.in new file mode 100644 index 0000000000..d163ade492 --- /dev/null +++ b/package/busybox/config/ipsvd/Config.in @@ -0,0 +1,20 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "ipsvd utilities" + +config BUSYBOX_CONFIG_TCPSVD + bool "tcpsvd" + default n + help + tcpsvd listens on a tcp port and runs a program for each new connection + +config BUSYBOX_CONFIG_UDPSVD + bool "udpsvd" + default n + help + udpsvd listens on a udp port and runs a program for each new connection + +endmenu diff --git a/package/busybox/config/libbb/Config.in b/package/busybox/config/libbb/Config.in index 4919f9b0b5..4e23b8a969 100644 --- a/package/busybox/config/libbb/Config.in +++ b/package/busybox/config/libbb/Config.in @@ -26,4 +26,105 @@ config BUSYBOX_CONFIG_MD5_SIZE_VS_SPEED 2 3.0 5088 3 (smallest) 5.1 4912 +config BUSYBOX_CONFIG_FEATURE_FAST_TOP + bool "Faster /proc scanning code (+100 bytes)" + default y + help + This option makes top (and ps) ~20% faster (or 20% less CPU hungry), + but code size is slightly bigger. + +config BUSYBOX_CONFIG_FEATURE_ETC_NETWORKS + bool "Support for /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. + +config BUSYBOX_CONFIG_FEATURE_EDITING + bool "Command line editing" + default y + help + Enable line editing (mainly for shell command line). + +config BUSYBOX_CONFIG_FEATURE_EDITING_MAX_LEN + int "Maximum length of input" + range 128 8192 + default 512 + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_EDITING_FANCY_KEYS + bool "Additional editing keys" + default y + depends on BUSYBOX_CONFIG_FEATURE_EDITING + help + Enable additonal editing keys (Ctrl-E, Ctrl-U etc). + Arrow keys, Home/End/Delete and Ctrl-W work even without this option. + +config BUSYBOX_CONFIG_FEATURE_EDITING_VI + bool "vi-style line editing commands" + default n + depends on BUSYBOX_CONFIG_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". + +config BUSYBOX_CONFIG_FEATURE_EDITING_HISTORY + int "History size" + range 0 99999 + default 256 + depends on BUSYBOX_CONFIG_FEATURE_EDITING + help + Specify command history size. + +config BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY + bool "History saving" + default n + depends on BUSYBOX_CONFIG_ASH && BUSYBOX_CONFIG_FEATURE_EDITING + help + Enable history saving in ash shell. + +config BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION + bool "Tab completion" + default y + depends on BUSYBOX_CONFIG_FEATURE_EDITING + help + Enable tab completion. + +config BUSYBOX_CONFIG_FEATURE_USERNAME_COMPLETION + bool "Username completion" + default n + depends on BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION + help + Enable username completion. + +config BUSYBOX_CONFIG_FEATURE_EDITING_FANCY_PROMPT + bool "Fancy shell prompts" + default y + depends on BUSYBOX_CONFIG_FEATURE_EDITING + help + Setting this option allows for prompts to use things like \w and + \$ and escape codes. + +config BUSYBOX_CONFIG_MONOTONIC_SYSCALL + bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" + default n + 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). + +config BUSYBOX_CONFIG_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. endmenu diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 6171d02909..15019c1251 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -59,12 +59,29 @@ config BUSYBOX_CONFIG_ADDGROUP help Utility for creating a new group account. +config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP + bool "Support for adding users to groups" + default n + depends on BUSYBOX_CONFIG_ADDGROUP + help + If called with two non-option arguments, + addgroup will add an existing user to an + existing group. + config BUSYBOX_CONFIG_DELGROUP bool "delgroup" default n help Utility for deleting a group account. +config BUSYBOX_CONFIG_FEATURE_DEL_USER_FROM_GROUP + bool "Support for removing users from groups." + default n + depends on BUSYBOX_CONFIG_DELGROUP + help + If called with two non-option arguments, deluser + or delgroup will remove an user from a specified group. + config BUSYBOX_CONFIG_ADDUSER bool "adduser" default n @@ -111,6 +128,13 @@ config BUSYBOX_CONFIG_LOGIN Note that Busybox binary must be setuid root for this applet to work properly. +config BUSYBOX_CONFIG_PAM + bool "Support for PAM (Pluggable Authentication Modules)" + default n + depends on BUSYBOX_CONFIG_LOGIN + help + Use PAM in login(1) instead of direct access to password database. + config BUSYBOX_CONFIG_LOGIN_SCRIPTS bool "Support for login scripts" depends on BUSYBOX_CONFIG_LOGIN @@ -119,12 +143,20 @@ config BUSYBOX_CONFIG_LOGIN_SCRIPTS Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT just prior to switching from root to logged-in user. +config BUSYBOX_CONFIG_FEATURE_NOLOGIN + bool "Support for /etc/nologin" + default n + depends on BUSYBOX_CONFIG_LOGIN + help + The file /etc/nologin is used by (some versions of) login(1). + If it exists, non-root logins are prohibited. + config BUSYBOX_CONFIG_FEATURE_SECURETTY bool "Support for /etc/securetty" default n depends on BUSYBOX_CONFIG_LOGIN help - The file /etc/securetty is used by (some versions of) login(1). + 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. @@ -149,6 +181,20 @@ config BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK help With this option passwd will refuse new passwords which are "weak". +config BUSYBOX_CONFIG_CRYPTPW + bool "cryptpw" + default n + help + Applet for crypting a string. + +config BUSYBOX_CONFIG_CHPASSWD + bool "chpasswd" + default n + help + chpasswd 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_CONFIG_SU bool "su" default n diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in index 7784a82973..44f11a98d1 100644 --- a/package/busybox/config/miscutils/Config.in +++ b/package/busybox/config/miscutils/Config.in @@ -19,6 +19,13 @@ config BUSYBOX_CONFIG_BBCONFIG The bbconfig applet will print the config file with which busybox was built. +config BUSYBOX_CONFIG_CHRT + bool "chrt" + default n + help + manipulate real-time attributes of a process. + This requires sched_{g,s}etparam support in your libc. + config BUSYBOX_CONFIG_CROND bool "crond" default y @@ -256,19 +263,19 @@ config BUSYBOX_CONFIG_MAKEDEVS '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. + 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. + User/group names are allowed as an alternative to uid/gid. choice prompt "Choose makedevs behaviour" - depends BUSYBOX_CONFIG_MAKEDEVS + depends on BUSYBOX_CONFIG_MAKEDEVS default BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_LEAF - bool "leaf" + bool "leaf" config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE bool "table" @@ -289,12 +296,6 @@ config BUSYBOX_CONFIG_MT to advance or rewind a tape past a specified number of archive files on the tape. -config BUSYBOX_CONFIG_NMETER - bool "nmeter" - default n - help - nmeter prints various system parameters continuously. - config BUSYBOX_CONFIG_RAIDAUTORUN bool "raidautorun" default n @@ -303,11 +304,11 @@ config BUSYBOX_CONFIG_RAIDAUTORUN search and start RAID arrays. config BUSYBOX_CONFIG_READAHEAD - bool "readahead" + bool "readahead" default n - depends on LFS + depends on BUSYBOX_CONFIG_LFS help - Preload the files listed on the command line into RAM cache so that + Preload the files listed on the command line into RAM cache so that subsequent reads on these files will not block on disk I/O. This applet just calls the readahead(2) system call on each file. @@ -320,19 +321,19 @@ config BUSYBOX_CONFIG_READAHEAD run this applet as a background job. config BUSYBOX_CONFIG_RUNLEVEL - bool "runlevel" + bool "runlevel" default n help - find the current and previous system runlevel. + find the current and previous system runlevel. This applet uses utmp but does not rely on busybox supporing utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc. config BUSYBOX_CONFIG_RX - bool "rx" + bool "rx" default n help - Receive files using the Xmodem protocol. + Receive files using the Xmodem protocol. config BUSYBOX_CONFIG_STRINGS bool "strings" @@ -371,6 +372,14 @@ config BUSYBOX_CONFIG_TIME When the command finishes, time writes a message to standard output giving timing statistics about this program run. +config BUSYBOX_CONFIG_TTYSIZE + bool "ttysize" + default n + help + A replacement for "stty size". Unlike stty, can report only width, + only height, or both, in any order. It also does not complain on error, + but returns default 80x24. Usage in shell scripts: width=`ttysize w`. + config BUSYBOX_CONFIG_WATCHDOG bool "watchdog" default y diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in index 9183145c5b..7ffca9384d 100644 --- a/package/busybox/config/modutils/Config.in +++ b/package/busybox/config/modutils/Config.in @@ -134,7 +134,7 @@ config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE config BUSYBOX_CONFIG_FEATURE_2_4_MODULES # Simulate indentation bool "Support version 2.2.x to 2.4.x Linux kernels" - default y + default n depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE help Support module loading for 2.2.x and 2.4.x Linux kernels. diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in index 6c88baf193..1da1dc56f2 100644 --- a/package/busybox/config/networking/Config.in +++ b/package/busybox/config/networking/Config.in @@ -12,17 +12,25 @@ config BUSYBOX_CONFIG_FEATURE_IPV6 Enable IPv6 support in busybox. This adds IPv6 support in the networking applets. +config BUSYBOX_CONFIG_VERBOSE_RESOLUTION_ERRORS + bool "Verbose resolution errors" + default y + 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. + config BUSYBOX_CONFIG_ARP bool "arp" default n help - Manipulate the system ARP cache + Manipulate the system ARP cache. config BUSYBOX_CONFIG_ARPING bool "arping" default y help - Ping hosts by ARP packets + Ping hosts by ARP packets. config BUSYBOX_CONFIG_DNSD bool "dnsd" @@ -67,7 +75,7 @@ config BUSYBOX_CONFIG_HOSTNAME bool "hostname" default n help - Show or set the system's host name + Show or set the system's host name. config BUSYBOX_CONFIG_HTTPD bool "httpd" @@ -75,6 +83,14 @@ config BUSYBOX_CONFIG_HTTPD help Serve web pages via an HTTP server. +config BUSYBOX_CONFIG_FEATURE_HTTPD_USE_SENDFILE + bool "Use sendfile system call" + default y + depends on BUSYBOX_CONFIG_HTTPD + help + When enabled, httpd will use the kernel sendfile() function + instead of read/write loop. + config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP bool "Support reloading the global config file using hup signal" default y @@ -132,7 +148,7 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR 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 addition line in your httpd + properly. You need to supply an additional line in your httpd config file: *.php:/path/to/your/php @@ -154,6 +170,19 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR For example, httpd -e "<Hello World>" as "<Hello World>". +config BUSYBOX_CONFIG_FEATURE_HTTPD_ERROR_PAGES + bool "Enable support for custom error pages" + default y + depends on BUSYBOX_CONFIG_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. + config BUSYBOX_CONFIG_IFCONFIG bool "ifconfig" default y @@ -204,7 +233,6 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS config BUSYBOX_CONFIG_IFUPDOWN bool "ifupdown" default n - select BUSYBOX_CONFIG_RUN_PARTS help Activate or deactivate the specified interfaces. This applet makes use of either "ifconfig" and "route" or the "ip" command to actually @@ -215,8 +243,18 @@ config BUSYBOX_CONFIG_IFUPDOWN 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" and "route" or the "ip" command, either via busybox or via - standalone utilities. + "ifconfig", "route" and "run-parts" or the "ip" command, either + via busybox or via standalone utilities. + +config BUSYBOX_CONFIG_IFUPDOWN_IFSTATE_PATH + string "Absolute path to ifstate file" + default "/var/run/ifstate" + 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. config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP bool "Use ip applet" @@ -259,7 +297,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4 default n depends on BUSYBOX_CONFIG_IFUPDOWN help - If you want busybox to talk IPv4, leave this on. + If you want ifup/ifdown to talk IPv4, leave this on. config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6 bool "Enable support for IPv6" @@ -268,13 +306,14 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6 help If you need support for IPv6, turn this option on. -config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX - bool "Enable support for IPX" - default n - depends on BUSYBOX_CONFIG_IFUPDOWN - help - If this option is selected you can use busybox to work with IPX - networks. +### UNUSED +### config FEATURE_IFUPDOWN_IPX +### bool "Enable support for IPX" +### default n +### depends on IFUPDOWN +### help +### If this option is selected you can use busybox to work with IPX +### networks. config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING bool "Enable mapping support" @@ -284,6 +323,16 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING This enables support for the "mapping" stanza, unless you have a weird network setup you don't need it. +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP + bool "Enable support for external dhcp clients" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + This enables support for the external dhcp clients. Clients are + tried in the following order: dhcpcd, dhclient, pump and udhcpc. + Otherwise, if udhcpc applet is enabled, it is used. + Otherwise, ifup/ifdown will have no support for DHCP. + config BUSYBOX_CONFIG_INETD bool "inetd" default n @@ -330,7 +379,7 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC bool "Support RPC services" default n depends on BUSYBOX_CONFIG_INETD - depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC + select BUSYBOX_CONFIG_FEATURE_HAVE_RPC help Support Sun-RPC based services @@ -387,6 +436,7 @@ config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS ip link -> iplink ip route -> iproute ip tunnel -> iptunnel + ip rule -> iprule Say N unless you desparately need the short form of the ip object commands. @@ -466,7 +516,7 @@ config BUSYBOX_CONFIG_NETMSG simple program for sending udp broadcast messages config BUSYBOX_CONFIG_NC_SERVER - bool "Netcat server options (-lp)" + bool "Netcat server options (-l)" default n depends on BUSYBOX_CONFIG_NC help @@ -487,6 +537,14 @@ config BUSYBOX_CONFIG_NETSTAT help netstat prints information about the Linux networking subsystem. +config BUSYBOX_CONFIG_FEATURE_NETSTAT_WIDE + bool " Enable wide netstat output" + default y + depends on BUSYBOX_CONFIG_NETSTAT + help + Add support for wide columns. Useful when displaying IPv6 addresses + (-W option). + config BUSYBOX_CONFIG_NSLOOKUP bool "nslookup" default y @@ -500,27 +558,25 @@ config BUSYBOX_CONFIG_PING ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to elicit an ICMP ECHO_RESPONSE from a host or gateway. -config BUSYBOX_CONFIG_FEATURE_FANCY_PING - bool "Enable fancy ping output" - default y - depends on BUSYBOX_CONFIG_PING - help - Make the output from the ping applet include statistics, and at the - same time provide full support for ICMP packets. - config BUSYBOX_CONFIG_PING6 bool "ping6" default y - depends on BUSYBOX_CONFIG_FEATURE_IPV6 + depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_PING help This will give you a ping that can talk IPv6. -config BUSYBOX_CONFIG_FEATURE_FANCY_PING6 - bool "Enable fancy ping6 output" +config BUSYBOX_CONFIG_PSCAN + bool "pscan" + default n + help + Simple network port scanner. + +config BUSYBOX_CONFIG_FEATURE_FANCY_PING + bool "Enable fancy ping output" default y - depends on BUSYBOX_CONFIG_PING6 + depends on BUSYBOX_CONFIG_PING help - Make the output from the ping6 applet include statistics, and at the + Make the output from the ping applet include statistics, and at the same time provide full support for ICMP packets. config BUSYBOX_CONFIG_ROUTE @@ -529,6 +585,12 @@ config BUSYBOX_CONFIG_ROUTE help Route displays or manipulates the kernel's IP routing tables. +config BUSYBOX_CONFIG_SLATTACH + bool "slattach" + default n + help + slattach is a small utility to attach network interfaces to serial lines. + config BUSYBOX_CONFIG_TELNET bool "telnet" default y @@ -703,13 +765,6 @@ config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION help Support authenticated HTTP transfers. -config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL - bool "Enable IPv6 literal addresses" - default y - depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_FEATURE_IPV6 - help - Support IPv6 address literal notation in URLs. - config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS bool "Enable long options" default y diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in index 04a2ada170..65462efee7 100644 --- a/package/busybox/config/networking/udhcp/Config.in +++ b/package/busybox/config/networking/udhcp/Config.in @@ -32,6 +32,16 @@ config BUSYBOX_CONFIG_APP_DUMPLEASES See http://udhcp.busybox.net for further details. +config BUSYBOX_CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY + bool "Rewrite the lease file at every new acknowledge" + default n + depends on BUSYBOX_CONFIG_APP_UDHCPD + help + If selected, udhcpd will write a new file with leases every + time a new lease has been accepted, thus eleminating the need + to send SIGUSR1 for the initial writing, or updating. Any timed + rewriting remains undisturbed + config BUSYBOX_CONFIG_APP_UDHCPC bool "udhcp Client (udhcpc)" default y @@ -44,17 +54,6 @@ config BUSYBOX_CONFIG_APP_UDHCPC See http://udhcp.busybox.net for further details. -config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG - bool "Log udhcp messages to syslog" - default n - depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC - select BUSYBOX_CONFIG_FEATURE_SYSLOG - help - If not daemonized, udhcpd prints its messages to stdout/stderr. - If this option is selected, it will also log them to syslog. - - See http://udhcp.busybox.net for further details. - config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG bool "Compile udhcp with noisy debugging messages" default n @@ -65,3 +64,11 @@ config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG the background. See http://udhcp.busybox.net for further details. + +config BUSYBOX_CONFIG_FEATURE_RFC3397 + bool "Support for RFC3397 domain search (experimental)" + default y + depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC + help + If selected, both client and server will support passing of domain + search lists via option 119, specified in RFC3397. diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in index ef0c6a2dcd..cd063dbf0b 100644 --- a/package/busybox/config/procps/Config.in +++ b/package/busybox/config/procps/Config.in @@ -43,6 +43,12 @@ config BUSYBOX_CONFIG_KILLALL5 default y depends on BUSYBOX_CONFIG_KILL +config BUSYBOX_CONFIG_NMETER + bool "nmeter" + default n + help + Prints selected system stats continuously, one line per update. + config BUSYBOX_CONFIG_PIDOF bool "pidof" default y @@ -74,7 +80,7 @@ config BUSYBOX_CONFIG_PS config BUSYBOX_CONFIG_FEATURE_PS_WIDE bool "Enable argument for wide output (-w)" - default y + default n depends on BUSYBOX_CONFIG_PS help Support argument 'w' for wide output. @@ -102,11 +108,25 @@ config BUSYBOX_CONFIG_TOP system. config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE - bool "Support showing CPU usage percentage (add 2k bytes)" + bool "Show CPU per-process usage percentage (adds 2k bytes)" default y depends on BUSYBOX_CONFIG_TOP help - Make top display CPU usage. + Make top display CPU usage for each process. + +config BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS + bool "Show CPU global usage percentage (adds 0.5k bytes)" + default y + depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE + help + Makes top display "CPU: NN% usr NN% sys..." line. + +config BUSYBOX_CONFIG_FEATURE_TOP_DECIMALS + bool "Show 1/10th of a percent in CPU/mem statistics (adds 0.3k bytes)" + default n + depends on BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE + help + Show 1/10th of a percent in CPU/mem statistics. config BUSYBOX_CONFIG_UPTIME bool "uptime" @@ -116,6 +136,14 @@ config BUSYBOX_CONFIG_UPTIME the system has been running, how many users are currently logged on, and the system load averages for the past 1, 5, and 15 minutes. +config BUSYBOX_CONFIG_WATCH + bool "watch" + default n + #huh?? select DATE + help + watch is used to execute a program periodically, showing + output to the screen. + endmenu diff --git a/package/busybox/config/selinux/Config.in b/package/busybox/config/selinux/Config.in new file mode 100644 index 0000000000..907c9753ec --- /dev/null +++ b/package/busybox/config/selinux/Config.in @@ -0,0 +1,108 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Selinux Utilities" + depends on BUSYBOX_CONFIG_SELINUX + +config BUSYBOX_CONFIG_CHCON + bool "chcon" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to change the security context of file. + +config BUSYBOX_CONFIG_FEATURE_CHCON_LONG_OPTIONS + bool "Enable long options" + default n + depends on BUSYBOX_CONFIG_CHCON && BUSYBOX_CONFIG_GETOPT_LONG + help + Support long options for the chcon applet. + +config BUSYBOX_CONFIG_GETENFORCE + bool "getenforce" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to get the current mode of SELinux. + +config BUSYBOX_CONFIG_GETSEBOOL + bool "getsebool" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to get SELinux boolean values. + +config BUSYBOX_CONFIG_LOAD_POLICY + bool "load_policy" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to load SELinux policy. + +config BUSYBOX_CONFIG_MATCHPATHCON + bool "matchpathcon" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to get default security context of the + specified path from the file contexts configuration. + +config BUSYBOX_CONFIG_RESTORECON + bool "restorecon" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to relabel files. The feature is almost + the same as setfiles, but usage is a little different. + +config BUSYBOX_CONFIG_RUNCON + bool "runcon" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to run command in speficied security context. + +config BUSYBOX_CONFIG_FEATURE_RUNCON_LONG_OPTIONS + bool "Enable long options" + default n + depends on BUSYBOX_CONFIG_RUNCON && BUSYBOX_CONFIG_GETOPT_LONG + help + Support long options for the runcon applet. + +config BUSYBOX_CONFIG_SELINUXENABLED + bool "selinuxenabled" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support for this command to be used within shell scripts + to determine if selinux is enabled. + +config BUSYBOX_CONFIG_SETENFORCE + bool "setenforce" + default n + depends on BUSYBOX_CONFIG_SELINUX + help + Enable support to modify the mode SELinux is running in. + +config BUSYBOX_CONFIG_SETFILES + bool "setfiles" + default n + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_SETFILES_CHECK_OPTION + bool "Enable check option" + default n + depends on BUSYBOX_CONFIG_SETFILES + help + Support "-c" option (check the validity of the contexts against + the specified binary policy) for setfiles. Requires libsepol. + +endmenu + diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index d4cd52dade..d2b1056615 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -87,7 +87,7 @@ config BUSYBOX_CONFIG_ASH_MATH_SUPPORT config BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64 bool "Extend Posix math support to 64 bit" - default n + default y depends on BUSYBOX_CONFIG_ASH_MATH_SUPPORT help Enable 64-bit math support in the ash shell. This will make @@ -107,7 +107,7 @@ config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO select BUSYBOX_CONFIG_ECHO depends on BUSYBOX_CONFIG_ASH help - Enable support for echo, built in to ash. + Enable support for echo, builtin to ash. config BUSYBOX_CONFIG_ASH_BUILTIN_TEST bool "Builtin version of 'test'" @@ -115,7 +115,7 @@ config BUSYBOX_CONFIG_ASH_BUILTIN_TEST select BUSYBOX_CONFIG_TEST depends on BUSYBOX_CONFIG_ASH help - Enable support for test, built in to ash. + Enable support for test, builtin to ash. config BUSYBOX_CONFIG_ASH_CMDCMD bool "'command' command to override shell builtins" @@ -135,7 +135,7 @@ config BUSYBOX_CONFIG_ASH_MAIL config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE bool "Optimize for size instead of speed" - default y + default n depends on BUSYBOX_CONFIG_ASH help Compile ash for reduced size at the price of speed. @@ -153,7 +153,7 @@ config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT config BUSYBOX_CONFIG_ASH_EXPAND_PRMT bool "Expand prompt string" - default n + default y depends on BUSYBOX_CONFIG_ASH help "PS#" may be contain volatile content, such as backquote commands. @@ -176,6 +176,54 @@ config BUSYBOX_CONFIG_HUSH word ), arithmetic expansion, aliases, brace expansion, tilde expansion, &> and >& redirection of stdout+stderr, etc. +config BUSYBOX_CONFIG_HUSH_HELP + bool "help builtin" + default n + depends on BUSYBOX_CONFIG_HUSH + help + Enable help builtin in hush. Code size + ~1 kbyte. + +config BUSYBOX_CONFIG_HUSH_INTERACTIVE + bool "Interactive mode" + default n + depends on BUSYBOX_CONFIG_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 the file. + No prompt, no PS1/PS2 magic shell variables. + +config BUSYBOX_CONFIG_HUSH_JOB + bool "Job control" + default n + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_HUSH_TICK + bool "Process substitution" + default n + depends on BUSYBOX_CONFIG_HUSH + help + Enable process substitution `command` and $(command) in hush. + +config BUSYBOX_CONFIG_HUSH_IF + bool "Support if/then/elif/else/fi" + default n + depends on BUSYBOX_CONFIG_HUSH + help + Enable if/then/elif/else/fi in hush. + +config BUSYBOX_CONFIG_HUSH_LOOPS + bool "Support for, while and until loops" + default n + depends on BUSYBOX_CONFIG_HUSH + help + Enable for, while and until loops in hush. config BUSYBOX_CONFIG_LASH bool "lash" @@ -216,12 +264,12 @@ config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET help Remove the busybox introduction when starting a shell. -config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL +config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE bool "Standalone shell" default n - depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + depends on (BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH) && BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS help - This option causes the selected busybox shell to use busybox applets + 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 @@ -230,66 +278,43 @@ config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL 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. - 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. - - 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. - -config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING - bool "Command line editing" - default y - depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH - help - Enable command editing in shell. - -config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI - bool "vi-style line editing commands" + 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 <applet>_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. + +config BUSYBOX_CONFIG_CTTYHACK + bool "cttyhack" default n - depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING help - Enable vi-style line editing in the shell. This mode can be - turned on and off with "set -o vi" and "set +o vi". - -config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY - int "History size" - range 0 99999 - default 15 - depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING - help - Specify command history size in shell. + One common problem reported on the mailing list is "can't access tty; + job control turned off" error message which typically appears when + one tries to use shell with stdin/stdout opened to /dev/console. + This device is special - it cannot be a controlling tty. -config BUSYBOX_CONFIG_FEATURE_COMMAND_SAVEHISTORY - bool "History saving" - default n - depends on BUSYBOX_CONFIG_ASH && BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING - help - Enable history saving in ash shell. - -config BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION - bool "Tab completion" - default y - depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING - help - Enable tab completion in shell. + Proper solution is to use correct device instead of /dev/console. -config BUSYBOX_CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION - bool "Username completion" - default n - depends on BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION - help - Enable username completion in shell. + cttyhack provides "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). + If it detects one, it closes stdin/out/err and reopens that device. + Then it executes given program. Usage example for /etc/inittab + (for busybox init): -config BUSYBOX_CONFIG_FEATURE_SH_FANCY_PROMPT - bool "Fancy shell prompts" - default y - depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING - help - Setting this option allows for prompts to use things like \w and - \$ and also using escape codes. + ::respawn:/bin/cttyhack /bin/sh endmenu diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in index 12e08d3a93..9eebd77430 100644 --- a/package/busybox/config/sysklogd/Config.in +++ b/package/busybox/config/sysklogd/Config.in @@ -59,6 +59,7 @@ config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE int " Circular buffer size in Kbytes (minimum 4KB)" default 16 + range 4 2147483647 depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG help This option sets the size of the circular buffer @@ -88,8 +89,6 @@ config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING config BUSYBOX_CONFIG_KLOGD bool "klogd" default y - depends on BUSYBOX_CONFIG_SYSLOGD - select BUSYBOX_CONFIG_FEATURE_SYSLOG help klogd is a utility which intercepts and logs all messages from the Linux kernel and sends the messages diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index ab3dc3731d..28dc7b7fdb 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -127,7 +127,7 @@ config BUSYBOX_CONFIG_FEATURE_SGI_LABEL config BUSYBOX_CONFIG_FEATURE_SUN_LABEL bool "Support SUN disklabels" default n - depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE help Enabling this option allows you to create or change SUN disklabels. Most people can safely leave this option disabled. @@ -181,7 +181,7 @@ config BUSYBOX_CONFIG_MKFS_MINIX this utility will do the job for you. comment "Minix filesystem support" - depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX + depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX config BUSYBOX_CONFIG_FEATURE_MINIX2 bool "Support Minix fs v2 (fsck_minix/mkfs_minix)" @@ -269,46 +269,41 @@ config BUSYBOX_CONFIG_MDEV bool "mdev" default n help - mdev is a mini-udev implementation: call it with -s to populate - /dev from /sys, then "echo /sbin/mdev > /proc/sys/kernel/hotplug" to - have it handle hotplug events afterwards. Device names are taken - from sysfs. + mdev is a mini-udev implementation for dynamically creating device + nodes in the /dev directory. + + For more information, please see docs/mdev.txt config BUSYBOX_CONFIG_FEATURE_MDEV_CONF bool "Support /etc/mdev.conf" default n depends on BUSYBOX_CONFIG_MDEV help - The mdev config file contains lines that look like: - - hd[a-z][0-9]* 0:3 660 - - That's device name (with regex match), uid:gid, and permissions. + Add support for the mdev config file to control ownership and + permissions of the device nodes. - Config file parsing stops on the first matching line. If no config - entry is matched, devices are created with default 0:0 660. (Make - the last line match .* to override this.) + For more information, please see docs/mdev.txt config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC bool "Support command execution at device addition/removal" default n depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF help - This adds support for an optional field to /etc/mdev.conf, consisting - of a special character and a command line to run after creating the - corresponding device(s) and before removing, ala: + This adds support for an optional field to /etc/mdev.conf for + executing commands when devices are created/removed. - hdc root:cdrom 660 *ln -s $MDEV cdrom + For more information, please see docs/mdev.txt - The $MDEV environment variable is set to the name of the device. - - The special characters and their meanings are: - @ Run after creating the device. - $ Run before removing the device. - * Run both after creating and before removing the device. +config BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE + bool "Support loading of firmwares" + default n + depends on BUSYBOX_CONFIG_MDEV + help + Some devices need to load firmware before they can be usable. - Commands are executed via system() so you need /bin/sh, meaning you - probably want to select a default shell in the Shells menu. + These devices will request userspace look up the files in + /lib/firmware/ and if it exists, send it to the kernel for + loading into the hardware. config BUSYBOX_CONFIG_MKSWAP bool "mkswap" @@ -369,7 +364,7 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS bool "Support mounting NFS file systems" default y depends on BUSYBOX_CONFIG_MOUNT - depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC + select BUSYBOX_CONFIG_FEATURE_HAVE_RPC select BUSYBOX_CONFIG_FEATURE_SYSLOG help Enable mounting of NFS file systems. @@ -495,7 +490,7 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP 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 + 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".) |