From: Hauke Mehrtens Date: Sun, 18 Sep 2016 21:26:26 +0000 (+0200) Subject: busybox: update to version 1.25.0 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=06fa1c46fc32644a54393a7a0125eba5dd9dbb3f;p=openwrt%2Fstaging%2Frmilecki.git busybox: update to version 1.25.0 The following patches were removed: 010-networking-fix-uninitialized-memory-when-displaying-.patch https://git.busybox.net/busybox/commit/?id=f2c043acfcf9dad9fd3d65821b81f89986bbe54e 030-ip-fix-problem-on-mips64-n64-big-endian-musl-systems.patch https://git.busybox.net/busybox/commit/?id=4ab372d49a6e82b0bf097dedb96d26330c5f2d5f 204-udhcpc_src_ip_rebind.patch https://git.busybox.net/busybox/commit/?id=abe8f7515aded80889d78c2c1c8947997918cf90 230-ntpd_delayed_resolve.patch https://git.busybox.net/busybox/commit/?id=c8641962e4cbde48108ddfc1c105e3320778190d https://git.busybox.net/busybox/commit/?id=e4caf1dd9ce8569371a0eeb77ccf02a572dc0f11 260-arping_missing_includes.patch Not needed any more, still builds with musl for me. Add in 92fd6e6f1a "busybox: fix arping applet building on musl" The Kconfig files were updated with these commands: cd config ../convert_menuconfig.pl .../build_dir/target-*/busybox-1.25.0 cd .. ./convert_defaults.pl < .../build_dir/target-*/busybox-1.25.0/.config > Config-defaults.in Signed-off-by: Hauke Mehrtens --- diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in index 105a3fcadd1..11cce03db9b 100644 --- a/package/utils/busybox/Config-defaults.in +++ b/package/utils/busybox/Config-defaults.in @@ -34,6 +34,9 @@ config BUSYBOX_DEFAULT_FEATURE_VERBOSE_USAGE config BUSYBOX_DEFAULT_FEATURE_COMPRESS_USAGE bool default y +config BUSYBOX_DEFAULT_BUSYBOX + bool + default n config BUSYBOX_DEFAULT_FEATURE_INSTALLER bool default n @@ -166,6 +169,9 @@ config BUSYBOX_DEFAULT_DEBUG config BUSYBOX_DEFAULT_DEBUG_PESSIMIZE bool default n +config BUSYBOX_DEFAULT_DEBUG_SANITIZE + bool + default n config BUSYBOX_DEFAULT_UNIT_TEST bool default n @@ -205,7 +211,7 @@ config BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER config BUSYBOX_DEFAULT_PREFIX string default "./_install" -config BUSYBOX_DEFAULT_FEATURE_SYSTEMD +config BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL bool default n config BUSYBOX_DEFAULT_FEATURE_RTMINMAX @@ -313,6 +319,9 @@ config BUSYBOX_DEFAULT_UNCOMPRESS config BUSYBOX_DEFAULT_GUNZIP bool default y +config BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS + bool + default n config BUSYBOX_DEFAULT_BUNZIP2 bool default y @@ -460,6 +469,15 @@ config BUSYBOX_DEFAULT_GROUPS config BUSYBOX_DEFAULT_SHUF bool default n +config BUSYBOX_DEFAULT_STAT + bool + default n +config BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT + bool + default n +config BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM + bool + default n config BUSYBOX_DEFAULT_SYNC bool default y @@ -733,12 +751,6 @@ config BUSYBOX_DEFAULT_SPLIT config BUSYBOX_DEFAULT_FEATURE_SPLIT_FANCY bool default n -config BUSYBOX_DEFAULT_STAT - bool - default n -config BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT - bool - default n config BUSYBOX_DEFAULT_STTY bool default n @@ -1117,6 +1129,9 @@ config BUSYBOX_DEFAULT_TELINIT_PATH config BUSYBOX_DEFAULT_INIT bool default n +config BUSYBOX_DEFAULT_LINUXRC + bool + default n config BUSYBOX_DEFAULT_FEATURE_USE_INITTAB bool default n @@ -1138,22 +1153,16 @@ config BUSYBOX_DEFAULT_FEATURE_EXTRA_QUIET config BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS bool default n -config BUSYBOX_DEFAULT_FEATURE_INITRD - bool - default n config BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE string default "" -config BUSYBOX_DEFAULT_MESG +config BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE bool default n -config BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP - bool - default n -config BUSYBOX_DEFAULT_ADD_SHELL +config BUSYBOX_DEFAULT_MESG bool default n -config BUSYBOX_DEFAULT_REMOVE_SHELL +config BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP bool default n config BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS @@ -1171,6 +1180,21 @@ config BUSYBOX_DEFAULT_USE_BB_CRYPT config BUSYBOX_DEFAULT_USE_BB_CRYPT_SHA bool default n +config BUSYBOX_DEFAULT_ADD_SHELL + bool + default n +config BUSYBOX_DEFAULT_REMOVE_SHELL + bool + default n +config BUSYBOX_DEFAULT_ADDGROUP + bool + default n +config BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS + bool + default n +config BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP + bool + default n config BUSYBOX_DEFAULT_ADDUSER bool default n @@ -1189,13 +1213,16 @@ config BUSYBOX_DEFAULT_FIRST_SYSTEM_ID config BUSYBOX_DEFAULT_LAST_SYSTEM_ID int default 0 -config BUSYBOX_DEFAULT_ADDGROUP +config BUSYBOX_DEFAULT_CHPASSWD bool default n -config BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS +config BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO + string + default "md5" +config BUSYBOX_DEFAULT_CRYPTPW bool default n -config BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP +config BUSYBOX_DEFAULT_MKPASSWD bool default n config BUSYBOX_DEFAULT_DELUSER @@ -1231,15 +1258,6 @@ config BUSYBOX_DEFAULT_PASSWD config BUSYBOX_DEFAULT_FEATURE_PASSWD_WEAK_CHECK bool default y -config BUSYBOX_DEFAULT_CRYPTPW - bool - default n -config BUSYBOX_DEFAULT_CHPASSWD - bool - default n -config BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO - string - default "md5" config BUSYBOX_DEFAULT_SU bool default n @@ -1336,6 +1354,9 @@ config BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR config BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE string default "" +config BUSYBOX_DEFAULT_BLKDISCARD + bool + default n config BUSYBOX_DEFAULT_BLOCKDEV bool default n @@ -1393,12 +1414,24 @@ config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB bool default n +config BUSYBOX_DEFAULT_NSENTER + bool + default n +config BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS + bool + default n config BUSYBOX_DEFAULT_REV bool default n +config BUSYBOX_DEFAULT_SETARCH + bool + default n config BUSYBOX_DEFAULT_UEVENT bool default n +config BUSYBOX_DEFAULT_UNSHARE + bool + default n config BUSYBOX_DEFAULT_ACPID bool default n @@ -1555,9 +1588,6 @@ config BUSYBOX_DEFAULT_SCRIPT config BUSYBOX_DEFAULT_SCRIPTREPLAY bool default n -config BUSYBOX_DEFAULT_SETARCH - bool - default n config BUSYBOX_DEFAULT_SWAPONOFF bool default n @@ -1588,6 +1618,9 @@ config BUSYBOX_DEFAULT_FEATURE_MTAB_SUPPORT config BUSYBOX_DEFAULT_VOLUMEID bool default n +config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BCACHE + bool + default n config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS bool default n @@ -1747,6 +1780,9 @@ config BUSYBOX_DEFAULT_UBIRSVOL config BUSYBOX_DEFAULT_UBIUPDATEVOL bool default n +config BUSYBOX_DEFAULT_UBIRENAME + bool + default n config BUSYBOX_DEFAULT_WALL bool default n @@ -1852,9 +1888,6 @@ config BUSYBOX_DEFAULT_INOTIFYD config BUSYBOX_DEFAULT_LAST bool default n -config BUSYBOX_DEFAULT_FEATURE_LAST_SMALL - bool - default n config BUSYBOX_DEFAULT_FEATURE_LAST_FANCY bool default n @@ -1971,13 +2004,13 @@ config BUSYBOX_DEFAULT_WGET default n config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR bool - default y + default n config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION bool - default y + default n config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS bool - default y + default n config BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT bool default n @@ -2179,6 +2212,9 @@ config BUSYBOX_DEFAULT_FEATURE_IP_TUNNEL config BUSYBOX_DEFAULT_FEATURE_IP_RULE bool default y +config BUSYBOX_DEFAULT_FEATURE_IP_NEIGH + bool + default n config BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS bool default n @@ -2200,6 +2236,9 @@ config BUSYBOX_DEFAULT_IPTUNNEL config BUSYBOX_DEFAULT_IPRULE bool default n +config BUSYBOX_DEFAULT_IPNEIGH + bool + default n config BUSYBOX_DEFAULT_IPCALC bool default n @@ -2509,37 +2548,37 @@ config BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS config BUSYBOX_DEFAULT_WATCH bool default n -config BUSYBOX_DEFAULT_RUNSV +config BUSYBOX_DEFAULT_CHPST bool default n -config BUSYBOX_DEFAULT_RUNSVDIR +config BUSYBOX_DEFAULT_SETUIDGID bool default n -config BUSYBOX_DEFAULT_FEATURE_RUNSVDIR_LOG +config BUSYBOX_DEFAULT_ENVUIDGID bool default n -config BUSYBOX_DEFAULT_SV +config BUSYBOX_DEFAULT_ENVDIR bool default n -config BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR - string - default "" -config BUSYBOX_DEFAULT_SVLOGD +config BUSYBOX_DEFAULT_SOFTLIMIT bool default n -config BUSYBOX_DEFAULT_CHPST +config BUSYBOX_DEFAULT_RUNSV bool default n -config BUSYBOX_DEFAULT_SETUIDGID +config BUSYBOX_DEFAULT_RUNSVDIR bool default n -config BUSYBOX_DEFAULT_ENVUIDGID +config BUSYBOX_DEFAULT_FEATURE_RUNSVDIR_LOG bool default n -config BUSYBOX_DEFAULT_ENVDIR +config BUSYBOX_DEFAULT_SV bool default n -config BUSYBOX_DEFAULT_SOFTLIMIT +config BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR + string + default "" +config BUSYBOX_DEFAULT_SVLOGD bool default n config BUSYBOX_DEFAULT_CHCON @@ -2722,6 +2761,21 @@ config BUSYBOX_DEFAULT_FEATURE_SH_NOFORK config BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE bool default n +config BUSYBOX_DEFAULT_KLOGD + bool + default n +config BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL + bool + default n +config BUSYBOX_DEFAULT_LOGGER + bool + default y +config BUSYBOX_DEFAULT_LOGREAD + bool + default n +config BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING + bool + default n config BUSYBOX_DEFAULT_SYSLOGD bool default n @@ -2746,21 +2800,6 @@ config BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG config BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG_BUFFER_SIZE int default 0 -config BUSYBOX_DEFAULT_LOGREAD - bool - default n -config BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING - bool - default n config BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG bool default n -config BUSYBOX_DEFAULT_KLOGD - bool - default n -config BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL - bool - default n -config BUSYBOX_DEFAULT_LOGGER - bool - default y diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index 5767e3699cf..a50f3aa171a 100644 --- a/package/utils/busybox/Makefile +++ b/package/utils/busybox/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=busybox -PKG_VERSION:=1.24.2 -PKG_RELEASE:=4 +PKG_VERSION:=1.25.0 +PKG_RELEASE:=1 PKG_FLAGS:=essential PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/package/utils/busybox/config/Config.in b/package/utils/busybox/config/Config.in index 113eb62067c..3bf67c5cf33 100644 --- a/package/utils/busybox/config/Config.in +++ b/package/utils/busybox/config/Config.in @@ -115,9 +115,21 @@ config BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE and have very little memory, this might not be a win. Otherwise, you probably want this. +config BUSYBOX_CONFIG_BUSYBOX + bool "Include busybox applet" + default BUSYBOX_DEFAULT_BUSYBOX + help + The busybox applet provides general help regarding busybox and + allows the included applets to be listed. It's also required + if applet links are to be installed at runtime. + + If you can live without these features disabling this will save + some space. + config BUSYBOX_CONFIG_FEATURE_INSTALLER bool "Support --install [-s] to install applet links at runtime" default BUSYBOX_DEFAULT_FEATURE_INSTALLER + depends on BUSYBOX_CONFIG_BUSYBOX help Enable 'busybox --install [-s]' support. This will allow you to use busybox at runtime to create hard links or symlinks for all the @@ -687,6 +699,16 @@ config BUSYBOX_CONFIG_DEBUG_PESSIMIZE in a much bigger executable that more closely matches the source code. +config BUSYBOX_CONFIG_DEBUG_SANITIZE + bool "Enable runtime sanitizers (ASAN/LSAN/USAN/etc...)" + default BUSYBOX_DEFAULT_DEBUG_SANITIZE + help + Say Y here if you want to enable runtime sanitizers. These help + catch bad memory accesses (e.g. buffer overflows), but will make + the executable larger and slow down runtime a bit. + + If you aren't developing/testing busybox, say N here. + config BUSYBOX_CONFIG_UNIT_TEST bool "Build unit tests" default BUSYBOX_DEFAULT_UNIT_TEST diff --git a/package/utils/busybox/config/archival/Config.in b/package/utils/busybox/config/archival/Config.in index 1ca610cad6e..ff4c2cf6bd0 100644 --- a/package/utils/busybox/config/archival/Config.in +++ b/package/utils/busybox/config/archival/Config.in @@ -32,7 +32,7 @@ config BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ config BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z bool "tar, rpm, modprobe etc understand .Z data" - default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z + default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z # it is ancient help Make tar, rpm, modprobe etc understand .Z data. @@ -41,23 +41,13 @@ config BUSYBOX_CONFIG_AR default BUSYBOX_DEFAULT_AR # needs to be improved to be able to replace binutils ar help ar is an archival utility program used to create, modify, and - extract contents from archives. An archive is a single file holding - a collection of other files in a structure that makes it possible to - retrieve the original individual files (called archive members). - The original files' contents, mode (permissions), timestamp, owner, - and group are preserved in the archive, and can be restored on - extraction. - - The stored filename is limited to 15 characters. (for more information - see long filename support). - ar has 60 bytes of overheads for every stored file. - - This implementation of ar can extract archives, it cannot create or - modify them. + extract contents from archives. In practice, it is used exclusively + for object module archives used by compilers. + On an x86 system, the ar applet adds about 1K. Unless you have a specific application which requires ar, you should - probably say N here. + probably say N here: most compilers come with their own ar utility. config BUSYBOX_CONFIG_FEATURE_AR_LONG_FILENAMES bool "Support for long filenames (not needed for debs)" @@ -77,7 +67,7 @@ config BUSYBOX_CONFIG_FEATURE_AR_CREATE This enables archive creation (-c and -r) with busybox ar. config BUSYBOX_CONFIG_UNCOMPRESS bool "uncompress" - default BUSYBOX_DEFAULT_UNCOMPRESS + default BUSYBOX_DEFAULT_UNCOMPRESS # ancient help uncompress is used to decompress archives created by compress. Not much used anymore, replaced by gzip/gunzip. @@ -88,6 +78,13 @@ config BUSYBOX_CONFIG_GUNZIP gunzip is used to decompress archives created by gzip. You can use the `-t' option to test the integrity of an archive, without decompressing it. + +config BUSYBOX_CONFIG_FEATURE_GUNZIP_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS + depends on BUSYBOX_CONFIG_GUNZIP && BUSYBOX_CONFIG_LONG_OPTS + help + Enable use of long options. config BUSYBOX_CONFIG_BUNZIP2 bool "bunzip2" default BUSYBOX_DEFAULT_BUNZIP2 diff --git a/package/utils/busybox/config/coreutils/Config.in b/package/utils/busybox/config/coreutils/Config.in index 2f9473857b2..ec5611bdfda 100644 --- a/package/utils/busybox/config/coreutils/Config.in +++ b/package/utils/busybox/config/coreutils/Config.in @@ -123,6 +123,29 @@ config BUSYBOX_CONFIG_SHUF default BUSYBOX_DEFAULT_SHUF help Generate random permutations +config BUSYBOX_CONFIG_STAT + bool "stat" + default BUSYBOX_DEFAULT_STAT + help + display file or filesystem status. + +config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT + bool "Enable custom formats (-c)" + default BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT + depends on BUSYBOX_CONFIG_STAT + help + Without this, stat will not support the '-c format' option where + users can pass a custom format string for output. This adds about + 7k to a nonstatic build on amd64. + +config BUSYBOX_CONFIG_FEATURE_STAT_FILESYSTEM + bool "Enable display of filesystem status (-f)" + default BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM + depends on BUSYBOX_CONFIG_STAT + select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs() + help + Without this, stat will not support the '-f' option to display + information about filesystem status. config BUSYBOX_CONFIG_SYNC bool "sync" default BUSYBOX_DEFAULT_SYNC @@ -760,22 +783,6 @@ config BUSYBOX_CONFIG_FEATURE_SPLIT_FANCY Supports additional suffixes 'b' for 512 bytes, 'g' for 1GiB for the -b option. -config BUSYBOX_CONFIG_STAT - bool "stat" - default BUSYBOX_DEFAULT_STAT - select BUSYBOX_CONFIG_PLATFORM_LINUX # statfs() - help - display file or filesystem status. - -config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT - bool "Enable custom formats (-c)" - default BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT - depends on BUSYBOX_CONFIG_STAT - help - Without this, stat will not support the '-c format' option where - users can pass a custom format string for output. This adds about - 7k to a nonstatic build on amd64. - config BUSYBOX_CONFIG_STTY bool "stty" default BUSYBOX_DEFAULT_STTY diff --git a/package/utils/busybox/config/debianutils/Config.in b/package/utils/busybox/config/debianutils/Config.in index 533ad475c11..d39c60f43e8 100644 --- a/package/utils/busybox/config/debianutils/Config.in +++ b/package/utils/busybox/config/debianutils/Config.in @@ -6,19 +6,16 @@ menu "Debian Utilities" - config BUSYBOX_CONFIG_MKTEMP bool "mktemp" default BUSYBOX_DEFAULT_MKTEMP help mktemp is used to create unique temporary files - config BUSYBOX_CONFIG_PIPE_PROGRESS bool "pipe_progress" default BUSYBOX_DEFAULT_PIPE_PROGRESS help Display a dot to indicate pipe activity. - config BUSYBOX_CONFIG_RUN_PARTS bool "run-parts" default BUSYBOX_DEFAULT_RUN_PARTS @@ -49,7 +46,6 @@ config BUSYBOX_CONFIG_FEATURE_RUN_PARTS_FANCY Support additional options: -l --list print the names of the all matching files (not limited to executables), but don't actually run them. - config BUSYBOX_CONFIG_START_STOP_DAEMON bool "start-stop-daemon" default BUSYBOX_DEFAULT_START_STOP_DAEMON @@ -74,7 +70,6 @@ config BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS depends on BUSYBOX_CONFIG_START_STOP_DAEMON && BUSYBOX_CONFIG_LONG_OPTS help Support long options for the start-stop-daemon applet. - config BUSYBOX_CONFIG_WHICH bool "which" default BUSYBOX_DEFAULT_WHICH diff --git a/package/utils/busybox/config/e2fsprogs/Config.in b/package/utils/busybox/config/e2fsprogs/Config.in index f826240181f..df255481c36 100644 --- a/package/utils/busybox/config/e2fsprogs/Config.in +++ b/package/utils/busybox/config/e2fsprogs/Config.in @@ -6,22 +6,11 @@ menu "Linux Ext2 FS Progs" - config BUSYBOX_CONFIG_CHATTR bool "chattr" default BUSYBOX_DEFAULT_CHATTR help chattr changes the file attributes on a second extended file system. - -### config E2FSCK -### bool "e2fsck" -### default y -### help -### e2fsck is used to check Linux second extended file systems (ext2fs). -### e2fsck also supports ext2 filesystems countaining a journal (ext3). -### The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also -### provided. - config BUSYBOX_CONFIG_FSCK bool "fsck" default BUSYBOX_DEFAULT_FSCK @@ -29,13 +18,27 @@ config BUSYBOX_CONFIG_FSCK fsck is used to check and optionally repair one or more filesystems. In actuality, fsck is simply a front-end for the various file system checkers (fsck.fstype) available under Linux. - config BUSYBOX_CONFIG_LSATTR bool "lsattr" default BUSYBOX_DEFAULT_LSATTR select BUSYBOX_CONFIG_PLATFORM_LINUX help lsattr lists the file attributes on a second extended file system. +config BUSYBOX_CONFIG_TUNE2FS + bool "tune2fs" + default BUSYBOX_DEFAULT_TUNE2FS # off: it is too limited compared to upstream version + help + tune2fs allows the system administrator to adjust various tunable + filesystem parameters on Linux ext2/ext3 filesystems. + +### config E2FSCK +### bool "e2fsck" +### default y +### help +### e2fsck is used to check Linux second extended file systems (ext2fs). +### e2fsck also supports ext2 filesystems countaining a journal (ext3). +### The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also +### provided. ### config MKE2FS ### bool "mke2fs" @@ -44,13 +47,6 @@ config BUSYBOX_CONFIG_LSATTR ### mke2fs is used to create an ext2/ext3 filesystem. The normal compat ### symlinks 'mkfs.ext2' and 'mkfs.ext3' are also provided. -config BUSYBOX_CONFIG_TUNE2FS - bool "tune2fs" - default BUSYBOX_DEFAULT_TUNE2FS # off: it is too limited compared to upstream version - help - tune2fs allows the system administrator to adjust various tunable - filesystem parameters on Linux ext2/ext3 filesystems. - ### config E2LABEL ### bool "e2label" ### default y diff --git a/package/utils/busybox/config/init/Config.in b/package/utils/busybox/config/init/Config.in index 634207f7f9d..021656d3f92 100644 --- a/package/utils/busybox/config/init/Config.in +++ b/package/utils/busybox/config/init/Config.in @@ -76,10 +76,21 @@ config BUSYBOX_CONFIG_INIT help init is the first program run when the system boots. +config BUSYBOX_CONFIG_LINUXRC + bool "Support running init from within an initrd (not initramfs)" + default BUSYBOX_DEFAULT_LINUXRC + select BUSYBOX_CONFIG_FEATURE_SYSLOG + help + Legacy support for running init under the old-style initrd. Allows + the name linuxrc to act as init, and it doesn't assume init is PID 1. + + This does not apply to initramfs, which runs /init as PID 1 and + requires no special support. + config BUSYBOX_CONFIG_FEATURE_USE_INITTAB bool "Support reading an inittab file" default BUSYBOX_DEFAULT_FEATURE_USE_INITTAB - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC help Allow init to read an inittab file when the system boot. @@ -106,7 +117,7 @@ config BUSYBOX_CONFIG_FEATURE_KILL_DELAY config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY bool "Run commands with leading dash with controlling tty" default BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC help If this option is enabled, init will try to give a controlling tty to any command which has leading hyphen (often it's "-/bin/sh"). @@ -121,40 +132,29 @@ config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY config BUSYBOX_CONFIG_FEATURE_INIT_SYSLOG bool "Enable init to write to syslog" default BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET bool "Be _extra_ quiet on boot" default BUSYBOX_DEFAULT_FEATURE_EXTRA_QUIET - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC help Prevent init from logging some messages to the console during boot. config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS bool "Support dumping core for child processes (debugging only)" default BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC help If this option is enabled and the file /.init_enable_core exists, then init will call setrlimit() to allow unlimited core file sizes. If this option is disabled, processes will not generate any core files. -config BUSYBOX_CONFIG_FEATURE_INITRD - bool "Support running init from within an initrd (not initramfs)" - default BUSYBOX_DEFAULT_FEATURE_INITRD - depends on BUSYBOX_CONFIG_INIT - help - Legacy support for running init under the old-style initrd. Allows - the name linuxrc to act as init, and it doesn't assume init is PID 1. - - This does not apply to initramfs, which runs /init as PID 1 and - requires no special support. - config BUSYBOX_CONFIG_INIT_TERMINAL_TYPE string "Initial terminal type" default BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE - depends on BUSYBOX_CONFIG_INIT + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC help This is the initial value set by init for the TERM environment variable. This variable is used by programs which make use of @@ -162,6 +162,21 @@ config BUSYBOX_CONFIG_INIT_TERMINAL_TYPE Note that on Linux, init attempts to detect serial terminal and sets TERM to "vt102" if one is found. + +config BUSYBOX_CONFIG_FEATURE_INIT_MODIFY_CMDLINE + bool "Modify the command-line to \"init\"" + default BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE + depends on BUSYBOX_CONFIG_INIT || BUSYBOX_CONFIG_LINUXRC + help + When launched as PID 1 and after parsing its arguments, init + wipes all the arguments but argv[0] and rewrites argv[0] to + contain only "init", so that its command-line appears solely as + "init" in tools such as ps. + If this option is set to Y, init will keep its original behavior, + otherwise, all the arguments including argv[0] will be preserved, + be they parsed or ignored by init. + The original command-line used to launch init can then be + retrieved in /proc/1/cmdline on Linux, for example. config BUSYBOX_CONFIG_MESG bool "mesg" default BUSYBOX_DEFAULT_MESG diff --git a/package/utils/busybox/config/libbb/Config.in b/package/utils/busybox/config/libbb/Config.in index e66a15b6922..0695f9ba39e 100644 --- a/package/utils/busybox/config/libbb/Config.in +++ b/package/utils/busybox/config/libbb/Config.in @@ -6,14 +6,38 @@ menu "Busybox Library Tuning" -config BUSYBOX_CONFIG_FEATURE_SYSTEMD - bool "Enable systemd support" - default BUSYBOX_DEFAULT_FEATURE_SYSTEMD - 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_USE_BSS_TAIL + bool "Use the end of BSS page" + default BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL + help + Attempt to reclaim a small unused part of BSS. + + Executables have the following parts: + = read-only executable code and constants, also known as "text" + = read-write data + = non-initialized (zeroed on demand) data, also known as "bss" + + At link time, "text" is padded to a full page. At runtime, all "text" + pages are mapped RO and executable. + "Data" starts on the next page boundary, but is not padded + to a full page at the end. "Bss" starts wherever "data" ends. + At runtime, "data" pages are mapped RW and they are file-backed + (this includes a small portion of "bss" which may live in the last + partial page of "data"). + Pages which are fully in "bss" are mapped to anonymous memory. + + "Bss" end is usually not page-aligned. There is an unused space + in the last page. Linker marks its start with the "_end" symbol. + + This option will attempt to use that space for bb_common_bufsiz1[] + array. If it fits after _end, it will be used, and COMMON_BUFSIZE + will be enlarged from its guaranteed minimum size of 1 kbyte. + This may require recompilation a second time, since value of _end + is known only after final link. + + If you are getting a build error like this: + appletlib.c:(.text.main+0xd): undefined reference to '_end' + disable this option. config BUSYBOX_CONFIG_FEATURE_RTMINMAX bool "Support RTMIN[+n] and RTMAX[-n] signal names" default BUSYBOX_DEFAULT_FEATURE_RTMINMAX @@ -30,7 +54,7 @@ config BUSYBOX_CONFIG_PASSWORD_MINLEN config BUSYBOX_CONFIG_MD5_SMALL int "MD5: Trade bytes for speed (0:fast, 3:slow)" - default BUSYBOX_DEFAULT_MD5_SMALL + default BUSYBOX_DEFAULT_MD5_SMALL # all "fast or small" options default to small range 0 3 help Trade binary size versus speed for the md5sum algorithm. @@ -44,7 +68,7 @@ config BUSYBOX_CONFIG_MD5_SMALL config BUSYBOX_CONFIG_SHA3_SMALL int "SHA3: Trade bytes for speed (0:fast, 1:slow)" - default BUSYBOX_DEFAULT_SHA3_SMALL + default BUSYBOX_DEFAULT_SHA3_SMALL # all "fast or small" options default to small range 0 1 help Trade binary size versus speed for the sha3sum algorithm. @@ -54,7 +78,7 @@ config BUSYBOX_CONFIG_SHA3_SMALL config BUSYBOX_CONFIG_FEATURE_FAST_TOP bool "Faster /proc scanning code (+100 bytes)" - default BUSYBOX_DEFAULT_FEATURE_FAST_TOP + default BUSYBOX_DEFAULT_FEATURE_FAST_TOP # all "fast or small" options default to small help This option makes top (and ps) ~20% faster (or 20% less CPU hungry), but code size is slightly bigger. @@ -128,7 +152,7 @@ config BUSYBOX_CONFIG_FEATURE_EDITING_SAVE_ON_EXIT config BUSYBOX_CONFIG_FEATURE_REVERSE_SEARCH bool "Reverse history search" default BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH - depends on BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY + depends on BUSYBOX_CONFIG_FEATURE_EDITING help Enable readline-like Ctrl-R combination for reverse history search. Increases code by about 0.5k. diff --git a/package/utils/busybox/config/loginutils/Config.in b/package/utils/busybox/config/loginutils/Config.in index f5ecf6f23b5..956115c7f42 100644 --- a/package/utils/busybox/config/loginutils/Config.in +++ b/package/utils/busybox/config/loginutils/Config.in @@ -6,18 +6,6 @@ menu "Login/Password Management Utilities" -config BUSYBOX_CONFIG_ADD_SHELL - bool "add-shell" - default BUSYBOX_DEFAULT_ADD_SHELL if BUSYBOX_CONFIG_DESKTOP - help - Add shells to /etc/shells. - -config BUSYBOX_CONFIG_REMOVE_SHELL - bool "remove-shell" - default BUSYBOX_DEFAULT_REMOVE_SHELL if BUSYBOX_CONFIG_DESKTOP - help - Remove shells from /etc/shells. - config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS bool "Support for shadow passwords" default BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS @@ -104,6 +92,38 @@ config BUSYBOX_CONFIG_USE_BB_CRYPT_SHA With this option off, login will fail password check for any user which has password encrypted with these algorithms. +config BUSYBOX_CONFIG_ADD_SHELL + bool "add-shell" + default BUSYBOX_DEFAULT_ADD_SHELL if BUSYBOX_CONFIG_DESKTOP + help + Add shells to /etc/shells. + +config BUSYBOX_CONFIG_REMOVE_SHELL + bool "remove-shell" + default BUSYBOX_DEFAULT_REMOVE_SHELL if BUSYBOX_CONFIG_DESKTOP + help + Remove shells from /etc/shells. +config BUSYBOX_CONFIG_ADDGROUP + bool "addgroup" + default BUSYBOX_DEFAULT_ADDGROUP + help + Utility for creating a new group account. + +config BUSYBOX_CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS + bool "Enable long options" + default BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS + depends on BUSYBOX_CONFIG_ADDGROUP && BUSYBOX_CONFIG_LONG_OPTS + help + Support long options for the addgroup applet. + +config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP + bool "Support for adding users to groups" + default BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP + depends on BUSYBOX_CONFIG_ADDGROUP + help + If called with two non-option arguments, + addgroup will add an existing user to an + existing group. config BUSYBOX_CONFIG_ADDUSER bool "adduser" default BUSYBOX_DEFAULT_ADDUSER @@ -151,29 +171,33 @@ config BUSYBOX_CONFIG_LAST_SYSTEM_ID default BUSYBOX_DEFAULT_LAST_SYSTEM_ID help Last valid system uid or gid for adduser and addgroup - -config BUSYBOX_CONFIG_ADDGROUP - bool "addgroup" - default BUSYBOX_DEFAULT_ADDGROUP +config BUSYBOX_CONFIG_CHPASSWD + bool "chpasswd" + default BUSYBOX_DEFAULT_CHPASSWD help - Utility for creating a new group account. + Reads a file of user name and password pairs from standard input + and uses this information to update a group of existing users. -config BUSYBOX_CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS - bool "Enable long options" - default BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS - depends on BUSYBOX_CONFIG_ADDGROUP && BUSYBOX_CONFIG_LONG_OPTS +config BUSYBOX_CONFIG_FEATURE_DEFAULT_PASSWD_ALGO + string "Default password encryption method (passwd -a, cryptpw -m parameter)" + default BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO + depends on BUSYBOX_CONFIG_PASSWD || BUSYBOX_CONFIG_CRYPTPW help - Support long options for the addgroup applet. - -config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP - bool "Support for adding users to groups" - default BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP - depends on BUSYBOX_CONFIG_ADDGROUP + Possible choices are "d[es]", "m[d5]", "s[ha256]" or "sha512". +config BUSYBOX_CONFIG_CRYPTPW + bool "cryptpw" + default BUSYBOX_DEFAULT_CRYPTPW help - If called with two non-option arguments, - addgroup will add an existing user to an - existing group. + Encrypts the given password with the crypt(3) libc function + using the given salt. +config BUSYBOX_CONFIG_MKPASSWD + bool "mkpasswd" + default BUSYBOX_DEFAULT_MKPASSWD + help + Encrypts the given password with the crypt(3) libc function + using the given salt. Debian has this utility under mkpasswd + name. Busybox provides mkpasswd as an alias for cryptpw. config BUSYBOX_CONFIG_DELUSER bool "deluser" default BUSYBOX_DEFAULT_DELUSER @@ -193,7 +217,6 @@ config BUSYBOX_CONFIG_FEATURE_DEL_USER_FROM_GROUP help If called with two non-option arguments, deluser or delgroup will remove an user from a specified group. - config BUSYBOX_CONFIG_GETTY bool "getty" default BUSYBOX_DEFAULT_GETTY @@ -212,7 +235,6 @@ config BUSYBOX_CONFIG_GETTY printf "%s login: " "`hostname`" read -r login exec /bin/login "$login" - config BUSYBOX_CONFIG_LOGIN bool "login" default BUSYBOX_DEFAULT_LOGIN @@ -258,7 +280,6 @@ config BUSYBOX_CONFIG_FEATURE_SECURETTY The file /etc/securetty is used by (some versions of) login(1). The file contains the device names of tty lines (one per line, without leading /dev/) on which root is allowed to login. - config BUSYBOX_CONFIG_PASSWD bool "passwd" default BUSYBOX_DEFAULT_PASSWD @@ -278,29 +299,6 @@ config BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK depends on BUSYBOX_CONFIG_PASSWD help With this option passwd will refuse new passwords which are "weak". - -config BUSYBOX_CONFIG_CRYPTPW - bool "cryptpw" - default BUSYBOX_DEFAULT_CRYPTPW - help - Encrypts the given password with the crypt(3) libc function - using the given salt. Debian has this utility under mkpasswd - name. Busybox provides mkpasswd as an alias for cryptpw. - -config BUSYBOX_CONFIG_CHPASSWD - bool "chpasswd" - default BUSYBOX_DEFAULT_CHPASSWD - help - Reads a file of user name and password pairs from standard input - and uses this information to update a group of existing users. - -config BUSYBOX_CONFIG_FEATURE_DEFAULT_PASSWD_ALGO - string "Default password encryption method (passwd -a, cryptpw -m parameter)" - default BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO - depends on BUSYBOX_CONFIG_PASSWD || BUSYBOX_CONFIG_CRYPTPW - help - Possible choices are "d[es]", "m[d5]", "s[ha256]" or "sha512". - config BUSYBOX_CONFIG_SU bool "su" default BUSYBOX_DEFAULT_SU @@ -321,7 +319,6 @@ config BUSYBOX_CONFIG_FEATURE_SU_CHECKS_SHELLS bool "Enable su to check user's shell to be listed in /etc/shells" depends on BUSYBOX_CONFIG_SU default BUSYBOX_DEFAULT_FEATURE_SU_CHECKS_SHELLS - config BUSYBOX_CONFIG_SULOGIN bool "sulogin" default BUSYBOX_DEFAULT_SULOGIN @@ -329,7 +326,6 @@ config BUSYBOX_CONFIG_SULOGIN help sulogin is invoked when the system goes into single user mode (this is done through an entry in inittab). - config BUSYBOX_CONFIG_VLOCK bool "vlock" default BUSYBOX_DEFAULT_VLOCK diff --git a/package/utils/busybox/config/miscutils/Config.in b/package/utils/busybox/config/miscutils/Config.in index c6deaafb622..3465df40ab3 100644 --- a/package/utils/busybox/config/miscutils/Config.in +++ b/package/utils/busybox/config/miscutils/Config.in @@ -246,6 +246,12 @@ config BUSYBOX_CONFIG_UBIUPDATEVOL select BUSYBOX_CONFIG_PLATFORM_LINUX help Update a UBI volume. +config BUSYBOX_CONFIG_UBIRENAME + bool "ubirename" + default BUSYBOX_DEFAULT_UBIRENAME + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Utility to rename UBI volumes config BUSYBOX_CONFIG_WALL bool "wall" default BUSYBOX_DEFAULT_WALL @@ -554,23 +560,13 @@ config BUSYBOX_CONFIG_LAST help 'last' displays a list of the last users that logged into the system. -choice - prompt "Choose last implementation" - depends on BUSYBOX_CONFIG_LAST - default BUSYBOX_CONFIG_FEATURE_LAST_FANCY - -config BUSYBOX_CONFIG_FEATURE_LAST_SMALL - bool "small" - help - This is a small version of last with just the basic set of - features. - config BUSYBOX_CONFIG_FEATURE_LAST_FANCY - bool "huge" + bool "Turn on output of extra information" + default BUSYBOX_DEFAULT_FEATURE_LAST_FANCY + depends on BUSYBOX_CONFIG_LAST help 'last' displays detailed information about the last users that logged into the system (mimics sysvinit last). +900 bytes. -endchoice config BUSYBOX_CONFIG_HDPARM bool "hdparm" diff --git a/package/utils/busybox/config/modutils/Config.in b/package/utils/busybox/config/modutils/Config.in index 9add56ef66d..8e0e2af9efd 100644 --- a/package/utils/busybox/config/modutils/Config.in +++ b/package/utils/busybox/config/modutils/Config.in @@ -44,9 +44,6 @@ config BUSYBOX_CONFIG_MODPROBE_SMALL - rmmod is an alias to modprobe -r - depmod generates modules.dep.bb - As of 2008-07, this code is experimental. It is 14kb smaller - than "non-small" modutils. - config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE bool "Accept module options on modprobe command line" default BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE diff --git a/package/utils/busybox/config/networking/Config.in b/package/utils/busybox/config/networking/Config.in index 7e5a414a68b..407ddd30dd3 100644 --- a/package/utils/busybox/config/networking/Config.in +++ b/package/utils/busybox/config/networking/Config.in @@ -673,7 +673,7 @@ config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN config BUSYBOX_CONFIG_FEATURE_INETD_RPC bool "Support RPC services" - default BUSYBOX_DEFAULT_FEATURE_INETD_RPC + default BUSYBOX_DEFAULT_FEATURE_INETD_RPC # very rarely used, and needs Sun RPC support in libc depends on BUSYBOX_CONFIG_INETD select BUSYBOX_CONFIG_FEATURE_HAVE_RPC help @@ -730,6 +730,13 @@ config BUSYBOX_CONFIG_FEATURE_IP_RULE help Add support for rule commands to "ip". +config BUSYBOX_CONFIG_FEATURE_IP_NEIGH + bool "ip neighbor" + default BUSYBOX_DEFAULT_FEATURE_IP_NEIGH + depends on BUSYBOX_CONFIG_IP + help + Add support for neighbor commands to "ip". + config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS bool "Support short forms of ip commands" default BUSYBOX_DEFAULT_FEATURE_IP_SHORT_FORMS @@ -741,6 +748,7 @@ config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS ip route -> iproute ip tunnel -> iptunnel ip rule -> iprule + ip neigh -> ipneigh Say N unless you desparately need the short form of the ip object commands. @@ -780,6 +788,11 @@ config BUSYBOX_CONFIG_IPRULE default BUSYBOX_DEFAULT_IPRULE depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_RULE +config BUSYBOX_CONFIG_IPNEIGH + bool + default BUSYBOX_DEFAULT_IPNEIGH + depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_NEIGH + config BUSYBOX_CONFIG_IPCALC bool "ipcalc" default BUSYBOX_DEFAULT_IPCALC diff --git a/package/utils/busybox/config/printutils/Config.in b/package/utils/busybox/config/printutils/Config.in index cccc4a541f8..3a2baa311d0 100644 --- a/package/utils/busybox/config/printutils/Config.in +++ b/package/utils/busybox/config/printutils/Config.in @@ -6,13 +6,11 @@ menu "Print Utilities" - config BUSYBOX_CONFIG_LPD bool "lpd" default BUSYBOX_DEFAULT_LPD help lpd is a print spooling daemon. - config BUSYBOX_CONFIG_LPR bool "lpr" default BUSYBOX_DEFAULT_LPR diff --git a/package/utils/busybox/config/runit/Config.in b/package/utils/busybox/config/runit/Config.in index 8074fb18f74..a322a2cd8a0 100644 --- a/package/utils/busybox/config/runit/Config.in +++ b/package/utils/busybox/config/runit/Config.in @@ -6,14 +6,43 @@ menu "Runit Utilities" +config BUSYBOX_CONFIG_CHPST + bool "chpst" + default BUSYBOX_DEFAULT_CHPST + help + chpst changes the process state according to the given options, and + execs specified program. +config BUSYBOX_CONFIG_SETUIDGID + bool "setuidgid" + default BUSYBOX_DEFAULT_SETUIDGID + help + Sets soft resource limits as specified by options + +config BUSYBOX_CONFIG_ENVUIDGID + bool "envuidgid" + default BUSYBOX_DEFAULT_ENVUIDGID + help + Sets $UID to account's uid and $GID to account's gid + +config BUSYBOX_CONFIG_ENVDIR + bool "envdir" + default BUSYBOX_DEFAULT_ENVDIR + help + Sets various environment variables as specified by files + in the given directory + +config BUSYBOX_CONFIG_SOFTLIMIT + bool "softlimit" + default BUSYBOX_DEFAULT_SOFTLIMIT + help + Sets soft resource limits as specified by options config BUSYBOX_CONFIG_RUNSV bool "runsv" default BUSYBOX_DEFAULT_RUNSV help runsv starts and monitors a service and optionally an appendant log service. - config BUSYBOX_CONFIG_RUNSVDIR bool "runsvdir" default BUSYBOX_DEFAULT_RUNSVDIR @@ -30,7 +59,6 @@ config BUSYBOX_CONFIG_FEATURE_RUNSVDIR_LOG Enable feature where second parameter of runsvdir holds last error message (viewable via top/ps). Otherwise (feature is off or no parameter), error messages go to stderr only. - config BUSYBOX_CONFIG_SV bool "sv" default BUSYBOX_DEFAULT_SV @@ -45,7 +73,6 @@ config BUSYBOX_CONFIG_SV_DEFAULT_SERVICE_DIR help Default directory for services. Defaults to "/var/service" - config BUSYBOX_CONFIG_SVLOGD bool "svlogd" default BUSYBOX_DEFAULT_SVLOGD @@ -54,36 +81,4 @@ config BUSYBOX_CONFIG_SVLOGD filters log messages, and writes the data to one or more automatically rotated logs. -config BUSYBOX_CONFIG_CHPST - bool "chpst" - default BUSYBOX_DEFAULT_CHPST - help - chpst changes the process state according to the given options, and - execs specified program. - -config BUSYBOX_CONFIG_SETUIDGID - bool "setuidgid" - default BUSYBOX_DEFAULT_SETUIDGID - help - Sets soft resource limits as specified by options - -config BUSYBOX_CONFIG_ENVUIDGID - bool "envuidgid" - default BUSYBOX_DEFAULT_ENVUIDGID - help - Sets $UID to account's uid and $GID to account's gid - -config BUSYBOX_CONFIG_ENVDIR - bool "envdir" - default BUSYBOX_DEFAULT_ENVDIR - help - Sets various environment variables as specified by files - in the given directory - -config BUSYBOX_CONFIG_SOFTLIMIT - bool "softlimit" - default BUSYBOX_DEFAULT_SOFTLIMIT - help - Sets soft resource limits as specified by options - endmenu diff --git a/package/utils/busybox/config/sysklogd/Config.in b/package/utils/busybox/config/sysklogd/Config.in index de36a1e8926..5fcee2c7ff6 100644 --- a/package/utils/busybox/config/sysklogd/Config.in +++ b/package/utils/busybox/config/sysklogd/Config.in @@ -6,6 +6,64 @@ menu "System Logging Utilities" +config BUSYBOX_CONFIG_KLOGD + bool "klogd" + default BUSYBOX_DEFAULT_KLOGD + help + klogd is a utility which intercepts and logs all + messages from the Linux kernel and sends the messages + out to the 'syslogd' utility so they can be logged. If + you wish to record the messages produced by the kernel, + you should enable this option. + +comment "klogd should not be used together with syslog to kernel printk buffer" + depends on BUSYBOX_CONFIG_KLOGD && BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG + +config BUSYBOX_CONFIG_FEATURE_KLOGD_KLOGCTL + bool "Use the klogctl() interface" + default BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL + 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 + which allows reading messages from the kernel ring buffer + independently from the file system. + + If you answer 'N' here, klogd will use the more portable + approach of reading them from /proc or a device node. + However, this method requires the file to be available. + + If in doubt, say 'Y'. +config BUSYBOX_CONFIG_LOGGER + bool "logger" + default BUSYBOX_DEFAULT_LOGGER + select BUSYBOX_CONFIG_FEATURE_SYSLOG + help + The logger utility allows you to send arbitrary text + messages to the system log (i.e. the 'syslogd' utility) so + they can be logged. This is generally used to help locate + problems that occur within programs and scripts. +config BUSYBOX_CONFIG_LOGREAD + bool "logread" + default BUSYBOX_DEFAULT_LOGREAD + depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG + help + If you enabled Circular Buffer support, you almost + certainly want to enable this feature as well. This + utility will allow you to read the messages that are + stored in the syslogd circular buffer. + +config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING + bool "Double buffering" + default BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING + depends on BUSYBOX_CONFIG_LOGREAD + help + 'logread' ouput to slow serial terminals can have + side effects on syslog because of the semaphore. + This option make logread to double buffer copy + from circular buffer, minimizing semaphore + contention at some minor memory expense. config BUSYBOX_CONFIG_SYSLOGD bool "syslogd" @@ -28,7 +86,7 @@ config BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE depends on BUSYBOX_CONFIG_SYSLOGD help This enables syslogd to rotate the message files - on his own. No need to use an external rotatescript. + on his own. No need to use an external rotate script. config BUSYBOX_CONFIG_FEATURE_REMOTE_LOG bool "Remote Log support" @@ -92,27 +150,6 @@ config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE This option sets the size of the circular buffer used to record system log messages. -config BUSYBOX_CONFIG_LOGREAD - bool "logread" - default BUSYBOX_DEFAULT_LOGREAD - depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG - help - If you enabled Circular Buffer support, you almost - certainly want to enable this feature as well. This - utility will allow you to read the messages that are - stored in the syslogd circular buffer. - -config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING - bool "Double buffering" - default BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING - depends on BUSYBOX_CONFIG_LOGREAD - help - 'logread' ouput to slow serial terminals can have - side effects on syslog because of the semaphore. - This option make logread to double buffer copy - from circular buffer, minimizing semaphore - contention at some minor memory expense. - config BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG bool "Linux kernel printk buffer support" default BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG @@ -126,44 +163,4 @@ config BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG NOTICE: Syslog facilities in log entries needs kernel 3.5+. -config BUSYBOX_CONFIG_KLOGD - bool "klogd" - default BUSYBOX_DEFAULT_KLOGD - help - klogd is a utility which intercepts and logs all - messages from the Linux kernel and sends the messages - out to the 'syslogd' utility so they can be logged. If - you wish to record the messages produced by the kernel, - you should enable this option. - -comment "klogd should not be used together with syslog to kernel printk buffer" - depends on BUSYBOX_CONFIG_KLOGD && BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG - -config BUSYBOX_CONFIG_FEATURE_KLOGD_KLOGCTL - bool "Use the klogctl() interface" - default BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL - 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 - which allows reading messages from the kernel ring buffer - independently from the file system. - - If you answer 'N' here, klogd will use the more portable - approach of reading them from /proc or a device node. - However, this method requires the file to be available. - - If in doubt, say 'Y'. - -config BUSYBOX_CONFIG_LOGGER - bool "logger" - default BUSYBOX_DEFAULT_LOGGER - select BUSYBOX_CONFIG_FEATURE_SYSLOG - help - The logger utility allows you to send arbitrary text - messages to the system log (i.e. the 'syslogd' utility) so - they can be logged. This is generally used to help locate - problems that occur within programs and scripts. - endmenu diff --git a/package/utils/busybox/config/util-linux/Config.in b/package/utils/busybox/config/util-linux/Config.in index 017b1196a01..08bddf819a9 100644 --- a/package/utils/busybox/config/util-linux/Config.in +++ b/package/utils/busybox/config/util-linux/Config.in @@ -6,6 +6,11 @@ menu "Linux System Utilities" +config BUSYBOX_CONFIG_BLKDISCARD + bool "blkdiscard" + default BUSYBOX_DEFAULT_BLKDISCARD + help + blkdiscard discards sectors on a given device. config BUSYBOX_CONFIG_BLOCKDEV bool "blockdev" default BUSYBOX_DEFAULT_BLOCKDEV @@ -174,11 +179,34 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_OTHERTAB default BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB help Support mount -T (specifying an alternate fstab) +config BUSYBOX_CONFIG_NSENTER + bool "nsenter" + default BUSYBOX_DEFAULT_NSENTER + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Run program with namespaces of other processes. + +config BUSYBOX_CONFIG_FEATURE_NSENTER_LONG_OPTS + bool "Enable long options" + default BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS + depends on BUSYBOX_CONFIG_NSENTER && BUSYBOX_CONFIG_LONG_OPTS + help + Support long options for the nsenter applet. This makes + the busybox implementation more compatible with upstream. config BUSYBOX_CONFIG_REV bool "rev" default BUSYBOX_DEFAULT_REV help Reverse lines of a file or files. +config BUSYBOX_CONFIG_SETARCH + bool "setarch" + default BUSYBOX_DEFAULT_SETARCH + 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 + this util on a system that supports both 64bit and 32bit userland + (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). config BUSYBOX_CONFIG_UEVENT bool "uevent" default BUSYBOX_DEFAULT_UEVENT @@ -186,6 +214,13 @@ config BUSYBOX_CONFIG_UEVENT help uevent is a netlink listener for kernel uevent notifications sent via netlink. It is usually used for dynamic device creation. +config BUSYBOX_CONFIG_UNSHARE + bool "unshare" + default BUSYBOX_DEFAULT_UNSHARE + depends on BUSYBOX_CONFIG_LONG_OPTS && !BUSYBOX_CONFIG_NOMMU + select BUSYBOX_CONFIG_PLATFORM_LINUX + help + Run program with some namespaces unshared from parent. config BUSYBOX_CONFIG_ACPID bool "acpid" @@ -669,16 +704,6 @@ config BUSYBOX_CONFIG_SCRIPTREPLAY This program replays a typescript, using timing information given by script -t. -config BUSYBOX_CONFIG_SETARCH - bool "setarch" - default BUSYBOX_DEFAULT_SETARCH - 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 - this util on a system that supports both 64bit and 32bit userland - (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). - config BUSYBOX_CONFIG_SWAPONOFF bool "swaponoff" default BUSYBOX_DEFAULT_SWAPONOFF diff --git a/package/utils/busybox/config/util-linux/volume_id/Config.in b/package/utils/busybox/config/util-linux/volume_id/Config.in index 306550b7b87..6153314d6fc 100644 --- a/package/utils/busybox/config/util-linux/volume_id/Config.in +++ b/package/utils/busybox/config/util-linux/volume_id/Config.in @@ -12,6 +12,14 @@ menu "Filesystem/Volume identification" depends on BUSYBOX_CONFIG_VOLUMEID +config BUSYBOX_CONFIG_FEATURE_VOLUMEID_BCACHE + bool "bcache filesystem" + default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BCACHE + depends on BUSYBOX_CONFIG_VOLUMEID + help + TODO + + config BUSYBOX_CONFIG_FEATURE_VOLUMEID_BTRFS bool "btrfs filesystem" default BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS diff --git a/package/utils/busybox/patches/001-resource_h_include.patch b/package/utils/busybox/patches/001-resource_h_include.patch index 5e2f1721c40..33e12c8bd4b 100644 --- a/package/utils/busybox/patches/001-resource_h_include.patch +++ b/package/utils/busybox/patches/001-resource_h_include.patch @@ -1,6 +1,6 @@ --- a/include/libbb.h +++ b/include/libbb.h -@@ -40,6 +40,7 @@ +@@ -41,6 +41,7 @@ #include #include #include diff --git a/package/utils/busybox/patches/010-networking-fix-uninitialized-memory-when-displaying-.patch b/package/utils/busybox/patches/010-networking-fix-uninitialized-memory-when-displaying-.patch deleted file mode 100644 index eabbf3f9080..00000000000 --- a/package/utils/busybox/patches/010-networking-fix-uninitialized-memory-when-displaying-.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Felix Fietkau -Date: Mon, 18 Jan 2016 12:03:45 +0100 -Subject: [PATCH] networking: fix uninitialized memory when displaying IPv6 - addresses - -After commit 8e74adab0107658e3dc04ed342206272a284f43e -("libbb: make INET[6]_rresolve use sockaddr2{host,dotted}_noport") -INET_sprint6 uses more than just sin6_addr, it also tries to display the -scope id, which is uninitialized when called from ife_print6. - -Signed-off-by: Felix Fietkau ---- - ---- a/networking/interface.c -+++ b/networking/interface.c -@@ -881,6 +881,7 @@ static void ife_print6(struct interface - sprintf(addr6, "%s:%s:%s:%s:%s:%s:%s:%s", - addr6p[0], addr6p[1], addr6p[2], addr6p[3], - addr6p[4], addr6p[5], addr6p[6], addr6p[7]); -+ memset(&sap, 0, sizeof(sap)); - inet_pton(AF_INET6, addr6, - (struct sockaddr *) &sap.sin6_addr); - sap.sin6_family = AF_INET6; diff --git a/package/utils/busybox/patches/020-networking-libiproute-fix-displaying-route-table-for.patch b/package/utils/busybox/patches/020-networking-libiproute-fix-displaying-route-table-for.patch index 60027c48ab8..68754dee783 100644 --- a/package/utils/busybox/patches/020-networking-libiproute-fix-displaying-route-table-for.patch +++ b/package/utils/busybox/patches/020-networking-libiproute-fix-displaying-route-table-for.patch @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau --- a/networking/libiproute/iprule.c +++ b/networking/libiproute/iprule.c -@@ -119,7 +119,9 @@ static int FAST_FUNC print_rule(const st +@@ -114,7 +114,9 @@ static int FAST_FUNC print_rule(const st printf("iif %s ", (char*)RTA_DATA(tb[RTA_IIF])); } diff --git a/package/utils/busybox/patches/030-ip-fix-problem-on-mips64-n64-big-endian-musl-systems.patch b/package/utils/busybox/patches/030-ip-fix-problem-on-mips64-n64-big-endian-musl-systems.patch deleted file mode 100644 index 6e25f558818..00000000000 --- a/package/utils/busybox/patches/030-ip-fix-problem-on-mips64-n64-big-endian-musl-systems.patch +++ /dev/null @@ -1,75 +0,0 @@ -From: Szabolcs Nagy -Date: Sun, 24 Apr 2016 17:39:02 +0200 -Subject: [PATCH] ip: fix problem on mips64 n64 big endian musl systems - -Use designated initializers for struct msghdr. -The struct layout is non-portable and musl libc does not match what busybox expects. - -Signed-off-by: Szabolcs Nagy -Tested-by: Waldemar Brodkorb -Signed-off-by: Denys Vlasenko ---- - ---- a/networking/libiproute/libnetlink.c -+++ b/networking/libiproute/libnetlink.c -@@ -71,11 +71,15 @@ int FAST_FUNC rtnl_dump_request(struct r - struct nlmsghdr nlh; - struct sockaddr_nl nladdr; - struct iovec iov[2] = { { &nlh, sizeof(nlh) }, { req, len } }; -+ /* Use designated initializers, struct layout is non-portable */ - struct msghdr msg = { -- (void*)&nladdr, sizeof(nladdr), -- iov, 2, -- NULL, 0, -- 0 -+ .msg_name = (void*)&nladdr, -+ .msg_namelen = sizeof(nladdr), -+ .msg_iov = iov, -+ .msg_iovlen = 2, -+ .msg_control = NULL, -+ .msg_controllen = 0, -+ .msg_flags = 0 - }; - - memset(&nladdr, 0, sizeof(nladdr)); -@@ -104,12 +108,15 @@ static int rtnl_dump_filter(struct rtnl_ - while (1) { - int status; - struct nlmsghdr *h; -- -+ /* Use designated initializers, struct layout is non-portable */ - struct msghdr msg = { -- (void*)&nladdr, sizeof(nladdr), -- &iov, 1, -- NULL, 0, -- 0 -+ .msg_name = (void*)&nladdr, -+ .msg_namelen = sizeof(nladdr), -+ .msg_iov = &iov, -+ .msg_iovlen = 1, -+ .msg_control = NULL, -+ .msg_controllen = 0, -+ .msg_flags = 0 - }; - - status = recvmsg(rth->fd, &msg, 0); -@@ -211,11 +218,15 @@ int FAST_FUNC rtnl_talk(struct rtnl_hand - struct sockaddr_nl nladdr; - struct iovec iov = { (void*)n, n->nlmsg_len }; - char *buf = xmalloc(8*1024); /* avoid big stack buffer */ -+ /* Use designated initializers, struct layout is non-portable */ - struct msghdr msg = { -- (void*)&nladdr, sizeof(nladdr), -- &iov, 1, -- NULL, 0, -- 0 -+ .msg_name = (void*)&nladdr, -+ .msg_namelen = sizeof(nladdr), -+ .msg_iov = &iov, -+ .msg_iovlen = 1, -+ .msg_control = NULL, -+ .msg_controllen = 0, -+ .msg_flags = 0 - }; - - memset(&nladdr, 0, sizeof(nladdr)); diff --git a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch index 5499efded05..4825bc8a671 100644 --- a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch +++ b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch @@ -1,6 +1,6 @@ --- a/util-linux/mount.c +++ b/util-linux/mount.c -@@ -236,9 +236,6 @@ +@@ -237,9 +237,6 @@ #if ENABLE_FEATURE_MOUNT_NFS /* This is just a warning of a common mistake. Possibly this should be a * uclibc faq entry rather than in busybox... */ diff --git a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch index 1083675671d..0fdaed502a1 100644 --- a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch +++ b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -695,6 +695,7 @@ static int bcast_or_ucast(struct dhcp_pa +@@ -697,6 +697,7 @@ static int bcast_or_ucast(struct dhcp_pa static NOINLINE int send_discover(uint32_t xid, uint32_t requested) { struct dhcp_packet packet; @@ -8,11 +8,11 @@ /* Fill in: op, htype, hlen, cookie, chaddr fields, * random xid field (we override it below), -@@ -712,6 +713,7 @@ static NOINLINE int send_discover(uint32 +@@ -714,6 +715,7 @@ static NOINLINE int send_discover(uint32 */ add_client_options(&packet); + if (msgs++ < 3) - bb_info_msg("Sending discover..."); - return raw_bcast_from_client_config_ifindex(&packet); + bb_error_msg("sending %s", "discover"); + return raw_bcast_from_client_config_ifindex(&packet, INADDR_ANY); } diff --git a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch index f32cea28306..4a9ae9813ee 100644 --- a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch +++ b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1418,6 +1418,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c +@@ -1422,6 +1422,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c /* silence "uninitialized!" warning */ unsigned timestamp_before_wait = timestamp_before_wait; diff --git a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch index f38b128ff81..1e44552c132 100644 --- a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch +++ b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1101,7 +1101,6 @@ static void perform_renew(void) +@@ -1103,7 +1103,6 @@ static void perform_renew(void) state = RENEW_REQUESTED; break; case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ diff --git a/package/utils/busybox/patches/204-udhcpc_src_ip_rebind.patch b/package/utils/busybox/patches/204-udhcpc_src_ip_rebind.patch deleted file mode 100644 index 21fec5167df..00000000000 --- a/package/utils/busybox/patches/204-udhcpc_src_ip_rebind.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- a/networking/udhcp/dhcpc.c -+++ b/networking/udhcp/dhcpc.c -@@ -673,10 +673,10 @@ static void add_client_options(struct dh - * client reverts to using the IP broadcast address. - */ - --static int raw_bcast_from_client_config_ifindex(struct dhcp_packet *packet) -+static int raw_bcast_from_client_config_ifindex(struct dhcp_packet *packet, uint32_t src_nip) - { - return udhcp_send_raw_packet(packet, -- /*src*/ INADDR_ANY, CLIENT_PORT, -+ /*src*/ src_nip, CLIENT_PORT, - /*dst*/ INADDR_BROADCAST, SERVER_PORT, MAC_BCAST_ADDR, - client_config.ifindex); - } -@@ -687,7 +687,7 @@ static int bcast_or_ucast(struct dhcp_pa - return udhcp_send_kernel_packet(packet, - ciaddr, CLIENT_PORT, - server, SERVER_PORT); -- return raw_bcast_from_client_config_ifindex(packet); -+ return raw_bcast_from_client_config_ifindex(packet, ciaddr); - } - - /* Broadcast a DHCP discover packet to the network, with an optionally requested IP */ -@@ -715,7 +715,7 @@ static NOINLINE int send_discover(uint32 - - if (msgs++ < 3) - bb_info_msg("Sending discover..."); -- return raw_bcast_from_client_config_ifindex(&packet); -+ return raw_bcast_from_client_config_ifindex(&packet, INADDR_ANY); - } - - /* Broadcast a DHCP request message */ -@@ -759,7 +759,7 @@ static NOINLINE int send_select(uint32_t - - addr.s_addr = requested; - bb_info_msg("Sending select for %s...", inet_ntoa(addr)); -- return raw_bcast_from_client_config_ifindex(&packet); -+ return raw_bcast_from_client_config_ifindex(&packet, INADDR_ANY); - } - - /* Unicast or broadcast a DHCP renew message */ -@@ -827,7 +827,7 @@ static NOINLINE int send_decline(/*uint3 - udhcp_add_simple_option(&packet, DHCP_SERVER_ID, server); - - bb_info_msg("Sending decline..."); -- return raw_bcast_from_client_config_ifindex(&packet); -+ return raw_bcast_from_client_config_ifindex(&packet, INADDR_ANY); - } - #endif - diff --git a/package/utils/busybox/patches/210-add_netmsg_util.patch b/package/utils/busybox/patches/210-add_netmsg_util.patch index 23f05755bd1..2382698d0f5 100644 --- a/package/utils/busybox/patches/210-add_netmsg_util.patch +++ b/package/utils/busybox/patches/210-add_netmsg_util.patch @@ -1,6 +1,6 @@ --- a/include/applets.src.h +++ b/include/applets.src.h -@@ -254,6 +254,7 @@ IF_MT(APPLET(mt, BB_DIR_BIN, BB_SUID_DRO +@@ -229,6 +229,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)) @@ -10,7 +10,7 @@ IF_NOHUP(APPLET(nohup, BB_DIR_USR_BIN, BB_SUID_DROP)) --- a/networking/Config.src +++ b/networking/Config.src -@@ -626,6 +626,12 @@ config FEATURE_IPCALC_LONG_OPTIONS +@@ -639,6 +639,12 @@ config FEATURE_IPCALC_LONG_OPTIONS help Support long options for the ipcalc applet. diff --git a/package/utils/busybox/patches/220-add_lock_util.patch b/package/utils/busybox/patches/220-add_lock_util.patch index 047d32ef103..c60f5db3928 100644 --- a/package/utils/busybox/patches/220-add_lock_util.patch +++ b/package/utils/busybox/patches/220-add_lock_util.patch @@ -1,16 +1,16 @@ --- a/include/applets.src.h +++ b/include/applets.src.h -@@ -211,6 +211,7 @@ IF_LN(APPLET_NOEXEC(ln, ln, BB_DIR_BIN, +@@ -196,6 +196,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)) + IF_LOGNAME(APPLET_NOFORK(logname, logname, BB_DIR_USR_BIN, BB_SUID_DROP, logname)) + IF_LOSETUP(APPLET(losetup, BB_DIR_SBIN, BB_SUID_DROP)) + IF_LS(APPLET_NOEXEC(ls, ls, BB_DIR_BIN, BB_SUID_DROP, ls)) --- a/miscutils/Config.src +++ b/miscutils/Config.src -@@ -385,6 +385,12 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA +@@ -375,6 +375,12 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA help Enables the 'hdparm -d' option to get/set using_dma flag. @@ -25,9 +25,9 @@ default y --- a/miscutils/Kbuild.src +++ b/miscutils/Kbuild.src -@@ -28,6 +28,7 @@ lib-$(CONFIG_INOTIFYD) += inotifyd.o - lib-$(CONFIG_FEATURE_LAST_SMALL)+= last.o - lib-$(CONFIG_FEATURE_LAST_FANCY)+= last_fancy.o +@@ -33,6 +33,7 @@ lib-$(CONFIG_LAST) += last.o + endif + lib-$(CONFIG_LESS) += less.o +lib-$(CONFIG_LOCK) += lock.o lib-$(CONFIG_MAKEDEVS) += makedevs.o diff --git a/package/utils/busybox/patches/230-ntpd_delayed_resolve.patch b/package/utils/busybox/patches/230-ntpd_delayed_resolve.patch deleted file mode 100644 index b0af08efb56..00000000000 --- a/package/utils/busybox/patches/230-ntpd_delayed_resolve.patch +++ /dev/null @@ -1,48 +0,0 @@ ---- a/networking/ntpd.c -+++ b/networking/ntpd.c -@@ -265,6 +265,7 @@ typedef struct { - typedef struct { - len_and_sockaddr *p_lsa; - char *p_dotted; -+ char *p_hostname; - int p_fd; - int datapoint_idx; - uint32_t lastpkt_refid; -@@ -766,8 +767,9 @@ add_peers(const char *s) - peer_t *p; - - p = xzalloc(sizeof(*p)); -- p->p_lsa = xhost2sockaddr(s, 123); -- p->p_dotted = xmalloc_sockaddr2dotted_noport(&p->p_lsa->u.sa); -+ p->p_hostname = s; -+ p->p_lsa = NULL; -+ p->p_dotted = NULL; - p->p_fd = -1; - p->p_xmt_msg.m_status = MODE_CLIENT | (NTP_VERSION << 3); - p->next_action_time = G.cur_time; /* = set_next(p, 0); */ -@@ -816,6 +818,25 @@ send_query_to_peer(peer_t *p) - * - * Uncomment this and use strace to see it in action: - */ -+ -+ /* See if the peer hostname already resolved yet, if not, retry to resolv and return on failure */ -+ if (!p->p_lsa) -+ { -+ p->p_lsa = host2sockaddr(p->p_hostname, 123); -+ -+ if (p->p_lsa) -+ { -+ p->p_dotted = xmalloc_sockaddr2dotted_noport(&p->p_lsa->u.sa); -+ VERB1 bb_error_msg("resolved peer %s to %s", p->p_hostname, p->p_dotted); -+ } -+ else -+ { -+ set_next(p, RETRY_INTERVAL); -+ VERB1 bb_error_msg("could not resolve peer %s, skipping", p->p_hostname); -+ return; -+ } -+ } -+ - #define PROBE_LOCAL_ADDR /* { len_and_sockaddr lsa; lsa.len = LSA_SIZEOF_SA; getsockname(p->query.fd, &lsa.u.sa, &lsa.len); } */ - - if (p->p_fd == -1) { diff --git a/package/utils/busybox/patches/240-telnetd_intr.patch b/package/utils/busybox/patches/240-telnetd_intr.patch index ccb4ea42245..d52ea3fcc1e 100644 --- a/package/utils/busybox/patches/240-telnetd_intr.patch +++ b/package/utils/busybox/patches/240-telnetd_intr.patch @@ -1,6 +1,6 @@ --- a/networking/telnetd.c +++ b/networking/telnetd.c -@@ -331,6 +331,7 @@ make_new_session( +@@ -333,6 +333,7 @@ make_new_session( /* Restore default signal handling ASAP */ bb_signals((1 << SIGCHLD) + (1 << SIGPIPE), SIG_DFL); diff --git a/package/utils/busybox/patches/250-date-k-flag.patch b/package/utils/busybox/patches/250-date-k-flag.patch index 111a86156fd..b2681a17f99 100644 --- a/package/utils/busybox/patches/250-date-k-flag.patch +++ b/package/utils/busybox/patches/250-date-k-flag.patch @@ -8,10 +8,10 @@ //usage: "\n" //usage: "\nRecognized TIME formats:" //usage: "\n hh:mm[:ss]" -@@ -138,9 +139,8 @@ - //usage: "Wed Apr 12 18:52:41 MDT 2000\n" +@@ -139,9 +140,8 @@ #include "libbb.h" + #include "common_bufsiz.h" -#if ENABLE_FEATURE_DATE_NANO -# include -#endif @@ -20,7 +20,7 @@ enum { OPT_RFC2822 = (1 << 0), /* R */ -@@ -148,8 +148,9 @@ enum { +@@ -149,8 +149,9 @@ enum { OPT_UTC = (1 << 2), /* u */ OPT_DATE = (1 << 3), /* d */ OPT_REFERENCE = (1 << 4), /* r */ @@ -32,7 +32,7 @@ }; static void maybe_set_utc(int opt) -@@ -167,12 +168,15 @@ static const char date_longopts[] ALIGN1 +@@ -168,12 +169,15 @@ static const char date_longopts[] ALIGN1 /* "universal\0" No_argument "u" */ "date\0" Required_argument "d" "reference\0" Required_argument "r" @@ -48,7 +48,7 @@ struct timespec ts; struct tm tm_time; char buf_fmt_dt2str[64]; -@@ -187,7 +191,7 @@ int date_main(int argc UNUSED_PARAM, cha +@@ -188,7 +192,7 @@ int date_main(int argc UNUSED_PARAM, cha opt_complementary = "d--s:s--d" IF_FEATURE_DATE_ISOFMT(":R--I:I--R"); IF_LONG_OPTS(applet_long_options = date_longopts;) @@ -57,7 +57,7 @@ IF_FEATURE_DATE_ISOFMT("I::D:"), &date_str, &date_str, &filename IF_FEATURE_DATE_ISOFMT(, &isofmt_arg, &fmt_str2dt)); -@@ -244,6 +248,31 @@ int date_main(int argc UNUSED_PARAM, cha +@@ -245,6 +249,31 @@ int date_main(int argc UNUSED_PARAM, cha if (*argv) bb_show_usage(); diff --git a/package/utils/busybox/patches/260-arping_missing_includes.patch b/package/utils/busybox/patches/260-arping_missing_includes.patch deleted file mode 100644 index a9d4a62af34..00000000000 --- a/package/utils/busybox/patches/260-arping_missing_includes.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/networking/arping.c -+++ b/networking/arping.c -@@ -24,6 +24,8 @@ - - #include - #include -+#include -+#include - #include - #include -