[package] busybox: update to 1.19.2 (thanks to Peter Wagner)
authorNicolas Thill <nico@openwrt.org>
Fri, 21 Oct 2011 23:08:45 +0000 (23:08 +0000)
committerNicolas Thill <nico@openwrt.org>
Fri, 21 Oct 2011 23:08:45 +0000 (23:08 +0000)
SVN-Revision: 28513

58 files changed:
package/busybox/Makefile
package/busybox/config/Config.in
package/busybox/config/archival/Config.in
package/busybox/config/console-tools/Config.in
package/busybox/config/coreutils/Config.in
package/busybox/config/debianutils/Config.in
package/busybox/config/e2fsprogs/Config.in
package/busybox/config/e2fsprogs/old_e2fsprogs/Config.in
package/busybox/config/editors/Config.in
package/busybox/config/findutils/Config.in
package/busybox/config/init/Config.in
package/busybox/config/libbb/Config.in
package/busybox/config/loginutils/Config.in
package/busybox/config/mailutils/Config.in
package/busybox/config/miscutils/Config.in
package/busybox/config/modutils/Config.in
package/busybox/config/networking/Config.in
package/busybox/config/networking/udhcp/Config.in
package/busybox/config/printutils/Config.in
package/busybox/config/procps/Config.in
package/busybox/config/runit/Config.in
package/busybox/config/selinux/Config.in
package/busybox/config/shell/Config.in
package/busybox/config/sysklogd/Config.in
package/busybox/config/util-linux/Config.in
package/busybox/patches/000-upstream-android.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-buildsys.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-chpasswd.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-crond.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-inetd.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-syslogd.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-tail.patch [new file with mode: 0644]
package/busybox/patches/000-upstream-tftp.patch [new file with mode: 0644]
package/busybox/patches/001-init_avoid_loop_opening_tty.patch
package/busybox/patches/003-brctl_show_fix.patch
package/busybox/patches/110-wget_getopt_fix.patch
package/busybox/patches/200-etc_crontabs.patch
package/busybox/patches/240-udhcpc_retries.patch
package/busybox/patches/241-udhcpc-oversized_packets.patch
package/busybox/patches/242-udhcpc_msgs.patch
package/busybox/patches/243-udhcpc_changed_ifindex.patch
package/busybox/patches/244-udhcpc_add_6rd_option.patch
package/busybox/patches/250-ash_export-n.patch
package/busybox/patches/300-netmsg.patch
package/busybox/patches/310-passwd_access.patch
package/busybox/patches/340-lock_util.patch
package/busybox/patches/350-httpd_redir.patch
package/busybox/patches/410-httpd_cgi_headers.patch
package/busybox/patches/440-httpd_chdir.patch
package/busybox/patches/470-insmod_search.patch
package/busybox/patches/480-mount_union.patch
package/busybox/patches/490-mount_disable_check.patch
package/busybox/patches/510-awk_include.patch
package/busybox/patches/524-udhcpc_renew.patch
package/busybox/patches/802-brctl_linux24.patch
package/busybox/patches/803-id_getgrouplist.patch
package/busybox/patches/902-telnetd_intr.patch
package/busybox/patches/910-insmod-q-flag.patch

index 936aefd..5559e8b 100644 (file)
@@ -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
index e553862..0045036 100644 (file)
@@ -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,10 +283,19 @@ 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_UTMP
+       bool "Support utmp file"
+       default n
+       help
+         The file /var/run/utmp is used to track who is currently logged in.
+         With this option on, certain applets (getty, login, telnetd etc)
+         will create and delete entries there.
+         "who" applet requires this option.
+
 config BUSYBOX_CONFIG_FEATURE_WTMP
        bool "Support wtmp file"
        default n
-       select BUSYBOX_CONFIG_FEATURE_UTMP
+       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.
@@ -294,15 +303,6 @@ config BUSYBOX_CONFIG_FEATURE_WTMP
          will append new entries there.
          "last" applet requires this option.
 
-config BUSYBOX_CONFIG_FEATURE_UTMP
-       bool "Support utmp file"
-       default n
-       help
-         The file /var/run/utmp is used to track who is currently logged in.
-         With this option on, certain applets (getty, login, telnetd etc)
-         will create and delete entries there.
-         "who" applet requires this option.
-
 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:
 
-         <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
+         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
index 3545694..d2bfa48 100644 (file)
@@ -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
index 6d6f0bb..a4007cb 100644 (file)
@@ -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.
 
index 7508c72..d055e4f 100644 (file)
@@ -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
index a9beb9b..be69666 100644 (file)
@@ -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
index 066fe7b..282681d 100644 (file)
@@ -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.
index 0b7ce4d..105c93a 100644 (file)
@@ -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
index 894626f..21321db 100644 (file)
@@ -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,67 +11,6 @@ config BUSYBOX_CONFIG_PATCH
        default n
        help
          Apply a unified diff formatted patch.
-
-config BUSYBOX_CONFIG_AWK
-       bool "awk"
-       default y
-       help
-         Awk is used as a pattern scanning and processing language. This is
-         the BusyBox implementation of that programming language.
-
-config BUSYBOX_CONFIG_FEATURE_AWK_LIBM
-       bool "Enable math functions (requires libm)"
-       default y
-       depends on BUSYBOX_CONFIG_AWK
-       help
-         Enable math functions of the Awk programming language.
-         NOTE: This will require libm to be present for linking.
-
-config BUSYBOX_CONFIG_CMP
-       bool "cmp"
-       default y
-       help
-         cmp is used to compare two files and returns the result
-         to standard output.
-
-config BUSYBOX_CONFIG_DIFF
-       bool "diff"
-       default n
-       help
-         diff compares two files or directories and outputs the
-         differences between them in a form that can be given to
-         the patch command.
-
-config BUSYBOX_CONFIG_FEATURE_DIFF_LONG_OPTIONS
-       bool "Enable long options"
-       default n
-       depends on BUSYBOX_CONFIG_DIFF && BUSYBOX_CONFIG_LONG_OPTS
-       help
-         Enable use of long options.
-
-config BUSYBOX_CONFIG_FEATURE_DIFF_DIR
-       bool "Enable directory support"
-       default n
-       depends on BUSYBOX_CONFIG_DIFF
-       help
-         This option enables support for directory and subdirectory
-         comparison.
-
-config BUSYBOX_CONFIG_ED
-       bool "ed"
-       default n
-       help
-         The original 1970's Unix text editor, from the days of teletypes.
-         Small, simple, evil. Part of SUSv3. If you're not already using
-         this, you don't need it.
-
-config BUSYBOX_CONFIG_SED
-       bool "sed"
-       default y
-       help
-         sed is used to perform text transformations on a file
-         or input from a pipeline.
-
 config BUSYBOX_CONFIG_VI
        bool "vi"
        default y
@@ -123,6 +63,13 @@ config BUSYBOX_CONFIG_FEATURE_VI_SEARCH
          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
@@ -175,8 +122,8 @@ config BUSYBOX_CONFIG_FEATURE_VI_ASK_TERMINAL
        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.
+         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.
 
@@ -188,6 +135,66 @@ config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR
          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"
+       default y
+       help
+         Awk is used as a pattern scanning and processing language. This is
+         the BusyBox implementation of that programming language.
+
+config BUSYBOX_CONFIG_FEATURE_AWK_LIBM
+       bool "Enable math functions (requires libm)"
+       default y
+       depends on BUSYBOX_CONFIG_AWK
+       help
+         Enable math functions of the Awk programming language.
+         NOTE: This will require libm to be present for linking.
+
+config BUSYBOX_CONFIG_CMP
+       bool "cmp"
+       default y
+       help
+         cmp is used to compare two files and returns the result
+         to standard output.
+
+config BUSYBOX_CONFIG_DIFF
+       bool "diff"
+       default n
+       help
+         diff compares two files or directories and outputs the
+         differences between them in a form that can be given to
+         the patch command.
+
+config BUSYBOX_CONFIG_FEATURE_DIFF_LONG_OPTIONS
+       bool "Enable long options"
+       default n
+       depends on BUSYBOX_CONFIG_DIFF && BUSYBOX_CONFIG_LONG_OPTS
+       help
+         Enable use of long options.
+
+config BUSYBOX_CONFIG_FEATURE_DIFF_DIR
+       bool "Enable directory support"
+       default n
+       depends on BUSYBOX_CONFIG_DIFF
+       help
+         This option enables support for directory and subdirectory
+         comparison.
+
+config BUSYBOX_CONFIG_ED
+       bool "ed"
+       default n
+       help
+         The original 1970's Unix text editor, from the days of teletypes.
+         Small, simple, evil. Part of SUSv3. If you're not already using
+         this, you don't need it.
+
+config BUSYBOX_CONFIG_SED
+       bool "sed"
+       default y
+       help
+         sed is used to perform text transformations on a file
+         or input from a pipeline.
+
 config BUSYBOX_CONFIG_FEATURE_ALLOW_EXEC
        bool "Allow vi and awk to execute shell commands"
        default y
index 80de398..8db1fde 100644 (file)
@@ -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
index 92aceed..ac446b8 100644 (file)
@@ -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
index a3c9641..6475403 100644 (file)
@@ -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).
index 0298840..c6e50bd 100644 (file)
@@ -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 >/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"
index c879583..8db3031 100644 (file)
@@ -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
index 82e48f0..e69d684 100644 (file)
@@ -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
index c52c67d..6d781de 100644 (file)
@@ -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:
index 82d3603..5cec9dc 100644 (file)
@@ -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.
index aa2a800..f4d26ec 100644 (file)
@@ -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"
index 8b84bde..ca2ea9f 100644 (file)
@@ -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
index fbb2cee..a42fdca 100644 (file)
@@ -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"
index c1ee813..9d7c597 100644 (file)
@@ -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
index 50f324a..e7317ca 100644 (file)
@@ -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
index 57f490e..a271a38 100644 (file)
@@ -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 "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 <applet>_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 <applet>_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
index c7bac93..20e1aff 100644 (file)
@@ -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
index 4937988..14d4777 100644 (file)
@@ -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 (file)
index 0000000..865b095
--- /dev/null
@@ -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 (file)
index 0000000..1d5a1c2
--- /dev/null
@@ -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 (file)
index 0000000..75b0c4d
--- /dev/null
@@ -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 (file)
index 0000000..446bc69
--- /dev/null
@@ -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 (file)
index 0000000..dc71c7e
--- /dev/null
@@ -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 (file)
index 0000000..c5f1fdd
--- /dev/null
@@ -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 (file)
index 0000000..9280593
--- /dev/null
@@ -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 (file)
index 0000000..c1f08bd
--- /dev/null
@@ -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
index 1097720..4db64c3 100644 (file)
@@ -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
                         */
index 57e35d4..8177fb0 100644 (file)
@@ -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
                )
index d9ae982..e679870 100644 (file)
@@ -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): */
index f83ac02..ebf2990 100644 (file)
@@ -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"
  
index 73240aa..a9f4f3d 100644 (file)
@@ -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:
index 56f4e93..471d704 100644 (file)
@@ -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);
index 7d390f1..998e3b6 100644 (file)
@@ -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);
  
index 71bfe01..4b28166 100644 (file)
@@ -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;
  
index 21107ae..84891d3 100644 (file)
@@ -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;
                }
index 1c34b2c..048c236 100644 (file)
@@ -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;
index 795ebb3..e8b2513 100644 (file)
@@ -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 <nbd@openwrt.org>
 + *
@@ -67,6 +50,8 @@
 +#include <string.h>
 +#include "busybox.h"
 +
++//usage:#define netmsg_trivial_usage NOUSAGE_STR
++//usage:#define netmsg_full_usage ""
 +
 +#ifndef CONFIG_NETMSG
 +int main(int argc, char **argv)
index a8581db..6d0affd 100644 (file)
@@ -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;
index 5683912..fd657b6 100644 (file)
@@ -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 <nbd@openwrt.org>
 + *
@@ -61,6 +49,9 @@
 +#include <stdio.h>
 +#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;
index 3fae94a..d5f64e3 100644 (file)
@@ -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 <path> [-H <host>]]"
- #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 <path> [-H <host>]]"
+ //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. */
index 19e1f94..7cc4f93 100644 (file)
@@ -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;
                                        }
index 66e41b5..da069f6 100644 (file)
@@ -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
index b5314e3..7f0188f 100644 (file)
@@ -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 @@
  
  /* 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);
 +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"
index b9eee8c..2f236a1 100644 (file)
@@ -1,6 +1,6 @@
 --- a/util-linux/mount.c
 +++ b/util-linux/mount.c
-@@ -77,6 +77,10 @@
+@@ -136,6 +136,10 @@
  # include <rpc/pmap_clnt.h>
  #endif
  
  
  #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.
index 513405f..2fcb7f7 100644 (file)
@@ -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... */
index 9465cda..9f525ac 100644 (file)
@@ -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
  }
  
  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 = '=';
                }
        }
index 64b075a..01edda3 100644 (file)
@@ -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 */
index 09ee8be..8cc1977 100644 (file)
@@ -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 */
index 04d8dc4..66c1849 100644 (file)
@@ -5,7 +5,7 @@ Signed-off-by: Nicolas Thill <nico@openwrt.org>
 
 --- 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 <nico@openwrt.org>
  #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 <nico@openwrt.org>
 +#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 <nico@openwrt.org>
                /* 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);
index c5c25dc..862ece0 100644 (file)
@@ -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();
index 596fe91..6002f20 100644 (file)
@@ -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.
         */
  
  
        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));