summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
authornico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-08-08 10:27:25 +0000
committernico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-08-08 10:27:25 +0000
commit0d3fffa91dee49ba80032ce5c67f1cb47aee8f4d (patch)
tree4f3654fa1450bd7ceb736f86122a026c5a79056b /package
parent2f9334da3b7749dd8ab69d1a6289e61bdb26e976 (diff)
update busybox to v1.2.1
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4528 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rw-r--r--package/busybox/Makefile4
-rw-r--r--package/busybox/config/Config.in146
-rw-r--r--package/busybox/config/archival/Config.in40
-rw-r--r--package/busybox/config/console-tools/Config.in13
-rw-r--r--package/busybox/config/coreutils/Config.in154
-rw-r--r--package/busybox/config/debianutils/Config.in25
-rw-r--r--package/busybox/config/editors/Config.in30
-rw-r--r--package/busybox/config/findutils/Config.in40
-rw-r--r--package/busybox/config/init/Config.in23
-rw-r--r--package/busybox/config/loginutils/Config.in6
-rw-r--r--package/busybox/config/miscutils/Config.in68
-rw-r--r--package/busybox/config/modutils/Config.in8
-rw-r--r--package/busybox/config/networking/Config.in313
-rw-r--r--package/busybox/config/networking/udhcp/Config.in12
-rw-r--r--package/busybox/config/procps/Config.in8
-rw-r--r--package/busybox/config/shell/Config.in64
-rw-r--r--package/busybox/config/sysklogd/Config.in10
-rw-r--r--package/busybox/config/util-linux/Config.in81
-rw-r--r--package/busybox/patches/100-killall5.patch48
-rw-r--r--package/busybox/patches/110-telnetd.patch34
-rw-r--r--package/busybox/patches/150-udhcp-release.patch42
-rw-r--r--package/busybox/patches/300-netmsg.patch50
-rw-r--r--package/busybox/patches/320-httpd_address_binding.patch86
-rw-r--r--package/busybox/patches/340-lock_util.patch66
-rw-r--r--package/busybox/patches/911-ipkg.patch1422
-rw-r--r--package/busybox/patches/912-ipkg-no_warnings.patch4
-rw-r--r--package/busybox/patches/913-libbb_hash.patch110
-rw-r--r--package/busybox/patches/914-ipkg-fixes.patch4
28 files changed, 1605 insertions, 1306 deletions
diff --git a/package/busybox/Makefile b/package/busybox/Makefile
index 6a359688a5..6e9cf4194a 100644
--- a/package/busybox/Makefile
+++ b/package/busybox/Makefile
@@ -9,13 +9,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=busybox
-PKG_VERSION:=1.1.3
+PKG_VERSION:=1.2.1
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://www.busybox.net/downloads
-PKG_MD5SUM:=19a0b475169335f17e421cf644616fe7
+PKG_MD5SUM:=362b3dc0f2023ddfda901dc1f1a74391
PKG_CAT:=bzcat
include $(INCLUDE_DIR)/package.mk
diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in
index eedb4ba407..6a5d6a74d1 100644
--- a/package/busybox/config/Config.in
+++ b/package/busybox/config/Config.in
@@ -12,9 +12,26 @@ menu "Busybox Settings"
menu "General Configuration"
+config BUSYBOX_CONFIG_NITPICK
+ bool "See lots more (probably unnecessary) configuration options."
+ default n
+ help
+ Some BusyBox applets have more configuration options than anyone
+ will ever care about. To avoid drowining people in complexity, most
+ of the applet features that can be set to a sane default value are
+ hidden, unless you hit the above switch.
+
+ This is better than to telling people to edit the busybox source
+ code, but not by much.
+
+ See http://en.wikipedia.org/wiki/Fibber_McGee_and_Molly#The_Closet
+
+ You have been warned.
+
choice
prompt "Buffer allocation policy"
default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
+ depends on BUSYBOX_CONFIG_NITPICK
help
There are 3 ways BusyBox can handle buffer allocations:
- Use malloc. This costs code size for the call to xmalloc.
@@ -36,15 +53,39 @@ config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS
endchoice
+config BUSYBOX_CONFIG_SHOW_USAGE
+ bool "Show terse applet usage messages"
+ default y
+ help
+ All BusyBox applets will show help messages when invoked with
+ wrong arguments. You can turn off printing these terse usage
+ messages if you say no here.
+ This will save you up to 7k.
+
config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE
bool "Show verbose applet usage messages"
default y
+ select BUSYBOX_CONFIG_SHOW_USAGE
help
All BusyBox applets will show more verbose help messages when
busybox is invoked with --help. This will add a lot of text to the
busybox binary. In the default configuration, this will add about
13k, but it can add much more depending on your configuration.
+config BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE
+ bool "Store applet usage messages in compressed form"
+ default n
+ depends on BUSYBOX_CONFIG_SHOW_USAGE && BUSYBOX_CONFIG_NITPICK
+ help
+ Store usage messages in compressed form, uncompress them on-the-fly
+ when <applet> --help is called.
+
+ If you have a really tiny busybox with few applets enabled (and
+ bunzip2 isn't one of them), the overhead of the decompressor might
+ be noticeable. Also, if you run executables directly from ROM
+ and have very little memory, this might not be a win. Otherwise,
+ you probably want this.
+
config BUSYBOX_CONFIG_FEATURE_INSTALLER
bool "Support --install [-s] to install applet links at runtime"
default n
@@ -61,25 +102,29 @@ config BUSYBOX_CONFIG_LOCALE_SUPPORT
Enable this if your system has locale support and you would like
busybox to support locale settings.
-config BUSYBOX_CONFIG_FEATURE_DEVFS
- bool "Support for devfs"
+config BUSYBOX_CONFIG_GETOPT_LONG
+ bool
default y
- help
- Enable if you want BusyBox to work with devfs.
+# bool "Enable support for --long-options"
+# default n
+# help
+# Enable this if you want busybox applets to use the gnu --long-option
+# style, in addition to single character -a -b -c style options.
config BUSYBOX_CONFIG_FEATURE_DEVPTS
bool "Use the devpts filesystem for Unix98 PTYs"
- default y if BUSYBOX_CONFIG_FEATURE_DEVFS
+ default y
help
Enable if you want BusyBox to use Unix98 PTY support. If enabled,
busybox will use /dev/ptmx for the master side of the pseudoterminal
and /dev/pts/<number> for the slave side. Otherwise, BSD style
/dev/ttyp<number> will be used. To use this option, you should have
- devpts or devfs mounted.
+ devpts mounted.
config BUSYBOX_CONFIG_FEATURE_CLEAN_UP
bool "Clean up all memory before exiting (usually not needed)"
default n
+ depends on BUSYBOX_CONFIG_NITPICK
help
As a size optimization, busybox normally exits without explicitly
freeing dynamically allocated memory or closing files. This saves
@@ -93,15 +138,25 @@ config BUSYBOX_CONFIG_FEATURE_SUID
bool "Support for SUID/SGID handling"
default y
help
- Support SUID and SGID binaries.
+ With this option you can install the busybox binary belonging
+ to root with the suid bit set, and it'll and it'll automatically drop
+ priviledges for applets that don't need root access.
+
+ If you're really paranoid and don't want to do this, build two
+ busybox binaries with different applets in them (and the appropriate
+ symlinks pointing to each binary), and only set the suid bit on the
+ one that needs it. The applets currently marked to need the suid bit
+ are login, passwd, su, ping, traceroute, crontab, dnsd, ipcrm, ipcs,
+ and vlock.
config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
default n if BUSYBOX_CONFIG_FEATURE_SUID
depends on BUSYBOX_CONFIG_FEATURE_SUID
help
- Allow the SUID / SGID state of an applet to be determined runtime by
- checking /etc/busybox.conf. The format of this file is as follows:
+ Allow the SUID / SGID state of an applet to be determined at runtime
+ by checking /etc/busybox.conf. (This is sort of a poor man's sudo.)
+ The format of this file is as follows:
<applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
@@ -138,17 +193,32 @@ config BUSYBOX_CONFIG_SELINUX
bool "Support NSA Security Enhanced Linux"
default n
help
- Enable support for SE Linux in applets ls, ps, and id. Also provide
- the option of compiling in SE Linux applets.
+ Enable support for SELinux in applets ls, ps, and id. Also provide
+ the option of compiling in SELinux applets.
- If you do not have a complete SE Linux Full Userland installed, this
- stuff will not compile. Go visit
+ If you do not have a complete SELinux userland installed, this stuff
+ will not compile. Go visit
http://www.nsa.gov/selinux/index.html
- to download the necessary stuff to allow busybox to compile with this
- option enabled.
+ to download the necessary stuff to allow busybox to compile with
+ this option enabled. Specifially, libselinux 1.28 or better is
+ directly required by busybox. If the installation is located in a
+ non-standard directory, provide it by invoking make as follows:
+ CFLAGS=-I<libselinux-include-path> \
+ LDFLAGS=-L<libselinux-lib-path> \
+ make
Most people will leave this set to 'N'.
+config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH
+ string "Path to BusyBox executable"
+ default "/proc/self/exe"
+ help
+ When Busybox applets need to run other busybox applets, BusyBox
+ sometimes needs to exec() itself. When the /proc filesystem is
+ mounted, /proc/self/exe always points to the currently running
+ executable. If you haven't got /proc, set this to wherever you
+ want to run BusyBox from.
+
endmenu
menu 'Build Options'
@@ -167,21 +237,18 @@ config BUSYBOX_CONFIG_STATIC
Most people will leave this set to 'N'.
-# The busybox shared library feature is there so make standalone can produce
-# smaller applets. Since make standalone isn't in yet, there's nothing using
-# this yet, and so it's disabled.
-config BUSYBOX_CONFIG_DISABLE_SHARED
- bool
- default n
-
config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
bool "Build shared libbusybox"
default n
- depends on BUSYBOX_CONFIG_DISABLE_SHARED
help
Build a shared library libbusybox.so which contains all
libraries used inside busybox.
+ This is an experimental feature intended to support the upcoming
+ "make standalone" mode. Enabling it against the one big busybox
+ binary serves no purpose (and increases the size). You should
+ almost certainly say "no" to this right now.
+
config BUSYBOX_CONFIG_FEATURE_FULL_LIBBUSYBOX
bool "Feature-complete libbusybox"
default n if !CONFIG_FEATURE_SHARED_BUSYBOX
@@ -239,15 +306,6 @@ config BUSYBOX_CROSS_COMPILER_PREFIX
then I would enter '/usr/i386-linux-uclibc/bin/i386-uclibc-' here,
which will ensure the correct compiler is used.
-config BUSYBOX_EXTRA_CFLAGS_OPTIONS
- string
- default "-Os "
- help
- Do you want to pass any extra CFLAGS options to the compiler as
- you build BusyBox? If so, this is the option for you... For example,
- if you want to add some simple compiler switches (like -march=i686),
- or check for warnings using -Werror, just those options here.
-
config BUSYBOX_CONFIG_BUILD_AT_ONCE
bool "Compile all sources at once"
default n
@@ -272,17 +330,27 @@ endmenu
menu 'Debugging Options'
config BUSYBOX_CONFIG_DEBUG
- bool "Build BusyBox with Debugging symbols"
+ bool "Build BusyBox with extra Debugging symbols"
default n
help
- Say Y here if you wish to compile BusyBox with debugging symbols.
- This will allow you to use a debugger to examine BusyBox internals
- while applets are running. This increases the size of the binary
- considerably and should only be used when doing development.
- If you are doing development and want to debug BusyBox, answer Y.
+ Say Y here if you wish to examine BusyBox internals while applets are
+ running. This increases the size of the binary considerably, and
+ should only be used when doing development. If you are doing
+ development and want to debug BusyBox, answer Y.
Most people should answer N.
+config BUSYBOX_CONFIG_DEBUG_PESSIMIZE
+ bool "Disable compiler optimizations."
+ default n
+ depends on BUSYBOX_CONFIG_DEBUG
+ help
+ The compiler's optimization of source code can eliminate and reorder
+ code, resulting in an executable that's hard to understand when
+ stepping through it with a debugger. This switches it off, resulting
+ in a much bigger executable that more closely matches the source
+ code.
+
choice
prompt "Additional debugging library"
default BUSYBOX_CONFIG_NO_DEBUG_LIB
@@ -329,7 +397,7 @@ config BUSYBOX_CONFIG_DEBUG_YANK_SUSv2
bool "Disable obsolete features removed before SUSv3?"
default y
help
- This option will disable backwards compatability with SuSv2,
+ This option will disable backwards compatibility with SuSv2,
specifically, old-style numeric options ('command -1 <file>')
will not be supported in head, tail, and fold. (Note: should
yank from renice too.)
diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in
index bd5c4b140f..ac71d753a2 100644
--- a/package/busybox/config/archival/Config.in
+++ b/package/busybox/config/archival/Config.in
@@ -29,7 +29,7 @@ config BUSYBOX_CONFIG_AR
probably say N here.
config BUSYBOX_CONFIG_FEATURE_AR_LONG_FILENAMES
- bool " Enable support for long filenames (not need for debs)"
+ bool "Enable support for long filenames (not need for debs)"
default n
depends on BUSYBOX_CONFIG_AR
help
@@ -89,7 +89,7 @@ config BUSYBOX_CONFIG_DPKG_DEB
probably say N here.
config BUSYBOX_CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY
- bool " extract only (-x)"
+ bool "extract only (-x)"
default n
depends on BUSYBOX_CONFIG_DPKG_DEB
help
@@ -106,7 +106,7 @@ config BUSYBOX_CONFIG_GUNZIP
an archive, without decompressing it.
config BUSYBOX_CONFIG_FEATURE_GUNZIP_UNCOMPRESS
- bool " Uncompress support"
+ bool "Uncompress support"
default y
depends on BUSYBOX_CONFIG_GUNZIP
help
@@ -150,7 +150,7 @@ config BUSYBOX_CONFIG_TAR
UNIX archive program.
config BUSYBOX_CONFIG_FEATURE_TAR_CREATE
- bool " Enable archive creation"
+ bool "Enable archive creation"
default y
depends on BUSYBOX_CONFIG_TAR
help
@@ -158,7 +158,7 @@ config BUSYBOX_CONFIG_FEATURE_TAR_CREATE
tar archives using the `-c' option.
config BUSYBOX_CONFIG_FEATURE_TAR_BZIP2
- bool " Enable -j option to handle .tar.bz2 files"
+ bool "Enable -j option to handle .tar.bz2 files"
default y
depends on BUSYBOX_CONFIG_TAR
help
@@ -166,7 +166,7 @@ config BUSYBOX_CONFIG_FEATURE_TAR_BZIP2
archives compressed with bzip2.
config BUSYBOX_CONFIG_FEATURE_TAR_LZMA
- bool " Enable -a option to handle .tar.lzma files"
+ bool "Enable -a option to handle .tar.lzma files"
default n
depends on BUSYBOX_CONFIG_TAR
help
@@ -174,7 +174,7 @@ config BUSYBOX_CONFIG_FEATURE_TAR_LZMA
archives compressed with lzma.
config BUSYBOX_CONFIG_FEATURE_TAR_FROM
- bool " Enable -X (exclude from) and -T (include from) options)"
+ bool "Enable -X (exclude from) and -T (include from) options)"
default y
depends on BUSYBOX_CONFIG_TAR
help
@@ -182,7 +182,7 @@ config BUSYBOX_CONFIG_FEATURE_TAR_FROM
a list of files to include or exclude from an archive.
config BUSYBOX_CONFIG_FEATURE_TAR_GZIP
- bool " Enable -z option"
+ bool "Enable -z option"
default y
depends on BUSYBOX_CONFIG_TAR
help
@@ -190,15 +190,15 @@ config BUSYBOX_CONFIG_FEATURE_TAR_GZIP
when creating or extracting tar gziped archives.
config BUSYBOX_CONFIG_FEATURE_TAR_COMPRESS
- bool " Enable -Z option"
+ bool "Enable -Z option"
default n
depends on BUSYBOX_CONFIG_TAR
help
If you enable this option tar will be able to call uncompress,
when extracting .tar.Z archives.
-config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY
- bool " Enable support for old tar header format"
+config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY
+ bool "Enable support for old tar header format"
default n
depends on BUSYBOX_CONFIG_TAR
help
@@ -207,7 +207,7 @@ config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY
repacking your ancient archives with the new format.
config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS
- bool " Enable support for some GNU tar extensions"
+ bool "Enable support for some GNU tar extensions"
default y
depends on BUSYBOX_CONFIG_TAR
help
@@ -215,9 +215,9 @@ config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS
linknames.
config BUSYBOX_CONFIG_FEATURE_TAR_LONG_OPTIONS
- bool " Enable long options"
+ bool "Enable long options"
default n
- depends on BUSYBOX_CONFIG_TAR
+ depends on BUSYBOX_CONFIG_TAR && BUSYBOX_CONFIG_GETOPT_LONG
help
Enable use of long options, increases size by about 400 Bytes
@@ -244,11 +244,11 @@ config BUSYBOX_CONFIG_UNLZMA
should probably say N here.
config BUSYBOX_CONFIG_FEATURE_LZMA_FAST
- bool " Optimze unlzma for speed"
+ bool "Optimze unlzma for speed"
default n
depends on BUSYBOX_CONFIG_UNLZMA
help
- This option reduce decompression time by about 33% at the cost of
+ This option reduces decompression time by about 33% at the cost of
a 2K bigger binary.
config BUSYBOX_CONFIG_UNZIP
@@ -265,7 +265,7 @@ comment "Common options for cpio and tar"
depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR
config BUSYBOX_CONFIG_FEATURE_UNARCHIVE_TAPE
- bool " Enable tape drive support"
+ bool "Enable tape drive support"
default n
depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR
help
@@ -275,7 +275,7 @@ comment "Common options for dpkg and dpkg_deb"
depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB
config BUSYBOX_CONFIG_FEATURE_DEB_TAR_GZ
- bool " gzip debian packages (normal)"
+ bool "gzip debian packages (normal)"
default n if BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB
depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB
help
@@ -284,7 +284,7 @@ config BUSYBOX_CONFIG_FEATURE_DEB_TAR_GZ
If you want compatibility with standard .deb's you should say yes here.
config BUSYBOX_CONFIG_FEATURE_DEB_TAR_BZ2
- bool " bzip2 debian packages"
+ bool "bzip2 debian packages"
default n
depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB
help
@@ -295,7 +295,7 @@ config BUSYBOX_CONFIG_FEATURE_DEB_TAR_BZ2
use an internal control.tar.bz2 or data.tar.bz2.
config BUSYBOX_CONFIG_FEATURE_DEB_TAR_LZMA
- bool " lzma debian packages"
+ bool "lzma debian packages"
default n
depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB
help
diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in
index 4faaeb44b6..1efe300982 100644
--- a/package/busybox/config/console-tools/Config.in
+++ b/package/busybox/config/console-tools/Config.in
@@ -65,6 +65,13 @@ config BUSYBOX_CONFIG_SETCONSOLE
This program redirects the system console to another device,
like the current tty while logged in via telnet.
+config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_SET_CONSOLE && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the setconsole applet.
+
config BUSYBOX_CONFIG_SETKEYCODES
bool "setkeycodes"
default n
@@ -72,4 +79,10 @@ config BUSYBOX_CONFIG_SETKEYCODES
This program loads entries into the kernel's scancode-to-keycode
map, allowing unusual keyboards to generate usable keycodes.
+config BUSYBOX_CONFIG_SETLOGCONS
+ bool "setlogcons"
+ default n
+ help
+ This program redirects the output console of kernel messages.
+
endmenu
diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in
index 53984e3951..6aaee5eb99 100644
--- a/package/busybox/config/coreutils/Config.in
+++ b/package/busybox/config/coreutils/Config.in
@@ -26,6 +26,13 @@ config BUSYBOX_CONFIG_CAT
cat is used to concatenate files and print them to the standard
output. Enable this option if you wish to enable the 'cat' utility.
+config BUSYBOX_CONFIG_CATV
+ bool "catv"
+ default n
+ help
+ Display nonprinting characters as escape sequences (like some
+ implementations' cat -v option).
+
config BUSYBOX_CONFIG_CHGRP
bool "chgrp"
default y
@@ -52,6 +59,12 @@ config BUSYBOX_CONFIG_CHROOT
chroot is used to change the root directory and run a command.
The default command is `/bin/sh'.
+config BUSYBOX_CONFIG_CKSUM
+ bool "cksum"
+ default n
+ help
+ cksum is used to calculate the CRC32 checksum of a file.
+
config BUSYBOX_CONFIG_CMP
bool "cmp"
default n
@@ -87,7 +100,7 @@ config BUSYBOX_CONFIG_DATE
current time in the given format.
config BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT
- bool " Enable ISO date format output (-I)"
+ bool "Enable ISO date format output (-I)"
default y
depends on BUSYBOX_CONFIG_DATE
help
@@ -102,6 +115,26 @@ config BUSYBOX_CONFIG_DD
by default) using specific input and output blocksizes,
while optionally performing conversions on it.
+config BUSYBOX_CONFIG_FEATURE_DD_SIGNAL_HANDLING
+ bool "Enable DD signal handling for status reporting"
+ default y
+ depends on BUSYBOX_CONFIG_DD
+ help
+ sending a SIGUSR1 signal to a running `dd' process makes it
+ print to standard error the number of records read and written
+ so far, then to resume copying.
+
+ $ dd if=/dev/zero of=/dev/null& pid=$! $ kill -USR1 $pid; sleep 1; kill $pid
+ 10899206+0 records in 10899206+0 records out
+
+config BUSYBOX_CONFIG_FEATURE_DD_IBS_OBS
+ bool "Enable ibs, obs and conv options"
+ default n
+ depends on BUSYBOX_CONFIG_DD
+ help
+ Enables support for writing a certain number of bytes in and out,
+ at a time, and performing conversions on the data stream.
+
config BUSYBOX_CONFIG_DF
bool "df"
default y
@@ -109,6 +142,38 @@ config BUSYBOX_CONFIG_DF
df reports the amount of disk space used and available
on filesystems.
+config BUSYBOX_CONFIG_DIFF
+ bool "diff"
+ default n
+ help
+ diff compares two files or directories and outputs the
+ differences between them in a form that can be given to
+ the patch command.
+
+config BUSYBOX_CONFIG_FEATURE_DIFF_BINARY
+ bool "Enable checks for binary files"
+ default n
+ depends on BUSYBOX_CONFIG_DIFF
+ help
+ This option enables support for checking for binary files
+ before a comparison is carried out.
+
+config BUSYBOX_CONFIG_FEATURE_DIFF_DIR
+ bool "Enable directory support"
+ default n
+ depends on BUSYBOX_CONFIG_DIFF
+ help
+ This option enables support for directory and subdirectory
+ comparison.
+
+config BUSYBOX_CONFIG_FEATURE_DIFF_MINIMAL
+ bool "Enable -d option to find smaller sets of changes"
+ default n
+ depends on BUSYBOX_CONFIG_DIFF
+ help
+ Enabling this option allows the use of -d to make diff
+ try hard to find the smallest possible set of changes.
+
config BUSYBOX_CONFIG_DIRNAME
bool "dirname"
default y
@@ -127,6 +192,9 @@ config BUSYBOX_CONFIG_UNIX2DOS
bool
default n
depends on BUSYBOX_CONFIG_DOS2UNIX
+ help
+ unix2dos is used to convert a text file from UNIX format to
+ DOS format, and vice versa.
config BUSYBOX_CONFIG_DU
bool "du (default blocksize of 512 bytes)"
@@ -135,8 +203,8 @@ config BUSYBOX_CONFIG_DU
du is used to report the amount of disk space used
for specified files.
-config BUSYBOX_CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K
- bool " Use a default blocksize of 1024 bytes (1K)"
+config BUSYBOX_CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K
+ bool "Use a default blocksize of 1024 bytes (1K)"
default y
depends on BUSYBOX_CONFIG_DU
help
@@ -150,7 +218,7 @@ config BUSYBOX_CONFIG_ECHO
# this entry also appears in shell/Config.in, next to the echo builtin
config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO
- bool " Enable echo options (-n and -e)"
+ bool "Enable echo options (-n and -e)"
default y
depends on BUSYBOX_CONFIG_ECHO
help
@@ -164,6 +232,13 @@ config BUSYBOX_CONFIG_ENV
a command; without options it displays the current
environment.
+config BUSYBOX_CONFIG_FEATURE_ENV_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_ENV && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the env applet.
+
config BUSYBOX_CONFIG_EXPR
bool "expr"
default y
@@ -172,7 +247,7 @@ config BUSYBOX_CONFIG_EXPR
to standard output.
config BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64
- bool " Extend Posix numbers support to 64 bit"
+ bool "Extend Posix numbers support to 64 bit"
default n
depends on BUSYBOX_CONFIG_EXPR
help
@@ -200,7 +275,7 @@ config BUSYBOX_CONFIG_HEAD
from files.
config BUSYBOX_CONFIG_FEATURE_FANCY_HEAD
- bool " Enable head options (-c, -q, and -v)"
+ bool "Enable head options (-c, -q, and -v)"
default y
depends on BUSYBOX_CONFIG_HEAD
help
@@ -225,6 +300,13 @@ config BUSYBOX_CONFIG_INSTALL
help
Copy files and set attributes.
+config BUSYBOX_CONFIG_FEATURE_INSTALL_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_INSTALL && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the install applet.
+
config BUSYBOX_CONFIG_LENGTH
bool "length"
default y
@@ -250,56 +332,56 @@ config BUSYBOX_CONFIG_LS
ls is used to list the contents of directories.
config BUSYBOX_CONFIG_FEATURE_LS_FILETYPES
- bool " Enable filetyping options (-p and -F)"
+ bool "Enable filetyping options (-p and -F)"
default y
depends on BUSYBOX_CONFIG_LS
help
Enable the ls options (-p and -F).
config BUSYBOX_CONFIG_FEATURE_LS_FOLLOWLINKS
- bool " Enable symlinks dereferencing (-L)"
+ bool "Enable symlinks dereferencing (-L)"
default y
depends on BUSYBOX_CONFIG_LS
help
Enable the ls option (-L).
config BUSYBOX_CONFIG_FEATURE_LS_RECURSIVE
- bool " Enable recursion (-R)"
+ bool "Enable recursion (-R)"
default y
depends on BUSYBOX_CONFIG_LS
help
Enable the ls option (-R).
config BUSYBOX_CONFIG_FEATURE_LS_SORTFILES
- bool " Sort the file names"
+ bool "Sort the file names"
default y
depends on BUSYBOX_CONFIG_LS
help
Allow ls to sort file names alphabetically.
config BUSYBOX_CONFIG_FEATURE_LS_TIMESTAMPS
- bool " Show file timestamps"
+ bool "Show file timestamps"
default y
depends on BUSYBOX_CONFIG_LS
help
Allow ls to display timestamps for files.
config BUSYBOX_CONFIG_FEATURE_LS_USERNAME
- bool " Show username/groupnames"
+ bool "Show username/groupnames"
default y
depends on BUSYBOX_CONFIG_LS
help
Allow ls to display username/groupname for files.
config BUSYBOX_CONFIG_FEATURE_LS_COLOR
- bool " Allow use of color to identify file types"
+ bool "Allow use of color to identify file types"
default y
- depends on BUSYBOX_CONFIG_LS
+ depends on BUSYBOX_CONFIG_LS && BUSYBOX_CONFIG_GETOPT_LONG
help
This enables the --color option to ls.
config BUSYBOX_CONFIG_FEATURE_LS_COLOR_IS_DEFAULT
- bool " Produce colored ls output by default"
+ bool "Produce colored ls output by default"
default y
depends on BUSYBOX_CONFIG_FEATURE_LS_COLOR
help
@@ -321,6 +403,13 @@ config BUSYBOX_CONFIG_MKDIR
help
mkdir is used to create directories with the specified names.
+config BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_MKDIR && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the mkdir applet.
+
config BUSYBOX_CONFIG_MKFIFO
bool "mkfifo"
default y
@@ -341,6 +430,13 @@ config BUSYBOX_CONFIG_MV
help
mv is used to move or rename files or directories.
+config BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_MV && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the mv applet.
+
config BUSYBOX_CONFIG_NICE
bool "nice"
default n
@@ -416,7 +512,7 @@ config BUSYBOX_CONFIG_SLEEP
sleep is used to pause for a specified number of seconds,
config BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP
- bool " Enable multiple integer args and optional time suffixes"
+ bool "Enable multiple integer args and optional time suffixes"
default y
depends on BUSYBOX_CONFIG_SLEEP
help
@@ -429,7 +525,7 @@ config BUSYBOX_CONFIG_SORT
sort is used to sort lines of text in specified files.
config BUSYBOX_CONFIG_FEATURE_SORT_BIG
- bool " full SuSv3 compliant sort (Support -ktcsbdfiozgM)"
+ bool "full SuSv3 compliant sort (Support -ktcsbdfiozgM)"
default n
depends on BUSYBOX_CONFIG_SORT
help
@@ -447,7 +543,7 @@ config BUSYBOX_CONFIG_STAT
display file or filesystem status.
config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT
- bool " Enable custom formats (-c)"
+ bool "Enable custom formats (-c)"
default n
depends on BUSYBOX_CONFIG_STAT
help
@@ -481,7 +577,7 @@ config BUSYBOX_CONFIG_TAIL
from files.
config BUSYBOX_CONFIG_FEATURE_FANCY_TAIL
- bool " Enable extra tail options (-q, -s, and -v)"
+ bool "Enable extra tail options (-q, -s, and -v)"
default y
depends on BUSYBOX_CONFIG_TAIL
help
@@ -496,7 +592,7 @@ config BUSYBOX_CONFIG_TEE
to standard output and files.
config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO
- bool " Enable block i/o (larger/faster) instead of byte i/o."
+ bool "Enable block i/o (larger/faster) instead of byte i/o."
default y
depends on BUSYBOX_CONFIG_TEE
help
@@ -507,11 +603,11 @@ config BUSYBOX_CONFIG_TEST
default y
help
test is used to check file types and compare values,
- returning an appropriate exit code. The shells (ash
- and bash) have test builtin.
+ returning an appropriate exit code. The bash shell
+ has test built in, ash can build it in optionally.
config BUSYBOX_CONFIG_FEATURE_TEST_64
- bool " Extend test to 64 bit"
+ bool "Extend test to 64 bit"
default n
depends on BUSYBOX_CONFIG_TEST
help
@@ -532,7 +628,7 @@ config BUSYBOX_CONFIG_TR
input, writing to standard output.
config BUSYBOX_CONFIG_FEATURE_TR_CLASSES
- bool " Enable character classes (such as [:upper:])"
+ bool "Enable character classes (such as [:upper:])"
default n
depends on BUSYBOX_CONFIG_TR
help
@@ -540,7 +636,7 @@ config BUSYBOX_CONFIG_FEATURE_TR_CLASSES
tr [:upper:] [:lower:] to convert input into lowercase.
config BUSYBOX_CONFIG_FEATURE_TR_EQUIV
- bool " Enable equivalence classes"
+ bool "Enable equivalence classes"
default n
depends on BUSYBOX_CONFIG_TR
help
@@ -633,7 +729,7 @@ comment "Common options for cp and mv"
depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV
config BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS
- bool " Preserve hard links"
+ bool "Preserve hard links"
default y
depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV
help
@@ -643,7 +739,7 @@ comment "Common options for ls, more and telnet"
depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET
config BUSYBOX_CONFIG_FEATURE_AUTOWIDTH
- bool " Calculate terminal & column widths"
+ bool "Calculate terminal & column widths"
default y
depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET
help
@@ -657,7 +753,7 @@ comment "Common options for df, du, ls"
depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS
config BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE
- bool " Support for human readable output (example 13k, 23M, 235G)"
+ bool "Support for human readable output (example 13k, 23M, 235G)"
default y
depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS
help
@@ -667,7 +763,7 @@ comment "Common options for md5sum, sha1sum"
depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM
config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK
- bool " Enable -c, -s and -w options"
+ bool "Enable -c, -s and -w options"
default y
depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM
help
diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in
index 71f2bf38af..bc98103c72 100644
--- a/package/busybox/config/debianutils/Config.in
+++ b/package/busybox/config/debianutils/Config.in
@@ -25,7 +25,7 @@ config BUSYBOX_CONFIG_READLINK
of the file it points to
config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW
- bool " Enable canonicalization by following all symlinks (-f)"
+ bool "Enable canonicalization by following all symlinks (-f)"
default n
depends on BUSYBOX_CONFIG_READLINK
help
@@ -46,6 +46,13 @@ config BUSYBOX_CONFIG_RUN_PARTS
Unless you know that run-parts is used in some of your scripts
you can safely say N here.
+config BUSYBOX_CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_RUN_PARTS && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the run-parts applet.
+
config BUSYBOX_CONFIG_START_STOP_DAEMON
bool "start-stop-daemon"
default n
@@ -54,6 +61,22 @@ config BUSYBOX_CONFIG_START_STOP_DAEMON
termination of system-level processes, usually the ones
started during the startup of the system.
+config BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_FANCY
+ bool "Support additional arguments"
+ default n
+ depends on BUSYBOX_CONFIG_START_STOP_DAEMON
+ help
+ Support additional arguments.
+ -o|--oknodo ignored since we exit with 0 anyway
+ -v|--verbose
+
+config BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_START_STOP_DAEMON && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the start-stop-daemon applet.
+
config BUSYBOX_CONFIG_WHICH
bool "which"
default y
diff --git a/package/busybox/config/editors/Config.in b/package/busybox/config/editors/Config.in
index 85074b333f..3c1a320bc3 100644
--- a/package/busybox/config/editors/Config.in
+++ b/package/busybox/config/editors/Config.in
@@ -13,13 +13,21 @@ config BUSYBOX_CONFIG_AWK
the BusyBox implementation of that programming language.
config BUSYBOX_CONFIG_FEATURE_AWK_MATH
- bool " Enable math functions (requires libm)"
+ bool "Enable math functions (requires libm)"
default y
depends on BUSYBOX_CONFIG_AWK
help
Enable math functions of the Awk programming language.
NOTE: This will require libm to be present for linking.
+config BUSYBOX_CONFIG_ED
+ bool "ed"
+ default n
+ help
+ The original 1970's Unix text editor, from the days of teletypes.
+ Small, simple, evil. Part of SUSv3. If you're not already using
+ this, you don't need it.
+
config BUSYBOX_CONFIG_PATCH
bool "patch"
default n
@@ -43,7 +51,7 @@ config BUSYBOX_CONFIG_VI
you may wish to use something else.
config BUSYBOX_CONFIG_FEATURE_VI_COLON
- bool " Enable \":\" colon commands (no \"ex\" mode)"
+ bool "Enable \":\" colon commands (no \"ex\" mode)"
default y
depends on BUSYBOX_CONFIG_VI
help
@@ -51,7 +59,7 @@ config BUSYBOX_CONFIG_FEATURE_VI_COLON
provide an "ex" mode.
config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK
- bool " Enable yank/put commands and mark cmds"
+ bool "Enable yank/put commands and mark cmds"
default y
depends on BUSYBOX_CONFIG_VI
help
@@ -59,7 +67,7 @@ config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK
busybox vi.
config BUSYBOX_CONFIG_FEATURE_VI_SEARCH
- bool " Enable search and replace cmds"
+ bool "Enable search and replace cmds"
default y
depends on BUSYBOX_CONFIG_VI
help
@@ -67,7 +75,7 @@ config BUSYBOX_CONFIG_FEATURE_VI_SEARCH
busybox vi.
config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS
- bool " Catch signals"
+ bool "Catch signals"
default y
depends on BUSYBOX_CONFIG_VI
help
@@ -76,14 +84,14 @@ config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS
Ctrl-Z and Ctrl-C and alarms.
config BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD
- bool " Remember previous cmd and \".\" cmd"
+ bool "Remember previous cmd and \".\" cmd"
default y
depends on BUSYBOX_CONFIG_VI
help
Make busybox vi remember the last command and be able to repeat it.
config BUSYBOX_CONFIG_FEATURE_VI_READONLY
- bool " Enable -R option and \"view\" mode"
+ bool "Enable -R option and \"view\" mode"
default y
depends on BUSYBOX_CONFIG_VI
help
@@ -91,28 +99,28 @@ config BUSYBOX_CONFIG_FEATURE_VI_READONLY
open a file in read-only mode.
config BUSYBOX_CONFIG_FEATURE_VI_SETOPTS
- bool " Enable set-able options, ai ic showmatch"
+ bool "Enable set-able options, ai ic showmatch"
default y
depends on BUSYBOX_CONFIG_VI
help
Enable the editor to set some (ai, ic, showmatch) options.
config BUSYBOX_CONFIG_FEATURE_VI_SET
- bool " Support for :set"
+ bool "Support for :set"
default y
depends on BUSYBOX_CONFIG_VI
help
Support for ":set".
config BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE
- bool " Handle window resize"
+ bool "Handle window resize"
default y
depends on BUSYBOX_CONFIG_VI
help
Make busybox vi behave nicely with terminals that get resized.
config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR
- bool " Optimize cursor movement"
+ bool "Optimize cursor movement"
default y
depends on BUSYBOX_CONFIG_VI
help
diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in
index 9667bfba81..e708259888 100644
--- a/package/busybox/config/findutils/Config.in
+++ b/package/busybox/config/findutils/Config.in
@@ -11,8 +11,18 @@ config BUSYBOX_CONFIG_FIND
help
find is used to search your system to find specified files.
+config BUSYBOX_CONFIG_FEATURE_FIND_PRINT0
+ bool "Enable -print0 option"
+ default y
+ depends on BUSYBOX_CONFIG_FIND
+ help
+ Causes output names to be separated by a null character
+ rather than a newline. This allows names that contain
+ newlines and other whitespace to be more easily
+ interpreted by other programs.
+
config BUSYBOX_CONFIG_FEATURE_FIND_MTIME
- bool " Enable modified time matching (-mtime) option"
+ bool "Enable modified time matching (-mtime) option"
default n
depends on BUSYBOX_CONFIG_FIND
help
@@ -20,7 +30,7 @@ config BUSYBOX_CONFIG_FEATURE_FIND_MTIME
files, in days.
config BUSYBOX_CONFIG_FEATURE_FIND_MMIN
- bool " Enable modified time matching (-min) option"
+ bool "Enable modified time matching (-min) option"
default n
depends on BUSYBOX_CONFIG_FIND
help
@@ -28,14 +38,14 @@ config BUSYBOX_CONFIG_FEATURE_FIND_MMIN
files, in minutes.
config BUSYBOX_CONFIG_FEATURE_FIND_PERM
- bool " Enable permissions matching (-perm) option"
+ bool "Enable permissions matching (-perm) option"
default y
depends on BUSYBOX_CONFIG_FIND
help
Enable searching based on file permissions.
config BUSYBOX_CONFIG_FEATURE_FIND_TYPE
- bool " Enable filetype matching (-type) option"
+ bool "Enable filetype matching (-type) option"
default y
depends on BUSYBOX_CONFIG_FIND
help
@@ -43,7 +53,7 @@ config BUSYBOX_CONFIG_FEATURE_FIND_TYPE
directory, socket, device, etc.).
config BUSYBOX_CONFIG_FEATURE_FIND_XDEV
- bool " Enable stay in filesystem (-xdev) option"
+ bool "Enable stay in filesystem (-xdev) option"
default y
depends on BUSYBOX_CONFIG_FIND
help
@@ -51,7 +61,7 @@ config BUSYBOX_CONFIG_FEATURE_FIND_XDEV
filesystem.
config BUSYBOX_CONFIG_FEATURE_FIND_NEWER
- bool " Enable -newer option for comparing file mtimes"
+ bool "Enable -newer option for comparing file mtimes"
default n
depends on BUSYBOX_CONFIG_FIND
help
@@ -59,14 +69,14 @@ config BUSYBOX_CONFIG_FEATURE_FIND_NEWER
a modified time that is more recent than the specified FILE.
config BUSYBOX_CONFIG_FEATURE_FIND_INUM
- bool " Enable inode number matching (-inum) option"
+ bool "Enable inode number matching (-inum) option"
default n
depends on BUSYBOX_CONFIG_FIND
help
Support the 'find -inum' option for searching by inode number.
config BUSYBOX_CONFIG_FEATURE_FIND_EXEC
- bool " Enable (-exec) option allowing execution of commands"
+ bool "Enable (-exec) option allowing execution of commands"
default y
depends on BUSYBOX_CONFIG_FIND
help
@@ -80,7 +90,7 @@ config BUSYBOX_CONFIG_GREP
grep is used to search files for a specified pattern.
config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS
- bool " Support extended regular expressions (egrep & grep -E)"
+ bool "Support extended regular expressions (egrep & grep -E)"
default y
depends on BUSYBOX_CONFIG_GREP
help
@@ -89,7 +99,7 @@ config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS
and various repetition operators.
config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS
- bool " Alias fgrep to grep -F"
+ bool "Alias fgrep to grep -F"
default y
depends on BUSYBOX_CONFIG_GREP
help
@@ -98,7 +108,7 @@ config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS
grep -F is always builtin, this just creates the fgrep alias.
config BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT
- bool " Enable before and after context flags (-A, -B and -C)"
+ bool "Enable before and after context flags (-A, -B and -C)"
default y
depends on BUSYBOX_CONFIG_GREP
help
@@ -114,7 +124,7 @@ config BUSYBOX_CONFIG_XARGS
every item from standard input.
config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION
- bool " Enable prompt and confirmation option -p"
+ bool "Enable prompt and confirmation option -p"
default y
depends on BUSYBOX_CONFIG_XARGS
help
@@ -122,7 +132,7 @@ config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION
line and read a line from the terminal.
config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES
- bool " Enable support single and double quotes and backslash"
+ bool "Enable support single and double quotes and backslash"
default y
depends on BUSYBOX_CONFIG_XARGS
help
@@ -130,7 +140,7 @@ config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES
and backslash for can use aruments with spaces.
config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT
- bool " Enable support options -x"
+ bool "Enable support options -x"
default y
depends on BUSYBOX_CONFIG_XARGS
help
@@ -138,7 +148,7 @@ config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT
is exceeded.
config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM
- bool " Enable options -0"
+ bool "Enable options -0"
default y
depends on BUSYBOX_CONFIG_XARGS
help
diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in
index 88dcaca2d3..3696f7017f 100644
--- a/package/busybox/config/init/Config.in
+++ b/package/busybox/config/init/Config.in
@@ -11,15 +11,23 @@ config BUSYBOX_CONFIG_INIT
help
init is the first program run when the system boots.
+config BUSYBOX_CONFIG_DEBUG_INIT
+ bool "debugging aid"
+ default n
+ depends on BUSYBOX_CONFIG_INIT
+ help
+ Turn this on to disable all the dangerous
+ rebooting stuff when debugging.
+
config BUSYBOX_CONFIG_FEATURE_USE_INITTAB
- bool " Support reading an inittab file"
+ bool "Support reading an inittab file"
default y
depends on BUSYBOX_CONFIG_INIT
help
Allow init to read an inittab file when the system boot.
config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY
- bool " Support running commands with a controlling-tty"
+ bool "Support running commands with a controlling-tty"
default n
depends on BUSYBOX_CONFIG_INIT
help
@@ -30,14 +38,14 @@ config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY
the console is only accessed during development or for maintenance.
config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET
- bool " Be _extra_ quiet on boot"
+ bool "Be _extra_ quiet on boot"
default n
depends on BUSYBOX_CONFIG_INIT
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)"
+ bool "Support dumping core for child processes (debugging only)"
default n
depends on BUSYBOX_CONFIG_INIT
help
@@ -49,7 +57,7 @@ config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS
config BUSYBOX_CONFIG_FEATURE_INITRD
- bool " Support running init from within an initrd (not initramfs)"
+ bool "Support running init from within an initrd (not initramfs)"
default n
depends on BUSYBOX_CONFIG_INIT
help
@@ -72,9 +80,4 @@ config BUSYBOX_CONFIG_MESG
Mesg controls access to your terminal by others. It is typically
used to allow or disallow other users to write to your terminal
- default y
- help
- Stop all processes and (try to) power off the system.
-
endmenu
-
diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in
index 621d57643f..33a764e35c 100644
--- a/package/busybox/config/loginutils/Config.in
+++ b/package/busybox/config/loginutils/Config.in
@@ -84,14 +84,14 @@ config BUSYBOX_CONFIG_GETTY
getty lets you log in on a tty, it is normally invoked by init.
config BUSYBOX_CONFIG_FEATURE_UTMP
- bool " Support utmp file"
+ bool "Support utmp file"
depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO
default n
help
The file /var/run/utmp is used to track who is currently logged in.
config BUSYBOX_CONFIG_FEATURE_WTMP
- bool " Support wtmp file"
+ bool "Support wtmp file"
depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_LAST
default n
select BUSYBOX_CONFIG_FEATURE_UTMP
@@ -110,7 +110,7 @@ config BUSYBOX_CONFIG_LOGIN
work properly.
config BUSYBOX_CONFIG_FEATURE_SECURETTY
- bool " Support for /etc/securetty"
+ bool "Support for /etc/securetty"
default n
depends on BUSYBOX_CONFIG_LOGIN
help
diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in
index 404170188e..f13d8ba0bc 100644
--- a/package/busybox/config/miscutils/Config.in
+++ b/package/busybox/config/miscutils/Config.in
@@ -34,8 +34,15 @@ config BUSYBOX_CONFIG_CROND
Note that Busybox binary must be setuid root for this applet to
work properly.
+config BUSYBOX_CONFIG_DEBUG_CROND_OPTION
+ bool "Support debug option -d"
+ depends on BUSYBOX_CONFIG_CROND
+ default n
+ help
+ Support option -d to enter debug mode.
+
config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
- bool " Using /usr/sbin/sendmail?"
+ bool "Using /usr/sbin/sendmail?"
default n
depends on BUSYBOX_CONFIG_CROND
help
@@ -57,9 +64,11 @@ config BUSYBOX_CONFIG_DC
precision arithmetic.
config BUSYBOX_CONFIG_DEVFSD
- bool "devfsd"
+ bool "devfsd (obsolete)"
default n
help
+ This is deprecated, and will be going away in a future release.
+
Provides compatibility with old device names on a devfs systems.
You should set it to true if you have devfs enabled.
The following keywords in devsfd.conf are supported:
@@ -74,7 +83,8 @@ config BUSYBOX_CONFIG_DEVFSD_MODLOAD
default n
depends on BUSYBOX_CONFIG_DEVFSD
help
- This actually doesn't work with busybox modutils but needs the real modutils.
+ This actually doesn't work with busybox modutils but needs
+ the external modutils.
config BUSYBOX_CONFIG_DEVFSD_FG_NP
bool "Enables the -fg and -np options"
@@ -91,6 +101,17 @@ config BUSYBOX_CONFIG_DEVFSD_VERBOSE
help
Increases logging to stderr or syslog.
+config BUSYBOX_CONFIG_FEATURE_DEVFS
+ bool " Use devfs names for all devices (obsolete)"
+ default y
+ help
+ 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.
+
+ This is obsolete and will be going away someday. Consider it
+ deprecated.
+
config BUSYBOX_CONFIG_EJECT
bool "eject"
default n
@@ -112,7 +133,7 @@ config BUSYBOX_CONFIG_LESS
a wide array of features, and is an improvement over 'more'.
config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
- bool " Enable bracket searching"
+ bool "Enable bracket searching"
default n
depends on BUSYBOX_CONFIG_LESS
help
@@ -120,7 +141,7 @@ config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
brackets, facilitating programming.
config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
- bool " Enable extra flags"
+ bool "Enable extra flags"
default n
depends on BUSYBOX_CONFIG_LESS
help
@@ -130,7 +151,7 @@ config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
The -m flag enables a simpler status line with a percentage.
config BUSYBOX_CONFIG_FEATURE_LESS_FLAGCS
- bool " Enable flag changes"
+ bool "Enable flag changes"
default n
depends on BUSYBOX_CONFIG_LESS
help
@@ -138,14 +159,14 @@ config BUSYBOX_CONFIG_FEATURE_LESS_FLAGCS
less itself.
config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
- bool " Enable marks"
+ bool "Enable marks"
default n
depends on BUSYBOX_CONFIG_LESS
help
Marks enable positions in a file to be stored for easy reference.
config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
- bool " Enable regular expressions"
+ bool "Enable regular expressions"
default n
depends on BUSYBOX_CONFIG_LESS
help
@@ -160,16 +181,17 @@ config BUSYBOX_CONFIG_HDPARM
BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY option)....
config BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY
- bool " Support obtaining detailed information directly from drives"
+ bool "Support obtaining detailed information directly from drives"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
- Enables the -I and -Istdin options to obtain detailed information
+ Enables the -I and -i options to obtain detailed information
directly from drives about their capabilities and supported ATA
- feature set. Enabling this option will add about 16k...
+ feature set. If no device name is specified, hdparm will read
+ identify data from stdin. Enabling this option will add about 16k...
config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF
- bool " Register an IDE interface (DANGEROUS)"
+ bool "Register an IDE interface (DANGEROUS)"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
@@ -177,7 +199,7 @@ config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF
This is dangerous stuff, so you should probably say N.
config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF
- bool " Un-register an IDE interface (DANGEROUS)"
+ bool "Un-register an IDE interface (DANGEROUS)"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
@@ -185,7 +207,7 @@ config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF
This is dangerous stuff, so you should probably say N.
config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET
- bool " perform device reset (DANGEROUS)"
+ bool "perform device reset (DANGEROUS)"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
@@ -193,7 +215,7 @@ config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET
This is dangerous stuff, so you should probably say N.
config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF
- bool " tristate device for hotswap (DANGEROUS)"
+ bool "tristate device for hotswap (DANGEROUS)"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
@@ -202,7 +224,7 @@ 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 (DANGEROUS)"
default n
depends on BUSYBOX_CONFIG_HDPARM
help
@@ -231,7 +253,7 @@ config BUSYBOX_CONFIG_MAKEDEVS
Device properties are passed as command line arguments.
.
'table' reads device properties from a file or stdin, allowing
- a batch of unrelated devices to be makde with one command.
+ a batch of unrelated devices to be made with one command.
User/group names are allowed as an alternative to uid/gid.
choice
@@ -289,6 +311,18 @@ config BUSYBOX_CONFIG_SETSID
help
setsid runs a program in a new session
+config BUSYBOX_CONFIG_TASKSET
+ bool "taskset"
+ default n
+ help
+ Retrieve or set a processes's CPU affinity
+
+config BUSYBOX_CONFIG_TASKSET
+ bool "taskset"
+ default n
+ help
+ Retrieve or set a processes's CPU affinity (on linux)
+
config BUSYBOX_CONFIG_TIME
bool "time"
default y
diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in
index 7c9f50f16d..8151914100 100644
--- a/package/busybox/config/modutils/Config.in
+++ b/package/busybox/config/modutils/Config.in
@@ -84,7 +84,7 @@ config BUSYBOX_CONFIG_MODPROBE
bool "modprobe"
default n
help
- Handle the loading of modules, and their dependancies on a high
+ Handle the loading of modules, and their dependencies on a high
level.
Note that in the state, modprobe does not understand multiple
@@ -111,7 +111,7 @@ comment "Options common to multiple modutils"
config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE
# Simulate indentation
- bool " Support tainted module checking with new kernels"
+ bool "Support tainted module checking with new kernels"
default n
depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_LSMOD
help
@@ -122,7 +122,7 @@ config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE
config BUSYBOX_CONFIG_FEATURE_2_4_MODULES
# Simulate indentation
- bool " Support version 2.2.x to 2.4.x Linux kernels"
+ bool "Support version 2.2.x to 2.4.x Linux kernels"
default y
depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD
help
@@ -130,7 +130,7 @@ config BUSYBOX_CONFIG_FEATURE_2_4_MODULES
config BUSYBOX_CONFIG_FEATURE_2_6_MODULES
# Simulate indentation
- bool " Support version 2.6.x Linux kernels"
+ bool "Support version 2.6.x Linux kernels"
default y
depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE
help
diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in
index 7e280b76e2..3e0cbc95d4 100644
--- a/package/busybox/config/networking/Config.in
+++ b/package/busybox/config/networking/Config.in
@@ -9,8 +9,8 @@ config BUSYBOX_CONFIG_FEATURE_IPV6
bool "Enable IPv6 support"
default y
help
- Enable IPv6 support to busybox. This makes applets that talk IP
- able to work with IPv6.
+ Enable IPv6 support in busybox.
+ This adds IPv6 support in the networking applets.
config BUSYBOX_CONFIG_ARPING
bool "arping"
@@ -22,7 +22,7 @@ config BUSYBOX_CONFIG_DNSD
bool "dnsd"
default n
help
- Small and static DNS server deamon.
+ Small and static DNS server daemon.
config BUSYBOX_CONFIG_ETHER_WAKE
bool "ether-wake"
@@ -34,8 +34,8 @@ config BUSYBOX_CONFIG_FAKEIDENTD
bool "fakeidentd"
default n
help
- fakeidentd listens to the ident port and returns a set fake
- value whatever it gets.
+ fakeidentd listens on the ident port and returns a predefined
+ fake value on any query.
config BUSYBOX_CONFIG_FTPGET
bool "ftpget"
@@ -49,6 +49,13 @@ config BUSYBOX_CONFIG_FTPPUT
help
Store a remote file via FTP.
+config BUSYBOX_CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS
+ bool "Enable long options in ftpget/ftpput"
+ default n
+ depends on BUSYBOX_CONFIG_GETOPT_LONG && (CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT)
+ help
+ Support long options for the ftpget/ftpput applet.
+
config BUSYBOX_CONFIG_HOSTNAME
bool "hostname"
default n
@@ -61,52 +68,50 @@ config BUSYBOX_CONFIG_HTTPD
help
Serve web pages via an HTTP server.
-config BUSYBOX_CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
- bool " Support using httpd only from inetd"
- default n
- depends on BUSYBOX_CONFIG_HTTPD
- help
- This option disables uid and port options for the httpd applet
- but requires inetd server daemon.
-
-config BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH
- bool " Enable Basic http Authentication"
+config BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
+ bool "Support using httpd as a daemon (not from inetd)"
default y
depends on BUSYBOX_CONFIG_HTTPD
help
- Utilizes password settings from /etc/httpd.conf for basic
- authentication on a per url basis.
+ This option enables uid and port options for the httpd applet,
+ and eliminates the need to be called from the inetd server daemon.
-config BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5
- bool " Support MD5 crypted passwords for http Authentication"
- default y
- depends on BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH
- help
- Enables basic per url authentication from /etc/httpd.conf
- using md5 passwords.
-
-if !CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
- bool " Support reloading the global config file using hup signal"
- default y
- depends on BUSYBOX_CONFIG_HTTPD
+ bool "Support reloading the global config file using hup signal"
+ default n
+ depends on BUSYBOX_CONFIG_HTTPD && BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
help
This option enables processing of SIGHUP to reload cached
configuration settings.
config BUSYBOX_CONFIG_FEATURE_HTTPD_SETUID
- bool " Enable support -u <user> option"
+ bool "Enable support -u <user> option"
default n
- depends on BUSYBOX_CONFIG_HTTPD
+ depends on BUSYBOX_CONFIG_HTTPD && BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
help
This option allows the server to run as a specific user
rather than defaulting to the user that starts the server.
Use of this option requires special privileges to change to a
different user.
-endif
+
+config BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH
+ bool "Enable Basic http Authentication"
+ default y
+ depends on BUSYBOX_CONFIG_HTTPD
+ help
+ Utilizes password settings from /etc/httpd.conf for basic
+ authentication on a per url basis.
+
+config BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5
+ bool "Support MD5 crypted passwords for http Authentication"
+ default y
+ depends on BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH
+ help
+ Enables basic per URL authentication from /etc/httpd.conf
+ using md5 passwords.
config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
- bool " Support loading additional MIME types at run-time"
+ bool "Support loading additional MIME types at run-time"
default y
depends on BUSYBOX_CONFIG_HTTPD
help
@@ -114,26 +119,26 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
run-time to be specified in the configuration file.
config BUSYBOX_CONFIG_FEATURE_HTTPD_CGI
- bool " Support Common Gateway Interface (CGI)"
+ bool "Support Common Gateway Interface (CGI)"
default y
depends on BUSYBOX_CONFIG_HTTPD
help
This option allows scripts and executables to be invoked
- when specific urls are requested.
+ when specific URLs are requested.
config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
- bool " Enable support for running scripts through an interpreter"
+ bool "Enable support for running scripts through an interpreter"
default n
depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI
help
This option enables support for running scripts through an
- interpreter. Turn this on, if you want PHP scripts to work
+ interpreter. Turn this on if you want PHP scripts to work
properly. You need to supply an addition line in your httpd
config file:
*.php:/path/to/your/php
config BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
- bool " Support the REMOTE_PORT environment variable for CGI"
+ bool "Support the REMOTE_PORT environment variable for CGI"
default y
depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI
help
@@ -141,11 +146,11 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
references that contain a unique port number.
config BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR
- bool " Enable the -e option for shell script CGI simplification."
+ bool "Enable the -e option for shell script CGI simplification."
default y
depends on BUSYBOX_CONFIG_HTTPD
help
- After set, this option allows html encoding arbitrary
+ This option allows html encoding arbitrary
strings for display of the browser. Output goes to stdout.
For example, httpd -e "<Hello World>" as
"&#60Hello&#32World&#62".
@@ -157,7 +162,7 @@ config BUSYBOX_CONFIG_IFCONFIG
Ifconfig is used to configure the kernel-resident network interfaces.
config BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS
- bool " Enable status reporting output (+7k)"
+ bool "Enable status reporting output (+7k)"
default y
depends on BUSYBOX_CONFIG_IFCONFIG
help
@@ -165,7 +170,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS
of the currently active interfaces.
config BUSYBOX_CONFIG_FEATURE_IFCONFIG_SLIP
- bool " Enable slip-specific options \"keepalive\" and \"outfill\""
+ bool "Enable slip-specific options \"keepalive\" and \"outfill\""
default n
depends on BUSYBOX_CONFIG_IFCONFIG
help
@@ -173,7 +178,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_SLIP
planning on using serial lines, leave this unchecked.
config BUSYBOX_CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
- bool " Enable options \"mem_start\", \"io_addr\", and \"irq\""
+ bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
default n
depends on BUSYBOX_CONFIG_IFCONFIG
help
@@ -181,7 +186,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
and/or the interrupt line used by the specified device.
config BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW
- bool " Enable option \"hw\" (ether only)"
+ bool "Enable option \"hw\" (ether only)"
default y
depends on BUSYBOX_CONFIG_IFCONFIG
help
@@ -190,7 +195,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW
class.
config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
- bool " Set the broadcast automatically"
+ bool "Set the broadcast automatically"
default y
depends on BUSYBOX_CONFIG_IFCONFIG
help
@@ -215,7 +220,7 @@ config BUSYBOX_CONFIG_IFUPDOWN
standalone utilities.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
- bool " Use ip applet"
+ bool "Use ip applet"
default n
depends on BUSYBOX_CONFIG_IFUPDOWN
help
@@ -223,7 +228,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
than the default of using the older 'ifconfig' and 'route' utilities.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
- bool " Use busybox ip applet"
+ bool "Use busybox ip applet"
default n
depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
select BUSYBOX_CONFIG_IP
@@ -237,7 +242,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
utility or the "ifup" and "ifdown" applets will not work.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
- bool " Use busybox ifconfig and route applets"
+ bool "Use busybox ifconfig and route applets"
default n
depends on BUSYBOX_CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP
select BUSYBOX_CONFIG_IFCONFIG
@@ -251,21 +256,21 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
work.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4
- bool " Enable support for IPv4"
+ bool "Enable support for IPv4"
default n
depends on BUSYBOX_CONFIG_IFUPDOWN
help
If you want busybox to talk IPv4, leave this on.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6
- bool " Enable support for IPv6"
+ bool "Enable support for IPv6"
default n
- depends on BUSYBOX_CONFIG_IFUPDOWN
+ depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_FEATURE_IPV6
help
If you need support for IPv6, turn this option on.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX
- bool " Enable support for IPX"
+ bool "Enable support for IPX"
default n
depends on BUSYBOX_CONFIG_IFUPDOWN
help
@@ -273,7 +278,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX
networks.
config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
- bool " Enable mapping support"
+ bool "Enable mapping support"
default n
depends on BUSYBOX_CONFIG_IFUPDOWN
help
@@ -286,43 +291,43 @@ config BUSYBOX_CONFIG_INETD
help
Internet superserver daemon
-config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO
- bool " Support echo service"
+config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO
+ bool "Support echo service"
default n
depends on BUSYBOX_CONFIG_INETD
help
Echo received data internal inetd service
-config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD
- bool " Support discard service"
+config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
+ bool "Support discard service"
default n
depends on BUSYBOX_CONFIG_INETD
help
Internet /dev/null internal inetd service
-config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME
- bool " Support time service"
+config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME
+ bool "Support time service"
default n
depends on BUSYBOX_CONFIG_INETD
help
Return 32 bit time since 1900 internal inetd service
-config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME
- bool " Support daytime service"
+config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
+ bool "Support daytime service"
default n
depends on BUSYBOX_CONFIG_INETD
help
Return human-readable time internal inetd service
-config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN
- bool " Support chargen service"
+config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
+ bool "Support chargen service"
default n
depends on BUSYBOX_CONFIG_INETD
help
Familiar character generator internal inetd service
config BUSYBOX_CONFIG_FEATURE_INETD_RPC
- bool " Support RPC services"
+ bool "Support RPC services"
default n
depends on BUSYBOX_CONFIG_INETD
help
@@ -337,99 +342,88 @@ config BUSYBOX_CONFIG_IP
utility. You generally don't need "ip" to use busybox with
TCP/IP.
-if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPADDR
- config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
- default n
- comment " address (forced enabled for ipaddr)"
-endif
-if ! (CONFIG_IP && BUSYBOX_CONFIG_IPADDR)
- config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
- bool " address"
- default n
- depends on BUSYBOX_CONFIG_IP
- help
- Address manipulation support for the "ip" applet.
-endif
-
-if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPLINK
- config BUSYBOX_CONFIG_FEATURE_IP_LINK
- default n
- comment " link (forced enabled for iplink)"
-endif
-if !(CONFIG_IP && BUSYBOX_CONFIG_IPLINK)
- config BUSYBOX_CONFIG_FEATURE_IP_LINK
- bool " link"
- default n
- depends on BUSYBOX_CONFIG_IP
- help
- Configure network devices with "ip".
-endif
-
-if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPROUTE
- config BUSYBOX_CONFIG_FEATURE_IP_ROUTE
- default n
- comment " route (forced enabled for iproute)"
-endif
-if !(CONFIG_IP && BUSYBOX_CONFIG_IPROUTE)
- config BUSYBOX_CONFIG_FEATURE_IP_ROUTE
- bool " route"
- default n
- depends on BUSYBOX_CONFIG_IP
- help
- Add support for routing table management to "ip".
-endif
-
-if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPTUNNEL
- config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
- default n
- comment " tunnel (forced enabled for iptunnel)"
-endif
-if !(CONFIG_IP && BUSYBOX_CONFIG_IPTUNNEL)
- config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
- bool " tunnel"
- default n
- depends on BUSYBOX_CONFIG_IP
- help
- Add support for tunneling commands to "ip".
-endif
+config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
+ bool "ip address"
+ default n
+ depends on BUSYBOX_CONFIG_IP
+ help
+ Address manipulation support for the "ip" applet.
-config BUSYBOX_CONFIG_IPCALC
- bool "ipcalc"
+config BUSYBOX_CONFIG_FEATURE_IP_LINK
+ bool "ip link"
default n
+ depends on BUSYBOX_CONFIG_IP
help
- ipcalc takes an IP address and netmask and calculates the
- resulting broadcast, network, and host range.
+ Configure network devices with "ip".
-config BUSYBOX_CONFIG_FEATURE_IPCALC_FANCY
- bool " Fancy IPCALC, more options, adds 1 kbyte"
+config BUSYBOX_CONFIG_FEATURE_IP_ROUTE
+ bool "ip route"
default n
- depends on BUSYBOX_CONFIG_IPCALC
+ depends on BUSYBOX_CONFIG_IP
help
- Adds the options hostname, prefix and silent to the output of "ipcalc".
+ Add support for routing table management to "ip".
-config BUSYBOX_CONFIG_IPADDR
- bool "ipaddr"
+config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
+ bool "ip tunnel"
default n
+ depends on BUSYBOX_CONFIG_IP
help
- Equivalent to selecting address support to "ip", above.
+ Add support for tunneling commands to "ip".
-config BUSYBOX_CONFIG_IPLINK
- bool "iplink"
+config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS
+ bool "Support short forms of ip commands."
default n
+ depends on BUSYBOX_CONFIG_IP
help
- Equivalent to selecting link support to "ip", above.
+ Also support short-form of ip <OBJECT> commands:
+ ip addr -> ipaddr
+ ip link -> iplink
+ ip route -> iproute
+ ip tunnel -> iptunnel
+
+ Say N unless you desparately need the short form of the ip
+ object commands.
+
+config BUSYBOX_CONFIG_IPADDR
+ bool
+ default n
+ depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ADDRESS
+
+config BUSYBOX_CONFIG_IPLINK
+ bool
+ default n
+ depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_LINK
config BUSYBOX_CONFIG_IPROUTE
- bool "iproute"
+ bool
default n
- help
- Equivalent to selecting route support to "ip", above.
+ depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ROUTE
config BUSYBOX_CONFIG_IPTUNNEL
- bool "iptunnel"
+ bool
default n
+ depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
+
+config BUSYBOX_CONFIG_IPCALC
+ bool "ipcalc"
+ default n
+ help
+ ipcalc takes an IP address and netmask and calculates the
+ resulting broadcast, network, and host range.
+
+config BUSYBOX_CONFIG_FEATURE_IPCALC_FANCY
+ bool "Fancy IPCALC, more options, adds 1 kbyte"
+ default n
+ depends on BUSYBOX_CONFIG_IPCALC
+ help
+ Adds the options hostname, prefix and silent to the output of "ipcalc".
+
+config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on BUSYBOX_CONFIG_IPCALC && BUSYBOX_CONFIG_GETOPT_LONG
help
- Equivalent to selecting tunnel support to "ip", above.
+ Support long options for the ipcalc applet.
config BUSYBOX_CONFIG_NAMEIF
bool "nameif"
@@ -486,7 +480,7 @@ config BUSYBOX_CONFIG_PING
elicit an ICMP ECHO_RESPONSE from a host or gateway.
config BUSYBOX_CONFIG_FEATURE_FANCY_PING
- bool " Enable fancy ping output"
+ bool "Enable fancy ping output"
default y
depends on BUSYBOX_CONFIG_PING
help
@@ -501,7 +495,7 @@ config BUSYBOX_CONFIG_PING6
This will give you a ping that can talk IPv6.
config BUSYBOX_CONFIG_FEATURE_FANCY_PING6
- bool " Enable fancy ping6 output"
+ bool "Enable fancy ping6 output"
default y
depends on BUSYBOX_CONFIG_PING6
help
@@ -522,7 +516,7 @@ config BUSYBOX_CONFIG_TELNET
used to test other simple protocols.
config BUSYBOX_CONFIG_FEATURE_TELNET_TTYPE
- bool " Pass TERM type to remote host"
+ bool "Pass TERM type to remote host"
default y
depends on BUSYBOX_CONFIG_TELNET
help
@@ -531,7 +525,7 @@ config BUSYBOX_CONFIG_FEATURE_TELNET_TTYPE
things like ANSI colors and other control sequences behave.
config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN
- bool " Pass USER type to remote host"
+ bool "Pass USER type to remote host"
default n
depends on BUSYBOX_CONFIG_TELNET
help
@@ -583,7 +577,7 @@ config BUSYBOX_CONFIG_TELNETD
config BUSYBOX_CONFIG_FEATURE_TELNETD_INETD
- bool " Support call from inetd only"
+ bool "Support call from inetd only"
default n
depends on BUSYBOX_CONFIG_TELNETD
help
@@ -599,7 +593,7 @@ config BUSYBOX_CONFIG_TFTP
for a network-enabled bootloader.
config BUSYBOX_CONFIG_FEATURE_TFTP_GET
- bool " Enable \"get\" command"
+ bool "Enable \"get\" command"
default n
depends on BUSYBOX_CONFIG_TFTP
help
@@ -607,7 +601,7 @@ config BUSYBOX_CONFIG_FEATURE_TFTP_GET
a client to retrieve a file from a TFTP server.
config BUSYBOX_CONFIG_FEATURE_TFTP_PUT
- bool " Enable \"put\" command"
+ bool "Enable \"put\" command"
default n
depends on BUSYBOX_CONFIG_TFTP
help
@@ -615,14 +609,14 @@ config BUSYBOX_CONFIG_FEATURE_TFTP_PUT
a client to transfer a file to a TFTP server.
config BUSYBOX_CONFIG_FEATURE_TFTP_BLOCKSIZE
- bool " Enable \"blocksize\" command"
+ bool "Enable \"blocksize\" command"
default n
depends on BUSYBOX_CONFIG_TFTP
help
Allow the client to specify the desired block size for transfers.
-config BUSYBOX_CONFIG_FEATURE_TFTP_DEBUG
- bool " Enable debug"
+config BUSYBOX_CONFIG_DEBUG_TFTP
+ bool "Enable debug"
default n
depends on BUSYBOX_CONFIG_TFTP
help
@@ -637,7 +631,7 @@ config BUSYBOX_CONFIG_TRACEROUTE
Utility to trace the route of IP packets
config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE
- bool " Enable verbose output"
+ bool "Enable verbose output"
default y
depends on BUSYBOX_CONFIG_TRACEROUTE
help
@@ -645,7 +639,7 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE
hostnames and ICMP response types.
config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE
- bool " Enable loose source route"
+ bool "Enable loose source route"
default n
depends on BUSYBOX_CONFIG_TRACEROUTE
help
@@ -653,12 +647,13 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE
(8 maximum).
config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP
- bool " Use ICMP instead of UDP"
+ bool "Use ICMP instead of UDP"
default n
depends on BUSYBOX_CONFIG_TRACEROUTE
help
Add feature to allow for ICMP ECHO instead of UDP datagrams.
+source package/busybox/config/networking/udhcp/Config.in
config BUSYBOX_CONFIG_VCONFIG
bool "vconfig"
@@ -674,27 +669,32 @@ config BUSYBOX_CONFIG_WGET
HTTPS, and FTP servers.
config BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR
- bool " Enable a nifty process meter (+2k)"
+ bool "Enable a nifty process meter (+2k)"
default y
depends on BUSYBOX_CONFIG_WGET
help
Enable the transfer progress bar for wget transfers.
config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION
- bool " Enable HTTP authentication"
+ bool "Enable HTTP authentication"
default y
depends on BUSYBOX_CONFIG_WGET
help
Support authenticated HTTP transfers.
config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL
- bool " Enable IPv6 literal addresses"
+ bool "Enable IPv6 literal addresses"
default y
- depends on BUSYBOX_CONFIG_WGET
+ depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_FEATURE_IPV6
help
Support IPv6 address literal notation in URLs.
-source package/busybox/config/networking/udhcp/Config.in
+config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS
+ bool "Enable long options"
+ default y
+ depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_GETOPT_LONG
+ help
+ Support long options for the wget applet.
config BUSYBOX_CONFIG_ZCIP
bool "zcip"
@@ -708,4 +708,3 @@ config BUSYBOX_CONFIG_ZCIP
in the busybox examples.
endmenu
-
diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in
index d15128ce3f..741afa3279 100644
--- a/package/busybox/config/networking/udhcp/Config.in
+++ b/package/busybox/config/networking/udhcp/Config.in
@@ -5,7 +5,7 @@
menu "udhcp Server/Client"
-config BUSYBOX_CONFIG_UDHCPD
+config BUSYBOX_CONFIG_APP_UDHCPD
bool "udhcp Server (udhcpd)"
default n
help
@@ -14,7 +14,7 @@ config BUSYBOX_CONFIG_UDHCPD
See http://udhcp.busybox.net for further details.
-config BUSYBOX_CONFIG_UDHCPC
+config BUSYBOX_CONFIG_APP_UDHCPC
bool "udhcp Client (udhcpc)"
default y
help
@@ -26,10 +26,10 @@ config BUSYBOX_CONFIG_UDHCPC
See http://udhcp.busybox.net for further details.
-config BUSYBOX_CONFIG_DUMPLEASES
+config BUSYBOX_CONFIG_APP_DUMPLEASES
bool "Lease display utility (dumpleases)"
default n
- depends on BUSYBOX_CONFIG_UDHCPD
+ depends on BUSYBOX_CONFIG_APP_UDHCPD
help
dumpleases displays the leases written out by the udhcpd server.
Lease times are stored in the file by time remaining in lease, or
@@ -40,7 +40,7 @@ config BUSYBOX_CONFIG_DUMPLEASES
config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG
bool " Log udhcp messages to syslog (instead of stdout)"
default n
- depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_UDHCPC
+ depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC
help
If selected, udhcpd will log all its messages to syslog, otherwise,
it will attempt to log them to stdout.
@@ -50,7 +50,7 @@ config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG
config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG
bool " Compile udhcp with noisy debugging messages"
default n
- depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_UDHCPC
+ depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC
help
If selected, udhcpd will output extra debugging output. If using
this option, compile uDHCP with "-g", and do not fork the daemon to
diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in
index b94632b467..34d1ace087 100644
--- a/package/busybox/config/procps/Config.in
+++ b/package/busybox/config/procps/Config.in
@@ -51,14 +51,14 @@ config BUSYBOX_CONFIG_PIDOF
those id's on the standard output.
config BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE
- bool " Enable argument for single shot (-s)"
+ bool "Enable argument for single shot (-s)"
default n
depends on BUSYBOX_CONFIG_PIDOF
help
Support argument '-s' for returning only the first pid found.
config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT
- bool " Enable argument for omitting pids (-o)"
+ bool "Enable argument for omitting pids (-o)"
default n
depends on BUSYBOX_CONFIG_PIDOF
help
@@ -73,7 +73,7 @@ config BUSYBOX_CONFIG_PS
ps gives a snapshot of the current processes.
config BUSYBOX_CONFIG_FEATURE_PS_WIDE
- bool " Enable argument for wide output (-w)"
+ bool "Enable argument for wide output (-w)"
default n
depends on BUSYBOX_CONFIG_PS
help
@@ -102,7 +102,7 @@ config BUSYBOX_CONFIG_TOP
system.
config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
- bool " Support showing CPU usage percentage (add 2k bytes)"
+ bool "Support showing CPU usage percentage (add 2k bytes)"
default y
depends on BUSYBOX_CONFIG_TOP
help
diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in
index b9a1b4d7a3..373c7461a4 100644
--- a/package/busybox/config/shell/Config.in
+++ b/package/busybox/config/shell/Config.in
@@ -48,14 +48,14 @@ comment "Ash Shell Options"
depends on BUSYBOX_CONFIG_ASH
config BUSYBOX_CONFIG_ASH_JOB_CONTROL
- bool " Enable Job control"
+ bool "Job control"
default y
depends on BUSYBOX_CONFIG_ASH
help
Enable job control in the ash shell.
config BUSYBOX_CONFIG_ASH_READ_NCHARS
- bool " Enable 'read -n N' and 'read -s' support"
+ bool "'read -n N' and 'read -s' support"
default n
depends on BUSYBOX_CONFIG_ASH
help
@@ -63,7 +63,7 @@ config BUSYBOX_CONFIG_ASH_READ_NCHARS
'read -s' will read without echoing the user's input.
config BUSYBOX_CONFIG_ASH_READ_TIMEOUT
- bool " Enable 'read -t S' support."
+ bool "'read -t S' support."
default y
depends on BUSYBOX_CONFIG_ASH
help
@@ -72,21 +72,21 @@ config BUSYBOX_CONFIG_ASH_READ_TIMEOUT
as a decimal fraction, e.g. 'read -t 2.5 foo'.
config BUSYBOX_CONFIG_ASH_ALIAS
- bool " Enable alias support"
+ bool "alias support"
default y
depends on BUSYBOX_CONFIG_ASH
help
Enable alias support in the ash shell.
config BUSYBOX_CONFIG_ASH_MATH_SUPPORT
- bool " Enable Posix 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"
+ bool "Extend Posix math support to 64 bit"
default n
depends on BUSYBOX_CONFIG_ASH_MATH_SUPPORT
help
@@ -95,52 +95,53 @@ config BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64
large numbers.
config BUSYBOX_CONFIG_ASH_GETOPTS
- bool " Enable getopts builtin to parse positional parameters"
+ bool "Builtin getopt to parse positional parameters"
default y
depends on BUSYBOX_CONFIG_ASH
help
Enable getopts builtin in the ash shell.
-config BUSYBOX_CONFIG_ASH_CMDCMD
- bool " Enable cmdcmd to override shell builtins"
+config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
+ bool "Builtin version of 'echo'"
default y
+ select BUSYBOX_CONFIG_ECHO
depends on BUSYBOX_CONFIG_ASH
help
- Enable support for the ash 'command' builtin, which allows
- you to run the specified command with the specified arguments,
- even when there is an ash builtin command with the same name.
+ Enable support for echo, built in to ash.
-config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
- bool " Enable builtin version of 'echo'"
+config BUSYBOX_CONFIG_ASH_BUILTIN_TEST
+ bool "Builtin version of 'test'"
default y
+ select BUSYBOX_CONFIG_TEST
depends on BUSYBOX_CONFIG_ASH
help
- Enable support for echo, built in to ash.
+ Enable support for test, built in to ash.
-# this entry also appears in coreutils/Config.in, next to the echo applet
-config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO
- bool " Enable echo options (-n and -e)"
+config BUSYBOX_CONFIG_ASH_CMDCMD
+ bool "'command' command to override shell builtins"
default y
- depends on BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
+ depends on BUSYBOX_CONFIG_ASH
help
- This adds options (-n and -e) to echo.
+ Enable support for the ash 'command' builtin, which allows
+ you to run the specified command with the specified arguments,
+ even when there is an ash builtin command with the same name.
config BUSYBOX_CONFIG_ASH_MAIL
- bool " Check for new mail on interactive shells"
+ bool "Check for new mail on interactive shells"
default n
depends on BUSYBOX_CONFIG_ASH
help
Enable "check for new mail" in the ash shell.
config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
- bool " Optimize for size instead of speed"
+ bool "Optimize for size instead of speed"
default y
depends on BUSYBOX_CONFIG_ASH
help
Compile ash for reduced size at the price of speed.
config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
- bool " Enable pseudorandom generator and variable $RANDOM"
+ bool "Pseudorandom generator and variable $RANDOM"
default n
depends on BUSYBOX_CONFIG_ASH
help
@@ -151,7 +152,7 @@ config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
variable will no longer have special treatment.
config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
- bool " Expand prompt string"
+ bool "Expand prompt string"
default n
depends on BUSYBOX_CONFIG_ASH
help
@@ -229,13 +230,18 @@ config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL
is generally used when creating a statically linked version of busybox
for use as a rescue shell, in the event that you screw up your system.
+ Note that this will *also* cause applets to take precedence
+ over shell builtins of the same name. So turning this on will
+ eliminate any performance gained by turning on the builtin "echo"
+ and "test" commands in ash.
+
Note that when using this option, the shell will attempt to directly
run '/bin/busybox'. If you do not have the busybox binary sitting in
that exact location with that exact name, this option will not work at
all.
config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
- bool "command line editing"
+ bool "Command line editing"
default y
depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
help
@@ -250,28 +256,28 @@ config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI
turned on and off with "set -o vi" and "set +o vi".
config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY
- int "history size"
+ int "History size"
default 15
depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
help
Specify command history size in shell.
config BUSYBOX_CONFIG_FEATURE_COMMAND_SAVEHISTORY
- bool "history saving"
+ bool "History saving"
default n
depends on BUSYBOX_CONFIG_ASH && BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
help
Enable history saving in ash shell.
config BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION
- bool "tab completion"
+ bool "Tab completion"
default y
depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
help
Enable tab completion in shell.
config BUSYBOX_CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION
- bool "username completion"
+ bool "Username completion"
default n
depends on BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION
help
diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in
index 209bdff053..f120695664 100644
--- a/package/busybox/config/sysklogd/Config.in
+++ b/package/busybox/config/sysklogd/Config.in
@@ -21,7 +21,7 @@ config BUSYBOX_CONFIG_SYSLOGD
you wait long enough....
config BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE
- bool " Rotate message files"
+ bool "Rotate message files"
default y
depends on BUSYBOX_CONFIG_SYSLOGD
help
@@ -29,7 +29,7 @@ config BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE
on his own. No need to use an external rotatescript.
config BUSYBOX_CONFIG_FEATURE_REMOTE_LOG
- bool " Remote Log support"
+ bool "Remote Log support"
default y
depends on BUSYBOX_CONFIG_SYSLOGD
help
@@ -43,7 +43,7 @@ config BUSYBOX_CONFIG_FEATURE_REMOTE_LOG
by an intruder.
config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG
- bool " Circular Buffer support"
+ bool "Circular Buffer support"
default y
depends on BUSYBOX_CONFIG_SYSLOGD
help
@@ -65,7 +65,7 @@ config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE
used to record system log messages.
config BUSYBOX_CONFIG_LOGREAD
- bool " logread"
+ bool "logread"
default y
depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG
help
@@ -75,7 +75,7 @@ config BUSYBOX_CONFIG_LOGREAD
stored in the syslogd circular buffer.
config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING
- bool " logread double buffering"
+ bool "logread double buffering"
default n
depends on BUSYBOX_CONFIG_LOGREAD
help
diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in
index 474ef02f0d..9081555ef4 100644
--- a/package/busybox/config/util-linux/Config.in
+++ b/package/busybox/config/util-linux/Config.in
@@ -27,7 +27,7 @@ config BUSYBOX_CONFIG_FBSET
if you wish to enable the 'fbset' utility.
config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
- bool " Turn on extra fbset options"
+ bool "Turn on extra fbset options"
default n
depends on BUSYBOX_CONFIG_FBSET
help
@@ -37,7 +37,7 @@ config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
options.
config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
- bool " Turn on fbset readmode support"
+ bool "Turn on fbset readmode support"
default n
depends on BUSYBOX_CONFIG_FBSET
help
@@ -80,7 +80,7 @@ config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS
Enable this option to support large disks > 4GB.
config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
- bool " Write support"
+ bool "Write support"
default n
depends on BUSYBOX_CONFIG_FDISK
help
@@ -89,7 +89,7 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
disabled, you will only be able to view the partition table.
config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
- bool " Support AIX disklabels"
+ bool "Support AIX disklabels"
default n
depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
help
@@ -97,7 +97,7 @@ config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
Most people can safely leave this option disabled.
config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
- bool " Support SGI disklabels"
+ bool "Support SGI disklabels"
default n
depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
help
@@ -105,7 +105,7 @@ config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
Most people can safely leave this option disabled.
config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
- bool " Support SUN disklabels"
+ bool "Support SUN disklabels"
default n
depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
help
@@ -113,7 +113,7 @@ config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
Most people can safely leave this option disabled.
config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
- bool " Support BSD disklabels"
+ bool "Support BSD disklabels"
default n
depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
help
@@ -121,7 +121,7 @@ config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
and define and edit BSD disk slices.
config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
- bool " Support expert mode"
+ bool "Support expert mode"
default n
depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
help
@@ -164,7 +164,7 @@ comment "Minix filesystem support"
depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
config BUSYBOX_CONFIG_FEATURE_MINIX2
- bool " Support Minix fs v2 (fsck_minix/mkfs_minix)"
+ bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
default n
depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
help
@@ -199,17 +199,17 @@ config BUSYBOX_CONFIG_HWCLOCK
shutdown in the hardware clock, so the hardware will keep the
correct time when Linux is _not_ running.
-config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONGOPTIONS
- bool " Support long options (--hctosys,...)"
+config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS
+ bool "Support long options (--hctosys,...)"
default n
- depends on BUSYBOX_CONFIG_HWCLOCK
+ depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG
help
By default, the hwclock utility only uses short options. If you
are overly fond of its long options, such as --hctosys, --utc, etc)
then enable this option.
config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
- bool " Use FHS /var/lib/hwclock/adjtime"
+ bool "Use FHS /var/lib/hwclock/adjtime"
default n
depends on BUSYBOX_CONFIG_HWCLOCK
help
@@ -255,7 +255,7 @@ config BUSYBOX_CONFIG_MDEV
from sysfs.
config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
- bool " Support /etc/mdev.conf"
+ bool "Support /etc/mdev.conf"
default n
depends on BUSYBOX_CONFIG_MDEV
help
@@ -265,16 +265,31 @@ config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
That's device name (with regex match), uid:gid, and permissions.
- Optionally, that can be followed (on the same line) by an asterisk
- and a command line to run after creating the corresponding device(s),
- ala:
-
- hdc root:cdrom 660 *ln -s hdc cdrom
-
Config file parsing stops on the first matching line. If no config
entry is matched, devices are created with default 0:0 660. (Make
the last line match .* to override this.)
+config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
+ bool "Support command execution at device addition/removal"
+ default n
+ depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+ help
+ This adds support for an optional field to /etc/mdev.conf, consisting
+ of a special character and a command line to run after creating the
+ corresponding device(s) and before removing, ala:
+
+ hdc root:cdrom 660 *ln -s $MDEV cdrom
+
+ The $MDEV environment variable is set to the name of the device.
+
+ The special characters and their meanings are:
+ @ Run after creating the device.
+ $ Run before removing the device.
+ * Run both after creating and before removing the device.
+
+ Commands are executed via system() so you need /bin/sh, meaning you
+ probably want to select a default shell in the Shells menu.
+
config BUSYBOX_CONFIG_MKSWAP
bool "mkswap"
default n
@@ -288,6 +303,16 @@ config BUSYBOX_CONFIG_MKSWAP
Once you have created swap space using 'mkswap' you need to enable
the swap space using the 'swapon' utility.
+config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0
+ bool "version 0 support"
+ default n
+ depends on BUSYBOX_CONFIG_MKSWAP
+# depends on BUSYBOX_CONFIG_MKSWAP && BUSYBOX_CONFIG_DEPRECATED
+ help
+ Enable support for the old v0 style.
+ If your kernel is older than 2.1.117, then v0 support is the
+ only option.
+
config BUSYBOX_CONFIG_MORE
bool "more"
default y
@@ -299,7 +324,7 @@ config BUSYBOX_CONFIG_MORE
any need to reading text files, you can leave this disabled.
config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
- bool " Use termios to manipulate the screen"
+ bool "Use termios to manipulate the screen"
default y
depends on BUSYBOX_CONFIG_MORE
help
@@ -321,7 +346,7 @@ config BUSYBOX_CONFIG_MOUNT
the 'mount' utility.
config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
- bool " Support mounting NFS file systems"
+ bool "Support mounting NFS file systems"
default y
depends on BUSYBOX_CONFIG_MOUNT
help
@@ -403,7 +428,7 @@ config BUSYBOX_CONFIG_UMOUNT
also want to enable 'umount'.
config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
- bool " umount -a option"
+ bool "umount -a option"
default y
depends on BUSYBOX_CONFIG_UMOUNT
help
@@ -413,7 +438,7 @@ comment "Common options for mount/umount"
depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
- bool " Support loopback mounts"
+ bool "Support loopback mounts"
default y
depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
help
@@ -429,7 +454,7 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
(If you don't want umount to free the loop device, use "umount -D".)
config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
- bool " Support for the old /etc/mtab file"
+ bool "Support for the old /etc/mtab file"
default n
depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
help
@@ -445,7 +470,11 @@ config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
example a mount under chroot won't update it), can't handle modern
features like separate per-process filesystem namespaces, requires
that your /etc directory be writeable, tends to get easily confused
- by --bind or --move mounts, and so on. (In brief: avoid.)
+ by --bind or --move mounts, won't update if you rename a directory
+ that contains a mount point, and so on. (In brief: avoid.)
+
+ About the only reason to use this is if you've removed /proc from
+ your kernel.
endmenu
diff --git a/package/busybox/patches/100-killall5.patch b/package/busybox/patches/100-killall5.patch
index 6f1585d0d4..9828224800 100644
--- a/package/busybox/patches/100-killall5.patch
+++ b/package/busybox/patches/100-killall5.patch
@@ -1,18 +1,18 @@
-diff -Nur busybox-1.1.1/include/applets.h busybox-1.1.1-owrt/include/applets.h
---- busybox-1.1.1/include/applets.h 2006-03-22 22:16:24.000000000 +0100
-+++ busybox-1.1.1-owrt/include/applets.h 2006-04-01 18:23:43.000000000 +0200
-@@ -154,6 +154,7 @@
- USE_IPTUNNEL(APPLET(iptunnel, iptunnel_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_KILL(APPLET(kill, kill_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_KILLALL(APPLET(killall, kill_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
-+USE_KILLALL5(APPLET(killall5, kill_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
- USE_KLOGD(APPLET(klogd, klogd_main, _BB_DIR_SBIN, _BB_SUID_NEVER))
- USE_LASH(APPLET(lash, lash_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_LAST(APPLET(last, last_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
-diff -Nur busybox-1.1.1/include/usage.h busybox-1.1.1-owrt/include/usage.h
---- busybox-1.1.1/include/usage.h 2006-03-22 22:16:24.000000000 +0100
-+++ busybox-1.1.1-owrt/include/usage.h 2006-04-01 18:22:53.000000000 +0200
-@@ -1598,6 +1598,13 @@
+diff -ruN busybox-1.2.0-old/include/applets.h busybox-1.2.0-new/include/applets.h
+--- busybox-1.2.0-old/include/applets.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0-new/include/applets.h 2006-07-31 00:29:34.000000000 +0200
+@@ -157,6 +157,7 @@
+ USE_IPTUNNEL(APPLET(iptunnel, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_KILL(APPLET(kill, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_KILLALL(APPLET_ODDNAME(killall, kill, _BB_DIR_USR_BIN, _BB_SUID_NEVER, killall))
++USE_KILLALL5(APPLET_ODDNAME(killall5, kill, _BB_DIR_USR_BIN, _BB_SUID_NEVER, killall5))
+ USE_KLOGD(APPLET(klogd, _BB_DIR_SBIN, _BB_SUID_NEVER))
+ USE_LASH(APPLET(lash, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_LAST(APPLET(last, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+diff -ruN busybox-1.2.0-old/include/usage.h busybox-1.2.0-new/include/usage.h
+--- busybox-1.2.0-old/include/usage.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0-new/include/usage.h 2006-07-31 00:25:57.000000000 +0200
+@@ -1503,6 +1503,13 @@
#define killall_example_usage \
"$ killall apache\n"
@@ -26,9 +26,9 @@ diff -Nur busybox-1.1.1/include/usage.h busybox-1.1.1-owrt/include/usage.h
#define klogd_trivial_usage \
"[-c n] [-n]"
#define klogd_full_usage \
-diff -Nur busybox-1.1.1/procps/Config.in busybox-1.1.1-owrt/procps/Config.in
---- busybox-1.1.1/procps/Config.in 2006-03-22 22:16:25.000000000 +0100
-+++ busybox-1.1.1-owrt/procps/Config.in 2006-04-01 18:22:53.000000000 +0200
+diff -ruN busybox-1.2.0-old/procps/Config.in busybox-1.2.0-new/procps/Config.in
+--- busybox-1.2.0-old/procps/Config.in 2006-07-01 00:42:12.000000000 +0200
++++ busybox-1.2.0-new/procps/Config.in 2006-07-31 00:25:57.000000000 +0200
@@ -38,6 +38,11 @@
specified commands. If no signal name is specified, SIGTERM is
sent.
@@ -41,10 +41,10 @@ diff -Nur busybox-1.1.1/procps/Config.in busybox-1.1.1-owrt/procps/Config.in
config CONFIG_PIDOF
bool "pidof"
default n
-diff -Nur busybox-1.1.1/procps/kill.c busybox-1.1.1-owrt/procps/kill.c
---- busybox-1.1.1/procps/kill.c 2006-03-22 22:16:25.000000000 +0100
-+++ busybox-1.1.1-owrt/procps/kill.c 2006-04-01 18:22:53.000000000 +0200
-@@ -34,6 +34,7 @@
+diff -ruN busybox-1.2.0-old/procps/kill.c busybox-1.2.0-new/procps/kill.c
+--- busybox-1.2.0-old/procps/kill.c 2006-07-01 00:42:12.000000000 +0200
++++ busybox-1.2.0-new/procps/kill.c 2006-07-31 00:25:57.000000000 +0200
+@@ -20,6 +20,7 @@
#define KILL 0
#define KILLALL 1
@@ -52,7 +52,7 @@ diff -Nur busybox-1.1.1/procps/kill.c busybox-1.1.1-owrt/procps/kill.c
int kill_main(int argc, char **argv)
{
-@@ -48,6 +49,9 @@
+@@ -34,6 +35,9 @@
#else
whichApp = KILL;
#endif
@@ -62,7 +62,7 @@ diff -Nur busybox-1.1.1/procps/kill.c busybox-1.1.1-owrt/procps/kill.c
/* Parse any options */
if (argc < 2)
-@@ -126,6 +130,20 @@
+@@ -112,6 +116,20 @@
}
}
diff --git a/package/busybox/patches/110-telnetd.patch b/package/busybox/patches/110-telnetd.patch
index f14143aa62..8ebb6de645 100644
--- a/package/busybox/patches/110-telnetd.patch
+++ b/package/busybox/patches/110-telnetd.patch
@@ -1,7 +1,7 @@
-diff -ur busybox-1.1.0/networking/telnetd.c busybox-1.1.0-owrt/networking/telnetd.c
---- busybox-1.1.0/networking/telnetd.c 2006-01-11 06:43:51.000000000 +0100
-+++ busybox-1.1.0-owrt/networking/telnetd.c 2006-01-14 17:41:20.000000000 +0100
-@@ -45,6 +45,7 @@
+diff -ruN busybox-1.2.0-old/networking/telnetd.c busybox-1.2.0-new/networking/telnetd.c
+--- busybox-1.2.0-old/networking/telnetd.c 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/telnetd.c 2006-07-31 10:52:30.000000000 +0200
+@@ -44,6 +44,7 @@
#include <arpa/telnet.h>
#include <ctype.h>
#include <sys/syslog.h>
@@ -9,7 +9,7 @@ diff -ur busybox-1.1.0/networking/telnetd.c busybox-1.1.0-owrt/networking/telnet
#include "busybox.h"
-@@ -394,11 +395,13 @@
+@@ -391,11 +392,13 @@
struct in_addr bind_addr = { .s_addr = 0x0 };
#endif /* CONFIG_FEATURE_TELNETD_INETD */
int c;
@@ -25,7 +25,7 @@ diff -ur busybox-1.1.0/networking/telnetd.c busybox-1.1.0-owrt/networking/telnet
#endif /* CONFIG_FEATURE_TELNETD_INETD */
int maxlen, w, r;
-@@ -413,6 +416,9 @@
+@@ -410,6 +413,9 @@
case 'f':
issuefile = optarg;
break;
@@ -35,17 +35,17 @@ diff -ur busybox-1.1.0/networking/telnetd.c busybox-1.1.0-owrt/networking/telnet
case 'l':
loginpath = optarg;
break;
-@@ -465,6 +471,13 @@
+@@ -459,6 +465,13 @@
sa.sin_addr = bind_addr;
#endif
-+ /* Set it to listen on the specified interface */
-+ if (interface_name) {
-+ strncpy(interface.ifr_ifrn.ifrn_name, interface_name, IFNAMSIZ);
-+ (void)setsockopt(master_fd, SOL_SOCKET,
-+ SO_BINDTODEVICE, &interface, sizeof(interface));
-+ }
-+
- if (bind(master_fd, (struct sockaddr *) &sa, sizeof(sa)) < 0) {
- bb_perror_msg_and_die("bind");
- }
++ /* Set it to listen on the specified interface */
++ if (interface_name) {
++ strncpy(interface.ifr_ifrn.ifrn_name, interface_name, IFNAMSIZ);
++ (void)setsockopt(master_fd, SOL_SOCKET,
++ SO_BINDTODEVICE, &interface, sizeof(interface));
++ }
++
+ bb_xbind(master_fd, (struct sockaddr *) &sa, sizeof(sa));
+ bb_xlisten(master_fd, 1);
+ bb_xdaemon(0, 0);
diff --git a/package/busybox/patches/150-udhcp-release.patch b/package/busybox/patches/150-udhcp-release.patch
index 6420ae6a6a..1e1c00ef29 100644
--- a/package/busybox/patches/150-udhcp-release.patch
+++ b/package/busybox/patches/150-udhcp-release.patch
@@ -1,7 +1,7 @@
-diff -Nur busybox-1.1.1/include/usage.h busybox-1.1.1-owrt/include/usage.h
---- busybox-1.1.1/include/usage.h 2006-04-01 18:26:21.000000000 +0200
-+++ busybox-1.1.1-owrt/include/usage.h 2006-04-01 18:27:45.000000000 +0200
-@@ -3268,6 +3268,7 @@
+diff -ruN busybox-1.2.0-old/include/usage.h busybox-1.2.0-new/include/usage.h
+--- busybox-1.2.0-old/include/usage.h 2006-07-31 10:47:56.000000000 +0200
++++ busybox-1.2.0-new/include/usage.h 2006-07-31 11:08:49.000000000 +0200
+@@ -3190,6 +3190,7 @@
"\t-n,\t--now\tExit with failure if lease cannot be immediately negotiated\n" \
"\t-p,\t--pidfile=file\tStore process ID of daemon in file\n" \
"\t-q,\t--quit\tQuit after obtaining lease\n" \
@@ -9,10 +9,10 @@ diff -Nur busybox-1.1.1/include/usage.h busybox-1.1.1-owrt/include/usage.h
"\t-r,\t--request=IP\tIP address to request (default: none)\n" \
"\t-s,\t--script=file\tRun file at dhcp events (default: /usr/share/udhcpc/default.script)\n" \
"\t-t,\t--retries=NUM\tSend up to NUM request packets\n"\
-diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/udhcp/dhcpc.c
---- busybox-1.1.1/networking/udhcp/dhcpc.c 2006-03-22 22:16:19.000000000 +0100
-+++ busybox-1.1.1-owrt/networking/udhcp/dhcpc.c 2006-04-01 18:28:19.000000000 +0200
-@@ -49,6 +49,7 @@
+diff -ruN busybox-1.2.0-old/networking/udhcp/dhcpc.c busybox-1.2.0-new/networking/udhcp/dhcpc.c
+--- busybox-1.2.0-old/networking/udhcp/dhcpc.c 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/udhcp/dhcpc.c 2006-07-31 11:08:49.000000000 +0200
+@@ -47,6 +47,7 @@
.abort_if_no_lease = 0,
.foreground = 0,
.quit_after_lease = 0,
@@ -20,15 +20,7 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
.background_if_no_lease = 0,
.interface = "eth0",
.pidfile = NULL,
-@@ -82,6 +83,7 @@
- " immediately negotiated.\n"
- " -p, --pidfile=file Store process ID of daemon in file\n"
- " -q, --quit Quit after obtaining lease\n"
-+" -R, --release Release IP on quit\n"
- " -r, --request=IP IP address to request (default: none)\n"
- " -s, --script=file Run file at dhcp events (default:\n"
- " " DEFAULT_SCRIPT ")\n"
-@@ -203,6 +205,7 @@
+@@ -163,6 +164,7 @@
{"now", no_argument, 0, 'n'},
{"pidfile", required_argument, 0, 'p'},
{"quit", no_argument, 0, 'q'},
@@ -36,7 +28,7 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
{"request", required_argument, 0, 'r'},
{"script", required_argument, 0, 's'},
{"timeout", required_argument, 0, 'T'},
-@@ -214,7 +217,7 @@
+@@ -174,7 +176,7 @@
/* get options */
while (1) {
int option_index = 0;
@@ -45,7 +37,7 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
if (c == -1) break;
switch (c) {
-@@ -284,6 +287,9 @@
+@@ -244,6 +246,9 @@
case 'q':
client_config.quit_after_lease = 1;
break;
@@ -55,7 +47,7 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
case 'r':
requested_ip = inet_addr(optarg);
break;
-@@ -527,8 +533,11 @@
+@@ -488,8 +493,11 @@
state = BOUND;
change_mode(LISTEN_NONE);
@@ -68,7 +60,7 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
if (!client_config.foreground)
client_background();
-@@ -553,12 +562,13 @@
+@@ -514,12 +522,13 @@
case SIGUSR1:
perform_renew();
break;
@@ -85,10 +77,10 @@ diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.c busybox-1.1.1-owrt/networking/u
}
} else if (retval == -1 && errno == EINTR) {
/* a signal was caught */
-diff -Nur busybox-1.1.1/networking/udhcp/dhcpc.h busybox-1.1.1-owrt/networking/udhcp/dhcpc.h
---- busybox-1.1.1/networking/udhcp/dhcpc.h 2006-03-22 22:16:19.000000000 +0100
-+++ busybox-1.1.1-owrt/networking/udhcp/dhcpc.h 2006-04-01 18:27:45.000000000 +0200
-@@ -19,6 +19,7 @@
+diff -ruN busybox-1.2.0-old/networking/udhcp/dhcpc.h busybox-1.2.0-new/networking/udhcp/dhcpc.h
+--- busybox-1.2.0-old/networking/udhcp/dhcpc.h 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/udhcp/dhcpc.h 2006-07-31 11:08:49.000000000 +0200
+@@ -18,6 +18,7 @@
struct client_config_t {
char foreground; /* Do not fork */
char quit_after_lease; /* Quit after obtaining lease */
diff --git a/package/busybox/patches/300-netmsg.patch b/package/busybox/patches/300-netmsg.patch
index ad4fcd04d0..428e321390 100644
--- a/package/busybox/patches/300-netmsg.patch
+++ b/package/busybox/patches/300-netmsg.patch
@@ -1,21 +1,23 @@
-
- Copyright (C) 2006 OpenWrt.org
-
-diff -Nur busybox-1.1.1/include/applets.h busybox-1.1.1-owrt/include/applets.h
---- busybox-1.1.1/include/applets.h 2006-04-01 18:26:21.000000000 +0200
-+++ busybox-1.1.1-owrt/include/applets.h 2006-04-01 18:36:28.000000000 +0200
-@@ -197,6 +197,7 @@
- USE_MV(APPLET(mv, mv_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_NAMEIF(APPLET(nameif, nameif_main, _BB_DIR_SBIN, _BB_SUID_NEVER))
- USE_NC(APPLET(nc, nc_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
-+USE_NETMSG(APPLET_NOUSAGE(netmsg, netmsg_main, _BB_DIR_BIN, _BB_SUID_ALWAYS))
- USE_NETSTAT(APPLET(netstat, netstat_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_NICE(APPLET(nice, nice_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_NOHUP(APPLET(nohup, nohup_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
-diff -Nur busybox-1.1.1/networking/Config.in busybox-1.1.1-owrt/networking/Config.in
---- busybox-1.1.1/networking/Config.in 2006-03-22 22:16:19.000000000 +0100
-+++ busybox-1.1.1-owrt/networking/Config.in 2006-04-01 18:35:32.000000000 +0200
-@@ -451,6 +451,12 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+diff -ruN busybox-1.2.0-old/include/applets.h busybox-1.2.0-new/include/applets.h
+--- busybox-1.2.0-old/include/applets.h 2006-07-31 10:47:56.000000000 +0200
++++ busybox-1.2.0-new/include/applets.h 2006-07-31 11:21:00.000000000 +0200
+@@ -200,6 +200,7 @@
+ 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))
++USE_NETMSG(APPLET_NOUSAGE(netmsg, netmsg, _BB_DIR_BIN, _BB_SUID_ALWAYS))
+ USE_NETSTAT(APPLET(netstat, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_NICE(APPLET(nice, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_NOHUP(APPLET(nohup, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+diff -ruN busybox-1.2.0-old/networking/Config.in busybox-1.2.0-new/networking/Config.in
+--- busybox-1.2.0-old/networking/Config.in 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/Config.in 2006-07-31 11:18:01.000000000 +0200
+@@ -445,6 +445,12 @@
help
A simple Unix utility which reads and writes data across network
connections.
@@ -28,9 +30,9 @@ diff -Nur busybox-1.1.1/networking/Config.in busybox-1.1.1-owrt/networking/Confi
config CONFIG_NC_GAPING_SECURITY_HOLE
bool "gaping security hole"
-diff -Nur busybox-1.1.1/networking/Makefile.in busybox-1.1.1-owrt/networking/Makefile.in
---- busybox-1.1.1/networking/Makefile.in 2006-03-22 22:16:19.000000000 +0100
-+++ busybox-1.1.1-owrt/networking/Makefile.in 2006-04-01 18:35:32.000000000 +0200
+diff -ruN busybox-1.2.0-old/networking/Makefile.in busybox-1.2.0-new/networking/Makefile.in
+--- busybox-1.2.0-old/networking/Makefile.in 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/Makefile.in 2006-07-31 11:18:01.000000000 +0200
@@ -30,6 +30,7 @@
NETWORKING-$(CONFIG_IPTUNNEL) += iptunnel.o
NETWORKING-$(CONFIG_NAMEIF) += nameif.o
@@ -39,9 +41,9 @@ diff -Nur busybox-1.1.1/networking/Makefile.in busybox-1.1.1-owrt/networking/Mak
NETWORKING-$(CONFIG_NETSTAT) += netstat.o
NETWORKING-$(CONFIG_NSLOOKUP) += nslookup.o
NETWORKING-$(CONFIG_PING) += ping.o
-diff -Nur busybox-1.1.1/networking/netmsg.c busybox-1.1.1-owrt/networking/netmsg.c
---- busybox-1.1.1/networking/netmsg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.1-owrt/networking/netmsg.c 2006-04-01 18:35:32.000000000 +0200
+diff -ruN busybox-1.2.0-old/networking/netmsg.c busybox-1.2.0-new/networking/netmsg.c
+--- busybox-1.2.0-old/networking/netmsg.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0-new/networking/netmsg.c 2006-07-31 11:18:01.000000000 +0200
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
diff --git a/package/busybox/patches/320-httpd_address_binding.patch b/package/busybox/patches/320-httpd_address_binding.patch
index b9503aa02a..68487b88c7 100644
--- a/package/busybox/patches/320-httpd_address_binding.patch
+++ b/package/busybox/patches/320-httpd_address_binding.patch
@@ -1,28 +1,20 @@
-
- Copyright (C) 2006 OpenWrt.org
-
---- busybox-1.1.1/networking/httpd.c 2006-03-22 22:16:19.000000000 +0100
-+++ busybox-1.1.1.new/networking/httpd.c 2006-04-01 19:41:42.150744624 +0200
-@@ -110,6 +110,7 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+diff -ruN busybox-1.2.0-old/networking/httpd.c busybox-1.2.0-new/networking/httpd.c
+--- busybox-1.2.0-old/networking/httpd.c 2006-07-01 00:42:02.000000000 +0200
++++ busybox-1.2.0-new/networking/httpd.c 2006-08-01 10:06:58.000000000 +0200
+@@ -99,6 +99,7 @@
#include <sys/types.h>
#include <sys/socket.h> /* for connect and socket*/
#include <netinet/in.h> /* for sockaddr_in */
+#include <arpa/inet.h>
- #include <sys/time.h>
#include <sys/stat.h>
#include <sys/wait.h>
-@@ -204,8 +205,8 @@
-
- void bb_show_usage(void)
- {
-- fprintf(stderr, "Usage: %s [-p <port>] [-c configFile] [-d/-e <string>] "
-- "[-r realm] [-u user] [-h homedir]\n", bb_applet_name);
-+ fprintf(stderr, "Usage: %s [-p <port>] [-l <IP address>] [-c configFile]"
-+ "[-d/-e <string>] [-r realm] [-u user] [-h homedir]\n", bb_applet_name);
- exit(1);
- }
- #endif
-@@ -255,6 +256,7 @@
+ #include <fcntl.h> /* for open modes */
+@@ -165,6 +166,7 @@
#endif
unsigned port; /* server initial port and for
set env REMOTE_PORT */
@@ -30,7 +22,7 @@
union HTTPD_FOUND {
const char *found_mime_type;
const char *found_moved_temporarily;
-@@ -958,7 +960,10 @@
+@@ -868,7 +870,10 @@
/* inet_addr() returns a value that is already in network order */
memset(&lsocket, 0, sizeof(lsocket));
lsocket.sin_family = AF_INET;
@@ -39,61 +31,61 @@
+ if (config->address != NULL) lsocket.sin_addr.s_addr = ((struct in_addr *) ((gethostbyname(config->address))->h_addr))->s_addr;
+ else lsocket.sin_addr.s_addr = htons(INADDR_ANY);
+ }
- lsocket.sin_port = htons(config->port) ;
- fd = socket(AF_INET, SOCK_STREAM, 0);
- if (fd >= 0) {
-@@ -1996,6 +2001,7 @@
+ lsocket.sin_port = htons(config->port);
+ fd = bb_xsocket(AF_INET, SOCK_STREAM, 0);
+ /* tell the OS it's OK to reuse a previous address even though */
+@@ -1899,6 +1904,7 @@
USE_FEATURE_HTTPD_AUTH_MD5(m_opt_md5,)
USE_FEATURE_HTTPD_SETUID(u_opt_setuid,)
- SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(p_opt_port,)
-+ SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(l_opt_addr,)
+ USE_FEATURE_HTTPD_WITHOUT_INETD(p_opt_port,)
++ USE_FEATURE_HTTPD_WITHOUT_INETD(l_opt_addr,)
};
static const char httpd_opts[]="c:d:h:"
-@@ -2003,7 +2009,7 @@
+@@ -1906,7 +1912,7 @@
USE_FEATURE_HTTPD_BASIC_AUTH("r:")
USE_FEATURE_HTTPD_AUTH_MD5("m:")
USE_FEATURE_HTTPD_SETUID("u:")
-- SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY("p:");
-+ SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY("p:l:");
+- USE_FEATURE_HTTPD_WITHOUT_INETD("p:");
++ USE_FEATURE_HTTPD_WITHOUT_INETD("p:l:");
#define OPT_CONFIG_FILE (1<<c_opt_config_file)
#define OPT_DECODE_URL (1<<d_opt_decode_url)
-@@ -2024,6 +2030,8 @@
- #define OPT_PORT SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY((1<<p_opt_port)) \
- USE_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(0)
+@@ -1927,6 +1933,8 @@
+ #define OPT_PORT USE_FEATURE_HTTPD_WITHOUT_INETD((1<<p_opt_port)) \
+ SKIP_FEATURE_HTTPD_WITHOUT_INETD(0)
-+#define OPT_ADDRESS SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY((1<<l_opt_addr)) \
-+ USE_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(0)
++#define OPT_ADDRESS USE_FEATURE_HTTPD_WITHOUT_INETD((1<<l_opt_addr)) \
++ SKIP_FEATURE_HTTPD_WITHOUT_INETD(0)
- #ifdef HTTPD_STANDALONE
- int main(int argc, char *argv[])
-@@ -2036,6 +2044,7 @@
+ int httpd_main(int argc, char *argv[])
+ {
+@@ -1935,6 +1943,7 @@
char *url_for_decode;
USE_FEATURE_HTTPD_ENCODE_URL_STR(const char *url_for_encode;)
- SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(const char *s_port;)
-+ SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(const char *s_addr;)
- SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(int server;)
+ USE_FEATURE_HTTPD_WITHOUT_INETD(const char *s_port;)
++ USE_FEATURE_HTTPD_WITHOUT_INETD(const char *s_addr;)
+ USE_FEATURE_HTTPD_WITHOUT_INETD(int server;)
USE_FEATURE_HTTPD_SETUID(const char *s_uid;)
-@@ -2050,6 +2059,7 @@
+@@ -1949,6 +1958,7 @@
- #ifndef CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
+ #ifdef CONFIG_FEATURE_HTTPD_WITHOUT_INETD
config->port = 80;
+ config->address = "";
#endif
config->ContentLength = -1;
-@@ -2061,6 +2071,7 @@
+@@ -1960,6 +1970,7 @@
USE_FEATURE_HTTPD_AUTH_MD5(, &pass)
USE_FEATURE_HTTPD_SETUID(, &s_uid)
- SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(, &s_port)
-+ SKIP_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY(, &s_addr)
+ USE_FEATURE_HTTPD_WITHOUT_INETD(, &s_port)
++ USE_FEATURE_HTTPD_WITHOUT_INETD(, &s_addr)
);
if(opt & OPT_DECODE_URL) {
-@@ -2082,6 +2093,8 @@
- #ifndef CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
+@@ -1981,6 +1992,8 @@
+ #ifdef CONFIG_FEATURE_HTTPD_WITHOUT_INETD
if(opt & OPT_PORT)
config->port = bb_xgetlarg(s_port, 10, 1, 0xffff);
+ if (opt & OPT_ADDRESS)
diff --git a/package/busybox/patches/340-lock_util.patch b/package/busybox/patches/340-lock_util.patch
index ad594e68db..a86948d597 100644
--- a/package/busybox/patches/340-lock_util.patch
+++ b/package/busybox/patches/340-lock_util.patch
@@ -1,21 +1,23 @@
-
- Copyright (C) 2006 OpenWrt.org
-
-diff -urN busybox.old/include/applets.h busybox.dev/include/applets.h
---- busybox.old/include/applets.h 2006-04-05 01:06:29.000000000 +0200
-+++ busybox.dev/include/applets.h 2006-04-05 01:19:09.000000000 +0200
-@@ -167,6 +167,7 @@
- USE_LN(APPLET(ln, ln_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_LOADFONT(APPLET(loadfont, loadfont_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
- USE_LOADKMAP(APPLET(loadkmap, loadkmap_main, _BB_DIR_SBIN, _BB_SUID_NEVER))
-+USE_LOCK(APPLET_NOUSAGE(lock, lock_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_LOGGER(APPLET(logger, logger_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
- USE_LOGIN(APPLET(login, login_main, _BB_DIR_BIN, _BB_SUID_ALWAYS))
- USE_LOGNAME(APPLET(logname, logname_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
-diff -urN busybox.old/miscutils/Config.in busybox.dev/miscutils/Config.in
---- busybox.old/miscutils/Config.in 2006-03-22 22:16:24.000000000 +0100
-+++ busybox.dev/miscutils/Config.in 2006-04-05 01:07:12.000000000 +0200
-@@ -209,6 +209,12 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+diff -ruN busybox-1.2.0-old/include/applets.h busybox-1.2.0-new/include/applets.h
+--- busybox-1.2.0-old/include/applets.h 2006-07-31 11:21:00.000000000 +0200
++++ busybox-1.2.0-new/include/applets.h 2006-08-01 10:21:15.000000000 +0200
+@@ -169,6 +169,7 @@
+ USE_LN(APPLET(ln, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_LOADFONT(APPLET(loadfont, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+ USE_LOADKMAP(APPLET(loadkmap, _BB_DIR_SBIN, _BB_SUID_NEVER))
++USE_LOCK(APPLET_NOUSAGE(lock, lock, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_LOGGER(APPLET(logger, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+ USE_LOGIN(APPLET(login, _BB_DIR_BIN, _BB_SUID_ALWAYS))
+ USE_LOGNAME(APPLET(logname, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+diff -ruN busybox-1.2.0-old/miscutils/Config.in busybox-1.2.0-new/miscutils/Config.in
+--- busybox-1.2.0-old/miscutils/Config.in 2006-07-01 00:42:09.000000000 +0200
++++ busybox-1.2.0-new/miscutils/Config.in 2006-08-01 10:21:15.000000000 +0200
+@@ -231,6 +231,12 @@
Enables the 'hdparm -d' option to get/set using_dma flag.
This is dangerous stuff, so you should probably say N.
@@ -28,20 +30,9 @@ diff -urN busybox.old/miscutils/Config.in busybox.dev/miscutils/Config.in
config CONFIG_MAKEDEVS
bool "makedevs"
default n
-diff -urN busybox.old/miscutils/Makefile.in busybox.dev/miscutils/Makefile.in
---- busybox.old/miscutils/Makefile.in 2006-03-22 22:16:24.000000000 +0100
-+++ busybox.dev/miscutils/Makefile.in 2006-04-05 01:10:50.000000000 +0200
-@@ -20,6 +20,7 @@
- MISCUTILS-$(CONFIG_EJECT) += eject.o
- MISCUTILS-$(CONFIG_HDPARM) += hdparm.o
- MISCUTILS-$(CONFIG_LAST) += last.o
-+MISCUTILS-$(CONFIG_LOCK) += lock.o
- MISCUTILS-${CONFIG_LESS} += less.o
- MISCUTILS-$(CONFIG_MAKEDEVS) += makedevs.o
- MISCUTILS-$(CONFIG_MOUNTPOINT) += mountpoint.o
-diff -urN busybox.old/miscutils/lock.c busybox.dev/miscutils/lock.c
---- busybox.old/miscutils/lock.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox.dev/miscutils/lock.c 2006-04-05 01:07:12.000000000 +0200
+diff -ruN busybox-1.2.0-old/miscutils/lock.c busybox-1.2.0-new/miscutils/lock.c
+--- busybox-1.2.0-old/miscutils/lock.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0-new/miscutils/lock.c 2006-08-01 10:21:15.000000000 +0200
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
@@ -176,3 +167,14 @@ diff -urN busybox.old/miscutils/lock.c busybox.dev/miscutils/lock.c
+ else
+ return do_lock();
+}
+diff -ruN busybox-1.2.0-old/miscutils/Makefile.in busybox-1.2.0-new/miscutils/Makefile.in
+--- busybox-1.2.0-old/miscutils/Makefile.in 2006-07-01 00:42:09.000000000 +0200
++++ busybox-1.2.0-new/miscutils/Makefile.in 2006-08-01 10:21:15.000000000 +0200
+@@ -20,6 +20,7 @@
+ MISCUTILS-$(CONFIG_EJECT) += eject.o
+ MISCUTILS-$(CONFIG_HDPARM) += hdparm.o
+ MISCUTILS-$(CONFIG_LAST) += last.o
++MISCUTILS-$(CONFIG_LOCK) += lock.o
+ MISCUTILS-${CONFIG_LESS} += less.o
+ MISCUTILS-$(CONFIG_MAKEDEVS) += makedevs.o
+ MISCUTILS-$(CONFIG_MOUNTPOINT) += mountpoint.o
diff --git a/package/busybox/patches/911-ipkg.patch b/package/busybox/patches/911-ipkg.patch
index 1d7a4e3574..1824e03c42 100644
--- a/package/busybox/patches/911-ipkg.patch
+++ b/package/busybox/patches/911-ipkg.patch
@@ -1,21 +1,13 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
#
# add ipkg support to busybox
#
-diff -ruN busybox-1.1.2-orig/Makefile busybox-1.1.2+ipkg-0.99.162/Makefile
---- busybox-1.1.2-orig/Makefile 2006-04-10 21:45:46.000000000 +0200
-+++ busybox-1.1.2+ipkg-0.99.162/Makefile 2006-05-09 02:06:48.000000000 +0200
-@@ -25,7 +25,7 @@
- export srctree=$(top_srcdir)
- vpath %/Config.in $(srctree)
-
--DIRS:=applets archival archival/libunarchive coreutils console-tools \
-+DIRS:=applets archival archival/libipkg archival/libunarchive coreutils console-tools \
- debianutils editors findutils init miscutils modutils networking \
- networking/libiproute networking/udhcp procps loginutils shell \
- sysklogd util-linux e2fsprogs libpwdgrp coreutils/libcoreutils libbb
-diff -ruN busybox-1.1.2-orig/archival/Config.in busybox-1.1.2+ipkg-0.99.162/archival/Config.in
---- busybox-1.1.2-orig/archival/Config.in 2006-03-22 22:16:20.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/Config.in 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/Config.in busybox-1.2.0+ipkg-0.99.162/archival/Config.in
+--- busybox-1.2.0-orig/archival/Config.in 2006-07-01 00:42:04.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/archival/Config.in 2006-07-22 16:31:25.000000000 +0200
@@ -121,6 +121,14 @@
gzip is used to compress files.
It's probably the most widely used UNIX compression program.
@@ -31,21 +23,10 @@ diff -ruN busybox-1.1.2-orig/archival/Config.in busybox-1.1.2+ipkg-0.99.162/arch
config CONFIG_RPM2CPIO
bool "rpm2cpio"
default n
-diff -ruN busybox-1.1.2-orig/archival/Makefile.in busybox-1.1.2+ipkg-0.99.162/archival/Makefile.in
---- busybox-1.1.2-orig/archival/Makefile.in 2006-03-22 22:16:20.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/Makefile.in 2006-05-09 02:06:48.000000000 +0200
-@@ -20,6 +20,7 @@
- ARCHIVAL-$(CONFIG_DPKG_DEB) += dpkg_deb.o
- ARCHIVAL-$(CONFIG_GUNZIP) += gunzip.o
- ARCHIVAL-$(CONFIG_GZIP) += gzip.o
-+ARCHIVAL-$(CONFIG_IPKG) += ipkg.o
- ARCHIVAL-$(CONFIG_RPM2CPIO) += rpm2cpio.o
- ARCHIVAL-$(CONFIG_RPM) += rpm.o
- ARCHIVAL-$(CONFIG_TAR) += tar.o
-diff -ruN busybox-1.1.2-orig/archival/dpkg.c busybox-1.1.2+ipkg-0.99.162/archival/dpkg.c
---- busybox-1.1.2-orig/archival/dpkg.c 2006-03-22 22:16:20.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/dpkg.c 2006-05-09 02:06:48.000000000 +0200
-@@ -1530,6 +1530,10 @@
+diff -ruN busybox-1.2.0-orig/archival/dpkg.c busybox-1.2.0+ipkg-0.99.162/archival/dpkg.c
+--- busybox-1.2.0-orig/archival/dpkg.c 2006-07-01 00:42:04.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/archival/dpkg.c 2006-07-22 16:31:25.000000000 +0200
+@@ -1430,6 +1430,10 @@
return(ar_handle->sub_archive->buffer);
}
@@ -56,7 +37,7 @@ diff -ruN busybox-1.1.2-orig/archival/dpkg.c busybox-1.1.2+ipkg-0.99.162/archiva
static void data_extract_all_prefix(archive_handle_t *archive_handle)
{
char *name_ptr = archive_handle->file_header->name;
-@@ -1544,6 +1548,8 @@
+@@ -1442,6 +1446,8 @@
return;
}
@@ -65,9 +46,9 @@ diff -ruN busybox-1.1.2-orig/archival/dpkg.c busybox-1.1.2+ipkg-0.99.162/archiva
static void unpack_package(deb_file_t *deb_file)
{
const char *package_name = name_hashtable[package_hashtable[deb_file->package]->name];
-diff -ruN busybox-1.1.2-orig/archival/ipkg.c busybox-1.1.2+ipkg-0.99.162/archival/ipkg.c
---- busybox-1.1.2-orig/archival/ipkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/ipkg.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/ipkg.c busybox-1.2.0+ipkg-0.99.162/archival/ipkg.c
+--- busybox-1.2.0-orig/archival/ipkg.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/ipkg.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,26 @@
+/* ipkg.c - the itsy package management system
+
@@ -95,134 +76,9 @@ diff -ruN busybox-1.1.2-orig/archival/ipkg.c busybox-1.1.2+ipkg-0.99.162/archiva
+{
+ return ipkg_op(argc, argv);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/Makefile busybox-1.1.2+ipkg-0.99.162/archival/libipkg/Makefile
---- busybox-1.1.2-orig/archival/libipkg/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/Makefile 2006-05-09 02:06:48.000000000 +0200
-@@ -0,0 +1,32 @@
-+# Makefile for busybox
-+#
-+# Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+#
-+
-+top_srcdir=../..
-+top_builddir=../..
-+srcdir=$(top_srcdir)/archival/libipkg
-+LIBIPKG_DIR:=./
-+include $(top_builddir)/Rules.mak
-+include $(top_builddir)/.config
-+include $(srcdir)/Makefile.in
-+all: $(libraries-y)
-+-include $(top_builddir)/.depend
-+
-+clean:
-+ rm -f *.o *.a $(AR_TARGET)
-+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/Makefile.in busybox-1.1.2+ipkg-0.99.162/archival/libipkg/Makefile.in
---- busybox-1.1.2-orig/archival/libipkg/Makefile.in 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/Makefile.in 2006-05-09 02:06:48.000000000 +0200
-@@ -0,0 +1,85 @@
-+# Makefile for busybox
-+#
-+# Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+#
-+
-+LIBIPKG_AR:=libipkg.a
-+ifndef $(LIBIPKG_DIR)
-+LIBIPKG_DIR:=$(top_builddir)/archival/libipkg/
-+endif
-+srcdir=$(top_srcdir)/archival/libipkg
-+
-+LIBIPKG_CORE_SOURCES:= \
-+ args.c \
-+ libipkg.c \
-+ user.c \
-+
-+LIBIPKG_CMD_SOURCES:= \
-+ ipkg_cmd.c \
-+ ipkg_configure.c \
-+ ipkg_download.c \
-+ ipkg_install.c \
-+ ipkg_remove.c \
-+ ipkg_upgrade.c \
-+
-+LIBIPKG_DB_SOURCES:= \
-+ hash_table.c \
-+ ipkg_conf.c \
-+ ipkg_utils.c \
-+ pkg.c \
-+ pkg_depends.c \
-+ pkg_extract.c \
-+ pkg_hash.c \
-+ pkg_parse.c \
-+ pkg_vec.c \
-+
-+LIBIPKG_LIST_SOURCES:= \
-+ conffile.c \
-+ conffile_list.c \
-+ nv_pair.c \
-+ nv_pair_list.c \
-+ pkg_dest.c \
-+ pkg_dest_list.c \
-+ pkg_src.c \
-+ pkg_src_list.c \
-+ str_list.c \
-+ void_list.c \
-+
-+LIBIPKG_UTIL_SOURCES:= \
-+ file_util.c \
-+ ipkg_message.c \
-+ md5.c \
-+ str_util.c \
-+ xsystem.c \
-+
-+LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_CORE_SOURCES)
-+LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_CMD_SOURCES)
-+LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_DB_SOURCES)
-+LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_LIST_SOURCES)
-+LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_UTIL_SOURCES)
-+LIBIPKG_OBJS=$(patsubst %.c,$(LIBIPKG_DIR)%.o, $(LIBIPKG-y))
-+
-+CFLAGS += -DIPKG_LIB -DIPKGLIBDIR="\"/usr/lib\"" -DHOST_CPU_STR="\"$(TARGET_ARCH)\""
-+
-+libraries-$(CONFIG_IPKG) += $(LIBIPKG_DIR)$(LIBIPKG_AR)
-+
-+$(LIBIPKG_DIR)$(LIBIPKG_AR): $(LIBIPKG_OBJS)
-+ $(do_ar)
-+
-+$(LIBIPKG_OBJS): $(LIBIPKG_DIR)%.o : $(srcdir)/%.c
-+ $(compile.c)
-+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/args.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/args.c
---- busybox-1.1.2-orig/archival/libipkg/args.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/args.c 2006-05-09 02:12:03.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/args.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/args.c
+--- busybox-1.2.0-orig/archival/libipkg/args.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/args.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,242 @@
+/* args.c - parse command-line args
+
@@ -466,9 +322,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/args.c busybox-1.1.2+ipkg-0.99.162
+{
+ bb_error_msg("version %s\n", IPKG_VERSION);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/args.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/args.h
---- busybox-1.1.2-orig/archival/libipkg/args.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/args.h 2006-05-09 02:12:03.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/args.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/args.h
+--- busybox-1.2.0-orig/archival/libipkg/args.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/args.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,72 @@
+/* args.h - parse command-line args
+
@@ -542,9 +398,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/args.h busybox-1.1.2+ipkg-0.99.162
+void args_usage(char *complaint);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile.c
---- busybox-1.1.2-orig/archival/libipkg/conffile.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/conffile.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile.c
+--- busybox-1.2.0-orig/archival/libipkg/conffile.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,64 @@
+/* conffile.c - the itsy package management system
+
@@ -610,9 +466,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile.c busybox-1.1.2+ipkg-0.99
+
+ return ret;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile.h
---- busybox-1.1.2-orig/archival/libipkg/conffile.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/conffile.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile.h
+--- busybox-1.2.0-orig/archival/libipkg/conffile.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,30 @@
+/* conffile.h - the itsy package management system
+
@@ -644,9 +500,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile.h busybox-1.1.2+ipkg-0.99
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile_list.c
---- busybox-1.1.2-orig/archival/libipkg/conffile_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/conffile_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile_list.c
+--- busybox-1.2.0-orig/archival/libipkg/conffile_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile_list.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,47 @@
+/* conffile_list.c - the itsy package management system
+
@@ -695,9 +551,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile_list.c busybox-1.1.2+ipkg
+ return nv_pair_list_pop(list);
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile_list.h
---- busybox-1.1.2-orig/archival/libipkg/conffile_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/conffile_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/conffile_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile_list.h
+--- busybox-1.2.0-orig/archival/libipkg/conffile_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/conffile_list.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,36 @@
+/* conffile_list.h - the itsy package management system
+
@@ -735,9 +591,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/conffile_list.h busybox-1.1.2+ipkg
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/file_util.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/file_util.c
---- busybox-1.1.2-orig/archival/libipkg/file_util.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/file_util.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/file_util.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/file_util.c
+--- busybox-1.2.0-orig/archival/libipkg/file_util.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/file_util.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,177 @@
+/* file_util.c - convenience routines for common stat operations
+
@@ -916,9 +772,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/file_util.c busybox-1.1.2+ipkg-0.9
+ return md5sum_hex;
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/file_util.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/file_util.h
---- busybox-1.1.2-orig/archival/libipkg/file_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/file_util.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/file_util.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/file_util.h
+--- busybox-1.2.0-orig/archival/libipkg/file_util.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/file_util.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,29 @@
+/* file_util.h - convenience routines for common file operations
+
@@ -949,9 +805,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/file_util.h busybox-1.1.2+ipkg-0.9
+char *file_md5sum_alloc(const char *file_name);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/hash_table.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/hash_table.c
---- busybox-1.1.2-orig/archival/libipkg/hash_table.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/hash_table.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/hash_table.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/hash_table.c
+--- busybox-1.2.0-orig/archival/libipkg/hash_table.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/hash_table.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,155 @@
+/* hash.c - hash tables for ipkg
+
@@ -1108,9 +964,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/hash_table.c busybox-1.1.2+ipkg-0.
+ }
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/hash_table.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/hash_table.h
---- busybox-1.1.2-orig/archival/libipkg/hash_table.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/hash_table.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/hash_table.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/hash_table.h
+--- busybox-1.2.0-orig/archival/libipkg/hash_table.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/hash_table.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,44 @@
+/* hash.h - hash tables for ipkg
+
@@ -1156,87 +1012,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/hash_table.h busybox-1.1.2+ipkg-0.
+void hash_table_foreach(hash_table_t *hash, void (*f)(const char *key, void *entry, void *data), void *data);
+
+#endif /* _HASH_TABLE_H_ */
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg.h 2006-05-09 02:06:48.000000000 +0200
-@@ -0,0 +1,74 @@
-+/* ipkg.h - the itsy package management system
-+
-+ Carl D. Worth
-+
-+ Copyright (C) 2001 University of Southern California
-+
-+ This program is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU General Public License as
-+ published by the Free Software Foundation; either version 2, or (at
-+ your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+*/
-+
-+#ifndef IPKG_H
-+#define IPKG_H
-+
-+/*
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+*/
-+
-+#if 0
-+#define IPKG_DEBUG_NO_TMP_CLEANUP
-+#endif
-+
-+#include "ipkg_includes.h"
-+#include "ipkg_conf.h"
-+#include "ipkg_message.h"
-+
-+#define IPKG_PKG_EXTENSION ".ipk"
-+#define DPKG_PKG_EXTENSION ".deb"
-+
-+#define IPKG_LEGAL_PKG_NAME_CHARS "abcdefghijklmnopqrstuvwxyz0123456789.+-"
-+#define IPKG_PKG_VERSION_SEP_CHAR '_'
-+
-+#define IPKG_STATE_DIR_PREFIX IPKGLIBDIR"/ipkg"
-+#define IPKG_LISTS_DIR_SUFFIX "lists"
-+#define IPKG_INFO_DIR_SUFFIX "info"
-+#define IPKG_STATUS_FILE_SUFFIX "status"
-+
-+#define IPKG_BACKUP_SUFFIX "-ipkg.backup"
-+
-+#define IPKG_LIST_DESCRIPTION_LENGTH 128
-+
-+#define IPKG_VERSION "0.99.162"
-+
-+
-+enum ipkg_error {
-+ IPKG_SUCCESS = 0,
-+ IPKG_PKG_DEPS_UNSATISFIED,
-+ IPKG_PKG_IS_ESSENTIAL,
-+ IPKG_PKG_HAS_DEPENDENTS,
-+ IPKG_PKG_HAS_NO_CANDIDATE
-+};
-+typedef enum ipkg_error ipkg_error_t;
-+
-+extern int ipkg_state_changed;
-+
-+
-+struct errlist {
-+ char * errmsg;
-+ struct errlist * next;
-+} ;
-+
-+extern struct errlist* error_list;
-+
-+extern ipkg_conf_t *global_conf;
-+
-+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_cmd.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_cmd.c 2006-05-09 02:23:37.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_cmd.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_cmd.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_cmd.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_cmd.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,1431 @@
+/* ipkg_cmd.c - the itsy package management system
+
@@ -2669,9 +2447,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.c busybox-1.1.2+ipkg-0.99
+}
+
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_cmd.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_cmd.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_cmd.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_cmd.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_cmd.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,46 @@
+/* ipkg_cmd.h - the itsy package management system
+
@@ -2719,9 +2497,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_cmd.h busybox-1.1.2+ipkg-0.99
+int pkg_mark_provides(pkg_t *pkg);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_conf.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_conf.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_conf.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_conf.c 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_conf.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_conf.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_conf.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_conf.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,711 @@
+/* ipkg_conf.c - the itsy package management system
+
@@ -3434,9 +3212,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_conf.c busybox-1.1.2+ipkg-0.9
+ sprintf_alloc(&root_filename, "%s%s", (conf->offline_root ? conf->offline_root : ""), filename);
+ return root_filename;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_conf.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_conf.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_conf.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_conf.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_conf.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_conf.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_conf.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_conf.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,107 @@
+/* ipkg_conf.h - the itsy package management system
+
@@ -3545,9 +3323,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_conf.h busybox-1.1.2+ipkg-0.9
+char *root_filename_alloc(ipkg_conf_t *conf, char *filename);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_configure.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_configure.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_configure.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_configure.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_configure.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_configure.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_configure.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_configure.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,40 @@
+/* ipkg_configure.c - the itsy package management system
+
@@ -3589,9 +3367,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_configure.c busybox-1.1.2+ipk
+ return 0;
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_configure.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_configure.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_configure.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_configure.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_configure.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_configure.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_configure.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_configure.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,25 @@
+/* ipkg_configure.h - the itsy package management system
+
@@ -3618,9 +3396,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_configure.h busybox-1.1.2+ipk
+int ipkg_configure(ipkg_conf_t *ipkg_conf, pkg_t *pkg);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_download.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_download.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_download.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_download.c 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_download.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_download.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_download.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_download.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,195 @@
+/* ipkg_download.c - the itsy package management system
+
@@ -3817,9 +3595,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_download.c busybox-1.1.2+ipkg
+ }
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_download.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_download.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_download.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_download.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_download.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_download.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_download.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_download.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,30 @@
+/* ipkg_download.h - the itsy package management system
+
@@ -3851,9 +3629,87 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_download.h busybox-1.1.2+ipkg
+int ipkg_prepare_url_for_install(ipkg_conf_t *conf, const char *url, char **namep);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_includes.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_includes.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_includes.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_includes.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg.h 2006-07-22 16:31:25.000000000 +0200
+@@ -0,0 +1,74 @@
++/* ipkg.h - the itsy package management system
++
++ Carl D. Worth
++
++ Copyright (C) 2001 University of Southern California
++
++ This program is free software; you can redistribute it and/or
++ modify it under the terms of the GNU General Public License as
++ published by the Free Software Foundation; either version 2, or (at
++ your option) any later version.
++
++ This program is distributed in the hope that it will be useful, but
++ WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ General Public License for more details.
++*/
++
++#ifndef IPKG_H
++#define IPKG_H
++
++/*
++#ifdef HAVE_CONFIG_H
++#include "config.h"
++#endif
++*/
++
++#if 0
++#define IPKG_DEBUG_NO_TMP_CLEANUP
++#endif
++
++#include "ipkg_includes.h"
++#include "ipkg_conf.h"
++#include "ipkg_message.h"
++
++#define IPKG_PKG_EXTENSION ".ipk"
++#define DPKG_PKG_EXTENSION ".deb"
++
++#define IPKG_LEGAL_PKG_NAME_CHARS "abcdefghijklmnopqrstuvwxyz0123456789.+-"
++#define IPKG_PKG_VERSION_SEP_CHAR '_'
++
++#define IPKG_STATE_DIR_PREFIX IPKGLIBDIR"/ipkg"
++#define IPKG_LISTS_DIR_SUFFIX "lists"
++#define IPKG_INFO_DIR_SUFFIX "info"
++#define IPKG_STATUS_FILE_SUFFIX "status"
++
++#define IPKG_BACKUP_SUFFIX "-ipkg.backup"
++
++#define IPKG_LIST_DESCRIPTION_LENGTH 128
++
++#define IPKG_VERSION "0.99.162"
++
++
++enum ipkg_error {
++ IPKG_SUCCESS = 0,
++ IPKG_PKG_DEPS_UNSATISFIED,
++ IPKG_PKG_IS_ESSENTIAL,
++ IPKG_PKG_HAS_DEPENDENTS,
++ IPKG_PKG_HAS_NO_CANDIDATE
++};
++typedef enum ipkg_error ipkg_error_t;
++
++extern int ipkg_state_changed;
++
++
++struct errlist {
++ char * errmsg;
++ struct errlist * next;
++} ;
++
++extern struct errlist* error_list;
++
++extern ipkg_conf_t *global_conf;
++
++#endif
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_includes.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_includes.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_includes.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_includes.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,79 @@
+#ifndef IPKG_INCLUDES_H
+#define IPKG_INCLUDES_H
@@ -3934,9 +3790,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_includes.h busybox-1.1.2+ipkg
+#endif
+
+#endif /* IPKG_INCLUDES_H */
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_install.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_install.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_install.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_install.c 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_install.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_install.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_install.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_install.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,1942 @@
+/* ipkg_install.c - the itsy package management system
+
@@ -5880,9 +5736,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_install.c busybox-1.1.2+ipkg-
+}
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_install.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_install.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_install.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_install.h 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_install.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_install.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_install.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_install.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,35 @@
+/* ipkg_install.h - the itsy package management system
+
@@ -5919,9 +5775,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_install.h busybox-1.1.2+ipkg-
+int name_mark_dependencies_for_installation(ipkg_conf_t *conf, const char *pkg_name, pkg_vec_t *pkgs_needed);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_message.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_message.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_message.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_message.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_message.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_message.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_message.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_message.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,61 @@
+/* ipkg_message.c - the itsy package management system
+
@@ -5984,9 +5840,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_message.c busybox-1.1.2+ipkg-
+ }
+}
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_message.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_message.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_message.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_message.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_message.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_message.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_message.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_message.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,32 @@
+/* ipkg_message.h - the itsy package management system
+
@@ -6020,9 +5876,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_message.h busybox-1.1.2+ipkg-
+extern void ipkg_message(ipkg_conf_t *conf, message_level_t level, char *fmt, ...);
+
+#endif /* _IPKG_MESSAGE_H_ */
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_remove.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_remove.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_remove.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_remove.c 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_remove.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_remove.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_remove.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_remove.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,383 @@
+/* ipkg_remove.c - the itsy package management system
+
@@ -6407,9 +6263,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_remove.c busybox-1.1.2+ipkg-0
+
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_remove.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_remove.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_remove.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_remove.h 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_remove.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_remove.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_remove.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_remove.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,33 @@
+/* ipkg_remove.h - the itsy package management system
+
@@ -6444,9 +6300,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_remove.h busybox-1.1.2+ipkg-0
+
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.c 2006-05-09 02:12:04.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_upgrade.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_upgrade.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,77 @@
+/* ipkg_upgrade.c - the itsy package management system
+
@@ -6525,9 +6381,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.c busybox-1.1.2+ipkg-
+ new->state_flag |= SF_USER;
+ return ipkg_install_pkg(conf, new,1);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_upgrade.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_upgrade.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_upgrade.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,18 @@
+/* ipkg_upgrade.c - the itsy package management system
+
@@ -6547,9 +6403,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_upgrade.h busybox-1.1.2+ipkg-
+#include "ipkg.h"
+
+int ipkg_upgrade_pkg(ipkg_conf_t *conf, pkg_t *old);
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_utils.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_utils.c
---- busybox-1.1.2-orig/archival/libipkg/ipkg_utils.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_utils.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_utils.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_utils.c
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_utils.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_utils.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,181 @@
+/* ipkg_utils.c - the itsy package management system
+
@@ -6732,9 +6588,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_utils.c busybox-1.1.2+ipkg-0.
+}
+
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_utils.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_utils.h
---- busybox-1.1.2-orig/archival/libipkg/ipkg_utils.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/ipkg_utils.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/ipkg_utils.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_utils.h
+--- busybox-1.2.0-orig/archival/libipkg/ipkg_utils.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/ipkg_utils.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,29 @@
+/* ipkg_utils.h - the itsy package management system
+
@@ -6765,9 +6621,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/ipkg_utils.h busybox-1.1.2+ipkg-0.
+int line_is_blank(const char *line);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/libipkg.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/libipkg.c
---- busybox-1.1.2-orig/archival/libipkg/libipkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/libipkg.c 2006-05-09 02:12:05.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/libipkg.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/libipkg.c
+--- busybox-1.2.0-orig/archival/libipkg/libipkg.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/libipkg.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,527 @@
+/* ipkglib.c - the itsy package management system
+
@@ -7296,9 +7152,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/libipkg.c busybox-1.1.2+ipkg-0.99.
+}
+
+#endif /* IPKG_LIB */
-diff -ruN busybox-1.1.2-orig/archival/libipkg/libipkg.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/libipkg.h
---- busybox-1.1.2-orig/archival/libipkg/libipkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/libipkg.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/libipkg.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/libipkg.h
+--- busybox-1.2.0-orig/archival/libipkg/libipkg.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/libipkg.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,87 @@
+/* ipkglib.h - the itsy package management system
+
@@ -7387,9 +7243,134 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/libipkg.h busybox-1.1.2+ipkg-0.99.
+
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/md5.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/md5.c
---- busybox-1.1.2-orig/archival/libipkg/md5.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/md5.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/Makefile busybox-1.2.0+ipkg-0.99.162/archival/libipkg/Makefile
+--- busybox-1.2.0-orig/archival/libipkg/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/Makefile 2006-07-22 16:31:25.000000000 +0200
+@@ -0,0 +1,32 @@
++# Makefile for busybox
++#
++# Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
++#
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++#
++
++top_srcdir=../..
++top_builddir=../..
++srcdir=$(top_srcdir)/archival/libipkg
++LIBIPKG_DIR:=./
++include $(top_builddir)/Rules.mak
++include $(top_builddir)/.config
++include $(srcdir)/Makefile.in
++all: $(libraries-y)
++-include $(top_builddir)/.depend
++
++clean:
++ rm -f *.o *.a $(AR_TARGET)
++
+diff -ruN busybox-1.2.0-orig/archival/libipkg/Makefile.in busybox-1.2.0+ipkg-0.99.162/archival/libipkg/Makefile.in
+--- busybox-1.2.0-orig/archival/libipkg/Makefile.in 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/Makefile.in 2006-07-22 16:31:25.000000000 +0200
+@@ -0,0 +1,85 @@
++# Makefile for busybox
++#
++# Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
++#
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++#
++
++LIBIPKG_AR:=libipkg.a
++ifndef $(LIBIPKG_DIR)
++LIBIPKG_DIR:=$(top_builddir)/archival/libipkg/
++endif
++srcdir=$(top_srcdir)/archival/libipkg
++
++LIBIPKG_CORE_SOURCES:= \
++ args.c \
++ libipkg.c \
++ user.c \
++
++LIBIPKG_CMD_SOURCES:= \
++ ipkg_cmd.c \
++ ipkg_configure.c \
++ ipkg_download.c \
++ ipkg_install.c \
++ ipkg_remove.c \
++ ipkg_upgrade.c \
++
++LIBIPKG_DB_SOURCES:= \
++ hash_table.c \
++ ipkg_conf.c \
++ ipkg_utils.c \
++ pkg.c \
++ pkg_depends.c \
++ pkg_extract.c \
++ pkg_hash.c \
++ pkg_parse.c \
++ pkg_vec.c \
++
++LIBIPKG_LIST_SOURCES:= \
++ conffile.c \
++ conffile_list.c \
++ nv_pair.c \
++ nv_pair_list.c \
++ pkg_dest.c \
++ pkg_dest_list.c \
++ pkg_src.c \
++ pkg_src_list.c \
++ str_list.c \
++ void_list.c \
++
++LIBIPKG_UTIL_SOURCES:= \
++ file_util.c \
++ ipkg_message.c \
++ md5.c \
++ str_util.c \
++ xsystem.c \
++
++LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_CORE_SOURCES)
++LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_CMD_SOURCES)
++LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_DB_SOURCES)
++LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_LIST_SOURCES)
++LIBIPKG-$(CONFIG_IPKG) += $(LIBIPKG_UTIL_SOURCES)
++LIBIPKG_OBJS=$(patsubst %.c,$(LIBIPKG_DIR)%.o, $(LIBIPKG-y))
++
++CFLAGS += -DIPKG_LIB -DIPKGLIBDIR="\"/usr/lib\"" -DHOST_CPU_STR="\"$(TARGET_ARCH)\""
++
++libraries-$(CONFIG_IPKG) += $(LIBIPKG_DIR)$(LIBIPKG_AR)
++
++$(LIBIPKG_DIR)$(LIBIPKG_AR): $(LIBIPKG_OBJS)
++ $(do_ar)
++
++$(LIBIPKG_OBJS): $(LIBIPKG_DIR)%.o : $(srcdir)/%.c
++ $(compile.c)
++
+diff -ruN busybox-1.2.0-orig/archival/libipkg/md5.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/md5.c
+--- busybox-1.2.0-orig/archival/libipkg/md5.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/md5.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,48 @@
+/* md5.c - wrappers to busybox md5 functions
+ *
@@ -7439,9 +7420,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/md5.c busybox-1.1.2+ipkg-0.99.162/
+ return md5_end(resblock, &md5_cx);
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/md5.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/md5.h
---- busybox-1.1.2-orig/archival/libipkg/md5.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/md5.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/md5.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/md5.h
+--- busybox-1.2.0-orig/archival/libipkg/md5.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/md5.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,35 @@
+/* md5.h - Compute MD5 checksum of files or strings according to the
+ * definition of MD5 in RFC 1321 from April 1992.
@@ -7478,9 +7459,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/md5.h busybox-1.1.2+ipkg-0.99.162/
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair.c
---- busybox-1.1.2-orig/archival/libipkg/nv_pair.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/nv_pair.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair.c
+--- busybox-1.2.0-orig/archival/libipkg/nv_pair.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,40 @@
+/* nv_pair.c - the itsy package management system
+
@@ -7522,9 +7503,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair.c busybox-1.1.2+ipkg-0.99.
+}
+
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair.h
---- busybox-1.1.2-orig/archival/libipkg/nv_pair.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/nv_pair.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair.h
+--- busybox-1.2.0-orig/archival/libipkg/nv_pair.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,32 @@
+/* nv_pair.h - the itsy package management system
+
@@ -7558,9 +7539,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair.h busybox-1.1.2+ipkg-0.99.
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair_list.c
---- busybox-1.1.2-orig/archival/libipkg/nv_pair_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/nv_pair_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair_list.c
+--- busybox-1.2.0-orig/archival/libipkg/nv_pair_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair_list.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,98 @@
+/* nv_pair_list.c - the itsy package management system
+
@@ -7660,9 +7641,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair_list.c busybox-1.1.2+ipkg-
+ }
+ return NULL;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair_list.h
---- busybox-1.1.2-orig/archival/libipkg/nv_pair_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/nv_pair_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/nv_pair_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair_list.h
+--- busybox-1.2.0-orig/archival/libipkg/nv_pair_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/nv_pair_list.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,60 @@
+/* nv_pair_list.h - the itsy package management system
+
@@ -7724,9 +7705,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/nv_pair_list.h busybox-1.1.2+ipkg-
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg.c
---- busybox-1.1.2-orig/archival/libipkg/pkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg.c 2006-05-09 02:12:05.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,1754 @@
+/* pkg.c - the itsy package management system
+
@@ -9482,245 +9463,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg.c busybox-1.1.2+ipkg-0.99.162/
+ }
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg.h
---- busybox-1.1.2-orig/archival/libipkg/pkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg.h 2006-05-09 02:12:05.000000000 +0200
-@@ -0,0 +1,232 @@
-+/* pkg.h - the itsy package management system
-+
-+ Carl D. Worth
-+
-+ Copyright (C) 2001 University of Southern California
-+
-+ This program is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU General Public License as
-+ published by the Free Software Foundation; either version 2, or (at
-+ your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+*/
-+
-+#ifndef PKG_H
-+#define PKG_H
-+
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+#include <unistd.h>
-+
-+#include "pkg_vec.h"
-+#include "str_list.h"
-+#include "pkg_src.h"
-+#include "pkg_dest.h"
-+#include "ipkg_conf.h"
-+#include "conffile_list.h"
-+
-+struct ipkg_conf;
-+
-+
-+#define ARRAY_SIZE(array) sizeof(array) / sizeof((array)[0])
-+
-+/* I think "Size" is currently the shortest field name */
-+#define PKG_MINIMUM_FIELD_NAME_LEN 4
-+
-+enum pkg_state_want
-+{
-+ SW_UNKNOWN = 1,
-+ SW_INSTALL,
-+ SW_DEINSTALL,
-+ SW_PURGE,
-+ SW_LAST_STATE_WANT
-+};
-+typedef enum pkg_state_want pkg_state_want_t;
-+
-+enum pkg_state_flag
-+{
-+ SF_OK = 0,
-+ SF_REINSTREQ = 1,
-+ SF_HOLD = 2, /* do not upgrade version */
-+ SF_REPLACE = 4, /* replace this package */
-+ SF_NOPRUNE = 8, /* do not remove obsolete files */
-+ SF_PREFER = 16, /* prefer this version */
-+ SF_OBSOLETE = 32, /* old package in upgrade pair */
-+ SF_MARKED = 64, /* temporary mark */
-+ SF_FILELIST_CHANGED = 128, /* needs filelist written */
-+ SF_USER = 256,
-+ SF_LAST_STATE_FLAG
-+};
-+typedef enum pkg_state_flag pkg_state_flag_t;
-+#define SF_NONVOLATILE_FLAGS (SF_HOLD|SF_NOPRUNE|SF_PREFER|SF_OBSOLETE|SF_USER)
-+
-+enum pkg_state_status
-+{
-+ SS_NOT_INSTALLED = 1,
-+ SS_UNPACKED,
-+ SS_HALF_CONFIGURED,
-+ SS_INSTALLED,
-+ SS_HALF_INSTALLED,
-+ SS_CONFIG_FILES,
-+ SS_POST_INST_FAILED,
-+ SS_REMOVAL_FAILED,
-+ SS_LAST_STATE_STATUS
-+};
-+typedef enum pkg_state_status pkg_state_status_t;
-+
-+struct abstract_pkg{
-+ char * name;
-+ int dependencies_checked;
-+ pkg_vec_t * pkgs;
-+ pkg_state_status_t state_status;
-+ pkg_state_flag_t state_flag;
-+ struct abstract_pkg ** depended_upon_by; /* @@@@ this should be abstract_pkg_vec_t -Jamey */
-+ abstract_pkg_vec_t * provided_by;
-+ abstract_pkg_vec_t * replaced_by;
-+};
-+
-+#include "pkg_depends.h"
-+
-+/* XXX: CLEANUP: I'd like to clean up pkg_t in several ways:
-+
-+ The 3 version fields should go into a single version struct. (This
-+ is especially important since, currently, pkg->version can easily
-+ be mistaken for pkg_verson_str_alloc(pkg) although they are very
-+ distinct. This has been the source of multiple bugs.
-+
-+ The 3 state fields could possibly also go into their own struct.
-+
-+ All fields which deal with lists of packages, (Depends,
-+ Pre-Depends, Provides, Suggests, Recommends, Enhances), should each
-+ be handled by a single struct in pkg_t
-+
-+ All string fields for which there is a small set of possible
-+ values, (section, maintainer, architecture, maybe version?), that
-+ are reused among different packages -- for all such packages we
-+ should move from "char *"s to some atom datatype to share data
-+ storage and use less memory. We might even do reference counting,
-+ but probably not since most often we only create new pkg_t structs,
-+ we don't often free them. */
-+struct pkg
-+{
-+ char *name;
-+ unsigned long epoch;
-+ char *version;
-+ char *revision;
-+ char *familiar_revision;
-+ pkg_src_t *src;
-+ pkg_dest_t *dest;
-+ char *architecture;
-+ char *section;
-+ char *maintainer;
-+ char *description;
-+ pkg_state_want_t state_want;
-+ pkg_state_flag_t state_flag;
-+ pkg_state_status_t state_status;
-+ char **depends_str;
-+ int depends_count;
-+ char **pre_depends_str;
-+ int pre_depends_count;
-+ char **recommends_str;
-+ int recommends_count;
-+ char **suggests_str;
-+ int suggests_count;
-+ compound_depend_t * depends;
-+
-+ /* Abhaya: new conflicts */
-+ char **conflicts_str;
-+ compound_depend_t * conflicts;
-+ int conflicts_count;
-+
-+ char **replaces_str;
-+ int replaces_count;
-+ abstract_pkg_t ** replaces;
-+
-+ char **provides_str;
-+ int provides_count;
-+ abstract_pkg_t ** provides;
-+
-+ abstract_pkg_t *parent;
-+
-+ pkg_t *old_pkg; /* during upgrade, points from installee to previously installed */
-+
-+ char *filename;
-+ char *local_filename;
-+ char *url;
-+ char *tmp_unpack_dir;
-+ char *md5sum;
-+ char *size;
-+ char *installed_size;
-+ char *priority;
-+ char *source;
-+ conffile_list_t conffiles;
-+ time_t installed_time;
-+ /* As pointer for lazy evaluation */
-+ str_list_t *installed_files;
-+ /* XXX: CLEANUP: I'd like to perhaps come up with a better
-+ mechanism to avoid the problem here, (which is that the
-+ installed_files list was being freed from an inner loop while
-+ still being used within an outer loop. */
-+ int installed_files_ref_cnt;
-+ int essential;
-+ int arch_priority;
-+/* Adding this flag, to "force" ipkg to choose a "provided_by_hand" package, if there are multiple choice */
-+ int provided_by_hand;
-+};
-+
-+pkg_t *pkg_new(void);
-+int pkg_init(pkg_t *pkg);
-+void pkg_deinit(pkg_t *pkg);
-+int pkg_init_from_file(pkg_t *pkg, const char *filename);
-+abstract_pkg_t *abstract_pkg_new(void);
-+int abstract_pkg_init(abstract_pkg_t *ab_pkg);
-+
-+/*
-+ * merges fields from newpkg into oldpkg.
-+ * Forcibly sets oldpkg state_status, state_want and state_flags if set_status is nonzero
-+ */
-+int pkg_merge(pkg_t *oldpkg, pkg_t *newpkg, int set_status);
-+
-+char *pkg_version_str_alloc(pkg_t *pkg);
-+
-+int pkg_compare_versions(const pkg_t *pkg, const pkg_t *ref_pkg);
-+int pkg_name_version_and_architecture_compare(void *a, void *b);
-+int abstract_pkg_name_compare(void *a, void *b);
-+
-+char * pkg_formatted_info(pkg_t *pkg );
-+char * pkg_formatted_field(pkg_t *pkg, const char *field );
-+
-+void set_flags_from_control(ipkg_conf_t *conf, pkg_t *pkg);
-+
-+void pkg_print_info(pkg_t *pkg, FILE *file);
-+void pkg_print_status(pkg_t * pkg, FILE * file);
-+void pkg_print_field(pkg_t *pkg, FILE *file, const char *field);
-+str_list_t *pkg_get_installed_files(pkg_t *pkg);
-+int pkg_free_installed_files(pkg_t *pkg);
-+int pkg_remove_installed_files_list(ipkg_conf_t *conf, pkg_t *pkg);
-+conffile_t *pkg_get_conffile(pkg_t *pkg, const char *file_name);
-+int pkg_run_script(struct ipkg_conf *conf, pkg_t *pkg,
-+ const char *script, const char *args);
-+
-+/* enum mappings */
-+char *pkg_state_want_to_str(pkg_state_want_t sw);
-+pkg_state_want_t pkg_state_want_from_str(char *str);
-+char *pkg_state_flag_to_str(pkg_state_flag_t sf);
-+pkg_state_flag_t pkg_state_flag_from_str(char *str);
-+char *pkg_state_status_to_str(pkg_state_status_t ss);
-+pkg_state_status_t pkg_state_status_from_str(char *str);
-+
-+int pkg_version_satisfied(pkg_t *it, pkg_t *ref, const char *op);
-+
-+int pkg_arch_supported(ipkg_conf_t *conf, pkg_t *pkg);
-+int pkg_info_preinstall_check(ipkg_conf_t *conf);
-+int pkg_free_installed_files(pkg_t *pkg);
-+
-+int pkg_write_filelist(ipkg_conf_t *conf, pkg_t *pkg);
-+int pkg_write_changed_filelists(ipkg_conf_t *conf);
-+
-+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_depends.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_depends.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_depends.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_depends.c 2006-05-09 02:12:05.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_depends.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_depends.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_depends.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_depends.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,1033 @@
+/* pkg_depends.c - the itsy package management system
+
@@ -10755,9 +10500,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_depends.c busybox-1.1.2+ipkg-0
+
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_depends.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_depends.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_depends.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_depends.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_depends.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_depends.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_depends.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_depends.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,105 @@
+/* pkg_depends.h - the itsy package management system
+
@@ -10864,9 +10609,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_depends.h busybox-1.1.2+ipkg-0
+int pkg_dependence_satisfied(ipkg_conf_t *conf, depend_t *depend);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_dest.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_dest.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_dest.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,92 @@
+/* pkg_dest.c - the itsy package management system
+
@@ -10960,9 +10705,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest.c busybox-1.1.2+ipkg-0.99
+
+ dest->root_dir = NULL;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_dest.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_dest.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_dest.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,38 @@
+/* pkg_dest.h - the itsy package management system
+
@@ -11002,9 +10747,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest.h busybox-1.1.2+ipkg-0.99
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest_list.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_dest_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest_list.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_dest_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest_list.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,85 @@
+/* pkg_dest_list.c - the itsy package management system
+
@@ -11091,9 +10836,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.c busybox-1.1.2+ipkg
+{
+ return (pkg_dest_list_elt_t *) void_list_pop((void_list_t *) list);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest_list.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_dest_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_dest_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest_list.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_dest_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_dest_list.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,50 @@
+/* pkg_dest_list.h - the itsy package management system
+
@@ -11145,9 +10890,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_dest_list.h busybox-1.1.2+ipkg
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_extract.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_extract.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_extract.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_extract.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_extract.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_extract.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_extract.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,224 @@
+/* pkg_extract.c - the itsy package management system
+
@@ -11191,7 +10936,7 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.c busybox-1.1.2+ipkg-0
+ archive = init_handle();
+ archive->src_fd = bb_xopen(pkg->local_filename, O_RDONLY);
+ archive->filter = filter_accept_list;
-+ archive->accept = llist_add_to(NULL, (char *)filename);
++ llist_add_to(&(archive->accept), (char *)filename);
+ archive->buffer = path;
+ archive->action_data = data_extract_all_prefix;
+ archive->flags |= ARCHIVE_EXTRACT_UNCONDITIONAL;
@@ -11228,7 +10973,7 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.c busybox-1.1.2+ipkg-0
+ archive = init_handle();
+ archive->src_fd = bb_xopen(name, O_RDONLY);
+ archive->filter = filter_accept_list;
-+ archive->accept = llist_add_to(NULL, "./" IPKG_CONTROL_FILE);
++ llist_add_to(&(archive->accept), "./" IPKG_CONTROL_FILE);
+ archive->action_data = data_extract_to_buffer;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
@@ -11373,9 +11118,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.c busybox-1.1.2+ipkg-0
+
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_extract.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_extract.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_extract.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_extract.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_extract.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_extract.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_extract.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,32 @@
+/* pkg_extract.c - the itsy package management system
+
@@ -11409,9 +11154,245 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_extract.h busybox-1.1.2+ipkg-0
+int pkg_extract_data_file_names_to_stream(pkg_t *pkg, FILE *file);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_hash.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_hash.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_hash.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_hash.c 2006-05-09 02:12:05.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg.h 2006-07-22 16:31:25.000000000 +0200
+@@ -0,0 +1,232 @@
++/* pkg.h - the itsy package management system
++
++ Carl D. Worth
++
++ Copyright (C) 2001 University of Southern California
++
++ This program is free software; you can redistribute it and/or
++ modify it under the terms of the GNU General Public License as
++ published by the Free Software Foundation; either version 2, or (at
++ your option) any later version.
++
++ This program is distributed in the hope that it will be useful, but
++ WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ General Public License for more details.
++*/
++
++#ifndef PKG_H
++#define PKG_H
++
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <unistd.h>
++
++#include "pkg_vec.h"
++#include "str_list.h"
++#include "pkg_src.h"
++#include "pkg_dest.h"
++#include "ipkg_conf.h"
++#include "conffile_list.h"
++
++struct ipkg_conf;
++
++
++#define ARRAY_SIZE(array) sizeof(array) / sizeof((array)[0])
++
++/* I think "Size" is currently the shortest field name */
++#define PKG_MINIMUM_FIELD_NAME_LEN 4
++
++enum pkg_state_want
++{
++ SW_UNKNOWN = 1,
++ SW_INSTALL,
++ SW_DEINSTALL,
++ SW_PURGE,
++ SW_LAST_STATE_WANT
++};
++typedef enum pkg_state_want pkg_state_want_t;
++
++enum pkg_state_flag
++{
++ SF_OK = 0,
++ SF_REINSTREQ = 1,
++ SF_HOLD = 2, /* do not upgrade version */
++ SF_REPLACE = 4, /* replace this package */
++ SF_NOPRUNE = 8, /* do not remove obsolete files */
++ SF_PREFER = 16, /* prefer this version */
++ SF_OBSOLETE = 32, /* old package in upgrade pair */
++ SF_MARKED = 64, /* temporary mark */
++ SF_FILELIST_CHANGED = 128, /* needs filelist written */
++ SF_USER = 256,
++ SF_LAST_STATE_FLAG
++};
++typedef enum pkg_state_flag pkg_state_flag_t;
++#define SF_NONVOLATILE_FLAGS (SF_HOLD|SF_NOPRUNE|SF_PREFER|SF_OBSOLETE|SF_USER)
++
++enum pkg_state_status
++{
++ SS_NOT_INSTALLED = 1,
++ SS_UNPACKED,
++ SS_HALF_CONFIGURED,
++ SS_INSTALLED,
++ SS_HALF_INSTALLED,
++ SS_CONFIG_FILES,
++ SS_POST_INST_FAILED,
++ SS_REMOVAL_FAILED,
++ SS_LAST_STATE_STATUS
++};
++typedef enum pkg_state_status pkg_state_status_t;
++
++struct abstract_pkg{
++ char * name;
++ int dependencies_checked;
++ pkg_vec_t * pkgs;
++ pkg_state_status_t state_status;
++ pkg_state_flag_t state_flag;
++ struct abstract_pkg ** depended_upon_by; /* @@@@ this should be abstract_pkg_vec_t -Jamey */
++ abstract_pkg_vec_t * provided_by;
++ abstract_pkg_vec_t * replaced_by;
++};
++
++#include "pkg_depends.h"
++
++/* XXX: CLEANUP: I'd like to clean up pkg_t in several ways:
++
++ The 3 version fields should go into a single version struct. (This
++ is especially important since, currently, pkg->version can easily
++ be mistaken for pkg_verson_str_alloc(pkg) although they are very
++ distinct. This has been the source of multiple bugs.
++
++ The 3 state fields could possibly also go into their own struct.
++
++ All fields which deal with lists of packages, (Depends,
++ Pre-Depends, Provides, Suggests, Recommends, Enhances), should each
++ be handled by a single struct in pkg_t
++
++ All string fields for which there is a small set of possible
++ values, (section, maintainer, architecture, maybe version?), that
++ are reused among different packages -- for all such packages we
++ should move from "char *"s to some atom datatype to share data
++ storage and use less memory. We might even do reference counting,
++ but probably not since most often we only create new pkg_t structs,
++ we don't often free them. */
++struct pkg
++{
++ char *name;
++ unsigned long epoch;
++ char *version;
++ char *revision;
++ char *familiar_revision;
++ pkg_src_t *src;
++ pkg_dest_t *dest;
++ char *architecture;
++ char *section;
++ char *maintainer;
++ char *description;
++ pkg_state_want_t state_want;
++ pkg_state_flag_t state_flag;
++ pkg_state_status_t state_status;
++ char **depends_str;
++ int depends_count;
++ char **pre_depends_str;
++ int pre_depends_count;
++ char **recommends_str;
++ int recommends_count;
++ char **suggests_str;
++ int suggests_count;
++ compound_depend_t * depends;
++
++ /* Abhaya: new conflicts */
++ char **conflicts_str;
++ compound_depend_t * conflicts;
++ int conflicts_count;
++
++ char **replaces_str;
++ int replaces_count;
++ abstract_pkg_t ** replaces;
++
++ char **provides_str;
++ int provides_count;
++ abstract_pkg_t ** provides;
++
++ abstract_pkg_t *parent;
++
++ pkg_t *old_pkg; /* during upgrade, points from installee to previously installed */
++
++ char *filename;
++ char *local_filename;
++ char *url;
++ char *tmp_unpack_dir;
++ char *md5sum;
++ char *size;
++ char *installed_size;
++ char *priority;
++ char *source;
++ conffile_list_t conffiles;
++ time_t installed_time;
++ /* As pointer for lazy evaluation */
++ str_list_t *installed_files;
++ /* XXX: CLEANUP: I'd like to perhaps come up with a better
++ mechanism to avoid the problem here, (which is that the
++ installed_files list was being freed from an inner loop while
++ still being used within an outer loop. */
++ int installed_files_ref_cnt;
++ int essential;
++ int arch_priority;
++/* Adding this flag, to "force" ipkg to choose a "provided_by_hand" package, if there are multiple choice */
++ int provided_by_hand;
++};
++
++pkg_t *pkg_new(void);
++int pkg_init(pkg_t *pkg);
++void pkg_deinit(pkg_t *pkg);
++int pkg_init_from_file(pkg_t *pkg, const char *filename);
++abstract_pkg_t *abstract_pkg_new(void);
++int abstract_pkg_init(abstract_pkg_t *ab_pkg);
++
++/*
++ * merges fields from newpkg into oldpkg.
++ * Forcibly sets oldpkg state_status, state_want and state_flags if set_status is nonzero
++ */
++int pkg_merge(pkg_t *oldpkg, pkg_t *newpkg, int set_status);
++
++char *pkg_version_str_alloc(pkg_t *pkg);
++
++int pkg_compare_versions(const pkg_t *pkg, const pkg_t *ref_pkg);
++int pkg_name_version_and_architecture_compare(void *a, void *b);
++int abstract_pkg_name_compare(void *a, void *b);
++
++char * pkg_formatted_info(pkg_t *pkg );
++char * pkg_formatted_field(pkg_t *pkg, const char *field );
++
++void set_flags_from_control(ipkg_conf_t *conf, pkg_t *pkg);
++
++void pkg_print_info(pkg_t *pkg, FILE *file);
++void pkg_print_status(pkg_t * pkg, FILE * file);
++void pkg_print_field(pkg_t *pkg, FILE *file, const char *field);
++str_list_t *pkg_get_installed_files(pkg_t *pkg);
++int pkg_free_installed_files(pkg_t *pkg);
++int pkg_remove_installed_files_list(ipkg_conf_t *conf, pkg_t *pkg);
++conffile_t *pkg_get_conffile(pkg_t *pkg, const char *file_name);
++int pkg_run_script(struct ipkg_conf *conf, pkg_t *pkg,
++ const char *script, const char *args);
++
++/* enum mappings */
++char *pkg_state_want_to_str(pkg_state_want_t sw);
++pkg_state_want_t pkg_state_want_from_str(char *str);
++char *pkg_state_flag_to_str(pkg_state_flag_t sf);
++pkg_state_flag_t pkg_state_flag_from_str(char *str);
++char *pkg_state_status_to_str(pkg_state_status_t ss);
++pkg_state_status_t pkg_state_status_from_str(char *str);
++
++int pkg_version_satisfied(pkg_t *it, pkg_t *ref, const char *op);
++
++int pkg_arch_supported(ipkg_conf_t *conf, pkg_t *pkg);
++int pkg_info_preinstall_check(ipkg_conf_t *conf);
++int pkg_free_installed_files(pkg_t *pkg);
++
++int pkg_write_filelist(ipkg_conf_t *conf, pkg_t *pkg);
++int pkg_write_changed_filelists(ipkg_conf_t *conf);
++
++#endif
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_hash.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_hash.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_hash.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_hash.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,617 @@
+/* ipkg_hash.c - the itsy package management system
+
@@ -12030,9 +12011,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_hash.c busybox-1.1.2+ipkg-0.99
+}
+
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_hash.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_hash.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_hash.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_hash.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_hash.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_hash.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_hash.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_hash.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,61 @@
+/* pkg_hash.h - the itsy package management system
+
@@ -12095,9 +12076,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_hash.h busybox-1.1.2+ipkg-0.99
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_parse.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_parse.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_parse.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_parse.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_parse.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_parse.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_parse.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_parse.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,366 @@
+/* pkg_parse.c - the itsy package management system
+
@@ -12465,9 +12446,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_parse.c busybox-1.1.2+ipkg-0.9
+
+ return 0;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_parse.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_parse.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_parse.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_parse.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_parse.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_parse.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_parse.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_parse.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,31 @@
+/* pkg_parse.h - the itsy package management system
+
@@ -12500,9 +12481,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_parse.h busybox-1.1.2+ipkg-0.9
+int pkg_valorize_other_field(pkg_t *pkg, char ***raw);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_src.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_src.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_src.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,43 @@
+/* pkg_src.c - the itsy package management system
+
@@ -12547,9 +12528,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src.c busybox-1.1.2+ipkg-0.99.
+}
+
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_src.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_src.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_src.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,34 @@
+/* pkg_src.h - the itsy package management system
+
@@ -12585,9 +12566,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src.h busybox-1.1.2+ipkg-0.99.
+void pkg_src_deinit(pkg_src_t *src);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src_list.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_src_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_src_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src_list.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_src_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src_list.c 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,75 @@
+/* pkg_src_list.c - the itsy package management system
+
@@ -12664,9 +12645,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src_list.c busybox-1.1.2+ipkg-
+{
+ return (pkg_src_list_elt_t *) void_list_pop((void_list_t *) list);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src_list.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_src_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_src_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_src_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src_list.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_src_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_src_list.h 2006-07-22 16:31:25.000000000 +0200
@@ -0,0 +1,57 @@
+/* pkg_src_list.h - the itsy package management system
+
@@ -12725,9 +12706,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_src_list.h busybox-1.1.2+ipkg-
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_vec.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_vec.c
---- busybox-1.1.2-orig/archival/libipkg/pkg_vec.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_vec.c 2006-05-09 02:12:05.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_vec.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_vec.c
+--- busybox-1.2.0-orig/archival/libipkg/pkg_vec.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_vec.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,230 @@
+/* pkg_vec.c - the itsy package management system
+
@@ -12959,9 +12940,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_vec.c busybox-1.1.2+ipkg-0.99.
+ qsort(vec->pkgs, vec->len, sizeof(pkg_t *), (compare_fcn_t)compar);
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_vec.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_vec.h
---- busybox-1.1.2-orig/archival/libipkg/pkg_vec.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/pkg_vec.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/pkg_vec.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_vec.h
+--- busybox-1.2.0-orig/archival/libipkg/pkg_vec.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/pkg_vec.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,62 @@
+/* pkg_vec.h - the itsy package management system
+
@@ -13025,9 +13006,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/pkg_vec.h busybox-1.1.2+ipkg-0.99.
+void abstract_pkg_vec_sort(pkg_vec_t *vec, int (*compar)(abstract_pkg_t *, abstract_pkg_t *));
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/sprintf_alloc.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/sprintf_alloc.h
---- busybox-1.1.2-orig/archival/libipkg/sprintf_alloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/sprintf_alloc.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/sprintf_alloc.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/sprintf_alloc.h
+--- busybox-1.2.0-orig/archival/libipkg/sprintf_alloc.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/sprintf_alloc.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,25 @@
+/* sprintf_alloca.c -- like sprintf with memory allocation
+
@@ -13054,9 +13035,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/sprintf_alloc.h busybox-1.1.2+ipkg
+#define sprintf_alloc(str, fmt, args...) *str = bb_xasprintf(fmt, ## args)
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/str_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_list.c
---- busybox-1.1.2-orig/archival/libipkg/str_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/str_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_list.c
+--- busybox-1.2.0-orig/archival/libipkg/str_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_list.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,76 @@
+/* str_list.c - the itsy package management system
+
@@ -13134,9 +13115,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/str_list.c busybox-1.1.2+ipkg-0.99
+ (void *)target_str,
+ (void_list_cmp_t)strcmp);
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/str_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_list.h
---- busybox-1.1.2-orig/archival/libipkg/str_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/str_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_list.h
+--- busybox-1.2.0-orig/archival/libipkg/str_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_list.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,51 @@
+/* str_list.h - the itsy package management system
+
@@ -13189,9 +13170,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/str_list.h busybox-1.1.2+ipkg-0.99
+char *str_list_remove_elt(str_list_t *list, const char *target_str);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/str_util.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_util.c
---- busybox-1.1.2-orig/archival/libipkg/str_util.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_util.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/str_util.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_util.c
+--- busybox-1.2.0-orig/archival/libipkg/str_util.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_util.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,73 @@
+/* str_utils.c - the itsy package management system
+
@@ -13266,9 +13247,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/str_util.c busybox-1.1.2+ipkg-0.99
+ return str ? strdup(str) : NULL;
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/str_util.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_util.h
---- busybox-1.1.2-orig/archival/libipkg/str_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/str_util.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/str_util.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_util.h
+--- busybox-1.2.0-orig/archival/libipkg/str_util.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/str_util.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,28 @@
+/* str_utils.h - the itsy package management system
+
@@ -13298,9 +13279,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/str_util.h busybox-1.1.2+ipkg-0.99
+char *str_dup_safe(const char *str);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/user.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/user.c
---- busybox-1.1.2-orig/archival/libipkg/user.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/user.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/user.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/user.c
+--- busybox-1.2.0-orig/archival/libipkg/user.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/user.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,58 @@
+/* user.c - the itsy package management system
+
@@ -13360,9 +13341,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/user.c busybox-1.1.2+ipkg-0.99.162
+
+ return response;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/user.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/user.h
---- busybox-1.1.2-orig/archival/libipkg/user.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/user.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/user.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/user.h
+--- busybox-1.2.0-orig/archival/libipkg/user.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/user.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,23 @@
+/* user.c - the itsy package management system
+
@@ -13387,9 +13368,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/user.h busybox-1.1.2+ipkg-0.99.162
+
+char *get_user_response(const char *format, ...);
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/void_list.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/void_list.c
---- busybox-1.1.2-orig/archival/libipkg/void_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/void_list.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/void_list.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/void_list.c
+--- busybox-1.2.0-orig/archival/libipkg/void_list.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/void_list.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,194 @@
+/* void_list.c - the itsy package management system
+
@@ -13585,9 +13566,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/void_list.c busybox-1.1.2+ipkg-0.9
+ else
+ return NULL;
+}
-diff -ruN busybox-1.1.2-orig/archival/libipkg/void_list.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/void_list.h
---- busybox-1.1.2-orig/archival/libipkg/void_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/void_list.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/void_list.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/void_list.h
+--- busybox-1.2.0-orig/archival/libipkg/void_list.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/void_list.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,59 @@
+/* void_list.h - the itsy package management system
+
@@ -13648,9 +13629,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/void_list.h busybox-1.1.2+ipkg-0.9
+void *void_list_remove_elt(void_list_t *list, const void *target_data, void_list_cmp_t cmp);
+
+#endif
-diff -ruN busybox-1.1.2-orig/archival/libipkg/xsystem.c busybox-1.1.2+ipkg-0.99.162/archival/libipkg/xsystem.c
---- busybox-1.1.2-orig/archival/libipkg/xsystem.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/xsystem.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/xsystem.c busybox-1.2.0+ipkg-0.99.162/archival/libipkg/xsystem.c
+--- busybox-1.2.0-orig/archival/libipkg/xsystem.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/xsystem.c 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,64 @@
+/* xsystem.c - system(3) with error messages
+
@@ -13716,9 +13697,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/xsystem.c busybox-1.1.2+ipkg-0.99.
+ return -1;
+}
+
-diff -ruN busybox-1.1.2-orig/archival/libipkg/xsystem.h busybox-1.1.2+ipkg-0.99.162/archival/libipkg/xsystem.h
---- busybox-1.1.2-orig/archival/libipkg/xsystem.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libipkg/xsystem.h 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libipkg/xsystem.h busybox-1.2.0+ipkg-0.99.162/archival/libipkg/xsystem.h
+--- busybox-1.2.0-orig/archival/libipkg/xsystem.h 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0+ipkg-0.99.162/archival/libipkg/xsystem.h 2006-07-22 16:31:26.000000000 +0200
@@ -0,0 +1,34 @@
+/* xsystem.h - system(3) with error messages
+
@@ -13754,20 +13735,9 @@ diff -ruN busybox-1.1.2-orig/archival/libipkg/xsystem.h busybox-1.1.2+ipkg-0.99.
+
+#endif
+
-diff -ruN busybox-1.1.2-orig/archival/libunarchive/Makefile.in busybox-1.1.2+ipkg-0.99.162/archival/libunarchive/Makefile.in
---- busybox-1.1.2-orig/archival/libunarchive/Makefile.in 2006-03-22 22:16:20.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libunarchive/Makefile.in 2006-05-09 02:06:48.000000000 +0200
-@@ -58,6 +58,7 @@
- LIBUNARCHIVE-$(CONFIG_FEATURE_DEB_TAR_LZMA) += decompress_unlzma.o get_header_tar_lzma.o
- LIBUNARCHIVE-$(CONFIG_GUNZIP) += $(GUNZIP_FILES)
- LIBUNARCHIVE-$(CONFIG_FEATURE_GUNZIP_UNCOMPRESS) += decompress_uncompress.o
-+LIBUNARCHIVE-$(CONFIG_IPKG) += $(GUNZIP_FILES) get_header_tar.o get_header_tar_gz.o
- LIBUNARCHIVE-$(CONFIG_RPM2CPIO) += $(GUNZIP_FILES) get_header_cpio.o
- LIBUNARCHIVE-$(CONFIG_RPM) += $(GUNZIP_FILES) get_header_cpio.o
- LIBUNARCHIVE-$(CONFIG_TAR) += get_header_tar.o
-diff -ruN busybox-1.1.2-orig/archival/libunarchive/data_extract_all.c busybox-1.1.2+ipkg-0.99.162/archival/libunarchive/data_extract_all.c
---- busybox-1.1.2-orig/archival/libunarchive/data_extract_all.c 2006-03-22 22:16:20.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/archival/libunarchive/data_extract_all.c 2006-05-09 02:06:48.000000000 +0200
+diff -ruN busybox-1.2.0-orig/archival/libunarchive/data_extract_all.c busybox-1.2.0+ipkg-0.99.162/archival/libunarchive/data_extract_all.c
+--- busybox-1.2.0-orig/archival/libunarchive/data_extract_all.c 2006-07-01 00:42:04.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/archival/libunarchive/data_extract_all.c 2006-07-22 16:31:26.000000000 +0200
@@ -126,3 +126,17 @@
utime(file_header->name, &t);
}
@@ -13786,21 +13756,43 @@ diff -ruN busybox-1.1.2-orig/archival/libunarchive/data_extract_all.c busybox-1.
+ }
+}
+
-diff -ruN busybox-1.1.2-orig/include/applets.h busybox-1.1.2+ipkg-0.99.162/include/applets.h
---- busybox-1.1.2-orig/include/applets.h 2006-03-22 22:16:24.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/include/applets.h 2006-05-09 02:06:48.000000000 +0200
-@@ -149,6 +149,7 @@
- USE_IPCALC(APPLET(ipcalc, ipcalc_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_IPCRM(APPLET(ipcrm, ipcrm_main, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS))
- USE_IPCS(APPLET(ipcs, ipcs_main, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS))
-+USE_IPKG(APPLET(ipkg, ipkg_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
- USE_IPLINK(APPLET(iplink, iplink_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_IPROUTE(APPLET(iproute, iproute_main, _BB_DIR_BIN, _BB_SUID_NEVER))
- USE_IPTUNNEL(APPLET(iptunnel, iptunnel_main, _BB_DIR_BIN, _BB_SUID_NEVER))
-diff -ruN busybox-1.1.2-orig/include/unarchive.h busybox-1.1.2+ipkg-0.99.162/include/unarchive.h
---- busybox-1.1.2-orig/include/unarchive.h 2006-03-22 22:16:24.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/include/unarchive.h 2006-05-09 02:06:48.000000000 +0200
-@@ -74,6 +74,7 @@
+diff -ruN busybox-1.2.0-orig/archival/libunarchive/Makefile.in busybox-1.2.0+ipkg-0.99.162/archival/libunarchive/Makefile.in
+--- busybox-1.2.0-orig/archival/libunarchive/Makefile.in 2006-07-01 00:42:03.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/archival/libunarchive/Makefile.in 2006-07-22 16:31:26.000000000 +0200
+@@ -58,6 +58,7 @@
+ LIBUNARCHIVE-$(CONFIG_FEATURE_DEB_TAR_LZMA) += decompress_unlzma.o get_header_tar_lzma.o
+ LIBUNARCHIVE-$(CONFIG_GUNZIP) += $(GUNZIP_FILES)
+ LIBUNARCHIVE-$(CONFIG_FEATURE_GUNZIP_UNCOMPRESS) += decompress_uncompress.o
++LIBUNARCHIVE-$(CONFIG_IPKG) += $(GUNZIP_FILES) get_header_tar.o get_header_tar_gz.o
+ LIBUNARCHIVE-$(CONFIG_RPM2CPIO) += $(GUNZIP_FILES) get_header_cpio.o
+ LIBUNARCHIVE-$(CONFIG_RPM) += $(GUNZIP_FILES) get_header_cpio.o
+ LIBUNARCHIVE-$(CONFIG_TAR) += get_header_tar.o
+diff -ruN busybox-1.2.0-orig/archival/Makefile.in busybox-1.2.0+ipkg-0.99.162/archival/Makefile.in
+--- busybox-1.2.0-orig/archival/Makefile.in 2006-07-01 00:42:04.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/archival/Makefile.in 2006-07-22 16:31:25.000000000 +0200
+@@ -20,6 +20,7 @@
+ ARCHIVAL-$(CONFIG_DPKG_DEB) += dpkg_deb.o
+ ARCHIVAL-$(CONFIG_GUNZIP) += gunzip.o
+ ARCHIVAL-$(CONFIG_GZIP) += gzip.o
++ARCHIVAL-$(CONFIG_IPKG) += ipkg.o
+ ARCHIVAL-$(CONFIG_RPM2CPIO) += rpm2cpio.o
+ ARCHIVAL-$(CONFIG_RPM) += rpm.o
+ ARCHIVAL-$(CONFIG_TAR) += tar.o
+diff -ruN busybox-1.2.0-orig/include/applets.h busybox-1.2.0+ipkg-0.99.162/include/applets.h
+--- busybox-1.2.0-orig/include/applets.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/include/applets.h 2006-07-22 16:35:35.000000000 +0200
+@@ -152,6 +152,7 @@
+ USE_IPCALC(APPLET(ipcalc, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_IPCRM(APPLET(ipcrm, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS))
+ USE_IPCS(APPLET(ipcs, _BB_DIR_USR_BIN, _BB_SUID_ALWAYS))
++USE_IPKG(APPLET(ipkg, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
+ USE_IPLINK(APPLET(iplink, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_IPROUTE(APPLET(iproute, _BB_DIR_BIN, _BB_SUID_NEVER))
+ USE_IPTUNNEL(APPLET(iptunnel, _BB_DIR_BIN, _BB_SUID_NEVER))
+diff -ruN busybox-1.2.0-orig/include/unarchive.h busybox-1.2.0+ipkg-0.99.162/include/unarchive.h
+--- busybox-1.2.0-orig/include/unarchive.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/include/unarchive.h 2006-07-22 16:31:26.000000000 +0200
+@@ -77,6 +77,7 @@
extern void data_skip(archive_handle_t *archive_handle);
extern void data_extract_all(archive_handle_t *archive_handle);
@@ -13808,10 +13800,10 @@ diff -ruN busybox-1.1.2-orig/include/unarchive.h busybox-1.1.2+ipkg-0.99.162/inc
extern void data_extract_to_stdout(archive_handle_t *archive_handle);
extern void data_extract_to_buffer(archive_handle_t *archive_handle);
-diff -ruN busybox-1.1.2-orig/include/usage.h busybox-1.1.2+ipkg-0.99.162/include/usage.h
---- busybox-1.1.2-orig/include/usage.h 2006-03-22 22:16:24.000000000 +0100
-+++ busybox-1.1.2+ipkg-0.99.162/include/usage.h 2006-05-09 02:06:48.000000000 +0200
-@@ -1013,6 +1013,82 @@
+diff -ruN busybox-1.2.0-orig/include/usage.h busybox-1.2.0+ipkg-0.99.162/include/usage.h
+--- busybox-1.2.0-orig/include/usage.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/include/usage.h 2006-07-22 16:31:26.000000000 +0200
+@@ -982,6 +982,82 @@
"$ ls -la /tmp/busybox*\n" \
"-rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/busybox.tar.gz\n"
@@ -13894,3 +13886,15 @@ diff -ruN busybox-1.1.2-orig/include/usage.h busybox-1.1.2+ipkg-0.99.162/include
#define halt_trivial_usage \
"[-d<delay>] [-n<nosync>] [-f<force>]"
#define halt_full_usage \
+diff -ruN busybox-1.2.0-orig/Makefile busybox-1.2.0+ipkg-0.99.162/Makefile
+--- busybox-1.2.0-orig/Makefile 2006-07-01 00:42:13.000000000 +0200
++++ busybox-1.2.0+ipkg-0.99.162/Makefile 2006-07-22 16:31:25.000000000 +0200
+@@ -31,7 +31,7 @@
+ export srctree=$(top_srcdir)
+ vpath %/Config.in $(srctree)
+
+-DIRS:=applets archival archival/libunarchive coreutils console-tools \
++DIRS:=applets archival archival/libipkg archival/libunarchive coreutils console-tools \
+ debianutils editors findutils init miscutils modutils networking \
+ networking/libiproute networking/udhcp procps loginutils shell \
+ sysklogd util-linux e2fsprogs libpwdgrp coreutils/libcoreutils libbb
diff --git a/package/busybox/patches/912-ipkg-no_warnings.patch b/package/busybox/patches/912-ipkg-no_warnings.patch
index 74133b0769..b5ba7705fb 100644
--- a/package/busybox/patches/912-ipkg-no_warnings.patch
+++ b/package/busybox/patches/912-ipkg-no_warnings.patch
@@ -1,3 +1,7 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
#
# remove (numerous) compile warnings
#
diff --git a/package/busybox/patches/913-libbb_hash.patch b/package/busybox/patches/913-libbb_hash.patch
index 3a6a2ba1d1..a7c2291caa 100644
--- a/package/busybox/patches/913-libbb_hash.patch
+++ b/package/busybox/patches/913-libbb_hash.patch
@@ -1,10 +1,14 @@
+# Copyright (C) 2006 OpenWrt.org
#
-# expose (again) an hash_fd function (used 911-ipkg.patch)
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
#
-diff -ruN busybox-1.1.1-old/coreutils/md5_sha1_sum.c busybox-1.1.1-new/coreutils/md5_sha1_sum.c
---- busybox-1.1.1-old/coreutils/md5_sha1_sum.c 2006-03-30 00:14:50.000000000 +0200
-+++ busybox-1.1.1-new/coreutils/md5_sha1_sum.c 2006-03-29 23:46:51.000000000 +0200
-@@ -15,80 +15,10 @@
+# expose (again) an hash_fd function (used in 911-ipkg.patch)
+#
+diff -ruN busybox-1.2.0-orig/coreutils/md5_sha1_sum.c busybox-1.2.0-libbb_hash/coreutils/md5_sha1_sum.c
+--- busybox-1.2.0-orig/coreutils/md5_sha1_sum.c 2006-07-01 00:42:07.000000000 +0200
++++ busybox-1.2.0-libbb_hash/coreutils/md5_sha1_sum.c 2006-07-22 17:08:02.000000000 +0200
+@@ -16,79 +16,10 @@
#include "busybox.h"
@@ -40,81 +44,76 @@ diff -ruN busybox-1.1.1-old/coreutils/md5_sha1_sum.c busybox-1.1.1-new/coreutils
- RESERVE_CONFIG_UBUFFER(in_buf, 4096);
- void (*update)(const void*, size_t, void*);
- void (*final)(void*, void*);
--
-- if(strcmp(filename, "-") == 0) {
+-
+- if (strcmp(filename, "-") == 0) {
- src_fd = STDIN_FILENO;
- } else if(0 > (src_fd = open(filename, O_RDONLY))) {
- bb_perror_msg("%s", filename);
- return NULL;
- }
-
-- // figure specific hash algorithims
-- if(ENABLE_MD5SUM && hash_algo==HASH_MD5) {
+- /* figure specific hash algorithims */
+- if (ENABLE_MD5SUM && hash_algo==HASH_MD5) {
- md5_begin(&context.md5);
- update = (void (*)(const void*, size_t, void*))md5_hash;
- final = (void (*)(void*, void*))md5_end;
- hash_len = 16;
-- } else if(ENABLE_SHA1SUM && hash_algo==HASH_SHA1) {
+- } else if (ENABLE_SHA1SUM && hash_algo==HASH_SHA1) {
- sha1_begin(&context.sha1);
- update = (void (*)(const void*, size_t, void*))sha1_hash;
- final = (void (*)(void*, void*))sha1_end;
- hash_len = 20;
- } else {
-- bb_error_msg_and_die("algotithm not supported");
+- bb_error_msg_and_die("algorithm not supported");
- }
--
-
-- while(0 < (count = read(src_fd, in_buf, sizeof in_buf))) {
+- while (0 < (count = read(src_fd, in_buf, 4096))) {
- update(in_buf, count, &context);
- }
-
-- if(count == 0) {
+- if (count == 0) {
- final(in_buf, &context);
- hash_value = hash_bin_to_hex(in_buf, hash_len);
- }
--
+-
- RELEASE_CONFIG_BUFFER(in_buf);
--
-- if(src_fd != STDIN_FILENO) {
+-
+- if (src_fd != STDIN_FILENO) {
- close(src_fd);
- }
--
+-
- return hash_value;
-}
-
/* This could become a common function for md5 as well, by using md5_stream */
static int hash_files(int argc, char **argv, hash_algo_t hash_algo)
{
-diff -ruN busybox-1.1.1-old/include/libbb.h busybox-1.1.1-new/include/libbb.h
---- busybox-1.1.1-old/include/libbb.h 2006-03-30 00:14:50.000000000 +0200
-+++ busybox-1.1.1-new/include/libbb.h 2006-03-30 00:31:48.000000000 +0200
-@@ -490,6 +490,12 @@
- void md5_hash(const void *data, size_t length, md5_ctx_t *ctx);
- void *md5_end(void *resbuf, md5_ctx_t *ctx);
+diff -ruN busybox-1.2.0-orig/include/libbb.h busybox-1.2.0-libbb_hash/include/libbb.h
+--- busybox-1.2.0-orig/include/libbb.h 2006-07-01 00:42:10.000000000 +0200
++++ busybox-1.2.0-libbb_hash/include/libbb.h 2006-07-22 17:01:06.000000000 +0200
+@@ -518,6 +518,8 @@
+ extern int get_terminal_width_height(int fd, int *width, int *height);
+ extern unsigned long get_ug_id(const char *s, long (*__bb_getxxnam)(const char *));
+typedef enum { HASH_SHA1, HASH_MD5 } hash_algo_t;
+
+ typedef struct _sha1_ctx_t_ {
+ uint32_t count[2];
+ uint32_t hash[5];
+@@ -542,6 +544,10 @@
+ void md5_hash(const void *data, size_t length, md5_ctx_t *ctx);
+ void *md5_end(void *resbuf, md5_ctx_t *ctx);
+
+unsigned char *hash_bin_to_hex(unsigned char *hash_value, unsigned char hash_length);
+int hash_fd(int fd, hash_algo_t hash_algo, uint8_t *hash_value);
+uint8_t *hash_file(const char *filename, hash_algo_t hash_algo);
+
- /* busybox.h will include dmalloc later for us, else include it here. */
- #if !defined _BB_INTERNAL_H_ && defined DMALLOC
- #include <dmalloc.h>
-diff -ruN busybox-1.1.1-old/libbb/Makefile.in busybox-1.1.1-new/libbb/Makefile.in
---- busybox-1.1.1-old/libbb/Makefile.in 2006-03-30 00:14:50.000000000 +0200
-+++ busybox-1.1.1-new/libbb/Makefile.in 2006-03-29 23:46:51.000000000 +0200
-@@ -11,6 +11,7 @@
+ extern uint32_t *bb_crc32_filltable (int endian);
- LIBBB-n:=
- LIBBB-y:= \
-+ hash.c \
- bb_asprintf.c ask_confirmation.c change_identity.c chomp.c \
- compare_string_array.c concat_path_file.c copy_file.c copyfd.c \
- create_icmp_socket.c create_icmp6_socket.c \
-diff -ruN busybox-1.1.1-old/libbb/hash.c busybox-1.1.1-new/libbb/hash.c
---- busybox-1.1.1-old/libbb/hash.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.1.1-new/libbb/hash.c 2006-03-30 00:35:54.000000000 +0200
+ #ifndef RB_POWER_OFF
+diff -ruN busybox-1.2.0-orig/libbb/hash.c busybox-1.2.0-libbb_hash/libbb/hash.c
+--- busybox-1.2.0-orig/libbb/hash.c 1970-01-01 01:00:00.000000000 +0100
++++ busybox-1.2.0-libbb_hash/libbb/hash.c 2006-07-22 17:07:34.000000000 +0200
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2003 Glenn L. McGrath
@@ -158,23 +157,23 @@ diff -ruN busybox-1.1.1-old/libbb/hash.c busybox-1.1.1-new/libbb/hash.c
+ void (*final)(void*, void*) = NULL;
+
+ // figure specific hash algorithims
-+ if(hash_algo==HASH_MD5) {
++ if (hash_algo==HASH_MD5) {
+ md5_begin(&context.md5);
+ update = (void (*)(const void*, size_t, void*))md5_hash;
+ final = (void (*)(void*, void*))md5_end;
-+ } else if(hash_algo==HASH_SHA1) {
++ } else if (hash_algo==HASH_SHA1) {
+ sha1_begin(&context.sha1);
+ update = (void (*)(const void*, size_t, void*))sha1_hash;
+ final = (void (*)(void*, void*))sha1_end;
+ }
+
+
-+ while(0 < (count = read(fd, in_buf, sizeof in_buf))) {
++ while (0 < (count = read(fd, in_buf, sizeof in_buf))) {
+ update(in_buf, count, &context);
+ result += count;
+ }
+
-+ if(count == 0) {
++ if (count == 0) {
+ final(hash_value, &context);
+ }
+
@@ -189,26 +188,26 @@ diff -ruN busybox-1.1.1-old/libbb/hash.c busybox-1.1.1-new/libbb/hash.c
+ RESERVE_CONFIG_UBUFFER(hash_buf, 20);
+ uint8_t *hash_value = NULL;
+
-+ if(ENABLE_MD5SUM && hash_algo==HASH_MD5) {
++ if (ENABLE_MD5SUM && hash_algo==HASH_MD5) {
+ hash_len = 16;
-+ } else if(ENABLE_SHA1SUM && hash_algo==HASH_SHA1) {
++ } else if (ENABLE_SHA1SUM && hash_algo==HASH_SHA1) {
+ hash_len = 20;
+ } else {
+ bb_error_msg_and_die("algotithm not supported");
+ }
+
-+ if(strcmp(filename, "-") == 0) {
++ if (strcmp(filename, "-") == 0) {
+ src_fd = STDIN_FILENO;
-+ } else if(0 > (src_fd = open(filename, O_RDONLY))) {
++ } else if (0 > (src_fd = open(filename, O_RDONLY))) {
+ bb_perror_msg("%s", filename);
+ return NULL;
+ }
+
-+ if(hash_fd(src_fd, hash_algo, hash_buf) > 0) {
++ if (hash_fd(src_fd, hash_algo, hash_buf) > 0) {
+ hash_value = hash_bin_to_hex(hash_buf, hash_len);
+ }
+
-+ if(src_fd != STDIN_FILENO) {
++ if (src_fd != STDIN_FILENO) {
+ close(src_fd);
+ }
+
@@ -216,3 +215,14 @@ diff -ruN busybox-1.1.1-old/libbb/hash.c busybox-1.1.1-new/libbb/hash.c
+
+ return hash_value;
+}
+diff -ruN busybox-1.2.0-orig/libbb/Makefile.in busybox-1.2.0-libbb_hash/libbb/Makefile.in
+--- busybox-1.2.0-orig/libbb/Makefile.in 2006-07-01 00:42:08.000000000 +0200
++++ busybox-1.2.0-libbb_hash/libbb/Makefile.in 2006-07-22 16:51:47.000000000 +0200
+@@ -11,6 +11,7 @@
+
+ LIBBB-n:=
+ LIBBB-y:= \
++ hash.c \
+ bb_asprintf.c ask_confirmation.c change_identity.c chomp.c \
+ compare_string_array.c concat_path_file.c copy_file.c copyfd.c \
+ crc32.c create_icmp_socket.c create_icmp6_socket.c \
diff --git a/package/busybox/patches/914-ipkg-fixes.patch b/package/busybox/patches/914-ipkg-fixes.patch
index 55cd9040c6..72375bc5b7 100644
--- a/package/busybox/patches/914-ipkg-fixes.patch
+++ b/package/busybox/patches/914-ipkg-fixes.patch
@@ -1,3 +1,7 @@
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
#
# fix ipkg bugs
#