@@ -8,13 +8,13 @@
 | 
			
		||||
include $(TOPDIR)/rules.mk
 | 
			
		||||
 | 
			
		||||
PKG_NAME:=busybox
 | 
			
		||||
PKG_VERSION:=1.13.4
 | 
			
		||||
PKG_VERSION:=1.14.4
 | 
			
		||||
PKG_RELEASE:=1
 | 
			
		||||
 | 
			
		||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 | 
			
		||||
PKG_SOURCE_URL:=http://www.busybox.net/downloads \
 | 
			
		||||
		http://distfiles.gentoo.org/distfiles/
 | 
			
		||||
PKG_MD5SUM:=8a5eb7f15d4077d18fa97bda7a4e5412
 | 
			
		||||
PKG_MD5SUM:=ad6d0b271e60783a3c767c4ccbc7f98e
 | 
			
		||||
 | 
			
		||||
include $(INCLUDE_DIR)/package.mk
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -410,6 +410,12 @@ config BUSYBOX_CONFIG_CROSS_COMPILER_PREFIX
 | 
			
		||||
 | 
			
		||||
	  Native builds leave this empty.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_EXTRA_CFLAGS
 | 
			
		||||
	string "Additional CFLAGS"
 | 
			
		||||
	default ""
 | 
			
		||||
	help
 | 
			
		||||
	  Additional CFLAGS to pass to the compiler verbatim.
 | 
			
		||||
 | 
			
		||||
endmenu
 | 
			
		||||
 | 
			
		||||
menu 'Debugging Options'
 | 
			
		||||
 
 | 
			
		||||
@@ -110,6 +110,13 @@ config BUSYBOX_CONFIG_FEATURE_CPIO_O
 | 
			
		||||
	  This implementation of cpio can create cpio archives in the "newc"
 | 
			
		||||
	  format only.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_CPIO_P
 | 
			
		||||
	bool "Support for passthrough mode"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_CPIO_O
 | 
			
		||||
	help
 | 
			
		||||
	  Passthrough mode. Rarely used.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DPKG
 | 
			
		||||
	bool "dpkg"
 | 
			
		||||
	default n
 | 
			
		||||
 
 | 
			
		||||
@@ -189,7 +189,7 @@ config BUSYBOX_CONFIG_ECHO
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO
 | 
			
		||||
	bool "Enable echo options (-n and -e)"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ECHO || BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ECHO || BUSYBOX_CONFIG_ASH_BUILTIN_ECHO || BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	help
 | 
			
		||||
	  This adds options (-n and -e) to echo.
 | 
			
		||||
 | 
			
		||||
@@ -509,6 +509,18 @@ config BUSYBOX_CONFIG_SHA1SUM
 | 
			
		||||
	help
 | 
			
		||||
	  Compute and check SHA1 message digest
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SHA256SUM
 | 
			
		||||
	bool "sha256sum"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Compute and check SHA256 message digest
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SHA512SUM
 | 
			
		||||
	bool "sha512sum"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Compute and check SHA512 message digest
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SLEEP
 | 
			
		||||
	bool "sleep"
 | 
			
		||||
	default y
 | 
			
		||||
@@ -754,7 +766,7 @@ config BUSYBOX_CONFIG_FEATURE_WC_LARGE
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_WC
 | 
			
		||||
	help
 | 
			
		||||
	  Use "unsigned long long" in wc for count variables.
 | 
			
		||||
	  Use "unsigned long long" in wc for counter variables.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_WHO
 | 
			
		||||
	bool "who"
 | 
			
		||||
 
 | 
			
		||||
@@ -32,11 +32,12 @@ config BUSYBOX_CONFIG_FEATURE_KILL_DELAY
 | 
			
		||||
	int "How long to wait between TERM and KILL (0 - send TERM only)" if FEATURE_KILL_REMOVED
 | 
			
		||||
	range 0 1024
 | 
			
		||||
	default 0
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_KILL_REMOVED
 | 
			
		||||
	help
 | 
			
		||||
	  With nonzero setting, init sends TERM, forks, child waits N
 | 
			
		||||
	  seconds, sends KILL and exits. Setting it too high is unwise
 | 
			
		||||
	  (child will hang around for too long and can actually kill
 | 
			
		||||
	  wrong process!)
 | 
			
		||||
	  (child will hang around for too long and could actually kill
 | 
			
		||||
	  the wrong process!)
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY
 | 
			
		||||
	bool "Run commands with leading dash with controlling tty"
 | 
			
		||||
 
 | 
			
		||||
@@ -58,7 +58,7 @@ config BUSYBOX_CONFIG_USE_BB_SHADOW
 | 
			
		||||
	  password servers and whatnot.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_USE_BB_CRYPT
 | 
			
		||||
	bool "Use internal DES and MD5 crypt functions"
 | 
			
		||||
	bool "Use internal crypt functions"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Busybox has internal DES and MD5 crypt functions.
 | 
			
		||||
@@ -79,6 +79,18 @@ config BUSYBOX_CONFIG_USE_BB_CRYPT
 | 
			
		||||
	  In static build, it makes code _smaller_ by about 1.2k,
 | 
			
		||||
	  and likely many kilobytes less of bss.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_USE_BB_CRYPT_SHA
 | 
			
		||||
	bool "Enable SHA256/512 crypt functions"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_USE_BB_CRYPT
 | 
			
		||||
	help
 | 
			
		||||
	  Enable this if you have passwords starting with "$5$" or "$6$"
 | 
			
		||||
	  in your /etc/passwd or /etc/shadow files. These passwords
 | 
			
		||||
	  are hashed using SHA256 and SHA512 algorithms. Support for them
 | 
			
		||||
	  was added to glibc in 2008.
 | 
			
		||||
	  With this option off, login will fail password check for any
 | 
			
		||||
	  user which has password encrypted with these algorithms.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ADDGROUP
 | 
			
		||||
	bool "addgroup"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -230,15 +242,16 @@ config BUSYBOX_CONFIG_CRYPTPW
 | 
			
		||||
	bool "cryptpw"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Applet for crypting a string.
 | 
			
		||||
	  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 n
 | 
			
		||||
	help
 | 
			
		||||
	  chpasswd reads a file of user name and password pairs from
 | 
			
		||||
	  standard input and uses this information to update a group of
 | 
			
		||||
	  existing users.
 | 
			
		||||
	  Reads a file of user name and password pairs from standard input
 | 
			
		||||
	  and uses this information to update a group of existing users.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SU
 | 
			
		||||
	bool "su"
 | 
			
		||||
 
 | 
			
		||||
@@ -50,20 +50,4 @@ config BUSYBOX_CONFIG_SENDMAIL
 | 
			
		||||
	help
 | 
			
		||||
	  Barebones sendmail.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_SENDMAIL_MAILX
 | 
			
		||||
	bool "Allow to specify subject, attachments, their charset etc"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_SENDMAIL
 | 
			
		||||
	help
 | 
			
		||||
	  Allow to specify subject, attachments and their charset.
 | 
			
		||||
	  Allow to use custom connection helper.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_SENDMAIL_MAILXX
 | 
			
		||||
	bool "Allow to specify Cc: addresses and some additional headers"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_SENDMAIL_MAILX
 | 
			
		||||
	help
 | 
			
		||||
	  Allow to specify Cc: addresses and some additional headers:
 | 
			
		||||
	  Errors-To:
 | 
			
		||||
 | 
			
		||||
endmenu
 | 
			
		||||
 
 | 
			
		||||
@@ -121,6 +121,13 @@ config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
 | 
			
		||||
	help
 | 
			
		||||
	  Support calling /usr/sbin/sendmail for send cmd outputs.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_CROND_DIR
 | 
			
		||||
	string "crond spool directory"
 | 
			
		||||
	default "/var/spool/cron"
 | 
			
		||||
	depends on BUSYBOX_CONFIG_CROND || BUSYBOX_CONFIG_CRONTAB
 | 
			
		||||
	help
 | 
			
		||||
	  Location of crond spool.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_CRONTAB
 | 
			
		||||
	bool "crontab"
 | 
			
		||||
	default y
 | 
			
		||||
@@ -151,7 +158,10 @@ config BUSYBOX_CONFIG_DEVFSD
 | 
			
		||||
	default n
 | 
			
		||||
	select BUSYBOX_CONFIG_FEATURE_SYSLOG
 | 
			
		||||
	help
 | 
			
		||||
	  This is deprecated, and will be removed at the end of 2008.
 | 
			
		||||
	  This is deprecated and should NOT be used anymore.
 | 
			
		||||
	  Use linux >= 2.6 (optionally with hotplug) and mdev instead!
 | 
			
		||||
	  See docs/mdev.txt for detailed instructions on how to use mdev
 | 
			
		||||
	  instead.
 | 
			
		||||
 | 
			
		||||
	  Provides compatibility with old device names on a devfs systems.
 | 
			
		||||
	  You should set it to true if you have devfs enabled.
 | 
			
		||||
@@ -160,7 +170,7 @@ config BUSYBOX_CONFIG_DEVFSD
 | 
			
		||||
	  "PERMISSIONS", "EXECUTE", "COPY", "IGNORE",
 | 
			
		||||
	  "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT".
 | 
			
		||||
 | 
			
		||||
	   But only if they are written UPPERCASE!!!!!!!!
 | 
			
		||||
	  But only if they are written UPPERCASE!!!!!!!!
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DEVFSD_MODLOAD
 | 
			
		||||
	bool "Adds support for MODLOAD keyword in devsfd.conf"
 | 
			
		||||
@@ -190,9 +200,11 @@ config BUSYBOX_CONFIG_FEATURE_DEVFS
 | 
			
		||||
	bool "Use devfs names for all devices (obsolete)"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  This is obsolete and will be going away at the end of 2008..
 | 
			
		||||
	  This is obsolete and should NOT be used anymore.
 | 
			
		||||
	  Use linux >= 2.6 (optionally with hotplug) and mdev instead!
 | 
			
		||||
 | 
			
		||||
	  This tells busybox to look for names like /dev/loop/0 instead of
 | 
			
		||||
	  For legacy systems -- if there is no way around devfsd -- this
 | 
			
		||||
	  tells busybox to look for names like /dev/loop/0 instead of
 | 
			
		||||
	  /dev/loop0. If your /dev directory has normal names instead of
 | 
			
		||||
	  devfs names, you don't want this.
 | 
			
		||||
 | 
			
		||||
@@ -238,6 +250,20 @@ config BUSYBOX_CONFIG_FBSPLASH
 | 
			
		||||
	    "NN" (ASCII decimal number) - percentage to show on progress bar
 | 
			
		||||
	    "exit" - well you guessed it
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FLASH_ERASEALL
 | 
			
		||||
	bool "flash_eraseall"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  The flash_eraseall binary from mtd-utils as of git head c4c6a59eb.
 | 
			
		||||
	  This utility is used to erase the whole MTD device.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_IONICE
 | 
			
		||||
	bool "ionice"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Set/set program io scheduling class and priority
 | 
			
		||||
	  Requires kernel >= 2.6.13
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_INOTIFYD
 | 
			
		||||
	bool "inotifyd"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -300,14 +326,6 @@ config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
 | 
			
		||||
	  The -M flag enables a more sophisticated status line.
 | 
			
		||||
	  The -m flag enables a simpler status line with a percentage.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
 | 
			
		||||
	bool "Enable flag changes ('-' command)"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_LESS
 | 
			
		||||
	help
 | 
			
		||||
	  This enables the ability to change command-line flags within
 | 
			
		||||
	  less itself ('-' keyboard command).
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
 | 
			
		||||
	bool "Enable marks"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -322,13 +340,6 @@ config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
 | 
			
		||||
	help
 | 
			
		||||
	  Enable regular expressions, allowing complex file searches.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
 | 
			
		||||
	bool "Enable dynamic switching of line numbers"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
 | 
			
		||||
	help
 | 
			
		||||
	  Enable "-N" command.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
 | 
			
		||||
	bool "Enable automatic resizing on window size changes"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -336,6 +347,21 @@ config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
 | 
			
		||||
	help
 | 
			
		||||
	  Makes less track window size changes.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
 | 
			
		||||
	bool "Enable flag changes ('-' command)"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_LESS
 | 
			
		||||
	help
 | 
			
		||||
	  This enables the ability to change command-line flags within
 | 
			
		||||
	  less itself ('-' keyboard command).
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
 | 
			
		||||
	bool "Enable dynamic switching of line numbers"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
 | 
			
		||||
	help
 | 
			
		||||
	  Enable "-N" command.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_HDPARM
 | 
			
		||||
	bool "hdparm"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -388,12 +414,11 @@ config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF
 | 
			
		||||
	  stuff, so you should probably say N.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA
 | 
			
		||||
	bool "Get/set using_dma flag (DANGEROUS)"
 | 
			
		||||
	bool "Get/set using_dma flag"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_HDPARM
 | 
			
		||||
	help
 | 
			
		||||
	  Enables the 'hdparm -d' option to get/set using_dma flag.
 | 
			
		||||
	  This is dangerous stuff, so you should probably say N.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_LOCK
 | 
			
		||||
	bool "lock"
 | 
			
		||||
@@ -535,6 +560,13 @@ config BUSYBOX_CONFIG_TIME
 | 
			
		||||
	  When the command finishes, time writes a message to standard output
 | 
			
		||||
	  giving timing statistics about this program run.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_TIMEOUT
 | 
			
		||||
	bool "timeout"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Runs a program and watches it. If it does not terminate in
 | 
			
		||||
	  specified number of seconds, it is sent a signal.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_TTYSIZE
 | 
			
		||||
	bool "ttysize"
 | 
			
		||||
	default n
 | 
			
		||||
 
 | 
			
		||||
@@ -5,20 +5,6 @@
 | 
			
		||||
 | 
			
		||||
menu "Linux Module Utilities"
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DEFAULT_MODULES_DIR
 | 
			
		||||
	string "Default directory containing modules"
 | 
			
		||||
	default "/lib/modules"
 | 
			
		||||
	help
 | 
			
		||||
	  Directory that contains kernel modules.
 | 
			
		||||
	  Defaults to "/lib/modules"
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DEFAULT_DEPMOD_FILE
 | 
			
		||||
	string "Default name of modules.dep"
 | 
			
		||||
	default "modules.dep"
 | 
			
		||||
	help
 | 
			
		||||
	  Filename that contains kernel modules dependencies.
 | 
			
		||||
	  Defaults to "modules.dep"
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	bool "Simplified modutils"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -58,7 +44,6 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
 | 
			
		||||
	depends on BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	help
 | 
			
		||||
	  Allow insmod and modprobe take module options from command line.
 | 
			
		||||
	  N.B. Very bloaty.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
 | 
			
		||||
	bool "Skip loading of already loaded modules"
 | 
			
		||||
@@ -66,7 +51,6 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
 | 
			
		||||
	depends on BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	help
 | 
			
		||||
	  Check if the module is already loaded.
 | 
			
		||||
	  N.B. It's racy.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_INSMOD
 | 
			
		||||
	bool "insmod"
 | 
			
		||||
@@ -157,7 +141,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS
 | 
			
		||||
	  By adding module symbols to the kernel symbol table, Oops messages
 | 
			
		||||
	  occuring within kernel modules can be properly debugged. By enabling
 | 
			
		||||
	  this feature, module symbols will always be added to the kernel symbol
 | 
			
		||||
	  table for properly debugging support. If you are not interested in
 | 
			
		||||
	  table for proper debugging support. If you are not interested in
 | 
			
		||||
	  Oops messages from kernel modules, say N.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM
 | 
			
		||||
@@ -193,7 +177,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE
 | 
			
		||||
	bool "Support tainted module checking with new kernels"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	depends on (BUSYBOX_CONFIG_LSMOD || BUSYBOX_CONFIG_FEATURE_2_4_MODULES) && !BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	help
 | 
			
		||||
	  Support checking for tainted modules. These are usually binary
 | 
			
		||||
	  only modules that will make the linux-kernel list ignore your
 | 
			
		||||
@@ -227,4 +211,20 @@ config BUSYBOX_CONFIG_FEATURE_MODUTILS_SYMBOLS
 | 
			
		||||
 | 
			
		||||
	  Say Y if unsure.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DEFAULT_MODULES_DIR
 | 
			
		||||
	string "Default directory containing modules"
 | 
			
		||||
	default "/lib/modules"
 | 
			
		||||
	depends on BUSYBOX_CONFIG_DEPMOD || BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	help
 | 
			
		||||
	  Directory that contains kernel modules.
 | 
			
		||||
	  Defaults to "/lib/modules"
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DEFAULT_DEPMOD_FILE
 | 
			
		||||
	string "Default name of modules.dep"
 | 
			
		||||
	default "modules.dep"
 | 
			
		||||
	depends on BUSYBOX_CONFIG_DEPMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_MODPROBE_SMALL
 | 
			
		||||
	help
 | 
			
		||||
	  Filename that contains kernel modules dependencies.
 | 
			
		||||
	  Defaults to "modules.dep"
 | 
			
		||||
 | 
			
		||||
endmenu
 | 
			
		||||
 
 | 
			
		||||
@@ -13,7 +13,7 @@ config BUSYBOX_CONFIG_FEATURE_IPV6
 | 
			
		||||
	  This adds IPv6 support in the networking applets.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_PREFER_IPV4_ADDRESS
 | 
			
		||||
	bool "Preferentially use IPv4 addresses from DNS queries"
 | 
			
		||||
	bool "Prefer IPv4 addresses from DNS queries"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FEATURE_IPV6
 | 
			
		||||
	help
 | 
			
		||||
@@ -66,12 +66,12 @@ config BUSYBOX_CONFIG_FEATURE_BRCTL_FANCY
 | 
			
		||||
	  This adds about 600 bytes.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_BRCTL_SHOW
 | 
			
		||||
	bool "Support show, showmac and showstp"
 | 
			
		||||
	bool "Support show"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_BRCTL && BUSYBOX_CONFIG_FEATURE_BRCTL_FANCY
 | 
			
		||||
	help
 | 
			
		||||
	  Add support for option which prints the current config:
 | 
			
		||||
	    showmacs, showstp, show
 | 
			
		||||
	    show
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_DNSD
 | 
			
		||||
	bool "dnsd"
 | 
			
		||||
@@ -93,6 +93,19 @@ config BUSYBOX_CONFIG_FAKEIDENTD
 | 
			
		||||
	  fakeidentd listens on the ident port and returns a predefined
 | 
			
		||||
	  fake value on any query.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FTPD
 | 
			
		||||
	bool "ftpd"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  simple FTP daemon. You have to run it via inetd.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_FTP_WRITE
 | 
			
		||||
	bool "Enable upload commands"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_FTPD
 | 
			
		||||
	help
 | 
			
		||||
	  Enable all kinds of FTP upload commands (-w option)
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FTPGET
 | 
			
		||||
	bool "ftpget"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -827,7 +840,7 @@ config BUSYBOX_CONFIG_FEATURE_TFTP_BLOCKSIZE
 | 
			
		||||
config BUSYBOX_CONFIG_TFTP_DEBUG
 | 
			
		||||
	bool "Enable debug"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_TFTP
 | 
			
		||||
	depends on BUSYBOX_CONFIG_TFTP || BUSYBOX_CONFIG_TFTPD
 | 
			
		||||
	help
 | 
			
		||||
	  Enable debug settings for tftp. This is useful if you're running
 | 
			
		||||
	  into problems with tftp as the protocol doesn't help you much when
 | 
			
		||||
@@ -844,7 +857,7 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_TRACEROUTE
 | 
			
		||||
	help
 | 
			
		||||
	  Add some verbosity to traceroute. This includes amongst other things
 | 
			
		||||
	  Add some verbosity to traceroute. This includes among other things
 | 
			
		||||
	  hostnames and ICMP response types.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE
 | 
			
		||||
@@ -860,10 +873,19 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_TRACEROUTE
 | 
			
		||||
	help
 | 
			
		||||
	  Add feature to allow for ICMP ECHO instead of UDP datagrams.
 | 
			
		||||
	  Add option -I to use ICMP ECHO instead of UDP datagrams.
 | 
			
		||||
 | 
			
		||||
source package/busybox/config/networking/udhcp/Config.in
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS
 | 
			
		||||
	string "ifup udhcpc command line options"
 | 
			
		||||
	default "-R -n"
 | 
			
		||||
	depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_APP_UDHCPC
 | 
			
		||||
	help
 | 
			
		||||
	  Command line options to pass to udhcpc from ifup.
 | 
			
		||||
	  Intended to alter options not available in /etc/network/interfaces.
 | 
			
		||||
	  (IE: --syslog --background etc...)
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_VCONFIG
 | 
			
		||||
	bool "vconfig"
 | 
			
		||||
	default y
 | 
			
		||||
@@ -917,6 +939,20 @@ config BUSYBOX_CONFIG_TCPSVD
 | 
			
		||||
	  tcpsvd listens on a TCP port and runs a program for each new
 | 
			
		||||
	  connection.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_TUNCTL
 | 
			
		||||
	bool "tunctl"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  tunctl creates or deletes tun devices.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_TUNCTL_UG
 | 
			
		||||
	bool "Support owner:group assignment"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_TUNCTL
 | 
			
		||||
	help
 | 
			
		||||
	  Allow to specify owner and group of newly created interface.
 | 
			
		||||
	  340 bytes of pure bloat. Say no here.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_UDPSVD
 | 
			
		||||
	bool "udpsvd"
 | 
			
		||||
	default n
 | 
			
		||||
 
 | 
			
		||||
@@ -84,22 +84,6 @@ config BUSYBOX_CONFIG_ASH_ALIAS
 | 
			
		||||
	help
 | 
			
		||||
	  Enable alias support in the ash shell.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ASH_MATH_SUPPORT
 | 
			
		||||
	bool "Posix math support"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ASH
 | 
			
		||||
	help
 | 
			
		||||
	  Enable math support in the ash shell.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64
 | 
			
		||||
	bool "Extend Posix math support to 64 bit"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ASH_MATH_SUPPORT
 | 
			
		||||
	help
 | 
			
		||||
	  Enable 64-bit math support in the ash shell. This will make
 | 
			
		||||
	  the shell slightly larger, but will allow computation with very
 | 
			
		||||
	  large numbers.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ASH_GETOPTS
 | 
			
		||||
	bool "Builtin getopt to parse positional parameters"
 | 
			
		||||
	default y
 | 
			
		||||
@@ -152,14 +136,14 @@ config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
 | 
			
		||||
	  Compile ash for reduced size at the price of speed.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
 | 
			
		||||
	bool "Pseudorandom generator and variable $RANDOM"
 | 
			
		||||
	bool "Pseudorandom generator and $RANDOM variable"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ASH
 | 
			
		||||
	help
 | 
			
		||||
	  Enable pseudorandom generator and dynamic variable "$RANDOM".
 | 
			
		||||
	  Each read of "$RANDOM" will generate a new pseudorandom value.
 | 
			
		||||
	  You can reset the generator by using a specified start value.
 | 
			
		||||
	  After "unset RANDOM" then generator will switch off and this
 | 
			
		||||
	  After "unset RANDOM" the generator will switch off and this
 | 
			
		||||
	  variable will no longer have special treatment.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
 | 
			
		||||
@@ -167,7 +151,7 @@ config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ASH
 | 
			
		||||
	help
 | 
			
		||||
	  "PS#" may be contain volatile content, such as backquote commands.
 | 
			
		||||
	  "PS#" may contain volatile content, such as backquote commands.
 | 
			
		||||
	  This option recreates the prompt string from the environment
 | 
			
		||||
	  variable each time it is displayed.
 | 
			
		||||
 | 
			
		||||
@@ -175,16 +159,15 @@ config BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	bool "hush"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  hush is a very small shell (just 18k) and it has fairly complete
 | 
			
		||||
	  Bourne shell grammar. It even handles all the normal flow control
 | 
			
		||||
	  options such as if/then/elif/else/fi, for/in/do/done, while loops,
 | 
			
		||||
	  case/esac.
 | 
			
		||||
	  hush is a small shell (22k). It handles the normal flow control
 | 
			
		||||
	  constructs such as if/then/elif/else/fi, for/in/do/done, while loops,
 | 
			
		||||
	  case/esac. Redirections, here documents, $((arithmetic))
 | 
			
		||||
	  and functions are supported.
 | 
			
		||||
 | 
			
		||||
	  It uses only vfork, so it can be used on uClinux systems.
 | 
			
		||||
	  It will compile and work on no-mmu systems.
 | 
			
		||||
 | 
			
		||||
	  It does not handle select, functions, here documents ( <<
 | 
			
		||||
	  word ), arithmetic expansion, aliases, brace expansion, tilde
 | 
			
		||||
	  expansion, &> and >& redirection of stdout+stderr, etc.
 | 
			
		||||
	  It does not handle select, aliases, brace expansion,
 | 
			
		||||
	  tilde expansion, &>file and >&file redirection of stdout+stderr.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_HUSH_HELP
 | 
			
		||||
	bool "help builtin"
 | 
			
		||||
@@ -234,7 +217,6 @@ config BUSYBOX_CONFIG_HUSH_LOOPS
 | 
			
		||||
	depends on BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	help
 | 
			
		||||
	  Enable for, while and until loops in hush.
 | 
			
		||||
	  As of 2008-07, break and continue statements are not supported.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_HUSH_CASE
 | 
			
		||||
	bool "Support case ... esac statement"
 | 
			
		||||
@@ -243,27 +225,54 @@ config BUSYBOX_CONFIG_HUSH_CASE
 | 
			
		||||
	help
 | 
			
		||||
	  Enable case ... esac statement in hush. +400 bytes.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_HUSH_FUNCTIONS
 | 
			
		||||
	bool "Support funcname() { commands; } syntax"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	help
 | 
			
		||||
	  Enable support for shell functions in hush. +800 bytes.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_LASH
 | 
			
		||||
	bool "lash"
 | 
			
		||||
	bool "lash (deprecated: aliased to hush)"
 | 
			
		||||
	default n
 | 
			
		||||
	select BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	help
 | 
			
		||||
	  lash is deprecated and will be removed, please migrate to hush.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_MSH
 | 
			
		||||
	bool "msh"
 | 
			
		||||
	bool "msh (deprecated: please use hush)"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  The minix shell (adds just 30k) is quite complete and handles things
 | 
			
		||||
	  like for/do/done, case/esac and all the things you expect a Bourne
 | 
			
		||||
	  shell to do. It is not always pedantically correct about Bourne
 | 
			
		||||
	  shell grammar (try running the shell testscript "tests/sh.testcases"
 | 
			
		||||
	  on it and compare vs bash) but for most things it works quite well.
 | 
			
		||||
	  It uses only vfork, so it can be used on uClinux systems.
 | 
			
		||||
	  msh is deprecated and will be removed, please migrate to hush.
 | 
			
		||||
	  If there is a feature msh has but hush does not, please let us know.
 | 
			
		||||
 | 
			
		||||
#	  The minix shell (adds just 30k) is quite complete and handles things
 | 
			
		||||
#	  like for/do/done, case/esac and all the things you expect a Bourne
 | 
			
		||||
#	  shell to do. It is not always pedantically correct about Bourne
 | 
			
		||||
#	  shell grammar (try running the shell testscript "tests/sh.testcases"
 | 
			
		||||
#	  on it and compare vs bash) but for most things it works quite well.
 | 
			
		||||
#	  It uses only vfork, so it can be used on uClinux systems.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
comment "Bourne Shell Options"
 | 
			
		||||
	depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SH_MATH_SUPPORT
 | 
			
		||||
	bool "POSIX math support"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH
 | 
			
		||||
	help
 | 
			
		||||
	  Enable math support in the shell via $((...)) syntax.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_SH_MATH_SUPPORT_64
 | 
			
		||||
	bool "Extend POSIX math support to 64 bit"
 | 
			
		||||
	default y
 | 
			
		||||
	depends on BUSYBOX_CONFIG_SH_MATH_SUPPORT
 | 
			
		||||
	help
 | 
			
		||||
	  Enable 64-bit math support in the shell. This will make the shell
 | 
			
		||||
	  slightly larger, but will allow computation with very large numbers.
 | 
			
		||||
	  This is not in POSIX, so do not rely on this in portable code.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET
 | 
			
		||||
	bool "Hide message on interactive shell startup"
 | 
			
		||||
	default n
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,28 @@
 | 
			
		||||
 | 
			
		||||
menu "Linux System Utilities"
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_ACPID
 | 
			
		||||
	bool "acpid"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  acpid listens to ACPI events coming either in textual form from
 | 
			
		||||
	  /proc/acpi/event (though it is marked deprecated it is still widely
 | 
			
		||||
	  used and _is_ a standard) or in binary form from specified evdevs
 | 
			
		||||
	  (just use /dev/input/event*).
 | 
			
		||||
 | 
			
		||||
	  It parses the event to retrieve ACTION and a possible PARAMETER.
 | 
			
		||||
	  It then spawns /etc/acpi/<ACTION>[/<PARAMETER>] either via run-parts
 | 
			
		||||
	  (if the resulting path is a directory) or directly as an executable.
 | 
			
		||||
 | 
			
		||||
	  N.B. acpid relies on run-parts so have the latter installed.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_FEATURE_ACPID_COMPAT
 | 
			
		||||
	bool "Accept and ignore redundant options"
 | 
			
		||||
	default n
 | 
			
		||||
	depends on BUSYBOX_CONFIG_ACPID
 | 
			
		||||
	help
 | 
			
		||||
	  Accept and ignore compatibility options -g -m -s -S -v.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_BLKID
 | 
			
		||||
	bool "blkid"
 | 
			
		||||
	default n
 | 
			
		||||
@@ -211,6 +233,12 @@ config BUSYBOX_CONFIG_FEATURE_MINIX2
 | 
			
		||||
	  this. If you enabled 'mkfs_minix' then you almost certainly want to
 | 
			
		||||
	  be using the version 2 filesystem support.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_MKFS_VFAT
 | 
			
		||||
	bool "mkfs_vfat"
 | 
			
		||||
	default n
 | 
			
		||||
	help
 | 
			
		||||
	  Utility to create FAT32 filesystems.
 | 
			
		||||
 | 
			
		||||
config BUSYBOX_CONFIG_GETOPT
 | 
			
		||||
	bool "getopt"
 | 
			
		||||
	default n
 | 
			
		||||
 
 | 
			
		||||
@@ -1,20 +1,15 @@
 | 
			
		||||
--- a/init/init.c
 | 
			
		||||
+++ b/init/init.c
 | 
			
		||||
@@ -497,12 +497,11 @@ static void run_actions(int action_type)
 | 
			
		||||
 	for (a = init_action_list; a; a = tmp) {
 | 
			
		||||
 		tmp = a->next;
 | 
			
		||||
 		if (a->action_type & action_type) {
 | 
			
		||||
-			// Pointless: run() will error out if open of device fails.
 | 
			
		||||
-			///* a->terminal of "" means "init's console" */
 | 
			
		||||
-			//if (a->terminal[0] && access(a->terminal, R_OK | W_OK)) {
 | 
			
		||||
-			//	//message(L_LOG | L_CONSOLE, "Device %s cannot be opened in RW mode", a->terminal /*, strerror(errno)*/);
 | 
			
		||||
-			//	delete_init_action(a);
 | 
			
		||||
-			//} else
 | 
			
		||||
+			/* a->terminal of "" means "init's console" */
 | 
			
		||||
+			if (a->terminal[0] && access(a->terminal, R_OK | W_OK)) {
 | 
			
		||||
+				//message(L_LOG | L_CONSOLE, "Device %s cannot be opened in RW mode", a->terminal /*, strerror(errno)*/);
 | 
			
		||||
+				delete_init_action(a);
 | 
			
		||||
+			} else
 | 
			
		||||
 			if (a->action_type & (SYSINIT | WAIT | CTRLALTDEL | SHUTDOWN | RESTART)) {
 | 
			
		||||
 				waitfor(run(a));
 | 
			
		||||
 				delete_init_action(a);
 | 
			
		||||
@@ -451,8 +451,11 @@ static void run_actions(int action_type)
 | 
			
		||||
 			/* Only run stuff with pid == 0. If pid != 0,
 | 
			
		||||
 			 * it is already running
 | 
			
		||||
 			 */
 | 
			
		||||
-			if (a->pid == 0)
 | 
			
		||||
+			if (a->pid == 0) {
 | 
			
		||||
+				if (a->terminal && access(a->terminal, R_OK | W_OK))
 | 
			
		||||
+					continue;
 | 
			
		||||
 				a->pid = run(a);
 | 
			
		||||
+			}
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/brctl.c
 | 
			
		||||
+++ b/networking/brctl.c
 | 
			
		||||
@@ -90,7 +90,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -104,7 +104,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 		"setageing\0" "setfd\0" "sethello\0" "setmaxage\0"
 | 
			
		||||
 		"setpathcost\0" "setportprio\0" "setbridgeprio\0"
 | 
			
		||||
 	)
 | 
			
		||||
@@ -9,7 +9,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	enum { ARG_addbr = 0, ARG_delbr, ARG_addif, ARG_delif
 | 
			
		||||
 		USE_FEATURE_BRCTL_FANCY(,
 | 
			
		||||
@@ -98,7 +98,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -112,7 +112,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 		   ARG_setageing, ARG_setfd, ARG_sethello, ARG_setmaxage,
 | 
			
		||||
 		   ARG_setpathcost, ARG_setportprio, ARG_setbridgeprio
 | 
			
		||||
 		)
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,11 @@
 | 
			
		||||
--- a/networking/wget.c
 | 
			
		||||
+++ b/networking/wget.c
 | 
			
		||||
@@ -443,7 +443,7 @@ int wget_main(int argc UNUSED_PARAM, cha
 | 
			
		||||
@@ -485,7 +485,7 @@ int wget_main(int argc UNUSED_PARAM, cha
 | 
			
		||||
 		// "tries\0"            Required_argument "t"
 | 
			
		||||
 		// "timeout\0"          Required_argument "T"
 | 
			
		||||
 		/* Ignored (we always use PASV): */
 | 
			
		||||
-		"passive-ftp\0"      No_argument       "\xff"
 | 
			
		||||
+		"passive-ftp\0"      No_argument       "\xfd"
 | 
			
		||||
 		"header\0"           Required_argument "\xfe"
 | 
			
		||||
 		"post-data\0"        Required_argument "\xfd"
 | 
			
		||||
 		;
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@@ -3,20 +3,20 @@
 | 
			
		||||
@@ -24,7 +24,7 @@
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 #ifndef CRONTABS
 | 
			
		||||
-#define CRONTABS        "/var/spool/cron/crontabs"
 | 
			
		||||
 #define TMPDIR          CONFIG_FEATURE_CROND_DIR
 | 
			
		||||
-#define CRONTABS        CONFIG_FEATURE_CROND_DIR "/crontabs"
 | 
			
		||||
+#define CRONTABS        "/etc/crontabs"
 | 
			
		||||
 #ifndef SENDMAIL
 | 
			
		||||
 #define SENDMAIL        "sendmail"
 | 
			
		||||
 #endif
 | 
			
		||||
 #ifndef TMPDIR
 | 
			
		||||
 #define TMPDIR          "/var/spool/cron"
 | 
			
		||||
--- a/miscutils/crontab.c
 | 
			
		||||
+++ b/miscutils/crontab.c
 | 
			
		||||
@@ -13,7 +13,7 @@
 | 
			
		||||
@@ -12,7 +12,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #include "libbb.h"
 | 
			
		||||
 
 | 
			
		||||
 #ifndef CRONTABS
 | 
			
		||||
-#define CRONTABS        "/var/spool/cron/crontabs"
 | 
			
		||||
-#define CRONTABS        CONFIG_FEATURE_CROND_DIR "/crontabs"
 | 
			
		||||
+#define CRONTABS        "/etc/crontabs"
 | 
			
		||||
 #endif
 | 
			
		||||
 #ifndef CRONUPDATE
 | 
			
		||||
 #define CRONUPDATE      "cron.update"
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/udhcp/dhcpc.c
 | 
			
		||||
+++ b/networking/udhcp/dhcpc.c
 | 
			
		||||
@@ -353,7 +353,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
@@ -363,7 +363,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
 
 | 
			
		||||
 			switch (state) {
 | 
			
		||||
 			case INIT_SELECTING:
 | 
			
		||||
@@ -9,7 +9,7 @@
 | 
			
		||||
 					if (packet_num == 0)
 | 
			
		||||
 						xid = random_xid();
 | 
			
		||||
 
 | 
			
		||||
@@ -384,7 +384,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
@@ -394,7 +394,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
 				continue;
 | 
			
		||||
 			case RENEW_REQUESTED:
 | 
			
		||||
 			case REQUESTING:
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/udhcp/packet.c
 | 
			
		||||
+++ b/networking/udhcp/packet.c
 | 
			
		||||
@@ -114,6 +114,10 @@ uint16_t FAST_FUNC udhcp_checksum(void *
 | 
			
		||||
@@ -120,6 +120,10 @@ uint16_t FAST_FUNC udhcp_checksum(void *
 | 
			
		||||
 	return ~sum;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@
 | 
			
		||||
 
 | 
			
		||||
 /* Construct a ip/udp header for a packet, send packet */
 | 
			
		||||
 int FAST_FUNC udhcp_send_raw_packet(struct dhcpMessage *payload,
 | 
			
		||||
@@ -126,11 +130,7 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
@@ -132,11 +136,7 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
 	int fd;
 | 
			
		||||
 	int result = -1;
 | 
			
		||||
 	const char *msg;
 | 
			
		||||
@@ -24,7 +24,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	fd = socket(PF_PACKET, SOCK_DGRAM, htons(ETH_P_IP));
 | 
			
		||||
 	if (fd < 0) {
 | 
			
		||||
@@ -140,7 +140,7 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
@@ -146,7 +146,7 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
 
 | 
			
		||||
 	memset(&dest, 0, sizeof(dest));
 | 
			
		||||
 	memset(&packet, 0, sizeof(packet));
 | 
			
		||||
@@ -33,7 +33,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	dest.sll_family = AF_PACKET;
 | 
			
		||||
 	dest.sll_protocol = htons(ETH_P_IP);
 | 
			
		||||
@@ -157,23 +157,18 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
@@ -163,23 +163,18 @@ int FAST_FUNC udhcp_send_raw_packet(stru
 | 
			
		||||
 	packet.ip.daddr = dest_ip;
 | 
			
		||||
 	packet.udp.source = htons(source_port);
 | 
			
		||||
 	packet.udp.dest = htons(dest_port);
 | 
			
		||||
@@ -63,7 +63,7 @@
 | 
			
		||||
 				(struct sockaddr *) &dest, sizeof(dest));
 | 
			
		||||
 	msg = "sendto";
 | 
			
		||||
  ret_close:
 | 
			
		||||
@@ -225,8 +220,7 @@ int FAST_FUNC udhcp_send_kernel_packet(s
 | 
			
		||||
@@ -231,8 +226,7 @@ int FAST_FUNC udhcp_send_kernel_packet(s
 | 
			
		||||
 		goto ret_close;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
--- a/networking/udhcp/dhcpc.c
 | 
			
		||||
+++ b/networking/udhcp/dhcpc.c
 | 
			
		||||
@@ -320,6 +320,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
 	for (;;) {
 | 
			
		||||
 		unsigned timestamp_before_wait;
 | 
			
		||||
@@ -327,6 +327,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
			
		||||
 		/* silence "uninitialized!" warning */
 | 
			
		||||
 		unsigned timestamp_before_wait = timestamp_before_wait;
 | 
			
		||||
 
 | 
			
		||||
+		/* When running on a bridge, the ifindex may have changed (e.g. if
 | 
			
		||||
+		 * member interfaces were added/removed or if the status of the
 | 
			
		||||
@@ -10,6 +10,6 @@
 | 
			
		||||
+		 * Workaround: refresh it here before processing the next packet */
 | 
			
		||||
+		udhcp_read_interface(client_config.interface, &client_config.ifindex, NULL, client_config.arp);
 | 
			
		||||
+
 | 
			
		||||
 		if (listen_mode != LISTEN_NONE && sockfd < 0) {
 | 
			
		||||
 			if (listen_mode == LISTEN_KERNEL)
 | 
			
		||||
 				sockfd = udhcp_listen_socket(/*INADDR_ANY,*/ CLIENT_PORT, client_config.interface);
 | 
			
		||||
 		//bb_error_msg("sockfd:%d, listen_mode:%d", sockfd, listen_mode);
 | 
			
		||||
 
 | 
			
		||||
 		/* Was opening raw or udp socket here
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/udhcp/options.c
 | 
			
		||||
+++ b/networking/udhcp/options.c
 | 
			
		||||
@@ -46,6 +46,7 @@ const struct dhcp_option dhcp_options[] 
 | 
			
		||||
@@ -48,6 +48,7 @@ const struct dhcp_option dhcp_options[] 
 | 
			
		||||
 #if ENABLE_FEATURE_UDHCP_RFC3397
 | 
			
		||||
 	{ OPTION_STR1035 | OPTION_LIST            , 0x77 }, /* search             */
 | 
			
		||||
 #endif
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
 	/* MSIE's "Web Proxy Autodiscovery Protocol" support */
 | 
			
		||||
 	{ OPTION_STRING                           , 0xfc }, /* wpad               */
 | 
			
		||||
 
 | 
			
		||||
@@ -95,6 +96,7 @@ const char dhcp_option_strings[] ALIGN1 
 | 
			
		||||
@@ -97,6 +98,7 @@ const char dhcp_option_strings[] ALIGN1 
 | 
			
		||||
 #if ENABLE_FEATURE_UDHCP_RFC3397
 | 
			
		||||
 	"search" "\0"
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/shell/ash.c
 | 
			
		||||
+++ b/shell/ash.c
 | 
			
		||||
@@ -12159,8 +12159,17 @@ exportcmd(int argc UNUSED_PARAM, char **
 | 
			
		||||
@@ -12273,8 +12273,17 @@ exportcmd(int argc UNUSED_PARAM, char **
 | 
			
		||||
 	const char *p;
 | 
			
		||||
 	char **aptr;
 | 
			
		||||
 	int flag = argv[0][0] == 'r' ? VREADONLY : VEXPORT;
 | 
			
		||||
@@ -19,7 +19,7 @@
 | 
			
		||||
 		aptr = argptr;
 | 
			
		||||
 		name = *aptr;
 | 
			
		||||
 		if (name) {
 | 
			
		||||
@@ -12172,10 +12181,12 @@ exportcmd(int argc UNUSED_PARAM, char **
 | 
			
		||||
@@ -12286,10 +12295,12 @@ exportcmd(int argc UNUSED_PARAM, char **
 | 
			
		||||
 					vp = *findvar(hashvar(name), name);
 | 
			
		||||
 					if (vp) {
 | 
			
		||||
 						vp->flags |= flag;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/applets.h
 | 
			
		||||
+++ b/include/applets.h
 | 
			
		||||
@@ -263,6 +263,7 @@ USE_MT(APPLET(mt, _BB_DIR_BIN, _BB_SUID_
 | 
			
		||||
@@ -271,6 +271,7 @@ USE_MT(APPLET(mt, _BB_DIR_BIN, _BB_SUID_
 | 
			
		||||
 USE_MV(APPLET(mv, _BB_DIR_BIN, _BB_SUID_NEVER))
 | 
			
		||||
 USE_NAMEIF(APPLET(nameif, _BB_DIR_SBIN, _BB_SUID_NEVER))
 | 
			
		||||
 USE_NC(APPLET(nc, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
 USE_NMETER(APPLET(nmeter, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
 | 
			
		||||
--- a/include/usage.h
 | 
			
		||||
+++ b/include/usage.h
 | 
			
		||||
@@ -2849,6 +2849,9 @@
 | 
			
		||||
@@ -3010,6 +3010,9 @@
 | 
			
		||||
 
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@@ -22,7 +22,7 @@
 | 
			
		||||
 #define netstat_full_usage "\n\n" \
 | 
			
		||||
--- a/networking/Config.in
 | 
			
		||||
+++ b/networking/Config.in
 | 
			
		||||
@@ -603,6 +603,12 @@ config NC
 | 
			
		||||
@@ -600,6 +600,12 @@ config NC
 | 
			
		||||
 	  A simple Unix utility which reads and writes data across network
 | 
			
		||||
 	  connections.
 | 
			
		||||
 
 | 
			
		||||
@@ -37,7 +37,7 @@
 | 
			
		||||
 	default n
 | 
			
		||||
--- a/networking/Kbuild
 | 
			
		||||
+++ b/networking/Kbuild
 | 
			
		||||
@@ -23,6 +23,7 @@ lib-$(CONFIG_IP)           += ip.o
 | 
			
		||||
@@ -24,6 +24,7 @@ lib-$(CONFIG_IP)           += ip.o
 | 
			
		||||
 lib-$(CONFIG_IPCALC)       += ipcalc.o
 | 
			
		||||
 lib-$(CONFIG_NAMEIF)       += nameif.o
 | 
			
		||||
 lib-$(CONFIG_NC)           += nc.o
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,7 @@
 | 
			
		||||
 | 
			
		||||
--- a/networking/httpd.c
 | 
			
		||||
+++ b/networking/httpd.c
 | 
			
		||||
@@ -1713,21 +1713,32 @@ static int check_user_passwd(const char 
 | 
			
		||||
@@ -1699,21 +1699,32 @@ static int check_user_passwd(const char 
 | 
			
		||||
 
 | 
			
		||||
 		if (ENABLE_FEATURE_HTTPD_AUTH_MD5) {
 | 
			
		||||
 			char *md5_passwd;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/applets.h
 | 
			
		||||
+++ b/include/applets.h
 | 
			
		||||
@@ -223,6 +223,7 @@ USE_LN(APPLET_NOEXEC(ln, ln, _BB_DIR_BIN
 | 
			
		||||
@@ -228,6 +228,7 @@ USE_LN(APPLET_NOEXEC(ln, ln, _BB_DIR_BIN
 | 
			
		||||
 USE_LOAD_POLICY(APPLET(load_policy, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
 | 
			
		||||
 USE_LOADFONT(APPLET(loadfont, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
 | 
			
		||||
 USE_LOADKMAP(APPLET(loadkmap, _BB_DIR_SBIN, _BB_SUID_NEVER))
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
 USE_LOGNAME(APPLET_NOFORK(logname, logname, _BB_DIR_USR_BIN, _BB_SUID_NEVER, logname))
 | 
			
		||||
--- a/include/usage.h
 | 
			
		||||
+++ b/include/usage.h
 | 
			
		||||
@@ -2150,6 +2150,9 @@
 | 
			
		||||
@@ -2246,6 +2246,9 @@
 | 
			
		||||
 #define loadkmap_example_usage \
 | 
			
		||||
        "$ loadkmap < /etc/i18n/lang-keymap\n"
 | 
			
		||||
 
 | 
			
		||||
@@ -22,9 +22,9 @@
 | 
			
		||||
 #define logger_full_usage "\n\n" \
 | 
			
		||||
--- a/miscutils/Config.in
 | 
			
		||||
+++ b/miscutils/Config.in
 | 
			
		||||
@@ -395,6 +395,12 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA
 | 
			
		||||
@@ -420,6 +420,12 @@ config FEATURE_HDPARM_HDIO_GETSET_DMA
 | 
			
		||||
 	help
 | 
			
		||||
 	  Enables the 'hdparm -d' option to get/set using_dma flag.
 | 
			
		||||
 	  This is dangerous stuff, so you should probably say N.
 | 
			
		||||
 
 | 
			
		||||
+config LOCK
 | 
			
		||||
+	bool "lock"
 | 
			
		||||
@@ -37,7 +37,7 @@
 | 
			
		||||
 	default n
 | 
			
		||||
--- a/miscutils/Kbuild
 | 
			
		||||
+++ b/miscutils/Kbuild
 | 
			
		||||
@@ -21,6 +21,7 @@ lib-$(CONFIG_INOTIFYD)    += inotifyd.o
 | 
			
		||||
@@ -23,6 +23,7 @@ lib-$(CONFIG_INOTIFYD)    += inotifyd.o
 | 
			
		||||
 lib-$(CONFIG_FEATURE_LAST_SMALL)+= last.o
 | 
			
		||||
 lib-$(CONFIG_FEATURE_LAST_FANCY)+= last_fancy.o
 | 
			
		||||
 lib-$(CONFIG_LESS)        += less.o
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/usage.h
 | 
			
		||||
+++ b/include/usage.h
 | 
			
		||||
@@ -1558,7 +1558,8 @@
 | 
			
		||||
@@ -1638,7 +1638,8 @@
 | 
			
		||||
 	USE_FEATURE_HTTPD_BASIC_AUTH(" [-r realm]") \
 | 
			
		||||
 	USE_FEATURE_HTTPD_AUTH_MD5(" [-m pass]") \
 | 
			
		||||
        " [-h home]" \
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
 #define httpd_full_usage "\n\n" \
 | 
			
		||||
        "Listen for incoming HTTP requests\n" \
 | 
			
		||||
      "\nOptions:" \
 | 
			
		||||
@@ -1576,6 +1577,8 @@
 | 
			
		||||
@@ -1656,6 +1657,8 @@
 | 
			
		||||
      "\n	-h HOME		Home directory (default .)" \
 | 
			
		||||
      "\n	-e STRING	HTML encode STRING" \
 | 
			
		||||
      "\n	-d STRING	URL decode STRING" \
 | 
			
		||||
@@ -30,7 +30,7 @@
 | 
			
		||||
 	Htaccess_IP *ip_a_d;    /* config allow/deny lines */
 | 
			
		||||
 
 | 
			
		||||
 	USE_FEATURE_HTTPD_BASIC_AUTH(const char *g_realm;)
 | 
			
		||||
@@ -295,6 +297,8 @@ struct globals {
 | 
			
		||||
@@ -294,6 +296,8 @@ struct globals {
 | 
			
		||||
 #define index_page        (G.index_page       )
 | 
			
		||||
 #define found_mime_type   (G.found_mime_type  )
 | 
			
		||||
 #define found_moved_temporarily (G.found_moved_temporarily)
 | 
			
		||||
@@ -39,7 +39,7 @@
 | 
			
		||||
 #define last_mod          (G.last_mod         )
 | 
			
		||||
 #define ip_a_d            (G.ip_a_d           )
 | 
			
		||||
 #define g_realm           (G.g_realm          )
 | 
			
		||||
@@ -1003,8 +1007,11 @@ static void send_headers(int responseNum
 | 
			
		||||
@@ -993,8 +997,11 @@ static void send_headers(int responseNum
 | 
			
		||||
 	}
 | 
			
		||||
 #endif
 | 
			
		||||
 	if (responseNum == HTTP_MOVED_TEMPORARILY) {
 | 
			
		||||
@@ -52,7 +52,7 @@
 | 
			
		||||
 				(g_query ? "?" : ""),
 | 
			
		||||
 				(g_query ? g_query : ""));
 | 
			
		||||
 	}
 | 
			
		||||
@@ -1939,8 +1946,12 @@ static void handle_incoming_and_exit(con
 | 
			
		||||
@@ -1924,8 +1931,12 @@ static void handle_incoming_and_exit(con
 | 
			
		||||
 	} while (*++tptr);
 | 
			
		||||
 	*++urlp = '\0';       /* terminate after last character */
 | 
			
		||||
 
 | 
			
		||||
@@ -66,8 +66,8 @@
 | 
			
		||||
 		if (is_directory(urlcopy + 1, 1, &sb)) {
 | 
			
		||||
 			found_moved_temporarily = urlcopy;
 | 
			
		||||
 		}
 | 
			
		||||
@@ -2293,7 +2304,9 @@ static void sighup_handler(int sig)
 | 
			
		||||
 #endif
 | 
			
		||||
@@ -2266,7 +2277,9 @@ static void sighup_handler(int sig UNUSE
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 enum {
 | 
			
		||||
-	c_opt_config_file = 0,
 | 
			
		||||
@@ -77,7 +77,7 @@
 | 
			
		||||
 	d_opt_decode_url,
 | 
			
		||||
 	h_opt_home_httpd,
 | 
			
		||||
 	USE_FEATURE_HTTPD_ENCODE_URL_STR(e_opt_encode_url,)
 | 
			
		||||
@@ -2342,12 +2355,13 @@ int httpd_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -2315,12 +2328,13 @@ int httpd_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 	/* We do not "absolutize" path given by -h (home) opt.
 | 
			
		||||
 	 * If user gives relative path in -h,
 | 
			
		||||
 	 * $SCRIPT_FILENAME will not be set. */
 | 
			
		||||
@@ -89,6 +89,6 @@
 | 
			
		||||
 			USE_FEATURE_HTTPD_SETUID("u:")
 | 
			
		||||
 			"p:ifv",
 | 
			
		||||
+			&redirect_path, &redirect_host,
 | 
			
		||||
 			&configFile, &url_for_decode, &home_httpd
 | 
			
		||||
 			&opt_c_configFile, &url_for_decode, &home_httpd
 | 
			
		||||
 			USE_FEATURE_HTTPD_ENCODE_URL_STR(, &url_for_encode)
 | 
			
		||||
 			USE_FEATURE_HTTPD_BASIC_AUTH(, &g_realm)
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/httpd.c
 | 
			
		||||
+++ b/networking/httpd.c
 | 
			
		||||
@@ -1259,10 +1259,10 @@ static NOINLINE void cgi_io_loop_and_exi
 | 
			
		||||
@@ -1250,10 +1250,10 @@ static NOINLINE void cgi_io_loop_and_exi
 | 
			
		||||
 						if (full_write(STDOUT_FILENO, HTTP_200, sizeof(HTTP_200)-1) != sizeof(HTTP_200)-1)
 | 
			
		||||
 							break;
 | 
			
		||||
 					}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/httpd.c
 | 
			
		||||
+++ b/networking/httpd.c
 | 
			
		||||
@@ -1824,6 +1824,7 @@ static void handle_incoming_and_exit(con
 | 
			
		||||
@@ -1810,6 +1810,7 @@ static void handle_incoming_and_exit(con
 | 
			
		||||
 	char *header_ptr = header_ptr;
 | 
			
		||||
 	Htaccess_Proxy *proxy_entry;
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@@ -100,7 +100,7 @@
 | 
			
		||||
 
 | 
			
		||||
 int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 | 
			
		||||
 int insmod_main(int argc UNUSED_PARAM, char **argv)
 | 
			
		||||
@@ -25,9 +118,14 @@ int insmod_main(int argc UNUSED_PARAM, c
 | 
			
		||||
@@ -33,9 +126,15 @@ int insmod_main(int argc UNUSED_PARAM, c
 | 
			
		||||
 	if (!filename)
 | 
			
		||||
 		bb_show_usage();
 | 
			
		||||
 
 | 
			
		||||
@@ -111,9 +111,20 @@
 | 
			
		||||
+
 | 
			
		||||
+	rc = bb_init_module(g_filename, parse_cmdline_module_options(argv));
 | 
			
		||||
 	if (rc)
 | 
			
		||||
 		bb_error_msg("cannot insert '%s': %s", filename, moderror(rc));
 | 
			
		||||
-
 | 
			
		||||
 		bb_error_msg("can't insert '%s': %s", filename, moderror(rc));
 | 
			
		||||
+	free (g_filename);
 | 
			
		||||
 
 | 
			
		||||
+done:
 | 
			
		||||
 	return rc;
 | 
			
		||||
 }
 | 
			
		||||
--- a/modutils/Config.in
 | 
			
		||||
+++ b/modutils/Config.in
 | 
			
		||||
@@ -211,7 +211,7 @@ config FEATURE_MODUTILS_SYMBOLS
 | 
			
		||||
 config DEFAULT_MODULES_DIR
 | 
			
		||||
 	string "Default directory containing modules"
 | 
			
		||||
 	default "/lib/modules"
 | 
			
		||||
-	depends on DEPMOD || MODPROBE || MODPROBE_SMALL
 | 
			
		||||
+	depends on DEPMOD || INSMOD || MODPROBE || MODPROBE_SMALL
 | 
			
		||||
 	help
 | 
			
		||||
 	  Directory that contains kernel modules.
 | 
			
		||||
 	  Defaults to "/lib/modules"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
--- a/util-linux/mount.c
 | 
			
		||||
+++ b/util-linux/mount.c
 | 
			
		||||
@@ -42,6 +42,10 @@
 | 
			
		||||
 #define MS_DIRSYNC      128     /* Directory modifications are synchronous */
 | 
			
		||||
 #define MS_DIRSYNC      128     // Directory modifications are synchronous
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
+#ifndef MS_UNION
 | 
			
		||||
@@ -10,8 +10,8 @@
 | 
			
		||||
+
 | 
			
		||||
 
 | 
			
		||||
 #if defined(__dietlibc__)
 | 
			
		||||
 /* 16.12.2006, Sampo Kellomaki (sampo@iki.fi)
 | 
			
		||||
@@ -152,6 +156,7 @@
 | 
			
		||||
 // 16.12.2006, Sampo Kellomaki (sampo@iki.fi)
 | 
			
		||||
@@ -152,6 +156,7 @@ static const int32_t mount_options[] = {
 | 
			
		||||
 		/* "rslave"      */ MS_SLAVE|MS_RECURSIVE,
 | 
			
		||||
 		/* "rprivate"    */ MS_SLAVE|MS_RECURSIVE,
 | 
			
		||||
 		/* "runbindable" */ MS_UNBINDABLE|MS_RECURSIVE,
 | 
			
		||||
@@ -19,10 +19,10 @@
 | 
			
		||||
 	)
 | 
			
		||||
 
 | 
			
		||||
 	// Always understood.
 | 
			
		||||
@@ -206,6 +211,7 @@
 | 
			
		||||
 		"rslave" "\0"
 | 
			
		||||
 		"rprivate" "\0"
 | 
			
		||||
 		"runbindable" "\0"
 | 
			
		||||
@@ -206,6 +211,7 @@ static const char mount_option_str[] =
 | 
			
		||||
 		"rslave\0"
 | 
			
		||||
 		"rprivate\0"
 | 
			
		||||
 		"runbindable\0"
 | 
			
		||||
+		"union" "\0"
 | 
			
		||||
 	)
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@
 | 
			
		||||
 } func;
 | 
			
		||||
 
 | 
			
		||||
 /* I/O stream */
 | 
			
		||||
@@ -1423,7 +1428,8 @@ static void parse_program(char *p)
 | 
			
		||||
@@ -1420,7 +1425,8 @@ static void parse_program(char *p)
 | 
			
		||||
 			next_token(TC_FUNCTION);
 | 
			
		||||
 			g_pos++;
 | 
			
		||||
 			f = newfunc(t_string);
 | 
			
		||||
@@ -25,7 +25,7 @@
 | 
			
		||||
 			f->nargs = 0;
 | 
			
		||||
 			while (next_token(TC_VARIABLE | TC_SEQTERM) & TC_VARIABLE) {
 | 
			
		||||
 				v = findvar(ahash, t_string);
 | 
			
		||||
@@ -1432,7 +1438,7 @@ static void parse_program(char *p)
 | 
			
		||||
@@ -1429,7 +1435,7 @@ static void parse_program(char *p)
 | 
			
		||||
 				if (next_token(TC_COMMA | TC_SEQTERM) & TC_SEQTERM)
 | 
			
		||||
 					break;
 | 
			
		||||
 			}
 | 
			
		||||
@@ -34,7 +34,7 @@
 | 
			
		||||
 			chain_group();
 | 
			
		||||
 			clear_array(ahash);
 | 
			
		||||
 
 | 
			
		||||
@@ -2397,7 +2403,8 @@ static var *evaluate(node *op, var *res)
 | 
			
		||||
@@ -2408,7 +2414,8 @@ static var *evaluate(node *op, var *res)
 | 
			
		||||
 			break;
 | 
			
		||||
 
 | 
			
		||||
 		case XC( OC_FUNC ):
 | 
			
		||||
@@ -44,7 +44,7 @@
 | 
			
		||||
 				syntax_error(EMSG_UNDEF_FUNC);
 | 
			
		||||
 
 | 
			
		||||
 			X.v = R.v = nvalloc(op->r.f->nargs+1);
 | 
			
		||||
@@ -2414,7 +2421,10 @@ static var *evaluate(node *op, var *res)
 | 
			
		||||
@@ -2425,7 +2432,10 @@ static var *evaluate(node *op, var *res)
 | 
			
		||||
 			fnargs = X.v;
 | 
			
		||||
 
 | 
			
		||||
 			L.s = g_progname;
 | 
			
		||||
@@ -56,7 +56,7 @@
 | 
			
		||||
 			g_progname = L.s;
 | 
			
		||||
 
 | 
			
		||||
 			nvfree(fnargs);
 | 
			
		||||
@@ -2777,6 +2787,143 @@ static rstream *next_input_file(void)
 | 
			
		||||
@@ -2788,6 +2798,143 @@ static rstream *next_input_file(void)
 | 
			
		||||
 #undef files_happen
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -200,7 +200,7 @@
 | 
			
		||||
 int awk_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 | 
			
		||||
 int awk_main(int argc, char **argv)
 | 
			
		||||
 {
 | 
			
		||||
@@ -2842,6 +2989,9 @@ int awk_main(int argc, char **argv)
 | 
			
		||||
@@ -2853,6 +3000,9 @@ int awk_main(int argc, char **argv)
 | 
			
		||||
 			*s1 = '=';
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/udhcp/dhcpc.c
 | 
			
		||||
+++ b/networking/udhcp/dhcpc.c
 | 
			
		||||
@@ -63,7 +63,6 @@ static void perform_renew(void)
 | 
			
		||||
@@ -69,7 +69,6 @@ static void perform_renew(void)
 | 
			
		||||
 		state = RENEW_REQUESTED;
 | 
			
		||||
 		break;
 | 
			
		||||
 	case RENEW_REQUESTED: /* impatient are we? fine, square 1 */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,12 +0,0 @@
 | 
			
		||||
--- a/miscutils/watchdog.c
 | 
			
		||||
+++ b/miscutils/watchdog.c
 | 
			
		||||
@@ -10,7 +10,8 @@
 | 
			
		||||
  */
 | 
			
		||||
 
 | 
			
		||||
 #include "libbb.h"
 | 
			
		||||
-#include "linux/watchdog.h"
 | 
			
		||||
+#include <linux/types.h>
 | 
			
		||||
+#include <linux/watchdog.h>
 | 
			
		||||
 
 | 
			
		||||
 #define OPT_FOREGROUND  (1 << 0)
 | 
			
		||||
 #define OPT_STIMER      (1 << 1)
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/brctl.c
 | 
			
		||||
+++ b/networking/brctl.c
 | 
			
		||||
@@ -34,8 +34,9 @@ static ALWAYS_INLINE void strtotimeval(s
 | 
			
		||||
@@ -48,8 +48,9 @@ static ALWAYS_INLINE void strtotimeval(s
 | 
			
		||||
 {
 | 
			
		||||
 	double secs;
 | 
			
		||||
 #if BRCTL_USE_INTERNAL
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
--- a/networking/brctl.c
 | 
			
		||||
+++ b/networking/brctl.c
 | 
			
		||||
@@ -18,7 +18,7 @@
 | 
			
		||||
@@ -32,7 +32,7 @@
 | 
			
		||||
 
 | 
			
		||||
 /* Maximum number of ports supported per bridge interface.  */
 | 
			
		||||
 #ifndef MAX_PORTS
 | 
			
		||||
@@ -9,7 +9,7 @@
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 /* Use internal number parsing and not the "exact" conversion.  */
 | 
			
		||||
@@ -155,6 +155,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -169,6 +169,7 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 				printf(bi.stp_enabled ? "\tyes" : "\tno");
 | 
			
		||||
 
 | 
			
		||||
 				/* print interface list */
 | 
			
		||||
@@ -17,7 +17,7 @@
 | 
			
		||||
 				arm_ioctl(args, BRCTL_GET_PORT_LIST,
 | 
			
		||||
 							(unsigned long) ifidx, MAX_PORTS);
 | 
			
		||||
 				xioctl(fd, SIOCDEVPRIVATE, &ifr);
 | 
			
		||||
@@ -183,9 +184,19 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -197,9 +198,19 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 		br = *argv++;
 | 
			
		||||
 
 | 
			
		||||
 		if (key == ARG_addbr || key == ARG_delbr) { /* addbr or delbr */
 | 
			
		||||
@@ -40,9 +40,9 @@
 | 
			
		||||
 			goto done;
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
@@ -194,14 +205,27 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
@@ -208,14 +219,27 @@ int brctl_main(int argc UNUSED_PARAM, ch
 | 
			
		||||
 
 | 
			
		||||
 		strncpy(ifr.ifr_name, br, IFNAMSIZ);
 | 
			
		||||
 		strncpy_IFNAMSIZ(ifr.ifr_name, br);
 | 
			
		||||
 		if (key == ARG_addif || key == ARG_delif) { /* addif or delif */
 | 
			
		||||
+			int ret;
 | 
			
		||||
+			int if_index;
 | 
			
		||||
 
 | 
			
		||||
@@ -19,7 +19,7 @@ Signed-off-by: Nicolas Thill <nico@openwrt.org>
 | 
			
		||||
 #endif
 | 
			
		||||
 #endif
 | 
			
		||||
 #endif
 | 
			
		||||
@@ -86,7 +88,11 @@ static int get_groups(const char *userna
 | 
			
		||||
@@ -82,7 +84,11 @@ static int get_groups(const char *userna
 | 
			
		||||
 		/* If the user is a member of more than
 | 
			
		||||
 		 * *n groups, then -1 is returned. Otherwise >= 0.
 | 
			
		||||
 		 * (and no defined way of detecting errors?!) */
 | 
			
		||||
@@ -31,7 +31,7 @@ Signed-off-by: Nicolas Thill <nico@openwrt.org>
 | 
			
		||||
 		/* I guess *n < 0 might indicate error. Anyway,
 | 
			
		||||
 		 * malloc'ing -1 bytes won't be good, so: */
 | 
			
		||||
 		//if (*n < 0)
 | 
			
		||||
@@ -160,6 +166,7 @@ int id_main(int argc UNUSED_PARAM, char 
 | 
			
		||||
@@ -154,6 +160,7 @@ int id_main(int argc UNUSED_PARAM, char 
 | 
			
		||||
 			if (egid != rgid)
 | 
			
		||||
 				status |= print_group(egid, " ");
 | 
			
		||||
 		}
 | 
			
		||||
@@ -39,7 +39,7 @@ Signed-off-by: Nicolas Thill <nico@openwrt.org>
 | 
			
		||||
 		/* We are supplying largish buffer, trying
 | 
			
		||||
 		 * to not run get_groups() twice. That might be slow
 | 
			
		||||
 		 * ("user database in remote SQL server" case) */
 | 
			
		||||
@@ -187,6 +194,7 @@ int id_main(int argc UNUSED_PARAM, char 
 | 
			
		||||
@@ -181,6 +188,7 @@ int id_main(int argc UNUSED_PARAM, char 
 | 
			
		||||
 		}
 | 
			
		||||
 		if (ENABLE_FEATURE_CLEAN_UP)
 | 
			
		||||
 			free(groups);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +0,0 @@
 | 
			
		||||
--- a/coreutils/df.c
 | 
			
		||||
+++ b/coreutils/df.c
 | 
			
		||||
@@ -53,8 +53,8 @@ int df_main(int argc, char **argv)
 | 
			
		||||
 		OPT_ALL   = (1 << 2) * ENABLE_FEATURE_DF_FANCY,
 | 
			
		||||
 		OPT_INODE = (1 << 3) * ENABLE_FEATURE_DF_FANCY,
 | 
			
		||||
 		OPT_BSIZE = (1 << 4) * ENABLE_FEATURE_DF_FANCY,
 | 
			
		||||
-		OPT_HUMAN = (1 << 5) * ENABLE_FEATURE_HUMAN_READABLE,
 | 
			
		||||
-		OPT_MEGA  = (1 << 6) * ENABLE_FEATURE_HUMAN_READABLE,
 | 
			
		||||
+		OPT_HUMAN = (1 << (2 + 3*ENABLE_FEATURE_DF_FANCY)) * ENABLE_FEATURE_HUMAN_READABLE,
 | 
			
		||||
+		OPT_MEGA  = (1 << (3 + 3*ENABLE_FEATURE_DF_FANCY)) * ENABLE_FEATURE_HUMAN_READABLE,
 | 
			
		||||
 	};
 | 
			
		||||
 	const char *disp_units_hdr = NULL;
 | 
			
		||||
 	char *chp;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user