From d10b4495bcb7fa7bfdf1738097491f0ec4f75655 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 21 Oct 2011 23:08:45 +0000 Subject: [PATCH] busybox: update to 1.19.2 (thanks to Peter Wagner) SVN-Revision: 28513 --- package/busybox/Makefile | 4 +- package/busybox/config/Config.in | 71 ++++-- package/busybox/config/archival/Config.in | 7 +- .../busybox/config/console-tools/Config.in | 29 ++- package/busybox/config/coreutils/Config.in | 67 ++--- package/busybox/config/debianutils/Config.in | 3 + package/busybox/config/e2fsprogs/Config.in | 7 +- .../config/e2fsprogs/old_e2fsprogs/Config.in | 3 + package/busybox/config/editors/Config.in | 241 +++++++++--------- package/busybox/config/findutils/Config.in | 9 +- package/busybox/config/init/Config.in | 13 + package/busybox/config/libbb/Config.in | 54 +++- package/busybox/config/loginutils/Config.in | 15 +- package/busybox/config/mailutils/Config.in | 3 + package/busybox/config/miscutils/Config.in | 232 ++++++++++------- package/busybox/config/modutils/Config.in | 20 +- package/busybox/config/networking/Config.in | 147 +++++------ .../busybox/config/networking/udhcp/Config.in | 30 ++- package/busybox/config/printutils/Config.in | 3 + package/busybox/config/procps/Config.in | 58 +++-- package/busybox/config/runit/Config.in | 3 + package/busybox/config/selinux/Config.in | 3 + package/busybox/config/shell/Config.in | 57 +++-- package/busybox/config/sysklogd/Config.in | 10 +- package/busybox/config/util-linux/Config.in | 86 ++++--- .../patches/000-upstream-android.patch | 11 + .../patches/000-upstream-buildsys.patch | 19 ++ .../patches/000-upstream-chpasswd.patch | 55 ++++ .../busybox/patches/000-upstream-crond.patch | 12 + .../busybox/patches/000-upstream-inetd.patch | 47 ++++ .../patches/000-upstream-syslogd.patch | 20 ++ .../busybox/patches/000-upstream-tail.patch | 43 ++++ .../busybox/patches/000-upstream-tftp.patch | 12 + .../001-init_avoid_loop_opening_tty.patch | 2 +- .../busybox/patches/003-brctl_show_fix.patch | 4 +- .../busybox/patches/110-wget_getopt_fix.patch | 2 +- .../busybox/patches/200-etc_crontabs.patch | 4 +- .../busybox/patches/240-udhcpc_retries.patch | 4 +- .../241-udhcpc-oversized_packets.patch | 12 +- package/busybox/patches/242-udhcpc_msgs.patch | 4 +- .../patches/243-udhcpc_changed_ifindex.patch | 2 +- .../patches/244-udhcpc_add_6rd_option.patch | 18 +- .../busybox/patches/250-ash_export-n.patch | 4 +- package/busybox/patches/300-netmsg.patch | 43 +--- .../busybox/patches/310-passwd_access.patch | 2 +- package/busybox/patches/340-lock_util.patch | 35 +-- package/busybox/patches/350-httpd_redir.patch | 50 ++-- .../patches/410-httpd_cgi_headers.patch | 2 +- package/busybox/patches/440-httpd_chdir.patch | 2 +- .../busybox/patches/470-insmod_search.patch | 30 +-- package/busybox/patches/480-mount_union.patch | 16 +- .../patches/490-mount_disable_check.patch | 2 +- package/busybox/patches/510-awk_include.patch | 14 +- .../busybox/patches/524-udhcpc_renew.patch | 2 +- .../busybox/patches/802-brctl_linux24.patch | 8 +- .../busybox/patches/803-id_getgrouplist.patch | 10 +- .../busybox/patches/902-telnetd_intr.patch | 6 +- .../busybox/patches/910-insmod-q-flag.patch | 10 +- 58 files changed, 1078 insertions(+), 604 deletions(-) create mode 100644 package/busybox/patches/000-upstream-android.patch create mode 100644 package/busybox/patches/000-upstream-buildsys.patch create mode 100644 package/busybox/patches/000-upstream-chpasswd.patch create mode 100644 package/busybox/patches/000-upstream-crond.patch create mode 100644 package/busybox/patches/000-upstream-inetd.patch create mode 100644 package/busybox/patches/000-upstream-syslogd.patch create mode 100644 package/busybox/patches/000-upstream-tail.patch create mode 100644 package/busybox/patches/000-upstream-tftp.patch diff --git a/package/busybox/Makefile b/package/busybox/Makefile index 936aefdd5e..5559e8b82a 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=busybox -PKG_VERSION:=1.18.5 +PKG_VERSION:=1.19.2 PKG_RELEASE:=1 PKG_FLAGS:=essential PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.busybox.net/downloads \ http://distfiles.gentoo.org/distfiles/ -PKG_MD5SUM:=96dd43cc7cee4017a6bf31b7da82a1f5 +PKG_MD5SUM:=50267054345f1a0b77fe65f6e0e5ba29 PKG_BUILD_DEPENDS:=BUSYBOX_USE_LIBRPC:librpc PKG_BUILD_PARALLEL:=1 diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index e553862119..00450364fb 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -125,7 +125,6 @@ config BUSYBOX_CONFIG_FEATURE_INSTALLER config BUSYBOX_CONFIG_INSTALL_NO_USR bool "Don't use /usr" default n - depends on BUSYBOX_CONFIG_FEATURE_INSTALLER help Disable use of /usr. busybox --install and "make install" will install applets only to /bin and /sbin, @@ -248,8 +247,9 @@ config BUSYBOX_CONFIG_UNICODE_PRESERVE_BROKEN default n depends on BUSYBOX_CONFIG_UNICODE_SUPPORT help - With this option on, invalid UTF-8 bytes are not substituted - with the selected substitution character. + 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 '?'. @@ -283,17 +283,6 @@ 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_WTMP - bool "Support wtmp file" - default n - select BUSYBOX_CONFIG_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. - config BUSYBOX_CONFIG_FEATURE_UTMP bool "Support utmp file" default n @@ -303,6 +292,17 @@ config BUSYBOX_CONFIG_FEATURE_UTMP will create and delete entries there. "who" applet requires this option. +config BUSYBOX_CONFIG_FEATURE_WTMP + bool "Support wtmp file" + default n + depends on BUSYBOX_CONFIG_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. + config BUSYBOX_CONFIG_FEATURE_PIDFILE bool "Support writing pidfiles" default y @@ -327,21 +327,39 @@ config BUSYBOX_CONFIG_FEATURE_SUID symlinks pointing to each binary), and only set the suid bit on the one that needs it. - The applets currently marked to need the suid bit are: + 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. - crontab, dnsd, findfs, ipcrm, ipcs, login, passwd, ping, su, - traceroute, vlock. + 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_CONFIG_FEATURE_SUID_CONFIG bool "Runtime SUID/SGID configuration via /etc/busybox.conf" - default n if BUSYBOX_CONFIG_FEATURE_SUID + default n depends on BUSYBOX_CONFIG_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: - = [Ssx-][Ssx-][x-] (|).(|) + APPLET = [Ssx-][Ssx-][x-] [USER.GROUP] + + 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. An example might help: @@ -351,7 +369,8 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG su = ssx # exactly the same mount = sx- root.disk # applet mount can be run by root and members - # of group disk and runs with euid=0 + # of group disk (but not anyone else) + # and runs with euid=0 (egid is not changed) cp = --- # disable applet cp for everyone @@ -377,7 +396,7 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET config BUSYBOX_CONFIG_SELINUX bool "Support NSA Security Enhanced Linux" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Enable support for SELinux in applets ls, ps, and id. Also provide the option of compiling in SELinux applets. @@ -458,7 +477,10 @@ config BUSYBOX_CONFIG_PIE default n depends on !BUSYBOX_CONFIG_STATIC help - (TODO: what is it and why/when is it useful?) + 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'. config BUSYBOX_CONFIG_NOMMU @@ -555,7 +577,6 @@ config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX config BUSYBOX_CONFIG_LFS bool default y - select BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS 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 @@ -659,9 +680,6 @@ config BUSYBOX_CONFIG_EFENCE endchoice -### config PARSE -### bool "Uniform config file parser debugging applet: parse" - endmenu menu 'Installation Options ("make install" behavior)' @@ -692,7 +710,6 @@ config BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS config BUSYBOX_CONFIG_INSTALL_APPLET_DONT 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 you plan to use busybox --install for installing links, or plan to use diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in index 354569481e..d2bfa4848b 100644 --- a/package/busybox/config/archival/Config.in +++ b/package/busybox/config/archival/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Archival Utilities" + + config BUSYBOX_CONFIG_FEATURE_SEAMLESS_XZ bool "Make tar, rpm, modprobe etc understand .xz data" default n @@ -37,7 +40,7 @@ config BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z config BUSYBOX_CONFIG_AR bool "ar" - default n + 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 @@ -192,7 +195,7 @@ config BUSYBOX_CONFIG_LZOP Lzop compression/decompresion. config BUSYBOX_CONFIG_LZOP_COMPR_HIGH - bool "lzop complession levels 7,8,9 (not very useful)" + bool "lzop compression levels 7,8,9 (not very useful)" default n depends on BUSYBOX_CONFIG_LZOP help diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in index 6d6f0bb3a4..a4007cb69a 100644 --- a/package/busybox/config/console-tools/Config.in +++ b/package/busybox/config/console-tools/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -10,7 +11,7 @@ menu "Console Utilities" config BUSYBOX_CONFIG_CHVT bool "chvt" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program is used to change to another terminal. Example: chvt 4 (change to terminal /dev/tty4) @@ -18,7 +19,7 @@ config BUSYBOX_CONFIG_CHVT config BUSYBOX_CONFIG_FGCONSOLE bool "fgconsole" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program prints active (foreground) console number. @@ -31,14 +32,14 @@ config BUSYBOX_CONFIG_CLEAR config BUSYBOX_CONFIG_DEALLOCVT bool "deallocvt" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program deallocates unused virtual consoles. config BUSYBOX_CONFIG_DUMPKMAP bool "dumpkmap" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_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. @@ -46,21 +47,21 @@ config BUSYBOX_CONFIG_DUMPKMAP config BUSYBOX_CONFIG_KBD_MODE bool "kbd_mode" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program reports and sets keyboard mode. config BUSYBOX_CONFIG_LOADFONT bool "loadfont" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program loads a console font from standard input. config BUSYBOX_CONFIG_LOADKMAP bool "loadkmap" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program loads a keyboard translation table from standard input. @@ -68,7 +69,7 @@ config BUSYBOX_CONFIG_LOADKMAP config BUSYBOX_CONFIG_OPENVT bool "openvt" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program is used to start a command on an unused virtual terminal. @@ -100,7 +101,7 @@ config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT config BUSYBOX_CONFIG_SETCONSOLE bool "setconsole" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program redirects the system console to another device, like the current tty while logged in via telnet. @@ -115,7 +116,7 @@ config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS config BUSYBOX_CONFIG_SETFONT bool "setfont" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Allows to load console screen map. Useful for i18n. @@ -128,7 +129,7 @@ config BUSYBOX_CONFIG_FEATURE_SETFONT_TEXTUAL_MAP config BUSYBOX_CONFIG_DEFAULT_SETFONT_DIR string "Default directory for console-tools files" - default "" + default n depends on BUSYBOX_CONFIG_SETFONT help Directory to use if setfont's params are simple filenames @@ -137,7 +138,7 @@ config BUSYBOX_CONFIG_DEFAULT_SETFONT_DIR config BUSYBOX_CONFIG_SETKEYCODES bool "setkeycodes" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program loads entries into the kernel's scancode-to-keycode map, allowing unusual keyboards to generate usable keycodes. @@ -145,14 +146,14 @@ config BUSYBOX_CONFIG_SETKEYCODES config BUSYBOX_CONFIG_SETLOGCONS bool "setlogcons" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This program redirects the output console of kernel messages. config BUSYBOX_CONFIG_SHOWKEY bool "showkey" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Shows keys pressed. diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in index 7508c72b10..d055e4fd26 100644 --- a/package/busybox/config/coreutils/Config.in +++ b/package/busybox/config/coreutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -33,10 +34,12 @@ config BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT 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_CONFIG_FEATURE_DATE_NANO bool "Support %[num]N nanosecond format specifier" default n - depends on BUSYBOX_CONFIG_DATE && BUSYBOX_CONFIG_PLATFORM_LINUX + depends on BUSYBOX_CONFIG_DATE # syscall(__NR_clock_gettime) + select BUSYBOX_CONFIG_PLATFORM_LINUX help Support %[num]N format specifier. Adds ~250 bytes of code. @@ -55,7 +58,16 @@ config BUSYBOX_CONFIG_FEATURE_DATE_COMPAT 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_CONFIG_ID + bool "id" + default y + help + id displays the current user and group ID names. +config BUSYBOX_CONFIG_GROUPS + bool "groups" + default n + help + Print the group names associated with current user id. config BUSYBOX_CONFIG_TEST bool "test" default y @@ -70,7 +82,12 @@ config BUSYBOX_CONFIG_FEATURE_TEST_64 depends on BUSYBOX_CONFIG_TEST || BUSYBOX_CONFIG_ASH_BUILTIN_TEST || BUSYBOX_CONFIG_HUSH help Enable 64-bit support in test. - +config BUSYBOX_CONFIG_TOUCH + bool "touch" + default y + help + touch is used to create or change the access and/or + modification timestamp of specified files. config BUSYBOX_CONFIG_TR bool "tr" default y @@ -101,6 +118,18 @@ config BUSYBOX_CONFIG_BASE64 default n help Base64 encode and decode +config BUSYBOX_CONFIG_WHO + bool "who" + default n + depends on BUSYBOX_CONFIG_FEATURE_UTMP + help + who is used to show who is logged on. +config BUSYBOX_CONFIG_USERS + bool "users" + default n + depends on BUSYBOX_CONFIG_FEATURE_UTMP + help + Print users currently logged on. config BUSYBOX_CONFIG_CAL bool "cal" @@ -371,12 +400,6 @@ config BUSYBOX_CONFIG_HOSTID hostid prints the numeric identifier (in hexadecimal) for the current host. -config BUSYBOX_CONFIG_ID - bool "id" - default y - help - id displays the current user and group ID names. - config BUSYBOX_CONFIG_INSTALL bool "install" default n @@ -390,11 +413,11 @@ config BUSYBOX_CONFIG_FEATURE_INSTALL_LONG_OPTIONS help Support long options for the install applet. -config BUSYBOX_CONFIG_LENGTH - bool "length" - default y - help - length is used to print out the length of a specified string. +####config LENGTH +#### bool "length" +#### default y +#### help +#### length is used to print out the length of a specified string. config BUSYBOX_CONFIG_LN bool "ln" @@ -686,7 +709,7 @@ config BUSYBOX_CONFIG_FEATURE_SPLIT_FANCY config BUSYBOX_CONFIG_STAT bool "stat" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs() help display file or filesystem status. @@ -756,13 +779,6 @@ config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO help Enable this option for a faster tee, at expense of size. -config BUSYBOX_CONFIG_TOUCH - bool "touch" - default y - help - touch is used to create or change the access and/or - modification timestamp of specified files. - config BUSYBOX_CONFIG_TRUE bool "true" default y @@ -833,13 +849,6 @@ config BUSYBOX_CONFIG_FEATURE_WC_LARGE help Use "unsigned long long" in wc for counter variables. -config BUSYBOX_CONFIG_WHO - bool "who" - default n - depends on BUSYBOX_CONFIG_FEATURE_UTMP - help - who is used to show who is logged on. - config BUSYBOX_CONFIG_WHOAMI bool "whoami" default n diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in index a9beb9b4b0..be69666fff 100644 --- a/package/busybox/config/debianutils/Config.in +++ b/package/busybox/config/debianutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Debian Utilities" + + config BUSYBOX_CONFIG_MKTEMP bool "mktemp" default y diff --git a/package/busybox/config/e2fsprogs/Config.in b/package/busybox/config/e2fsprogs/Config.in index 066fe7bf69..282681db0c 100644 --- a/package/busybox/config/e2fsprogs/Config.in +++ b/package/busybox/config/e2fsprogs/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Linux Ext2 FS Progs" + + config BUSYBOX_CONFIG_CHATTR bool "chattr" default n @@ -31,7 +34,7 @@ config BUSYBOX_CONFIG_FSCK config BUSYBOX_CONFIG_LSATTR bool "lsattr" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help lsattr lists the file attributes on a second extended file system. @@ -44,7 +47,7 @@ config BUSYBOX_CONFIG_LSATTR config BUSYBOX_CONFIG_TUNE2FS bool "tune2fs" - default n + 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. diff --git a/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in b/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in index 0b7ce4d107..105c93a562 100644 --- a/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in +++ b/package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Linux Ext2 FS Progs" + + config BUSYBOX_CONFIG_CHATTR bool "chattr" default n diff --git a/package/busybox/config/editors/Config.in b/package/busybox/config/editors/Config.in index 894626f3c2..21321dbb08 100644 --- a/package/busybox/config/editors/Config.in +++ b/package/busybox/config/editors/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -10,6 +11,129 @@ config BUSYBOX_CONFIG_PATCH default n help Apply a unified diff formatted patch. +config BUSYBOX_CONFIG_VI + bool "vi" + 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. + +config BUSYBOX_CONFIG_FEATURE_VI_MAX_LEN + int "Maximum screen width in vi" + range 256 16384 + default 1024 + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_VI_8BIT + bool "Allow vi to display 8-bit chars (otherwise shows dots)" + default n + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_VI_COLON + bool "Enable \":\" colon commands (no \"ex\" mode)" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable a limited set of colon commands for vi. This does not + provide an "ex" mode. + +config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK + bool "Enable yank/put commands and mark cmds" + default y + depends on BUSYBOX_CONFIG_VI + help + This will enable you to use yank and put, as well as mark in + busybox vi. + +config BUSYBOX_CONFIG_FEATURE_VI_SEARCH + bool "Enable search and replace cmds" + default y + depends on BUSYBOX_CONFIG_VI + help + Select this if you wish to be able to do search and replace in + busybox vi. + +config BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH + bool "Enable regex in search and replace" + default n # Uses GNU regex, which may be unavailable. FIXME + depends on BUSYBOX_CONFIG_FEATURE_VI_SEARCH + help + Use extended regex search. + +config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS + bool "Catch signals" + default y + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD + bool "Remember previous cmd and \".\" cmd" + default y + depends on BUSYBOX_CONFIG_VI + help + Make busybox vi remember the last command and be able to repeat it. + +config BUSYBOX_CONFIG_FEATURE_VI_READONLY + bool "Enable -R option and \"view\" mode" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable the read-only command line option, which allows the user to + open a file in read-only mode. + +config BUSYBOX_CONFIG_FEATURE_VI_SETOPTS + bool "Enable set-able options, ai ic showmatch" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable the editor to set some (ai, ic, showmatch) options. + +config BUSYBOX_CONFIG_FEATURE_VI_SET + bool "Support for :set" + default y + depends on BUSYBOX_CONFIG_VI + help + Support for ":set". + +config BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE + bool "Handle window resize" + default y + depends on BUSYBOX_CONFIG_VI + help + Make busybox vi behave nicely with terminals that get resized. + +config BUSYBOX_CONFIG_FEATURE_VI_ASK_TERMINAL + bool "Use 'tell me cursor position' ESC sequence to measure window" + default y + depends on BUSYBOX_CONFIG_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. + +config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR + bool "Optimize cursor movement" + default y + depends on BUSYBOX_CONFIG_VI + help + This will make the cursor movement faster, but requires more memory + and it makes the applet a tiny bit larger. config BUSYBOX_CONFIG_AWK bool "awk" @@ -71,123 +195,6 @@ config BUSYBOX_CONFIG_SED sed is used to perform text transformations on a file or input from a pipeline. -config BUSYBOX_CONFIG_VI - bool "vi" - 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. - -config BUSYBOX_CONFIG_FEATURE_VI_MAX_LEN - int "Maximum screen width in vi" - range 256 16384 - default 1024 - depends on BUSYBOX_CONFIG_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. - -config BUSYBOX_CONFIG_FEATURE_VI_8BIT - bool "Allow vi to display 8-bit chars (otherwise shows dots)" - default n - depends on BUSYBOX_CONFIG_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. - -config BUSYBOX_CONFIG_FEATURE_VI_COLON - bool "Enable \":\" colon commands (no \"ex\" mode)" - default y - depends on BUSYBOX_CONFIG_VI - help - Enable a limited set of colon commands for vi. This does not - provide an "ex" mode. - -config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK - bool "Enable yank/put commands and mark cmds" - default y - depends on BUSYBOX_CONFIG_VI - help - This will enable you to use yank and put, as well as mark in - busybox vi. - -config BUSYBOX_CONFIG_FEATURE_VI_SEARCH - bool "Enable search and replace cmds" - default y - depends on BUSYBOX_CONFIG_VI - help - Select this if you wish to be able to do search and replace in - busybox vi. - -config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS - bool "Catch signals" - default y - depends on BUSYBOX_CONFIG_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. - -config BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD - bool "Remember previous cmd and \".\" cmd" - default y - depends on BUSYBOX_CONFIG_VI - help - Make busybox vi remember the last command and be able to repeat it. - -config BUSYBOX_CONFIG_FEATURE_VI_READONLY - bool "Enable -R option and \"view\" mode" - default y - depends on BUSYBOX_CONFIG_VI - help - Enable the read-only command line option, which allows the user to - open a file in read-only mode. - -config BUSYBOX_CONFIG_FEATURE_VI_SETOPTS - bool "Enable set-able options, ai ic showmatch" - default y - depends on BUSYBOX_CONFIG_VI - help - Enable the editor to set some (ai, ic, showmatch) options. - -config BUSYBOX_CONFIG_FEATURE_VI_SET - bool "Support for :set" - default y - depends on BUSYBOX_CONFIG_VI - help - Support for ":set". - -config BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE - bool "Handle window resize" - default y - depends on BUSYBOX_CONFIG_VI - help - Make busybox vi behave nicely with terminals that get resized. - -config BUSYBOX_CONFIG_FEATURE_VI_ASK_TERMINAL - bool "Use 'tell me cursor position' ESC sequence to measure window" - default y - depends on BUSYBOX_CONFIG_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: - vi positions cursor to 999,999 and asks terminal to report real - cursor position using "ESC [ 6 n" escape sequence, then reads stdin. - - This is not clean but helps a lot on serial lines and such. - -config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR - bool "Optimize cursor movement" - default y - depends on BUSYBOX_CONFIG_VI - help - This will make the cursor movement faster, but requires more memory - and it makes the applet a tiny bit larger. - config BUSYBOX_CONFIG_FEATURE_ALLOW_EXEC bool "Allow vi and awk to execute shell commands" default y diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in index 80de398cd5..8db1fdef91 100644 --- a/package/busybox/config/findutils/Config.in +++ b/package/busybox/config/findutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -60,11 +61,11 @@ config BUSYBOX_CONFIG_FEATURE_FIND_XDEV This option allows find to restrict searches to a single filesystem. config BUSYBOX_CONFIG_FEATURE_FIND_MAXDEPTH - bool "Enable -maxdepth N" + bool "Enable -mindepth N and -maxdepth N" default y depends on BUSYBOX_CONFIG_FIND help - This option enables -maxdepth N option. + This option enables -mindepth N and -maxdepth N option. config BUSYBOX_CONFIG_FEATURE_FIND_NEWER bool "Enable -newer: compare file modification times" @@ -72,7 +73,7 @@ config BUSYBOX_CONFIG_FEATURE_FIND_NEWER depends on BUSYBOX_CONFIG_FIND help Support the 'find -newer' option for finding any files which have - a modified time that is more recent than the specified FILE. + modification time that is more recent than the specified FILE. config BUSYBOX_CONFIG_FEATURE_FIND_INUM bool "Enable -inum: inode number matching" @@ -177,7 +178,6 @@ config BUSYBOX_CONFIG_FEATURE_FIND_LINKS depends on BUSYBOX_CONFIG_FIND help Support the 'find -links' option for matching number of links. - config BUSYBOX_CONFIG_GREP bool "grep" default y @@ -210,7 +210,6 @@ config BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT 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_CONFIG_XARGS bool "xargs" default y diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in index 92aceed774..ac446b8717 100644 --- a/package/busybox/config/init/Config.in +++ b/package/busybox/config/init/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -168,4 +169,16 @@ config BUSYBOX_CONFIG_MESG 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_CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP + bool "Enable writing to tty only by group, not by everybody" + default n + depends on BUSYBOX_CONFIG_MESG + 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. + endmenu diff --git a/package/busybox/config/libbb/Config.in b/package/busybox/config/libbb/Config.in index a3c9641c4d..6475403b53 100644 --- a/package/busybox/config/libbb/Config.in +++ b/package/busybox/config/libbb/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,21 @@ menu "Busybox Library Tuning" +config BUSYBOX_CONFIG_FEATURE_SYSTEMD + bool "Enable systemd support" + default n + help + If you plan to use busybox daemons on a system where daemons + are controlled by systemd, enable this option. + If you don't use systemd, it is still safe to enable it, + but the downside is increased code size. +config BUSYBOX_CONFIG_FEATURE_RTMINMAX + bool "Support RTMIN[+n] and RTMAX[-n] signal names" + default n + help + Support RTMIN[+n] and RTMAX[-n] signal names + in kill, killall etc. This costs ~250 bytes. + config BUSYBOX_CONFIG_PASSWORD_MINLEN int "Minimum password length" default 6 @@ -78,11 +94,12 @@ config BUSYBOX_CONFIG_FEATURE_EDITING_VI config BUSYBOX_CONFIG_FEATURE_EDITING_HISTORY int "History size" - range 0 99999 + # Don't allow way too big values here, code uses fixed "char *history[N]" struct member + range 0 9999 default 256 depends on BUSYBOX_CONFIG_FEATURE_EDITING help - Specify command history size. + Specify command history size (0 - disable). config BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY bool "History saving" @@ -91,6 +108,14 @@ config BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY help Enable history saving in shells. +config BUSYBOX_CONFIG_FEATURE_REVERSE_SEARCH + bool "Reverse history search" + default n + depends on BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY + help + Enable readline-like Ctrl-R combination for reverse history search. + Increases code by about 0.5k. + config BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION bool "Tab completion" default y @@ -133,7 +158,7 @@ config BUSYBOX_CONFIG_FEATURE_NON_POSIX_CP 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 the device. (To do that, use "cat file >device") config BUSYBOX_CONFIG_FEATURE_VERBOSE_CP_MESSAGE bool "Give more precise messages when copy fails (cp, mv etc)" @@ -154,15 +179,34 @@ config BUSYBOX_CONFIG_FEATURE_COPYBUF_KB range 1 1024 default 4 help - Size of buffer used by cp, mv, install etc. + 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_CONFIG_FEATURE_SKIP_ROOTFS + bool "Skip rootfs in mount table" + default n + help + 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. + + However, some systems do not mount anything on /. + If you need to configure busybox for one of these systems, + you may find useful to turn this option off to make df show + initramfs statistic. + + Otherwise, choose Y. + config BUSYBOX_CONFIG_MONOTONIC_SYSCALL bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring time intervals (time, ping, traceroute etc need this). diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 0298840620..c6e50bdd40 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -191,7 +192,19 @@ config BUSYBOX_CONFIG_GETTY default n select BUSYBOX_CONFIG_FEATURE_SYSLOG help - getty lets you log in on a tty, it is normally invoked by init. + 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: + + 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_CONFIG_LOGIN bool "login" diff --git a/package/busybox/config/mailutils/Config.in b/package/busybox/config/mailutils/Config.in index c879583c8e..8db30310be 100644 --- a/package/busybox/config/mailutils/Config.in +++ b/package/busybox/config/mailutils/Config.in @@ -1,5 +1,8 @@ +# DO NOT EDIT. This file is generated from Config.src menu "Mail Utilities" + + config BUSYBOX_CONFIG_MAKEMIME bool "makemime" default n diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in index 82e48f01f3..e69d6847ec 100644 --- a/package/busybox/config/miscutils/Config.in +++ b/package/busybox/config/miscutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -8,43 +9,155 @@ menu "Miscellaneous Utilities" config BUSYBOX_CONFIG_CONSPY bool "conspy" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help A text-mode VNC like program for Linux virtual terminals. example: conspy NUM shared access to console num or conspy -nd NUM screenshot of console num or conspy -cs NUM poor man's GNU screen like +config BUSYBOX_CONFIG_LESS + bool "less" + 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_CONFIG_FEATURE_LESS_MAXLINES + int "Max number of input lines less will try to eat" + default 9999999 + depends on BUSYBOX_CONFIG_LESS + +config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS + bool "Enable bracket searching" + default n + depends on BUSYBOX_CONFIG_LESS + help + This option adds the capability to search for matching left and right + brackets, facilitating programming. + +config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS + bool "Enable extra flags" + default n + depends on BUSYBOX_CONFIG_LESS + help + The extra flags provided do the following: + + The -M flag enables a more sophisticated status line. + The -m flag enables a simpler status line with a percentage. + +config BUSYBOX_CONFIG_FEATURE_LESS_MARKS + bool "Enable marks" + default n + depends on BUSYBOX_CONFIG_LESS + help + Marks enable positions in a file to be stored for easy reference. + +config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP + bool "Enable regular expressions" + default n + depends on BUSYBOX_CONFIG_LESS + help + Enable regular expressions, allowing complex file searches. + +config BUSYBOX_CONFIG_FEATURE_LESS_WINCH + bool "Enable automatic resizing on window size changes" + default n + depends on BUSYBOX_CONFIG_LESS + help + Makes less track window size changes. + +config BUSYBOX_CONFIG_FEATURE_LESS_ASK_TERMINAL + bool "Use 'tell me cursor position' ESC sequence to measure window" + default n + depends on BUSYBOX_CONFIG_FEATURE_LESS_WINCH + help + Makes less track window size changes. + If terminal size can't be retrieved and $LINES/$COLUMNS are not set, + this option makes less perform a last-ditch effort to find it: + position cursor to 999,999 and ask terminal to report real + cursor position using "ESC [ 6 n" escape sequence, then read stdin. + + This is not clean but helps a lot on serial lines and such. + +config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD + bool "Enable flag changes ('-' command)" + default n + depends on BUSYBOX_CONFIG_LESS + help + This enables the ability to change command-line flags within + less itself ('-' keyboard command). + +config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS + bool "Enable dynamic switching of line numbers" + default n + depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD + help + Enables "-N" command. config BUSYBOX_CONFIG_NANDWRITE bool "nandwrite" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Write to the specified MTD device, with bad blocks awareness config BUSYBOX_CONFIG_NANDDUMP bool "nanddump" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Dump the content of raw NAND chip +config BUSYBOX_CONFIG_SETSERIAL + bool "setserial" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Retrieve or set Linux serial port. config BUSYBOX_CONFIG_UBIATTACH bool "ubiattach" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Attach MTD device to an UBI device. config BUSYBOX_CONFIG_UBIDETACH bool "ubidetach" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Detach MTD device from an UBI device. +config BUSYBOX_CONFIG_UBIMKVOL + bool "ubimkvol" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Create a UBI volume. + +config BUSYBOX_CONFIG_UBIRMVOL + bool "ubirmvol" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Delete a UBI volume. + +config BUSYBOX_CONFIG_UBIRSVOL + bool "ubirsvol" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Resize a UBI volume. + +config BUSYBOX_CONFIG_UBIUPDATEVOL + bool "ubiupdatevol" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Update a UBI volume. + config BUSYBOX_CONFIG_ADJTIMEX bool "adjtimex" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Adjtimex reads and optionally sets adjustment parameters for the Linux clock adjustment algorithm. @@ -73,7 +186,7 @@ config BUSYBOX_CONFIG_FEATURE_COMPRESS_BBCONFIG config BUSYBOX_CONFIG_BEEP bool "beep" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The beep applets beeps in a given freq/Hz. @@ -228,7 +341,7 @@ config BUSYBOX_CONFIG_FEATURE_DC_LIBM config BUSYBOX_CONFIG_DEVFSD bool "devfsd (obsolete)" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX select BUSYBOX_CONFIG_FEATURE_SYSLOG help This is deprecated and should NOT be used anymore. @@ -272,7 +385,7 @@ config BUSYBOX_CONFIG_DEVFSD_VERBOSE config BUSYBOX_CONFIG_FEATURE_DEVFS bool "Use devfs names for all devices (obsolete)" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This is obsolete and should NOT be used anymore. Use linux >= 2.6 (optionally with hotplug) and mdev instead! @@ -292,7 +405,7 @@ config BUSYBOX_CONFIG_DEVMEM config BUSYBOX_CONFIG_EJECT bool "eject" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Used to eject cdroms. (defaults to /dev/cdrom) @@ -307,7 +420,7 @@ config BUSYBOX_CONFIG_FEATURE_EJECT_SCSI config BUSYBOX_CONFIG_FBSPLASH bool "fbsplash" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Shows splash image and progress bar on framebuffer device. Can be used during boot phase of an embedded device. ~2kb. @@ -328,28 +441,28 @@ config BUSYBOX_CONFIG_FBSPLASH config BUSYBOX_CONFIG_FLASHCP bool "flashcp" - default n + default n # doesn't build on Ubuntu 8.04 help The flashcp binary, inspired by mtd-utils as of git head 5eceb74f7. This utility is used to copy images into a MTD device. config BUSYBOX_CONFIG_FLASH_LOCK bool "flash_lock" - default n + default n # doesn't build on Ubuntu 8.04 help The flash_lock binary from mtd-utils as of git head 5ec0c10d0. This utility locks part or all of the flash device. config BUSYBOX_CONFIG_FLASH_UNLOCK bool "flash_unlock" - default n + default n # doesn't build on Ubuntu 8.04 help The flash_unlock binary from mtd-utils as of git head 5ec0c10d0. This utility unlocks part or all of the flash device. config BUSYBOX_CONFIG_FLASH_ERASEALL bool "flash_eraseall" - default n + default n # doesn't build on Ubuntu 8.04 help The flash_eraseall binary from mtd-utils as of git head c4c6a59eb. This utility is used to erase the whole MTD device. @@ -357,14 +470,14 @@ config BUSYBOX_CONFIG_FLASH_ERASEALL config BUSYBOX_CONFIG_IONICE bool "ionice" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Set/set program io scheduling class and priority Requires kernel >= 2.6.13 config BUSYBOX_CONFIG_INOTIFYD bool "inotifyd" - default n + default n # doesn't build on Knoppix 5 help Simple inotify daemon. Reports filesystem changes. Requires kernel >= 2.6.13 @@ -394,76 +507,10 @@ config BUSYBOX_CONFIG_FEATURE_LAST_FANCY logged into the system (mimics sysvinit last). +900 bytes. endchoice -config BUSYBOX_CONFIG_LESS - bool "less" - 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_CONFIG_FEATURE_LESS_MAXLINES - int "Max number of input lines less will try to eat" - default 9999999 - depends on BUSYBOX_CONFIG_LESS - -config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS - bool "Enable bracket searching" - default n - depends on BUSYBOX_CONFIG_LESS - help - This option adds the capability to search for matching left and right - brackets, facilitating programming. - -config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS - bool "Enable extra flags" - default n - depends on BUSYBOX_CONFIG_LESS - help - The extra flags provided do the following: - - The -M flag enables a more sophisticated status line. - The -m flag enables a simpler status line with a percentage. - -config BUSYBOX_CONFIG_FEATURE_LESS_MARKS - bool "Enable marks" - default n - depends on BUSYBOX_CONFIG_LESS - help - Marks enable positions in a file to be stored for easy reference. - -config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP - bool "Enable regular expressions" - default n - depends on BUSYBOX_CONFIG_LESS - help - Enable regular expressions, allowing complex file searches. - -config BUSYBOX_CONFIG_FEATURE_LESS_WINCH - bool "Enable automatic resizing on window size changes" - default n - depends on BUSYBOX_CONFIG_LESS - help - Makes less track window size changes. - -config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD - bool "Enable flag changes ('-' command)" - default n - depends on BUSYBOX_CONFIG_LESS - help - This enables the ability to change command-line flags within - less itself ('-' keyboard command). - -config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS - bool "Enable dynamic switching of line numbers" - default n - depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD - help - Enables "-N" command. - config BUSYBOX_CONFIG_HDPARM bool "hdparm" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Get/Set hard drive parameters. Primarily intended for ATA drives. Adds about 13k (or around 30k if you enable the @@ -586,7 +633,7 @@ config BUSYBOX_CONFIG_MT config BUSYBOX_CONFIG_RAIDAUTORUN bool "raidautorun" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help raidautorun tells the kernel md driver to search and start RAID arrays. @@ -594,7 +641,8 @@ config BUSYBOX_CONFIG_RAIDAUTORUN config BUSYBOX_CONFIG_READAHEAD bool "readahead" default n - depends on BUSYBOX_CONFIG_LFS && BUSYBOX_CONFIG_PLATFORM_LINUX + depends on BUSYBOX_CONFIG_LFS + select BUSYBOX_CONFIG_PLATFORM_LINUX help Preload the files listed on the command line into RAM cache so that subsequent reads on these files will not block on disk I/O. @@ -610,8 +658,8 @@ config BUSYBOX_CONFIG_READAHEAD config BUSYBOX_CONFIG_RFKILL bool "rfkill" - default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + default n # doesn't build on Ubuntu 9.04 + select BUSYBOX_CONFIG_PLATFORM_LINUX help Enable/disable wireless devices. @@ -623,6 +671,7 @@ config BUSYBOX_CONFIG_RFKILL config BUSYBOX_CONFIG_RUNLEVEL bool "runlevel" default n + depends on BUSYBOX_CONFIG_FEATURE_UTMP help find the current and previous system runlevel. @@ -632,7 +681,7 @@ config BUSYBOX_CONFIG_RUNLEVEL config BUSYBOX_CONFIG_RX bool "rx" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Receive files using the Xmodem protocol. @@ -651,7 +700,7 @@ config BUSYBOX_CONFIG_STRINGS config BUSYBOX_CONFIG_TASKSET bool "taskset" - default n + default n # doesn't build on some non-x86 targets (m68k) help Retrieve or set a processes's CPU affinity. This requires sched_{g,s}etaffinity support in your libc. @@ -698,13 +747,14 @@ config BUSYBOX_CONFIG_VOLNAME config BUSYBOX_CONFIG_WALL bool "wall" default n + depends on BUSYBOX_CONFIG_FEATURE_UTMP help Write a message to all users that are logged in. config BUSYBOX_CONFIG_WATCHDOG bool "watchdog" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The watchdog utility is used with hardware or software watchdog device drivers. It opens the specified watchdog device special file diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in index c52c67dcb4..6d781deab6 100644 --- a/package/busybox/config/modutils/Config.in +++ b/package/busybox/config/modutils/Config.in @@ -5,7 +5,6 @@ # menu "Linux Module Utilities" -depends on BUSYBOX_CONFIG_PLATFORM_LINUX config BUSYBOX_CONFIG_MODINFO bool "modinfo" @@ -16,6 +15,7 @@ config BUSYBOX_CONFIG_MODINFO config BUSYBOX_CONFIG_MODPROBE_SMALL bool "Simplified modutils" default n + select BUSYBOX_CONFIG_PLATFORM_LINUX help Simplified modutils. @@ -50,6 +50,7 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE bool "Accept module options on modprobe command line" default n depends on BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help Allow insmod and modprobe take module options from command line. @@ -64,6 +65,7 @@ config BUSYBOX_CONFIG_INSMOD bool "insmod" default y depends on !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help insmod is used to load specified modules in the running kernel. @@ -71,6 +73,7 @@ config BUSYBOX_CONFIG_RMMOD bool "rmmod" default y depends on !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help rmmod is used to unload specified modules from the kernel. @@ -78,6 +81,7 @@ config BUSYBOX_CONFIG_LSMOD bool "lsmod" default y depends on !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help lsmod is used to display a list of loaded modules. @@ -85,6 +89,7 @@ config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT bool "Pretty output" default y depends on BUSYBOX_CONFIG_LSMOD + select BUSYBOX_CONFIG_PLATFORM_LINUX help This option makes output format of lsmod adjusted to the format of module-init-tools for Linux kernel 2.6. @@ -94,6 +99,7 @@ config BUSYBOX_CONFIG_MODPROBE bool "modprobe" default n depends on !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help Handle the loading of modules, and their dependencies on a high level. @@ -102,6 +108,7 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST bool "Blacklist support" default n depends on BUSYBOX_CONFIG_MODPROBE + select BUSYBOX_CONFIG_PLATFORM_LINUX help Say 'y' here to enable support for the 'blacklist' command in modprobe.conf. This prevents the alias resolver to resolve @@ -113,6 +120,7 @@ config BUSYBOX_CONFIG_DEPMOD bool "depmod" default n depends on !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help depmod generates modules.dep (and potentially modules.alias and modules.symbols) that contain dependency information @@ -124,6 +132,7 @@ config BUSYBOX_CONFIG_FEATURE_2_4_MODULES bool "Support version 2.2/2.4 Linux kernels" default n depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_LSMOD + select BUSYBOX_CONFIG_PLATFORM_LINUX help Support module loading for 2.2.x and 2.4.x Linux kernels. This increases size considerably. Say N unless you plan @@ -133,6 +142,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_TRY_MMAP bool "Try to load module from a mmap'ed area" default n depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help This option causes module loading code to try to mmap module first. If it does not work (for example, @@ -149,6 +159,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_VERSION_CHECKING bool "Enable module version checking" default n depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && (BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_MODPROBE) + select BUSYBOX_CONFIG_PLATFORM_LINUX help Support checking of versions for modules. This is used to ensure that the kernel and module are made for each other. @@ -157,6 +168,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS bool "Add module symbols to kernel symbol table" default n depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && (BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_MODPROBE) + select BUSYBOX_CONFIG_PLATFORM_LINUX help By adding module symbols to the kernel symbol table, Oops messages occuring within kernel modules can be properly debugged. By enabling @@ -168,6 +180,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM bool "In kernel memory optimization (uClinux only)" default n depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && (BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_MODPROBE) + select BUSYBOX_CONFIG_PLATFORM_LINUX help This is a special uClinux only memory optimization that lets insmod load the specified kernel module directly into kernel space, reducing @@ -178,6 +191,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP bool "Enable insmod load map (-m) option" default n depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && BUSYBOX_CONFIG_INSMOD + select BUSYBOX_CONFIG_PLATFORM_LINUX help Enabling this, one would be able to get a load map output on stdout. This makes kernel module debugging @@ -189,6 +203,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL bool "Symbols in load map" default n depends on BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP && !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help Without this option, -m will only output section load map. With this option, -m will also output @@ -198,6 +213,7 @@ config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE bool "Support tainted module checking with new kernels" default y depends on (BUSYBOX_CONFIG_LSMOD || BUSYBOX_CONFIG_FEATURE_2_4_MODULES) && !BUSYBOX_CONFIG_MODPROBE_SMALL + select BUSYBOX_CONFIG_PLATFORM_LINUX help Support checking for tainted modules. These are usually binary only modules that will make the linux-kernel list ignore your @@ -208,6 +224,7 @@ config BUSYBOX_CONFIG_FEATURE_MODUTILS_ALIAS bool "Support for module.aliases file" default n depends on BUSYBOX_CONFIG_DEPMOD || BUSYBOX_CONFIG_MODPROBE + select BUSYBOX_CONFIG_PLATFORM_LINUX help Generate and parse modules.alias containing aliases for bus identifiers: @@ -224,6 +241,7 @@ config BUSYBOX_CONFIG_FEATURE_MODUTILS_SYMBOLS bool "Support for module.symbols file" default n depends on BUSYBOX_CONFIG_DEPMOD || BUSYBOX_CONFIG_MODPROBE + select BUSYBOX_CONFIG_PLATFORM_LINUX help Generate and parse modules.symbols containing aliases for symbol_request() kernel calls, such as: diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in index 82d3603d7a..5cec9dc29e 100644 --- a/package/busybox/config/networking/Config.in +++ b/package/busybox/config/networking/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,12 +6,40 @@ menu "Networking Utilities" +config BUSYBOX_CONFIG_NAMEIF + bool "nameif" + default n + select BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_FEATURE_SYSLOG + help + nameif is used to rename network interface by its MAC address. + Renamed interfaces MUST be in the down state. + It is possible to use a file (default: /etc/mactab) + with list of new interface names and MACs. + Maximum interface name length: IFNAMSIZ = 16 + File fields are separated by space or tab. + File format: + # Comment + new_interface_name XX:XX:XX:XX:XX:XX + +config BUSYBOX_CONFIG_FEATURE_NAMEIF_EXTENDED + bool "Extended nameif" + default n + depends on BUSYBOX_CONFIG_NAMEIF + help + This extends the nameif syntax to support the bus_info, driver, + phyaddr selectors. The syntax is compatible to the normal nameif. + File format: + new_interface_name driver=asix bus=usb-0000:00:08.2-3 + new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5 + new_interface_name phy_address=2 00:80:C8:38:91:B5 + new_interface_name mac=00:80:C8:38:91:B5 + new_interface_name 00:80:C8:38:91:B5 config BUSYBOX_CONFIG_NBDCLIENT bool "nbd-client" default n help Network block device client - config BUSYBOX_CONFIG_NC bool "nc" default y @@ -36,13 +65,40 @@ config BUSYBOX_CONFIG_NC_EXTRA config BUSYBOX_CONFIG_NC_110_COMPAT bool "Netcat 1.10 compatibility (+2.5k)" - default n + default n # off specially for Rob depends on BUSYBOX_CONFIG_NC help This option makes nc closely follow original nc-1.10. The code is about 2.5k bigger. It enables -s ADDR, -n, -u, -v, -o FILE, -z options, but loses busybox-specific extensions: -f FILE and -ll. +config BUSYBOX_CONFIG_PING + bool "ping" + default y + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to + elicit an ICMP ECHO_RESPONSE from a host or gateway. + +config BUSYBOX_CONFIG_PING6 + bool "ping6" + default n + depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_PING + help + This will give you a ping that can talk IPv6. + +config BUSYBOX_CONFIG_FEATURE_FANCY_PING + bool "Enable fancy ping output" + default 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_WHOIS + bool "whois" + default n + help + whois is a client for the whois directory service config BUSYBOX_CONFIG_FEATURE_IPV6 bool "Enable IPv6 support" @@ -88,21 +144,21 @@ config BUSYBOX_CONFIG_VERBOSE_RESOLUTION_ERRORS config BUSYBOX_CONFIG_ARP bool "arp" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Manipulate the system ARP cache. config BUSYBOX_CONFIG_ARPING bool "arping" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Ping hosts by ARP packets. config BUSYBOX_CONFIG_BRCTL bool "brctl" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Manage ethernet bridges. Supports addbr/delbr and addif/delif. @@ -135,7 +191,7 @@ config BUSYBOX_CONFIG_DNSD config BUSYBOX_CONFIG_ETHER_WAKE bool "ether-wake" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Send a magic packet to wake up sleeping machines. @@ -318,7 +374,7 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_GZIP config BUSYBOX_CONFIG_IFCONFIG bool "ifconfig" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Ifconfig is used to configure the kernel-resident network interfaces. @@ -366,7 +422,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS config BUSYBOX_CONFIG_IFENSLAVE bool "ifenslave" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Userspace application to bind several interfaces to a logical interface (use with kernel bonding driver). @@ -374,7 +430,7 @@ config BUSYBOX_CONFIG_IFENSLAVE config BUSYBOX_CONFIG_IFPLUGD bool "ifplugd" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Network interface plug detection daemon. @@ -416,7 +472,8 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN bool "Use busybox ip applet" default n - depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP && BUSYBOX_CONFIG_PLATFORM_LINUX + depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP + select BUSYBOX_CONFIG_PLATFORM_LINUX select BUSYBOX_CONFIG_IP select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS select BUSYBOX_CONFIG_FEATURE_IP_LINK @@ -535,7 +592,7 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC config BUSYBOX_CONFIG_IP bool "ip" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_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 @@ -648,35 +705,6 @@ config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS help Support long options for the ipcalc applet. -config BUSYBOX_CONFIG_NAMEIF - bool "nameif" - default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX - select BUSYBOX_CONFIG_FEATURE_SYSLOG - help - nameif is used to rename network interface by its MAC address. - Renamed interfaces MUST be in the down state. - It is possible to use a file (default: /etc/mactab) - with list of new interface names and MACs. - Maximum interface name length: IFNAMSIZ = 16 - File fields are separated by space or tab. - File format: - # Comment - new_interface_name XX:XX:XX:XX:XX:XX - -config BUSYBOX_CONFIG_FEATURE_NAMEIF_EXTENDED - bool "Extended nameif" - default n - depends on BUSYBOX_CONFIG_NAMEIF - help - This extends the nameif syntax to support the bus_info and driver - checks. 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 mac=00:80:C8:38:91:B5 - new_interface_name 00:80:C8:38:91:B5 - config BUSYBOX_CONFIG_NETMSG bool "netmsg" default y @@ -686,7 +714,7 @@ config BUSYBOX_CONFIG_NETMSG config BUSYBOX_CONFIG_NETSTAT bool "netstat" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help netstat prints information about the Linux networking subsystem. @@ -715,7 +743,7 @@ config BUSYBOX_CONFIG_NSLOOKUP config BUSYBOX_CONFIG_NTPD bool "ntpd" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The NTP client/server daemon. @@ -727,29 +755,6 @@ config BUSYBOX_CONFIG_FEATURE_NTPD_SERVER Make ntpd usable as a NTP server. If you disable this option ntpd will be usable only as a NTP client. -config BUSYBOX_CONFIG_PING - bool "ping" - default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX - help - ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to - elicit an ICMP ECHO_RESPONSE from a host or gateway. - -config BUSYBOX_CONFIG_PING6 - bool "ping6" - default y - depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_PING - help - This will give you a ping that can talk IPv6. - -config BUSYBOX_CONFIG_FEATURE_FANCY_PING - bool "Enable fancy ping output" - default 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_PSCAN bool "pscan" default n @@ -759,14 +764,14 @@ config BUSYBOX_CONFIG_PSCAN config BUSYBOX_CONFIG_ROUTE bool "route" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Route displays or manipulates the kernel's IP routing tables. config BUSYBOX_CONFIG_SLATTACH bool "slattach" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help slattach is a small utility to attach network interfaces to serial lines. @@ -953,7 +958,7 @@ config BUSYBOX_CONFIG_TFTP_DEBUG config BUSYBOX_CONFIG_TRACEROUTE bool "traceroute" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Utility to trace the route of IP packets. @@ -990,7 +995,7 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP config BUSYBOX_CONFIG_TUNCTL bool "tunctl" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help tunctl creates or deletes tun devices. @@ -1023,7 +1028,7 @@ config BUSYBOX_CONFIG_UDPSVD config BUSYBOX_CONFIG_VCONFIG bool "vconfig" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Creates, removes, and configures VLAN interfaces @@ -1070,7 +1075,7 @@ config BUSYBOX_CONFIG_FEATURE_WGET_TIMEOUT config BUSYBOX_CONFIG_ZCIP bool "zcip" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX select BUSYBOX_CONFIG_FEATURE_SYSLOG help ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in index aa2a80077e..f4d26ec9c8 100644 --- a/package/busybox/config/networking/udhcp/Config.in +++ b/package/busybox/config/networking/udhcp/Config.in @@ -9,7 +9,7 @@ config BUSYBOX_CONFIG_UDHCPD bool "udhcp server (udhcpd)" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help udhcpd is a DHCP server geared primarily toward embedded systems, while striving to be fully functional and RFC compliant. @@ -40,7 +40,21 @@ config BUSYBOX_CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY 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 + rewriting remains undisturbed. + +config BUSYBOX_CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC + bool "Select IP address based on client MAC" + default n + depends on BUSYBOX_CONFIG_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. config BUSYBOX_CONFIG_DHCPD_LEASES_FILE string "Absolute path to lease file" @@ -53,7 +67,7 @@ config BUSYBOX_CONFIG_DHCPD_LEASES_FILE config BUSYBOX_CONFIG_UDHCPC bool "udhcp client (udhcpc)" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help udhcpc is a DHCP client geared primarily toward embedded systems, while striving to be fully functional and RFC compliant. @@ -86,7 +100,7 @@ config BUSYBOX_CONFIG_UDHCP_DEBUG depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_UDHCPC || BUSYBOX_CONFIG_DHCPRELAY help Verbosity can be increased with multiple -v options. - This options controls how high it can be cranked up. + 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. @@ -100,6 +114,14 @@ config BUSYBOX_CONFIG_FEATURE_UDHCP_RFC3397 search lists via option 119, specified in RFC 3397, and SIP servers option 120, specified in RFC 3361. +config BUSYBOX_CONFIG_FEATURE_UDHCP_8021Q + bool "Support for 802.1Q VLAN parameters" + default n + depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_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. + config BUSYBOX_CONFIG_UDHCPC_DEFAULT_SCRIPT string "Absolute path to config script" default "/usr/share/udhcpc/default.script" diff --git a/package/busybox/config/printutils/Config.in b/package/busybox/config/printutils/Config.in index 8b84bdec26..ca2ea9f56c 100644 --- a/package/busybox/config/printutils/Config.in +++ b/package/busybox/config/printutils/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Print Utilities" + + config BUSYBOX_CONFIG_LPD bool "lpd" default n diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in index fbb2cee1d5..a42fdca0c0 100644 --- a/package/busybox/config/procps/Config.in +++ b/package/busybox/config/procps/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -15,6 +16,11 @@ config BUSYBOX_CONFIG_MPSTAT default n help Per-processor statistics +config BUSYBOX_CONFIG_NMETER + bool "nmeter" + default n + help + Prints selected system stats continuously, one line per update. config BUSYBOX_CONFIG_PMAP bool "pmap" default n @@ -25,17 +31,42 @@ config BUSYBOX_CONFIG_POWERTOP default n help Analyze power consumption on Intel-based laptops +config BUSYBOX_CONFIG_PSTREE + bool "pstree" + default n + help + Display a tree of processes. +config BUSYBOX_CONFIG_PWDX + bool "pwdx" + default n + help + Report current working directory of a process config BUSYBOX_CONFIG_SMEMCAP bool "smemcap" default n help smemcap is a tool for capturing process data for smem, a memory usage statistic tool. +config BUSYBOX_CONFIG_UPTIME + bool "uptime" + default y + select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo() + help + uptime gives a one line display of the current time, how long + the system has been running, how many users are currently logged + on, and the system load averages for the past 1, 5, and 15 minutes. + +config BUSYBOX_CONFIG_FEATURE_UPTIME_UTMP_SUPPORT + bool "Support for showing the number of users" + default n + depends on BUSYBOX_CONFIG_UPTIME && BUSYBOX_CONFIG_FEATURE_UTMP + help + Makes uptime display the number of users currently logged on. config BUSYBOX_CONFIG_FREE bool "free" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX #sysinfo() help free displays the total amount of free and used physical and swap memory in the system, as well as the buffers used by the kernel. @@ -71,12 +102,6 @@ config BUSYBOX_CONFIG_KILLALL5 default n 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_PGREP bool "pgrep" default y @@ -130,7 +155,8 @@ config BUSYBOX_CONFIG_FEATURE_PS_WIDE config BUSYBOX_CONFIG_FEATURE_PS_TIME bool "Enable time and elapsed time output" default n - depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP && BUSYBOX_CONFIG_PLATFORM_LINUX + depends on BUSYBOX_CONFIG_PS && BUSYBOX_CONFIG_DESKTOP + select BUSYBOX_CONFIG_PLATFORM_LINUX help Support -o time and -o etime output specifiers. @@ -217,20 +243,12 @@ config BUSYBOX_CONFIG_FEATURE_TOPMEM Enable 's' in top (gives lots of memory info). config BUSYBOX_CONFIG_FEATURE_SHOW_THREADS - bool "Support for showing threads in ps/top" + bool "Support for showing threads in ps/pstree/top" default n - depends on BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_TOP + depends on BUSYBOX_CONFIG_PS || BUSYBOX_CONFIG_TOP || BUSYBOX_CONFIG_PSTREE help - Enables ps -T option and 'h' command in top - -config BUSYBOX_CONFIG_UPTIME - bool "uptime" - default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX - 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. + Enables the ps -T option, showing of threads in pstree, + and 'h' command in top. config BUSYBOX_CONFIG_WATCH bool "watch" diff --git a/package/busybox/config/runit/Config.in b/package/busybox/config/runit/Config.in index c1ee81362b..9d7c5970a9 100644 --- a/package/busybox/config/runit/Config.in +++ b/package/busybox/config/runit/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -5,6 +6,8 @@ menu "Runit Utilities" + + config BUSYBOX_CONFIG_RUNSV bool "runsv" default n diff --git a/package/busybox/config/selinux/Config.in b/package/busybox/config/selinux/Config.in index 50f324aaa1..e7317ca810 100644 --- a/package/busybox/config/selinux/Config.in +++ b/package/busybox/config/selinux/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -6,6 +7,8 @@ menu "SELinux Utilities" depends on BUSYBOX_CONFIG_SELINUX + + config BUSYBOX_CONFIG_CHCON bool "chcon" default n diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index 57f490e175..a271a386d6 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -23,6 +24,13 @@ config BUSYBOX_CONFIG_ASH_BASH_COMPAT help Enable bash-compatible extensions. +config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT + bool "Idle timeout variable" + default n + depends on BUSYBOX_CONFIG_ASH + help + Enables bash-like auto-logout after $TMOUT seconds of idle time. + config BUSYBOX_CONFIG_ASH_JOB_CONTROL bool "Job control" default y @@ -31,7 +39,7 @@ config BUSYBOX_CONFIG_ASH_JOB_CONTROL Enable job control in the ash shell. config BUSYBOX_CONFIG_ASH_ALIAS - bool "alias support" + bool "Alias support" default y depends on BUSYBOX_CONFIG_ASH help @@ -42,28 +50,28 @@ config BUSYBOX_CONFIG_ASH_GETOPTS default y depends on BUSYBOX_CONFIG_ASH help - Enable getopts builtin in the ash shell. + Enable support for getopts builtin in ash. config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO bool "Builtin version of 'echo'" default y depends on BUSYBOX_CONFIG_ASH help - Enable support for echo, builtin to ash. + Enable support for echo builtin in ash. config BUSYBOX_CONFIG_ASH_BUILTIN_PRINTF bool "Builtin version of 'printf'" default y depends on BUSYBOX_CONFIG_ASH help - Enable support for printf, builtin to ash. + Enable support for printf builtin in ash. config BUSYBOX_CONFIG_ASH_BUILTIN_TEST bool "Builtin version of 'test'" default y depends on BUSYBOX_CONFIG_ASH help - Enable support for test, builtin to ash. + Enable support for test builtin in ash. config BUSYBOX_CONFIG_ASH_CMDCMD bool "'command' command to override shell builtins" @@ -79,7 +87,7 @@ config BUSYBOX_CONFIG_ASH_MAIL default n depends on BUSYBOX_CONFIG_ASH help - Enable "check for new mail" in the ash shell. + Enable "check for new mail" function in the ash shell. config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE bool "Optimize for size instead of speed" @@ -112,18 +120,22 @@ config BUSYBOX_CONFIG_CTTYHACK bool "cttyhack" default n help - 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. + 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. - Proper solution is to use correct device instead of /dev/console. + The proper solution is to use the correct device instead of + /dev/console. - cttyhack provides "quick and dirty" solution to this problem. + 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). - If it detects one, it closes stdin/out/err and reopens that device. - Then it executes given program. Opening the device will make + 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. @@ -395,9 +407,9 @@ config BUSYBOX_CONFIG_FEATURE_SH_NOFORK default n depends on (BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH) && BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS help - This option causes busybox shells [currently only ash] - to not execute typical fork/exec/wait sequence, but call _main - directly, if possible. (Sometimes it is not possible: for example, + 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 @@ -405,6 +417,17 @@ config BUSYBOX_CONFIG_FEATURE_SH_NOFORK This may significantly speed up some shell scripts. - This feature is relatively new. Use with care. + This feature is relatively new. Use with care. Report bugs + to project mailing list. + +config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE + bool "Use $HISTFILESIZE" + default n + depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + 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. + endmenu diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in index c7bac93499..20e1aff063 100644 --- a/package/busybox/config/sysklogd/Config.in +++ b/package/busybox/config/sysklogd/Config.in @@ -53,6 +53,13 @@ config BUSYBOX_CONFIG_FEATURE_SYSLOGD_DUP Option -D instructs syslogd to drop consecutive messages which are totally the same. +config BUSYBOX_CONFIG_FEATURE_SYSLOGD_CFG + bool "Support syslog.conf" + default n + depends on BUSYBOX_CONFIG_SYSLOGD + help + Supports restricted syslogd config. See docs/syslog.conf.txt + config BUSYBOX_CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE int "Read buffer size in bytes" default 256 @@ -120,7 +127,8 @@ config BUSYBOX_CONFIG_KLOGD config BUSYBOX_CONFIG_FEATURE_KLOGD_KLOGCTL bool "Use the klogctl() interface" default y - depends on BUSYBOX_CONFIG_KLOGD && BUSYBOX_CONFIG_PLATFORM_LINUX + depends on BUSYBOX_CONFIG_KLOGD + select BUSYBOX_CONFIG_PLATFORM_LINUX help The klogd applet supports two interfaces for reading kernel messages. Linux provides the klogctl() interface diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index 49379883ab..14d4777bea 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -1,3 +1,4 @@ +# 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. @@ -19,7 +20,7 @@ config BUSYBOX_CONFIG_REV config BUSYBOX_CONFIG_ACPID bool "acpid" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help acpid listens to ACPI events coming either in textual form from /proc/acpi/event (though it is marked deprecated it is still widely @@ -42,17 +43,24 @@ config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT config BUSYBOX_CONFIG_BLKID bool "blkid" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX select BUSYBOX_CONFIG_VOLUMEID help Lists labels and UUIDs of all filesystems. WARNING: With all submodules selected, it will add ~8k to busybox. +config BUSYBOX_CONFIG_FEATURE_BLKID_TYPE + bool "Print filesystem type" + default n + depends on BUSYBOX_CONFIG_BLKID + help + Show TYPE="filesystem type" + config BUSYBOX_CONFIG_DMESG bool "dmesg" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help dmesg is used to examine or control the kernel ring buffer. When the Linux kernel prints messages to the system log, they are stored in @@ -86,7 +94,7 @@ config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY config BUSYBOX_CONFIG_FBSET bool "fbset" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help fbset is used to show or change the settings of a Linux frame buffer device. The frame buffer device provides a simple and unique @@ -115,7 +123,7 @@ config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE config BUSYBOX_CONFIG_FDFLUSH bool "fdflush" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help fdflush is only needed when changing media on slightly-broken removable media drives. It is used to make Linux believe that a @@ -128,14 +136,14 @@ config BUSYBOX_CONFIG_FDFLUSH config BUSYBOX_CONFIG_FDFORMAT bool "fdformat" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help fdformat is used to low-level format a floppy disk. config BUSYBOX_CONFIG_FDISK bool "fdisk" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The fdisk utility is used to divide hard disks into one or more logical disks, which are generally called partitions. This utility @@ -146,6 +154,7 @@ config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS bool "Support over 4GB disks" default y depends on BUSYBOX_CONFIG_FDISK + depends on !BUSYBOX_CONFIG_LFS # with LFS no special code is needed help Enable this option to support large disks > 4GB. @@ -211,7 +220,7 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED config BUSYBOX_CONFIG_FINDFS bool "findfs" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX select BUSYBOX_CONFIG_VOLUMEID help Prints the name of a filesystem with given label or UUID. @@ -227,7 +236,7 @@ config BUSYBOX_CONFIG_FLOCK config BUSYBOX_CONFIG_FREERAMDISK bool "freeramdisk" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Linux allows you to create ramdisks. This utility allows you to delete them and completely free all memory that was used for the @@ -250,14 +259,14 @@ config BUSYBOX_CONFIG_FSCK_MINIX config BUSYBOX_CONFIG_MKFS_EXT2 bool "mkfs_ext2" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Utility to create EXT2 filesystems. config BUSYBOX_CONFIG_MKFS_MINIX bool "mkfs_minix" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The minix filesystem is a nice, small, compact, read-write filesystem with little overhead. If you wish to be able to create minix @@ -275,7 +284,7 @@ config BUSYBOX_CONFIG_FEATURE_MINIX2 config BUSYBOX_CONFIG_MKFS_REISER bool "mkfs_reiser" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Utility to create ReiserFS filesystems. Note: this applet needs a lot of testing and polishing. @@ -283,7 +292,7 @@ config BUSYBOX_CONFIG_MKFS_REISER config BUSYBOX_CONFIG_MKFS_VFAT bool "mkfs_vfat" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Utility to create FAT32 filesystems. @@ -332,7 +341,7 @@ config BUSYBOX_CONFIG_HD config BUSYBOX_CONFIG_HWCLOCK bool "hwclock" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The hwclock utility is used to read and set the hardware clock on a system. This is primarily used to set the current time on @@ -350,7 +359,7 @@ config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS bool "Use FHS /var/lib/hwclock/adjtime" - default n + default n # util-linux-ng in Fedora 13 still uses /etc/adjtime depends on BUSYBOX_CONFIG_HWCLOCK help Starting with FHS 2.3, the adjtime state file is supposed to exist @@ -371,7 +380,7 @@ config BUSYBOX_CONFIG_IPCRM config BUSYBOX_CONFIG_IPCS bool "ipcs" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The ipcs utility is used to provide information on the currently allocated System V interprocess (IPC) objects in the system. @@ -379,7 +388,7 @@ config BUSYBOX_CONFIG_IPCS config BUSYBOX_CONFIG_LOSETUP bool "losetup" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help losetup is used to associate or detach a loop device with a regular file or block device, and to query the status of a loop device. This @@ -388,6 +397,7 @@ config BUSYBOX_CONFIG_LOSETUP config BUSYBOX_CONFIG_LSPCI bool "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. @@ -397,6 +407,7 @@ config BUSYBOX_CONFIG_LSPCI config BUSYBOX_CONFIG_LSUSB bool "lsusb" default n + #select PLATFORM_LINUX help lsusb is a utility for displaying information about USB buses in the system and devices connected to them. @@ -406,7 +417,7 @@ config BUSYBOX_CONFIG_LSUSB config BUSYBOX_CONFIG_MDEV bool "mdev" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help mdev is a mini-udev implementation for dynamically creating device nodes in the /dev directory. @@ -494,7 +505,7 @@ config BUSYBOX_CONFIG_MORE config BUSYBOX_CONFIG_MOUNT bool "mount" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help All files and filesystems in Unix are arranged into one big directory tree. The 'mount' utility is used to graft a filesystem onto a @@ -577,7 +588,7 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB config BUSYBOX_CONFIG_PIVOT_ROOT bool "pivot_root" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_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 @@ -589,7 +600,7 @@ config BUSYBOX_CONFIG_PIVOT_ROOT config BUSYBOX_CONFIG_RDATE bool "rdate" - default y + default n 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 @@ -605,13 +616,14 @@ config BUSYBOX_CONFIG_RDEV config BUSYBOX_CONFIG_READPROFILE bool "readprofile" default n + #select PLATFORM_LINUX help This allows you to parse /proc/profile for basic profiling. config BUSYBOX_CONFIG_RTCWAKE bool "rtcwake" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help Enter a system sleep state until specified wakeup time. @@ -631,7 +643,7 @@ config BUSYBOX_CONFIG_SCRIPTREPLAY config BUSYBOX_CONFIG_SETARCH bool "setarch" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help The linux32 utility is used to create a 32bit environment for the specified program (usually a shell). It only makes sense to have @@ -641,7 +653,7 @@ config BUSYBOX_CONFIG_SETARCH config BUSYBOX_CONFIG_SWAPONOFF bool "swaponoff" default n - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_PLATFORM_LINUX help This option enables both the 'swapon' and the 'swapoff' utilities. Once you have created some swap space using 'mkswap', you also need @@ -660,7 +672,7 @@ config BUSYBOX_CONFIG_FEATURE_SWAPON_PRI config BUSYBOX_CONFIG_SWITCH_ROOT bool "switch_root" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_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 @@ -680,7 +692,7 @@ config BUSYBOX_CONFIG_SWITCH_ROOT config BUSYBOX_CONFIG_UMOUNT bool "umount" default y - depends on BUSYBOX_CONFIG_PLATFORM_LINUX + select BUSYBOX_CONFIG_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 @@ -801,7 +813,7 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_JFS ### config FEATURE_VOLUMEID_UFS ### bool "ufs filesystem" -### default n +### default y ### depends on VOLUMEID ### help ### TODO @@ -885,7 +897,7 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_SYSV ### config FEATURE_VOLUMEID_MINIX ### bool "minix filesystem" -### default n +### default y ### depends on VOLUMEID ### help ### TODO @@ -893,14 +905,14 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_SYSV ### These only detect partition tables - not used (yet?) ### config FEATURE_VOLUMEID_MAC ### bool "mac filesystem" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### ### config FEATURE_VOLUMEID_MSDOS ### bool "msdos filesystem" -### default n +### default y ### depends on VOLUMEID ### help ### TODO @@ -914,49 +926,49 @@ config BUSYBOX_CONFIG_FEATURE_VOLUMEID_OCFS2 ### config FEATURE_VOLUMEID_HIGHPOINTRAID ### bool "highpoint raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_ISWRAID ### bool "intel raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_LSIRAID ### bool "lsi raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_VIARAID ### bool "via raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_SILICONRAID ### bool "silicon raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_NVIDIARAID ### bool "nvidia raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO ### config FEATURE_VOLUMEID_PROMISERAID ### bool "promise raid" -### default n +### default y ### depends on VOLUMEID ### help ### TODO diff --git a/package/busybox/patches/000-upstream-android.patch b/package/busybox/patches/000-upstream-android.patch new file mode 100644 index 0000000000..865b095a73 --- /dev/null +++ b/package/busybox/patches/000-upstream-android.patch @@ -0,0 +1,11 @@ +--- a/include/platform.h ++++ b/include/platform.h +@@ -433,7 +433,7 @@ typedef unsigned smalluint; + # undef HAVE_STPCPY + #endif + +-#if defined(ANDROID) ++#if defined(ANDROID) || defined(__ANDROID__) + # undef HAVE_DPRINTF + # undef HAVE_GETLINE + # undef HAVE_STPCPY diff --git a/package/busybox/patches/000-upstream-buildsys.patch b/package/busybox/patches/000-upstream-buildsys.patch new file mode 100644 index 0000000000..1d5a1c2308 --- /dev/null +++ b/package/busybox/patches/000-upstream-buildsys.patch @@ -0,0 +1,19 @@ +--- a/applets/applet_tables.c ++++ b/applets/applet_tables.c +@@ -80,8 +80,15 @@ int main(int argc, char **argv) + + printf("#define NUM_APPLETS %u\n", NUM_APPLETS); + if (NUM_APPLETS == 1) { ++ char *dash_to_underscore, *p; + printf("#define SINGLE_APPLET_STR \"%s\"\n", applets[0].name); +- printf("#define SINGLE_APPLET_MAIN %s_main\n", applets[0].name); ++ /* Example: "ether-wake" -> "ether_wake" */ ++ p = dash_to_underscore = strdup(applets[0].name); ++ p--; ++ while (*++p) ++ if (*p == '-') ++ *p = '_'; ++ printf("#define SINGLE_APPLET_MAIN %s_main\n", dash_to_underscore); + } + printf("\n"); + diff --git a/package/busybox/patches/000-upstream-chpasswd.patch b/package/busybox/patches/000-upstream-chpasswd.patch new file mode 100644 index 0000000000..75b0c4ddde --- /dev/null +++ b/package/busybox/patches/000-upstream-chpasswd.patch @@ -0,0 +1,55 @@ +--- a/loginutils/chpasswd.c ++++ b/loginutils/chpasswd.c +@@ -33,9 +33,8 @@ static const char chpasswd_longopts[] AL + int chpasswd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; + int chpasswd_main(int argc UNUSED_PARAM, char **argv) + { +- char *name, *pass; +- char salt[sizeof("$N$XXXXXXXX")]; +- int opt, rc; ++ char *name; ++ int opt; + + if (getuid() != 0) + bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); +@@ -45,6 +44,10 @@ int chpasswd_main(int argc UNUSED_PARAM, + opt = getopt32(argv, "em"); + + while ((name = xmalloc_fgetline(stdin)) != NULL) { ++ char *free_me; ++ char *pass; ++ int rc; ++ + pass = strchr(name, ':'); + if (!pass) + bb_error_msg_and_die("missing new password"); +@@ -52,7 +55,10 @@ int chpasswd_main(int argc UNUSED_PARAM, + + xuname2uid(name); /* dies if there is no such user */ + ++ free_me = NULL; + if (!(opt & OPT_ENC)) { ++ char salt[sizeof("$N$XXXXXXXX")]; ++ + crypt_make_salt(salt, 1); + if (opt & OPT_MD5) { + salt[0] = '$'; +@@ -60,7 +66,7 @@ int chpasswd_main(int argc UNUSED_PARAM, + salt[2] = '$'; + crypt_make_salt(salt + 3, 4); + } +- pass = pw_encrypt(pass, salt, 0); ++ free_me = pass = pw_encrypt(pass, salt, 0); + } + + /* This is rather complex: if user is not found in /etc/shadow, +@@ -81,8 +87,7 @@ int chpasswd_main(int argc UNUSED_PARAM, + bb_info_msg("Password for '%s' changed", name); + logmode = LOGMODE_STDIO; + free(name); +- if (!(opt & OPT_ENC)) +- free(pass); ++ free(free_me); + } + return EXIT_SUCCESS; + } diff --git a/package/busybox/patches/000-upstream-crond.patch b/package/busybox/patches/000-upstream-crond.patch new file mode 100644 index 0000000000..446bc6931b --- /dev/null +++ b/package/busybox/patches/000-upstream-crond.patch @@ -0,0 +1,12 @@ +--- a/miscutils/crond.c ++++ b/miscutils/crond.c +@@ -861,7 +861,8 @@ int crond_main(int argc UNUSED_PARAM, ch + + /* "-b after -f is ignored", and so on for every pair a-b */ + opt_complementary = "f-b:b-f:S-L:L-S" IF_FEATURE_CROND_D(":d-l") +- ":l+:d+"; /* -l and -d have numeric param */ ++ /* -l and -d have numeric param */ ++ ":l+" IF_FEATURE_CROND_D(":d+"); + opts = getopt32(argv, "l:L:fbSc:" IF_FEATURE_CROND_D("d:"), + &G.log_level, &G.log_filename, &G.crontab_dir_name + IF_FEATURE_CROND_D(,&G.log_level)); diff --git a/package/busybox/patches/000-upstream-inetd.patch b/package/busybox/patches/000-upstream-inetd.patch new file mode 100644 index 0000000000..dc71c7e771 --- /dev/null +++ b/package/busybox/patches/000-upstream-inetd.patch @@ -0,0 +1,47 @@ +--- a/networking/inetd.c ++++ b/networking/inetd.c +@@ -1278,6 +1278,7 @@ int inetd_main(int argc UNUSED_PARAM, ch + sep->se_count = 0; + rearm_alarm(); /* will revive it in RETRYTIME sec */ + restore_sigmask(&omask); ++ maybe_close(new_udp_fd); + maybe_close(accepted_fd); + continue; /* -> check next fd in fd set */ + } +@@ -1298,17 +1299,18 @@ int inetd_main(int argc UNUSED_PARAM, ch + bb_perror_msg("vfork"+1); + sleep(1); + restore_sigmask(&omask); ++ maybe_close(new_udp_fd); + maybe_close(accepted_fd); + continue; /* -> check next fd in fd set */ + } + if (pid == 0) + pid--; /* -1: "we did fork and we are child" */ + } +- /* if pid == 0 here, we never forked */ ++ /* if pid == 0 here, we didn't fork */ + + if (pid > 0) { /* parent */ + if (sep->se_wait) { +- /* tcp wait: we passed listening socket to child, ++ /* wait: we passed socket to child, + * will wait for child to terminate */ + sep->se_wait = pid; + remove_fd_from_set(sep->se_fd); +@@ -1345,9 +1347,13 @@ int inetd_main(int argc UNUSED_PARAM, ch + setsid(); + /* "nowait" udp */ + if (new_udp_fd >= 0) { +- len_and_sockaddr *lsa = xzalloc_lsa(sep->se_family); ++ len_and_sockaddr *lsa; ++ int r; ++ ++ close(new_udp_fd); ++ lsa = xzalloc_lsa(sep->se_family); + /* peek at the packet and remember peer addr */ +- int r = recvfrom(ctrl, NULL, 0, MSG_PEEK|MSG_DONTWAIT, ++ r = recvfrom(ctrl, NULL, 0, MSG_PEEK|MSG_DONTWAIT, + &lsa->u.sa, &lsa->len); + if (r < 0) + goto do_exit1; diff --git a/package/busybox/patches/000-upstream-syslogd.patch b/package/busybox/patches/000-upstream-syslogd.patch new file mode 100644 index 0000000000..c5f1fdd9a0 --- /dev/null +++ b/package/busybox/patches/000-upstream-syslogd.patch @@ -0,0 +1,20 @@ +--- a/sysklogd/syslogd.c ++++ b/sysklogd/syslogd.c +@@ -278,7 +278,7 @@ static void parse_syslogdcfg(const char + parser_t *parser; + + parser = config_open2(file ? file : "/etc/syslog.conf", +- file ? xfopen_for_read : fopen_or_warn_stdin); ++ file ? xfopen_for_read : fopen_for_read); + if (!parser) + /* didn't find default /etc/syslog.conf */ + /* proceed as if we built busybox without config support */ +@@ -678,7 +678,7 @@ static void timestamp_and_log(int pri, c + if (LOG_PRI(pri) < G.logLevel) { + #if ENABLE_FEATURE_IPC_SYSLOG + if ((option_mask32 & OPT_circularlog) && G.shbuf) { +- log_to_shmem(msg); ++ log_to_shmem(G.printbuf); + return; + } + #endif diff --git a/package/busybox/patches/000-upstream-tail.patch b/package/busybox/patches/000-upstream-tail.patch new file mode 100644 index 0000000000..92805939ff --- /dev/null +++ b/package/busybox/patches/000-upstream-tail.patch @@ -0,0 +1,43 @@ +--- a/coreutils/tail.c ++++ b/coreutils/tail.c +@@ -203,7 +203,7 @@ int tail_main(int argc, char **argv) + int fd = fds[i]; + + if (ENABLE_FEATURE_FANCY_TAIL && fd < 0) +- continue; /* may happen with -E */ ++ continue; /* may happen with -F */ + + if (nfiles > header_threshhold) { + tail_xprint_header(fmt, argv[i]); +@@ -252,14 +252,14 @@ int tail_main(int argc, char **argv) + * Used only by +N code ("start from Nth", 1-based): */ + seen = 1; + newlines_seen = 0; +- while ((nread = tail_read(fd, buf, tailbufsize-taillen)) > 0) { ++ while ((nread = tail_read(fd, buf, tailbufsize - taillen)) > 0) { + if (G.from_top) { + int nwrite = nread; + if (seen < count) { + /* We need to skip a few more bytes/lines */ + if (COUNT_BYTES) { + nwrite -= (count - seen); +- seen = count; ++ seen += nread; + } else { + char *s = buf; + do { +--- a/testsuite/tail.tests ++++ b/testsuite/tail.tests +@@ -14,4 +14,12 @@ testing "tail: +N with N > file length" + "0\n" \ + "" "qw" + ++testing "tail: -c +N with largish N" \ ++ " ++ dd if=/dev/zero bs=16k count=1 2>/dev/null | tail -c +8200 | wc -c; ++ dd if=/dev/zero bs=16k count=1 2>/dev/null | tail -c +8208 | wc -c; ++ " \ ++ "8185\n8177\n" \ ++ "" "" ++ + exit $FAILCOUNT diff --git a/package/busybox/patches/000-upstream-tftp.patch b/package/busybox/patches/000-upstream-tftp.patch new file mode 100644 index 0000000000..c1f08bdd3a --- /dev/null +++ b/package/busybox/patches/000-upstream-tftp.patch @@ -0,0 +1,12 @@ +--- a/networking/tftp.c ++++ b/networking/tftp.c +@@ -813,7 +813,8 @@ int tftpd_main(int argc UNUSED_PARAM, ch + goto err; + } + mode = local_file + strlen(local_file) + 1; +- if (mode >= block_buf + result || strcmp(mode, "octet") != 0) { ++ /* RFC 1350 says mode string is case independent */ ++ if (mode >= block_buf + result || strcasecmp(mode, "octet") != 0) { + goto err; + } + # if ENABLE_FEATURE_TFTP_BLOCKSIZE diff --git a/package/busybox/patches/001-init_avoid_loop_opening_tty.patch b/package/busybox/patches/001-init_avoid_loop_opening_tty.patch index 1097720c33..4db64c34be 100644 --- a/package/busybox/patches/001-init_avoid_loop_opening_tty.patch +++ b/package/busybox/patches/001-init_avoid_loop_opening_tty.patch @@ -1,6 +1,6 @@ --- a/init/init.c +++ b/init/init.c -@@ -572,8 +572,11 @@ static void run_actions(int action_type) +@@ -573,8 +573,11 @@ static void run_actions(int action_type) /* Only run stuff with pid == 0. If pid != 0, * it is already running */ diff --git a/package/busybox/patches/003-brctl_show_fix.patch b/package/busybox/patches/003-brctl_show_fix.patch index 57e35d495d..8177fb01c6 100644 --- a/package/busybox/patches/003-brctl_show_fix.patch +++ b/package/busybox/patches/003-brctl_show_fix.patch @@ -1,6 +1,6 @@ --- a/networking/brctl.c +++ b/networking/brctl.c -@@ -105,7 +105,7 @@ int brctl_main(int argc UNUSED_PARAM, ch +@@ -129,7 +129,7 @@ int brctl_main(int argc UNUSED_PARAM, ch "setageing\0" "setfd\0" "sethello\0" "setmaxage\0" "setpathcost\0" "setportprio\0" "setbridgeprio\0" ) @@ -9,7 +9,7 @@ enum { ARG_addbr = 0, ARG_delbr, ARG_addif, ARG_delif IF_FEATURE_BRCTL_FANCY(, -@@ -113,7 +113,7 @@ int brctl_main(int argc UNUSED_PARAM, ch +@@ -137,7 +137,7 @@ int brctl_main(int argc UNUSED_PARAM, ch ARG_setageing, ARG_setfd, ARG_sethello, ARG_setmaxage, ARG_setpathcost, ARG_setportprio, ARG_setbridgeprio ) diff --git a/package/busybox/patches/110-wget_getopt_fix.patch b/package/busybox/patches/110-wget_getopt_fix.patch index d9ae982a6a..e679870b92 100644 --- a/package/busybox/patches/110-wget_getopt_fix.patch +++ b/package/busybox/patches/110-wget_getopt_fix.patch @@ -1,6 +1,6 @@ --- a/networking/wget.c +++ b/networking/wget.c -@@ -597,7 +597,7 @@ int wget_main(int argc UNUSED_PARAM, cha +@@ -872,7 +872,7 @@ int wget_main(int argc UNUSED_PARAM, cha /* Ignored: */ // "tries\0" Required_argument "t" /* Ignored (we always use PASV): */ diff --git a/package/busybox/patches/200-etc_crontabs.patch b/package/busybox/patches/200-etc_crontabs.patch index f83ac02a9d..ebf2990502 100644 --- a/package/busybox/patches/200-etc_crontabs.patch +++ b/package/busybox/patches/200-etc_crontabs.patch @@ -1,6 +1,6 @@ --- a/miscutils/crond.c +++ b/miscutils/crond.c -@@ -24,7 +24,7 @@ +@@ -37,7 +37,7 @@ #define TMPDIR CONFIG_FEATURE_CROND_DIR @@ -11,7 +11,7 @@ #endif --- a/miscutils/crontab.c +++ b/miscutils/crontab.c -@@ -12,7 +12,7 @@ +@@ -22,7 +22,7 @@ #include "libbb.h" diff --git a/package/busybox/patches/240-udhcpc_retries.patch b/package/busybox/patches/240-udhcpc_retries.patch index 73240aa801..a9f4f3d1eb 100644 --- a/package/busybox/patches/240-udhcpc_retries.patch +++ b/package/busybox/patches/240-udhcpc_retries.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1196,7 +1196,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c +@@ -1257,7 +1257,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c switch (state) { case INIT_SELECTING: @@ -9,7 +9,7 @@ if (packet_num == 0) xid = random_xid(); /* broadcast */ -@@ -1225,7 +1225,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c +@@ -1286,7 +1286,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c packet_num = 0; continue; case REQUESTING: diff --git a/package/busybox/patches/241-udhcpc-oversized_packets.patch b/package/busybox/patches/241-udhcpc-oversized_packets.patch index 56f4e93127..471d704a71 100644 --- a/package/busybox/patches/241-udhcpc-oversized_packets.patch +++ b/package/busybox/patches/241-udhcpc-oversized_packets.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/packet.c +++ b/networking/udhcp/packet.c -@@ -165,6 +165,11 @@ uint16_t FAST_FUNC udhcp_checksum(void * +@@ -158,6 +158,11 @@ uint16_t FAST_FUNC udhcp_checksum(void * return ~sum; } @@ -12,7 +12,7 @@ /* Construct a ip/udp header for a packet, send packet */ int FAST_FUNC udhcp_send_raw_packet(struct dhcp_packet *dhcp_pkt, uint32_t source_nip, int source_port, -@@ -173,10 +178,10 @@ int FAST_FUNC udhcp_send_raw_packet(stru +@@ -166,10 +171,10 @@ int FAST_FUNC udhcp_send_raw_packet(stru { struct sockaddr_ll dest_sll; struct ip_udp_dhcp_packet packet; @@ -24,7 +24,7 @@ fd = socket(PF_PACKET, SOCK_DGRAM, htons(ETH_P_IP)); if (fd < 0) { -@@ -185,8 +190,8 @@ int FAST_FUNC udhcp_send_raw_packet(stru +@@ -178,8 +183,8 @@ int FAST_FUNC udhcp_send_raw_packet(stru } memset(&dest_sll, 0, sizeof(dest_sll)); @@ -35,7 +35,7 @@ dest_sll.sll_family = AF_PACKET; dest_sll.sll_protocol = htons(ETH_P_IP); -@@ -199,36 +204,24 @@ int FAST_FUNC udhcp_send_raw_packet(stru +@@ -192,36 +197,24 @@ int FAST_FUNC udhcp_send_raw_packet(stru goto ret_close; } @@ -78,7 +78,7 @@ (struct sockaddr *) &dest_sll, sizeof(dest_sll)); msg = "sendto"; ret_close: -@@ -246,7 +239,6 @@ int FAST_FUNC udhcp_send_kernel_packet(s +@@ -239,7 +232,6 @@ int FAST_FUNC udhcp_send_kernel_packet(s uint32_t dest_nip, int dest_port) { struct sockaddr_in client; @@ -86,7 +86,7 @@ int fd; int result = -1; const char *msg; -@@ -277,9 +269,7 @@ int FAST_FUNC udhcp_send_kernel_packet(s +@@ -270,9 +262,7 @@ int FAST_FUNC udhcp_send_kernel_packet(s } udhcp_dump_packet(dhcp_pkt); diff --git a/package/busybox/patches/242-udhcpc_msgs.patch b/package/busybox/patches/242-udhcpc_msgs.patch index 7d390f1667..998e3b664b 100644 --- a/package/busybox/patches/242-udhcpc_msgs.patch +++ b/package/busybox/patches/242-udhcpc_msgs.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -436,6 +436,7 @@ static int raw_bcast_from_client_config_ +@@ -540,6 +540,7 @@ static int raw_bcast_from_client_config_ static NOINLINE int send_discover(uint32_t xid, uint32_t requested) { struct dhcp_packet packet; @@ -8,7 +8,7 @@ /* Fill in: op, htype, hlen, cookie, chaddr fields, * random xid field (we override it below), -@@ -453,6 +454,7 @@ static NOINLINE int send_discover(uint32 +@@ -557,6 +558,7 @@ static NOINLINE int send_discover(uint32 */ add_client_options(&packet); diff --git a/package/busybox/patches/243-udhcpc_changed_ifindex.patch b/package/busybox/patches/243-udhcpc_changed_ifindex.patch index 71bfe01933..4b28166bc2 100644 --- a/package/busybox/patches/243-udhcpc_changed_ifindex.patch +++ b/package/busybox/patches/243-udhcpc_changed_ifindex.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1144,6 +1144,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c +@@ -1205,6 +1205,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c /* silence "uninitialized!" warning */ unsigned timestamp_before_wait = timestamp_before_wait; diff --git a/package/busybox/patches/244-udhcpc_add_6rd_option.patch b/package/busybox/patches/244-udhcpc_add_6rd_option.patch index 21107ae26c..84891d3cdb 100644 --- a/package/busybox/patches/244-udhcpc_add_6rd_option.patch +++ b/package/busybox/patches/244-udhcpc_add_6rd_option.patch @@ -1,24 +1,24 @@ --- a/networking/udhcp/common.c +++ b/networking/udhcp/common.c -@@ -56,6 +56,8 @@ const struct dhcp_optflag dhcp_optflags[ +@@ -60,6 +60,8 @@ const struct dhcp_optflag dhcp_optflags[ + { OPTION_U8 , 0x85 }, /* DHCP_VLAN_PRIORITY */ #endif - { OPTION_STATIC_ROUTES , 0x79 }, /* DHCP_STATIC_ROUTES */ { OPTION_STATIC_ROUTES , 0xf9 }, /* DHCP_MS_STATIC_ROUTES */ + { OPTION_6RD , 0xd4 }, /* DHCP_6RD (RFC) */ + { OPTION_6RD , 0x96 }, /* DHCP_6RD (Comcast) */ { OPTION_STRING , 0xfc }, /* DHCP_WPAD */ /* Options below have no match in dhcp_option_strings[], -@@ -119,6 +121,8 @@ const char dhcp_option_strings[] ALIGN1 - // is not handled yet by "string->option" conversion code: - "staticroutes" "\0"/* DHCP_STATIC_ROUTES */ +@@ -127,6 +129,8 @@ const char dhcp_option_strings[] ALIGN1 + "vlanpriority" "\0"/* DHCP_VLAN_PRIORITY */ + #endif "msstaticroutes""\0"/* DHCP_MS_STATIC_ROUTES */ + "ip6rd" "\0" /* DHCP_6RD (RFC) */ + "ip6rd" "\0" /* DHCP_6RD (Comcast) */ "wpad" "\0" /* DHCP_WPAD */ ; -@@ -146,6 +150,7 @@ const uint8_t dhcp_option_lengths[] ALIG +@@ -154,6 +158,7 @@ const uint8_t dhcp_option_lengths[] ALIG [OPTION_S32] = 4, /* Just like OPTION_STRING, we use minimum length here */ [OPTION_STATIC_ROUTES] = 5, @@ -38,7 +38,7 @@ OPTION_SIP_SERVERS, --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -45,6 +45,7 @@ static const uint8_t len_of_option_as_st +@@ -100,6 +100,7 @@ static const uint8_t len_of_option_as_st [OPTION_IP ] = sizeof("255.255.255.255 "), [OPTION_IP_PAIR ] = sizeof("255.255.255.255 ") * 2, [OPTION_STATIC_ROUTES ] = sizeof("255.255.255.255/32 255.255.255.255 "), @@ -46,7 +46,7 @@ [OPTION_STRING ] = 1, #if ENABLE_FEATURE_UDHCP_RFC3397 [OPTION_DNS_STRING ] = 1, /* unused */ -@@ -68,6 +69,23 @@ static int sprint_nip(char *dest, const +@@ -123,6 +124,23 @@ static int sprint_nip(char *dest, const return sprintf(dest, "%s%u.%u.%u.%u", pre, ip[0], ip[1], ip[2], ip[3]); } @@ -70,7 +70,7 @@ /* really simple implementation, just count the bits */ static int mton(uint32_t mask) { -@@ -177,6 +195,70 @@ static NOINLINE char *xmalloc_optname_op +@@ -232,6 +250,70 @@ static NOINLINE char *xmalloc_optname_op return ret; } diff --git a/package/busybox/patches/250-ash_export-n.patch b/package/busybox/patches/250-ash_export-n.patch index 1c34b2cd7b..048c236b85 100644 --- a/package/busybox/patches/250-ash_export-n.patch +++ b/package/busybox/patches/250-ash_export-n.patch @@ -1,6 +1,6 @@ --- a/shell/ash.c +++ b/shell/ash.c -@@ -12532,8 +12532,17 @@ exportcmd(int argc UNUSED_PARAM, char ** +@@ -12611,8 +12611,17 @@ exportcmd(int argc UNUSED_PARAM, char ** const char *p; char **aptr; int flag = argv[0][0] == 'r' ? VREADONLY : VEXPORT; @@ -19,7 +19,7 @@ aptr = argptr; name = *aptr; if (name) { -@@ -12545,10 +12554,12 @@ exportcmd(int argc UNUSED_PARAM, char ** +@@ -12624,10 +12633,12 @@ exportcmd(int argc UNUSED_PARAM, char ** vp = *findvar(hashvar(name), name); if (vp) { vp->flags |= flag; diff --git a/package/busybox/patches/300-netmsg.patch b/package/busybox/patches/300-netmsg.patch index 795ebb3623..e8b2513eb3 100644 --- a/package/busybox/patches/300-netmsg.patch +++ b/package/busybox/patches/300-netmsg.patch @@ -1,35 +1,18 @@ --- a/include/applets.src.h +++ b/include/applets.src.h -@@ -256,6 +256,7 @@ IF_MT(APPLET(mt, _BB_DIR_BIN, _BB_SUID_D - IF_MV(APPLET(mv, _BB_DIR_BIN, _BB_SUID_DROP)) - IF_NAMEIF(APPLET(nameif, _BB_DIR_SBIN, _BB_SUID_DROP)) - IF_NC(APPLET(nc, _BB_DIR_USR_BIN, _BB_SUID_DROP)) -+IF_NETMSG(APPLET(netmsg, _BB_DIR_BIN, _BB_SUID_REQUIRE)) - IF_NETSTAT(APPLET(netstat, _BB_DIR_BIN, _BB_SUID_DROP)) - IF_NICE(APPLET(nice, _BB_DIR_BIN, _BB_SUID_DROP)) - IF_NMETER(APPLET(nmeter, _BB_DIR_USR_BIN, _BB_SUID_DROP)) ---- a/include/usage.src.h -+++ b/include/usage.src.h -@@ -1,3 +1,4 @@ -+ - /* vi: set sw=8 ts=8: */ - /* - * This file suffers from chronically incorrect tabification -@@ -2706,6 +2707,9 @@ INSERT - " or\n" \ - "$ nameif -c /etc/my_mactab_file\n" \ - -+#define netmsg_trivial_usage NOUSAGE_STR -+#define netmsg_full_usage "" -+ - #define nmeter_trivial_usage \ - "format_string" - #define nmeter_full_usage "\n\n" \ +@@ -266,6 +266,7 @@ IF_MT(APPLET(mt, BB_DIR_BIN, BB_SUID_DRO + IF_MV(APPLET(mv, BB_DIR_BIN, BB_SUID_DROP)) + IF_NAMEIF(APPLET(nameif, BB_DIR_SBIN, BB_SUID_DROP)) + IF_NC(APPLET(nc, BB_DIR_USR_BIN, BB_SUID_DROP)) ++IF_NETMSG(APPLET(netmsg, BB_DIR_BIN, BB_SUID_REQUIRE)) + IF_NETSTAT(APPLET(netstat, BB_DIR_BIN, BB_SUID_DROP)) + IF_NICE(APPLET(nice, BB_DIR_BIN, BB_SUID_DROP)) + IF_NOHUP(APPLET(nohup, BB_DIR_USR_BIN, BB_SUID_DROP)) --- a/networking/Config.src +++ b/networking/Config.src -@@ -640,6 +640,12 @@ config FEATURE_NAMEIF_EXTENDED - new_interface_name mac=00:80:C8:38:91:B5 - new_interface_name 00:80:C8:38:91:B5 +@@ -612,6 +612,12 @@ config FEATURE_IPCALC_LONG_OPTIONS + help + Support long options for the ipcalc applet. +config NETMSG + bool "netmsg" @@ -52,7 +35,7 @@ lib-$(CONFIG_NTPD) += ntpd.o --- /dev/null +++ b/networking/netmsg.c -@@ -0,0 +1,63 @@ +@@ -0,0 +1,65 @@ +/* + * Copyright (C) 2006 Felix Fietkau + * @@ -67,6 +50,8 @@ +#include +#include "busybox.h" + ++//usage:#define netmsg_trivial_usage NOUSAGE_STR ++//usage:#define netmsg_full_usage "" + +#ifndef CONFIG_NETMSG +int main(int argc, char **argv) diff --git a/package/busybox/patches/310-passwd_access.patch b/package/busybox/patches/310-passwd_access.patch index a8581db728..6d0affd165 100644 --- a/package/busybox/patches/310-passwd_access.patch +++ b/package/busybox/patches/310-passwd_access.patch @@ -3,7 +3,7 @@ --- a/networking/httpd.c +++ b/networking/httpd.c -@@ -1742,21 +1742,32 @@ static int check_user_passwd(const char +@@ -1772,21 +1772,32 @@ static int check_user_passwd(const char if (ENABLE_FEATURE_HTTPD_AUTH_MD5) { char *md5_passwd; diff --git a/package/busybox/patches/340-lock_util.patch b/package/busybox/patches/340-lock_util.patch index 568391298e..fd657b698c 100644 --- a/package/busybox/patches/340-lock_util.patch +++ b/package/busybox/patches/340-lock_util.patch @@ -1,28 +1,16 @@ --- a/include/applets.src.h +++ b/include/applets.src.h -@@ -213,6 +213,7 @@ IF_LN(APPLET_NOEXEC(ln, ln, _BB_DIR_BIN, - IF_LOAD_POLICY(APPLET(load_policy, _BB_DIR_USR_SBIN, _BB_SUID_DROP)) - IF_LOADFONT(APPLET(loadfont, _BB_DIR_USR_SBIN, _BB_SUID_DROP)) - IF_LOADKMAP(APPLET(loadkmap, _BB_DIR_SBIN, _BB_SUID_DROP)) -+IF_LOCK(APPLET(lock, _BB_DIR_BIN, _BB_SUID_DROP)) - IF_LOGGER(APPLET(logger, _BB_DIR_USR_BIN, _BB_SUID_DROP)) - IF_LOGIN(APPLET(login, _BB_DIR_BIN, _BB_SUID_REQUIRE)) - IF_LOGNAME(APPLET_NOFORK(logname, logname, _BB_DIR_USR_BIN, _BB_SUID_DROP, logname)) ---- a/include/usage.src.h -+++ b/include/usage.src.h -@@ -2089,6 +2089,9 @@ INSERT - #define loadkmap_example_usage \ - "$ loadkmap < /etc/i18n/lang-keymap\n" - -+#define lock_trivial_usage NOUSAGE_STR -+#define lock_full_usage "" -+ - #define logger_trivial_usage \ - "[OPTIONS] [MESSAGE]" - #define logger_full_usage "\n\n" \ +@@ -218,6 +218,7 @@ IF_LN(APPLET_NOEXEC(ln, ln, BB_DIR_BIN, + IF_LOAD_POLICY(APPLET(load_policy, BB_DIR_USR_SBIN, BB_SUID_DROP)) + IF_LOADFONT(APPLET(loadfont, BB_DIR_USR_SBIN, BB_SUID_DROP)) + IF_LOADKMAP(APPLET(loadkmap, BB_DIR_SBIN, BB_SUID_DROP)) ++IF_LOCK(APPLET(lock, BB_DIR_BIN, BB_SUID_DROP)) + IF_LOGGER(APPLET(logger, BB_DIR_USR_BIN, BB_SUID_DROP)) + /* Needs to be run by root or be suid root - needs to change uid and gid: */ + IF_LOGIN(APPLET(login, BB_DIR_BIN, BB_SUID_REQUIRE)) --- a/miscutils/Config.src +++ b/miscutils/Config.src -@@ -485,6 +485,11 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA +@@ -419,6 +419,11 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA help Enables the 'hdparm -d' option to get/set using_dma flag. @@ -46,7 +34,7 @@ lib-$(CONFIG_MICROCOM) += microcom.o --- /dev/null +++ b/miscutils/lock.c -@@ -0,0 +1,132 @@ +@@ -0,0 +1,135 @@ +/* + * Copyright (C) 2006 Felix Fietkau + * @@ -61,6 +49,9 @@ +#include +#include "busybox.h" + ++//usage:#define lock_trivial_usage NOUSAGE_STR ++//usage:#define lock_full_usage "" ++ +static int unlock = 0; +static int shared = 0; +static int waitonly = 0; diff --git a/package/busybox/patches/350-httpd_redir.patch b/package/busybox/patches/350-httpd_redir.patch index 3fae94a096..d5f64e332a 100644 --- a/package/busybox/patches/350-httpd_redir.patch +++ b/package/busybox/patches/350-httpd_redir.patch @@ -1,27 +1,23 @@ ---- a/include/usage.src.h -+++ b/include/usage.src.h -@@ -1623,7 +1623,8 @@ INSERT - IF_FEATURE_HTTPD_SETUID(" [-u USER[:GRP]]") \ - IF_FEATURE_HTTPD_BASIC_AUTH(" [-r REALM]") \ - " [-h HOME]\n" \ -- "or httpd -d/-e" IF_FEATURE_HTTPD_AUTH_MD5("/-m") " STRING" -+ "or httpd -d/-e" IF_FEATURE_HTTPD_AUTH_MD5("/-m") " STRING" \ -+ " [-R [-H ]]" - #define httpd_full_usage "\n\n" \ - "Listen for incoming HTTP requests\n" \ - "\nOptions:" \ -@@ -1641,6 +1642,8 @@ INSERT - "\n -m STRING MD5 crypt STRING") \ - "\n -e STRING HTML encode STRING" \ - "\n -d STRING URL decode STRING" \ -+ "\n -R PATH Redirect target path" \ -+ "\n -H HOST Redirect target host" \ - - #define hwclock_trivial_usage \ - IF_FEATURE_HWCLOCK_LONG_OPTIONS( \ --- a/networking/httpd.c +++ b/networking/httpd.c -@@ -243,6 +243,8 @@ struct globals { +@@ -105,6 +105,7 @@ + //usage: IF_FEATURE_HTTPD_BASIC_AUTH(" [-r REALM]") + //usage: " [-h HOME]\n" + //usage: "or httpd -d/-e" IF_FEATURE_HTTPD_AUTH_MD5("/-m") " STRING" ++//usage: " [-R [-H ]]" + //usage:#define httpd_full_usage "\n\n" + //usage: "Listen for incoming HTTP requests\n" + //usage: "\n -i Inetd mode" +@@ -121,6 +122,8 @@ + //usage: "\n -m STRING MD5 crypt STRING") + //usage: "\n -e STRING HTML encode STRING" + //usage: "\n -d STRING URL decode STRING" ++//usage: "\n -R PATH Redirect target path" ++//usage: "\n -H HOST Redirect target host" + + #include "libbb.h" + #if ENABLE_FEATURE_HTTPD_USE_SENDFILE +@@ -272,6 +275,8 @@ struct globals { const char *found_mime_type; const char *found_moved_temporarily; @@ -30,7 +26,7 @@ Htaccess_IP *ip_a_d; /* config allow/deny lines */ IF_FEATURE_HTTPD_BASIC_AUTH(const char *g_realm;) -@@ -293,6 +295,8 @@ struct globals { +@@ -322,6 +327,8 @@ struct globals { #define index_page (G.index_page ) #define found_mime_type (G.found_mime_type ) #define found_moved_temporarily (G.found_moved_temporarily) @@ -39,7 +35,7 @@ #define last_mod (G.last_mod ) #define ip_a_d (G.ip_a_d ) #define g_realm (G.g_realm ) -@@ -999,8 +1003,11 @@ static void send_headers(int responseNum +@@ -1028,8 +1035,11 @@ static void send_headers(int responseNum } #endif if (responseNum == HTTP_MOVED_TEMPORARILY) { @@ -52,7 +48,7 @@ (g_query ? "?" : ""), (g_query ? g_query : "")); } -@@ -1967,8 +1974,12 @@ static void handle_incoming_and_exit(con +@@ -1997,8 +2007,12 @@ static void handle_incoming_and_exit(con } while (*++tptr); *++urlp = '\0'; /* terminate after last character */ @@ -66,7 +62,7 @@ if (is_directory(urlcopy + 1, 1, NULL)) { found_moved_temporarily = urlcopy; } -@@ -2325,7 +2336,9 @@ static void sighup_handler(int sig UNUSE +@@ -2355,7 +2369,9 @@ static void sighup_handler(int sig UNUSE } enum { @@ -77,7 +73,7 @@ d_opt_decode_url, h_opt_home_httpd, IF_FEATURE_HTTPD_ENCODE_URL_STR(e_opt_encode_url,) -@@ -2374,12 +2387,13 @@ int httpd_main(int argc UNUSED_PARAM, ch +@@ -2404,12 +2420,13 @@ int httpd_main(int argc UNUSED_PARAM, ch /* We do not "absolutize" path given by -h (home) opt. * If user gives relative path in -h, * $SCRIPT_FILENAME will not be set. */ diff --git a/package/busybox/patches/410-httpd_cgi_headers.patch b/package/busybox/patches/410-httpd_cgi_headers.patch index 19e1f94142..7cc4f936ad 100644 --- a/package/busybox/patches/410-httpd_cgi_headers.patch +++ b/package/busybox/patches/410-httpd_cgi_headers.patch @@ -1,6 +1,6 @@ --- a/networking/httpd.c +++ b/networking/httpd.c -@@ -1261,10 +1261,10 @@ static NOINLINE void cgi_io_loop_and_exi +@@ -1294,10 +1294,10 @@ static NOINLINE void cgi_io_loop_and_exi if (full_write(STDOUT_FILENO, HTTP_200, sizeof(HTTP_200)-1) != sizeof(HTTP_200)-1) break; } diff --git a/package/busybox/patches/440-httpd_chdir.patch b/package/busybox/patches/440-httpd_chdir.patch index 66e41b55f2..da069f6fff 100644 --- a/package/busybox/patches/440-httpd_chdir.patch +++ b/package/busybox/patches/440-httpd_chdir.patch @@ -1,6 +1,6 @@ --- a/networking/httpd.c +++ b/networking/httpd.c -@@ -1853,6 +1853,7 @@ static void handle_incoming_and_exit(con +@@ -1886,6 +1886,7 @@ static void handle_incoming_and_exit(con char *header_ptr = header_ptr; Htaccess_Proxy *proxy_entry; #endif diff --git a/package/busybox/patches/470-insmod_search.patch b/package/busybox/patches/470-insmod_search.patch index b5314e3f0d..7f0188fc82 100644 --- a/package/busybox/patches/470-insmod_search.patch +++ b/package/busybox/patches/470-insmod_search.patch @@ -1,3 +1,14 @@ +--- a/modutils/Config.src ++++ b/modutils/Config.src +@@ -247,7 +247,7 @@ config FEATURE_MODUTILS_SYMBOLS + config DEFAULT_MODULES_DIR + string "Default directory containing modules" + default "/lib/modules" +- depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO ++ depends on DEPMOD || INSMOD || MODPROBE || MODPROBE_SMALL || MODINFO + help + Directory that contains kernel modules. + Defaults to "/lib/modules" --- a/modutils/insmod.c +++ b/modutils/insmod.c @@ -11,6 +11,106 @@ @@ -107,16 +118,16 @@ /* 2.6 style insmod has no options and required filename * (not module name - .ko can't be omitted) */ -@@ -59,9 +159,15 @@ int insmod_main(int argc UNUSED_PARAM, c +@@ -58,9 +158,15 @@ int insmod_main(int argc UNUSED_PARAM, c if (!filename) bb_show_usage(); -- rc = bb_init_module(filename, parse_cmdline_module_options(argv)); +- rc = bb_init_module(filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0)); + rc = find_module(filename); + if (rc || (g_filename == NULL)) -+ goto done; ++ goto done; + -+ rc = bb_init_module(g_filename, parse_cmdline_module_options(argv)); ++ rc = bb_init_module(g_filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0)); if (rc) bb_error_msg("can't insert '%s': %s", filename, moderror(rc)); + free (g_filename); @@ -124,14 +135,3 @@ +done: return rc; } ---- a/modutils/Config.src -+++ b/modutils/Config.src -@@ -229,7 +229,7 @@ config FEATURE_MODUTILS_SYMBOLS - config DEFAULT_MODULES_DIR - string "Default directory containing modules" - default "/lib/modules" -- depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO -+ depends on DEPMOD || INSMOD || MODPROBE || MODPROBE_SMALL || MODINFO - help - Directory that contains kernel modules. - Defaults to "/lib/modules" diff --git a/package/busybox/patches/480-mount_union.patch b/package/busybox/patches/480-mount_union.patch index b9eee8cb63..2f236a1528 100644 --- a/package/busybox/patches/480-mount_union.patch +++ b/package/busybox/patches/480-mount_union.patch @@ -1,6 +1,6 @@ --- a/util-linux/mount.c +++ b/util-linux/mount.c -@@ -77,6 +77,10 @@ +@@ -136,6 +136,10 @@ # include #endif @@ -11,19 +11,19 @@ #if defined(__dietlibc__) // 16.12.2006, Sampo Kellomaki (sampo@iki.fi) -@@ -194,6 +198,7 @@ static const int32_t mount_options[] = { +@@ -254,6 +258,7 @@ static const int32_t mount_options[] = { /* "rslave" */ MS_SLAVE|MS_RECURSIVE, - /* "rprivate" */ MS_SLAVE|MS_RECURSIVE, + /* "rprivate" */ MS_PRIVATE|MS_RECURSIVE, /* "runbindable" */ MS_UNBINDABLE|MS_RECURSIVE, + /* "union" */ MS_UNION, ) // Always understood. -@@ -249,6 +254,7 @@ static const char mount_option_str[] = - "rslave\0" - "rprivate\0" - "runbindable\0" -+ "union" "\0" +@@ -310,6 +315,7 @@ static const char mount_option_str[] = + "make-rslave\0" + "make-rprivate\0" + "make-runbindable\0" ++ "make-union\0" ) // Always understood. diff --git a/package/busybox/patches/490-mount_disable_check.patch b/package/busybox/patches/490-mount_disable_check.patch index 513405fcf7..2fcb7f7fc2 100644 --- a/package/busybox/patches/490-mount_disable_check.patch +++ b/package/busybox/patches/490-mount_disable_check.patch @@ -1,6 +1,6 @@ --- a/util-linux/mount.c +++ b/util-linux/mount.c -@@ -69,9 +69,6 @@ +@@ -128,9 +128,6 @@ #if ENABLE_FEATURE_MOUNT_NFS /* This is just a warning of a common mistake. Possibly this should be a * uclibc faq entry rather than in busybox... */ diff --git a/package/busybox/patches/510-awk_include.patch b/package/busybox/patches/510-awk_include.patch index 9465cdad83..9f525acf86 100644 --- a/package/busybox/patches/510-awk_include.patch +++ b/package/busybox/patches/510-awk_include.patch @@ -5,7 +5,7 @@ /* vi: set sw=4 ts=4: */ /* * awk implementation for busybox -@@ -74,9 +75,14 @@ typedef struct chain_s { +@@ -81,9 +82,14 @@ typedef struct chain_s { } chain; /* Function */ @@ -20,7 +20,7 @@ } func; /* I/O stream */ -@@ -1466,7 +1472,8 @@ static void parse_program(char *p) +@@ -1473,7 +1479,8 @@ static void parse_program(char *p) next_token(TC_FUNCTION); g_pos++; f = newfunc(t_string); @@ -30,7 +30,7 @@ f->nargs = 0; while (next_token(TC_VARIABLE | TC_SEQTERM) & TC_VARIABLE) { v = findvar(ahash, t_string); -@@ -1475,7 +1482,7 @@ static void parse_program(char *p) +@@ -1482,7 +1489,7 @@ static void parse_program(char *p) if (next_token(TC_COMMA | TC_SEQTERM) & TC_SEQTERM) break; } @@ -39,7 +39,7 @@ chain_group(); clear_array(ahash); -@@ -2573,7 +2580,8 @@ static var *evaluate(node *op, var *res) +@@ -2580,7 +2587,8 @@ static var *evaluate(node *op, var *res) var *vbeg, *v; const char *sv_progname; @@ -49,7 +49,7 @@ syntax_error(EMSG_UNDEF_FUNC); vbeg = v = nvalloc(op->r.f->nargs + 1); -@@ -2590,7 +2598,10 @@ static var *evaluate(node *op, var *res) +@@ -2597,7 +2605,10 @@ static var *evaluate(node *op, var *res) fnargs = vbeg; sv_progname = g_progname; @@ -61,7 +61,7 @@ g_progname = sv_progname; nvfree(fnargs); -@@ -2984,6 +2995,143 @@ static rstream *next_input_file(void) +@@ -2991,6 +3002,143 @@ static rstream *next_input_file(void) #undef files_happen } @@ -205,7 +205,7 @@ int awk_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; int awk_main(int argc, char **argv) { -@@ -3049,6 +3197,9 @@ int awk_main(int argc, char **argv) +@@ -3056,6 +3204,9 @@ int awk_main(int argc, char **argv) *s1 = '='; } } diff --git a/package/busybox/patches/524-udhcpc_renew.patch b/package/busybox/patches/524-udhcpc_renew.patch index 64b075a593..01edda3a57 100644 --- a/package/busybox/patches/524-udhcpc_renew.patch +++ b/package/busybox/patches/524-udhcpc_renew.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -874,7 +874,6 @@ static void perform_renew(void) +@@ -983,7 +983,6 @@ static void perform_renew(void) state = RENEW_REQUESTED; break; case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ diff --git a/package/busybox/patches/802-brctl_linux24.patch b/package/busybox/patches/802-brctl_linux24.patch index 09ee8be1ee..8cc19779a2 100644 --- a/package/busybox/patches/802-brctl_linux24.patch +++ b/package/busybox/patches/802-brctl_linux24.patch @@ -1,6 +1,6 @@ --- a/networking/brctl.c +++ b/networking/brctl.c -@@ -32,7 +32,7 @@ +@@ -56,7 +56,7 @@ /* Maximum number of ports supported per bridge interface. */ #ifndef MAX_PORTS @@ -9,7 +9,7 @@ #endif /* Use internal number parsing and not the "exact" conversion. */ -@@ -169,6 +169,7 @@ int brctl_main(int argc UNUSED_PARAM, ch +@@ -193,6 +193,7 @@ int brctl_main(int argc UNUSED_PARAM, ch printf(bi.stp_enabled ? "\tyes" : "\tno"); /* print interface list */ @@ -17,7 +17,7 @@ arm_ioctl(args, BRCTL_GET_PORT_LIST, (unsigned long) ifidx, MAX_PORTS); xioctl(fd, SIOCDEVPRIVATE, &ifr); -@@ -197,9 +198,19 @@ int brctl_main(int argc UNUSED_PARAM, ch +@@ -221,9 +222,19 @@ int brctl_main(int argc UNUSED_PARAM, ch br = *argv++; if (key == ARG_addbr || key == ARG_delbr) { /* addbr or delbr */ @@ -40,7 +40,7 @@ goto done; } -@@ -208,14 +219,27 @@ int brctl_main(int argc UNUSED_PARAM, ch +@@ -232,14 +243,27 @@ int brctl_main(int argc UNUSED_PARAM, ch strncpy_IFNAMSIZ(ifr.ifr_name, br); if (key == ARG_addif || key == ARG_delif) { /* addif or delif */ diff --git a/package/busybox/patches/803-id_getgrouplist.patch b/package/busybox/patches/803-id_getgrouplist.patch index 04d8dc4067..66c184959f 100644 --- a/package/busybox/patches/803-id_getgrouplist.patch +++ b/package/busybox/patches/803-id_getgrouplist.patch @@ -5,7 +5,7 @@ Signed-off-by: Nicolas Thill --- a/coreutils/id.c +++ b/coreutils/id.c -@@ -19,10 +19,12 @@ +@@ -63,10 +63,12 @@ /* This is a NOEXEC applet. Be very careful! */ @@ -19,7 +19,7 @@ Signed-off-by: Nicolas Thill #endif #endif #endif -@@ -84,7 +86,11 @@ static int get_groups(const char *userna +@@ -128,7 +130,11 @@ static int get_groups(const char *userna /* If the user is a member of more than * *n groups, then -1 is returned. Otherwise >= 0. * (and no defined way of detecting errors?!) */ @@ -30,8 +30,8 @@ Signed-off-by: Nicolas Thill +#endif /* I guess *n < 0 might indicate error. Anyway, * malloc'ing -1 bytes won't be good, so: */ - //if (*n < 0) -@@ -156,6 +162,7 @@ int id_main(int argc UNUSED_PARAM, char + if (*n < 0) +@@ -210,6 +216,7 @@ int id_main(int argc UNUSED_PARAM, char if (egid != rgid) status |= print_group(egid, " "); } @@ -39,7 +39,7 @@ Signed-off-by: Nicolas Thill /* We are supplying largish buffer, trying * to not run get_groups() twice. That might be slow * ("user database in remote SQL server" case) */ -@@ -183,6 +190,7 @@ int id_main(int argc UNUSED_PARAM, char +@@ -236,6 +243,7 @@ int id_main(int argc UNUSED_PARAM, char } if (ENABLE_FEATURE_CLEAN_UP) free(groups); diff --git a/package/busybox/patches/902-telnetd_intr.patch b/package/busybox/patches/902-telnetd_intr.patch index c5c25dc84e..862ece055d 100644 --- a/package/busybox/patches/902-telnetd_intr.patch +++ b/package/busybox/patches/902-telnetd_intr.patch @@ -1,10 +1,10 @@ --- a/networking/telnetd.c +++ b/networking/telnetd.c -@@ -313,6 +313,7 @@ make_new_session( +@@ -330,6 +330,7 @@ make_new_session( /* Restore default signal handling ASAP */ bb_signals((1 << SIGCHLD) + (1 << SIGPIPE), SIG_DFL); + signal(SIGINT, SIG_DFL); - if (ENABLE_FEATURE_UTMP) { - len_and_sockaddr *lsa = get_peer_lsa(sock); + pid = getpid(); + diff --git a/package/busybox/patches/910-insmod-q-flag.patch b/package/busybox/patches/910-insmod-q-flag.patch index 596fe910de..6002f20f1b 100644 --- a/package/busybox/patches/910-insmod-q-flag.patch +++ b/package/busybox/patches/910-insmod-q-flag.patch @@ -1,6 +1,6 @@ --- a/modutils/insmod.c +++ b/modutils/insmod.c -@@ -133,7 +133,7 @@ int insmod_main(int argc, char **argv) M +@@ -139,7 +139,7 @@ int insmod_main(int argc, char **argv) M int insmod_main(int argc UNUSED_PARAM, char **argv) { char *filename; @@ -9,7 +9,7 @@ /* Compat note: * 2.6 style insmod has no options and required filename -@@ -143,10 +143,8 @@ int insmod_main(int argc UNUSED_PARAM, c +@@ -149,10 +149,8 @@ int insmod_main(int argc UNUSED_PARAM, c * or in $MODPATH. */ @@ -22,10 +22,10 @@ filename = *++argv; if (!filename) -@@ -157,7 +155,7 @@ int insmod_main(int argc UNUSED_PARAM, c - goto done; +@@ -163,7 +161,7 @@ int insmod_main(int argc UNUSED_PARAM, c + goto done; - rc = bb_init_module(g_filename, parse_cmdline_module_options(argv)); + rc = bb_init_module(g_filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0)); - if (rc) + if (rc && !(opt & INSMOD_OPT_SILENT)) bb_error_msg("can't insert '%s': %s", filename, moderror(rc));