aboutsummaryrefslogtreecommitdiffstats
path: root/package/utils
diff options
context:
space:
mode:
Diffstat (limited to 'package/utils')
-rw-r--r--package/utils/busybox/Config-defaults.in169
-rw-r--r--package/utils/busybox/Makefile4
-rw-r--r--package/utils/busybox/config/Config.in22
-rw-r--r--package/utils/busybox/config/archival/Config.in29
-rw-r--r--package/utils/busybox/config/coreutils/Config.in39
-rw-r--r--package/utils/busybox/config/debianutils/Config.in5
-rw-r--r--package/utils/busybox/config/e2fsprogs/Config.in34
-rw-r--r--package/utils/busybox/config/init/Config.in49
-rw-r--r--package/utils/busybox/config/libbb/Config.in48
-rw-r--r--package/utils/busybox/config/loginutils/Config.in112
-rw-r--r--package/utils/busybox/config/miscutils/Config.in22
-rw-r--r--package/utils/busybox/config/modutils/Config.in3
-rw-r--r--package/utils/busybox/config/networking/Config.in15
-rw-r--r--package/utils/busybox/config/printutils/Config.in2
-rw-r--r--package/utils/busybox/config/runit/Config.in65
-rw-r--r--package/utils/busybox/config/sysklogd/Config.in121
-rw-r--r--package/utils/busybox/config/util-linux/Config.in45
-rw-r--r--package/utils/busybox/config/util-linux/volume_id/Config.in8
-rw-r--r--package/utils/busybox/patches/001-resource_h_include.patch2
-rw-r--r--package/utils/busybox/patches/010-networking-fix-uninitialized-memory-when-displaying-.patch23
-rw-r--r--package/utils/busybox/patches/020-networking-libiproute-fix-displaying-route-table-for.patch2
-rw-r--r--package/utils/busybox/patches/030-ip-fix-problem-on-mips64-n64-big-endian-musl-systems.patch75
-rw-r--r--package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch2
-rw-r--r--package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch8
-rw-r--r--package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch2
-rw-r--r--package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch2
-rw-r--r--package/utils/busybox/patches/204-udhcpc_src_ip_rebind.patch51
-rw-r--r--package/utils/busybox/patches/210-add_netmsg_util.patch4
-rw-r--r--package/utils/busybox/patches/220-add_lock_util.patch16
-rw-r--r--package/utils/busybox/patches/230-ntpd_delayed_resolve.patch48
-rw-r--r--package/utils/busybox/patches/240-telnetd_intr.patch2
-rw-r--r--package/utils/busybox/patches/250-date-k-flag.patch12
-rw-r--r--package/utils/busybox/patches/260-arping_missing_includes.patch11
33 files changed, 482 insertions, 570 deletions
diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in
index 105a3fcadd..11cce03db9 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 5767e3699c..a50f3aa171 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 113eb62067..3bf67c5cf3 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 1ca610cad6..ff4c2cf6bd 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 2f9473857b..ec5611bdfd 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 533ad475c1..d39c60f43e 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 f826240181..df255481c3 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 634207f7f9..021656d3f9 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 e66a15b692..0695f9ba39 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 f5ecf6f23b..956115c7f4 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 c6deaafb62..3465df40ab 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 9add56ef66..8e0e2af9ef 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 7e5a414a68..407ddd30dd 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 cccc4a541f..3a2baa311d 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 8074fb18f7..a322a2cd8a 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 de36a1e892..5fcee2c7ff 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 017b1196a0..08bddf819a 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 306550b7b8..6153314d6f 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 5e2f1721c4..33e12c8bd4 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 <poll.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
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 eabbf3f908..0000000000
--- a/package/utils/busybox/patches/010-networking-fix-uninitialized-memory-when-displaying-.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-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 <nbd@nbd.name>
----
-
---- 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 60027c48ab..68754dee78 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 <nbd@nbd.name>
--- 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 6e25f55881..0000000000
--- 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 <nsz@port70.net>
-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 <nsz@port70.net>
-Tested-by: Waldemar Brodkorb <wbx@openadk.org>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
-
---- 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 5499efded0..4825bc8a67 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 1083675671..0fdaed502a 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 f32cea2830..4a9ae9813e 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 f38b128ff8..1e44552c13 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 21fec5167d..0000000000
--- 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 23f05755bd..2382698d0f 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 047d32ef10..c60f5db392 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 b0af08efb5..0000000000
--- 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 ccb4ea4224..d52ea3fcc1 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 111a86156f..b2681a17f9 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 <sys/syscall.h>
-#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 a9d4a62af3..0000000000
--- 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 <arpa/inet.h>
- #include <net/if.h>
-+#include <net/if_arp.h>
-+#include <netinet/if_ether.h>
- #include <netinet/ether.h>
- #include <netpacket/packet.h>
-