upgrade busybox to 1.8.1
authorFelix Fietkau <nbd@openwrt.org>
Sat, 10 Nov 2007 16:51:11 +0000 (16:51 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sat, 10 Nov 2007 16:51:11 +0000 (16:51 +0000)
SVN-Revision: 9524

17 files changed:
package/busybox/Makefile
package/busybox/config/Config.in
package/busybox/config/archival/Config.in
package/busybox/config/console-tools/Config.in
package/busybox/config/miscutils/Config.in
package/busybox/config/networking/Config.in
package/busybox/config/procps/Config.in
package/busybox/config/selinux/Config.in
package/busybox/config/util-linux/Config.in
package/busybox/patches/340-lock_util.patch
package/busybox/patches/350-httpd_redir.patch
package/busybox/patches/470-insmod_search.patch
package/busybox/patches/500-ipkg.patch
package/busybox/patches/501-libbb_hash.patch
package/busybox/patches/510-awx.patch
package/busybox/patches/990-upstream_tail_fix.patch [deleted file]
package/busybox/patches/991-upstream_logger_fix.patch [deleted file]

index 3430a21..fc935d8 100644 (file)
@@ -9,13 +9,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=busybox
-PKG_VERSION:=1.7.2
+PKG_VERSION:=1.8.1
 PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://www.busybox.net/downloads \
                http://distfiles.gentoo.org/distfiles/
-PKG_MD5SUM:=c91ec9756e2000073a9dd8fa9fc3f89e
+PKG_MD5SUM:=c54554851d989328654a3eeab915a04f
 
 include $(INCLUDE_DIR)/package.mk
 
index d3c1cb6..abeb472 100644 (file)
@@ -185,10 +185,10 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
 
          The file has to be owned by user root, group root and has to be
          writeable only by root:
-               (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf)
+               (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf)
          The busybox executable has to be owned by user root, group
          root and has to be setuid root for this to work:
-               (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox)
+               (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox)
 
          Robert 'sandman' Griebl has more information here:
          <url: http://www.softforge.de/bb/suid.html >.
@@ -282,41 +282,80 @@ config BUSYBOX_CONFIG_STATIC
 config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
        bool "Build shared libbusybox"
        default n
+       depends on !BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
+       help
+         Build a shared library libbusybox.so.N.N.N which contains all
+         busybox code.
+
+         This feature allows every applet to be built as a tiny
+         separate executable.  Enabling it for "one big busybox binary"
+         approach serves no purpose and increases code size.
+         You should almost certainly say "no" to this.
+
+### config FEATURE_FULL_LIBBUSYBOX
+###    bool "Feature-complete libbusybox"
+###    default n if !FEATURE_SHARED_BUSYBOX
+###    depends on BUILD_LIBBUSYBOX
+###    help
+###      Build a libbusybox with the complete feature-set, disregarding
+###      the actually selected config.
+###
+###      Normally, libbusybox will only contain the features which are
+###      used by busybox itself. If you plan to write a separate
+###      standalone application which uses libbusybox say 'Y'.
+###
+###      Note: libbusybox is GPL, not LGPL, and exports no stable API that
+###      might act as a copyright barrier.  We can and will modify the
+###      exported function set between releases (even minor version number
+###      changes), and happily break out-of-tree features.
+###
+###      Say 'N' if in doubt.
+
+config BUSYBOX_CONFIG_FEATURE_INDIVIDUAL
+       bool "Produce a binary for each applet, linked against libbusybox"
+       default n
+       depends on !BUSYBOX_CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
        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 !BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX
-       depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
-       help
-         Build a libbusybox with the complete feature-set, disregarding
-         the actually selected config.
+         If your CPU architecture doesn't allow for sharing text/rodata
+         sections of running binaries, but allows for runtime dynamic
+         libraries, this option will allow you to reduce memory footprint
+         when you have many different applets running at once.
 
-         Normally, libbusybox will only contain the features which are
-         used by busybox itself. If you plan to write a separate
-         standalone application which uses libbusybox say 'Y'.
+         If your CPU architecture allows for sharing text/rodata,
+         having single binary is more optimal.
 
-         Note: libbusybox is GPL, not LGPL, and exports no stable API that
-         might act as a copyright barrier.  We can and will modify the
-         exported function set between releases (even minor version number
-         changes), and happily break out-of-tree features.
+         Each applet will be a tiny program, dynamically linked
+         against libbusybox.so.N.N.N.
 
-         Say 'N' if in doubt.
+         You need to have a working dynamic linker.
 
 config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX
-       bool "Use shared libbusybox for busybox"
-       default n if BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
+       bool "Produce additional busybox binary linked against libbusybox"
+       default n
        depends on !BUSYBOX_CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
        help
-         Use libbusybox.so also for busybox itself.
-         You need to have a working dynamic linker to use this variant.
+         Build busybox, dynamically linked against libbusybox.so.N.N.N.
+
+         You need to have a working dynamic linker.
+
+### config BUILD_AT_ONCE
+###    bool "Compile all sources at once"
+###    default n
+###    help
+###      Normally each source-file is compiled with one invocation of
+###      the compiler.
+###      If you set this option, all sources are compiled at once.
+###      This gives the compiler more opportunities to optimize which can
+###      result in smaller and/or faster binaries.
+###
+###      Setting this option will consume alot of memory, e.g. if you
+###      enable all applets with all features, gcc uses more than 300MB
+###      RAM during compilation of busybox.
+###
+###      This option is most likely only beneficial for newer compilers
+###      such as gcc-4.1 and above.
+###
+###      Say 'N' unless you know what you are doing.
 
 config BUSYBOX_CONFIG_LFS
        bool
@@ -330,25 +369,6 @@ config BUSYBOX_CONFIG_LFS
          cp, mount, tar, and many others.  If you want to access files larger
          than 2 Gigabytes, enable this option.  Otherwise, leave it set to 'N'.
 
-config BUSYBOX_CONFIG_BUILD_AT_ONCE
-       bool "Compile all sources at once"
-       default n
-       help
-         Normally each source-file is compiled with one invocation of
-         the compiler.
-         If you set this option, all sources are compiled at once.
-         This gives the compiler more opportunities to optimize which can
-         result in smaller and/or faster binaries.
-
-         Setting this option will consume alot of memory, e.g. if you
-         enable all applets with all features, gcc uses more than 300MB
-         RAM during compilation of busybox.
-
-         This option is most likely only beneficial for newer compilers
-         such as gcc-4.1 and above.
-
-         Say 'N' unless you know what you are doing.
-
 endmenu
 
 menu 'Debugging Options'
@@ -464,6 +484,11 @@ config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS
          Install applets as hard-links to the busybox binary. This might count
          on a filesystem with few inodes.
 
+config BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
+       bool "as script wrappers"
+       help
+         Install applets as script wrappers that call the busybox binary.
+
 config BUSYBOX_CONFIG_INSTALL_APPLET_DONT
        bool "not installed"
        depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE || BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
@@ -473,6 +498,30 @@ config BUSYBOX_CONFIG_INSTALL_APPLET_DONT
 
 endchoice
 
+choice
+       prompt "/bin/sh applet link"
+       default BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
+       depends on BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
+       help
+         Choose how you install /bin/sh applet link.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
+       bool "as soft-link"
+       help
+         Install /bin/sh applet as soft-link to the busybox binary.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_HARDLINK
+       bool "as hard-link"
+       help
+         Install /bin/sh applet as hard-link to the busybox binary.
+
+config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER
+       bool "as script wrapper"
+       help
+         Install /bin/sh applet as script wrapper that call the busybox binary.
+
+endchoice
+
 config BUSYBOX_CONFIG_PREFIX
        string "BusyBox installation prefix"
        default "./_install"
index 9895dba..8d62d2b 100644 (file)
@@ -48,12 +48,22 @@ config BUSYBOX_CONFIG_BUNZIP2
          conventional LZ77/LZ78-based compressors, and approaches the
          performance of the PPM family of statistical compressors.
 
-         The BusyBox bunzip2 applet is limited to de-compression only.
-         On an x86 system, this applet adds about 11K.
-
          Unless you have a specific application which requires bunzip2, you
          should probably say N here.
 
+config BUSYBOX_CONFIG_BZIP2
+       bool "bzip2"
+       default n
+       help
+         bzip2 is a compression utility using the Burrows-Wheeler block
+         sorting text compression algorithm, and Huffman coding.  Compression
+         is generally considerably better than that achieved by more
+         conventional LZ77/LZ78-based compressors, and approaches the
+         performance of the PPM family of statistical compressors.
+
+         Unless you have a specific application which requires bzip2, you
+         should probably say N here.
+
 config BUSYBOX_CONFIG_CPIO
        bool "cpio"
        default n
index 7b044ea..957b1d3 100644 (file)
@@ -31,6 +31,12 @@ config BUSYBOX_CONFIG_DUMPKMAP
          This program dumps the kernel's keyboard translation table to
          stdout, in binary format. You can then use loadkmap to load it.
 
+config BUSYBOX_CONFIG_KBD_MODE
+       bool "kbd_mode"
+       default n
+       help
+         This program reports and sets keyboard mode.
+
 config BUSYBOX_CONFIG_LOADFONT
        bool "loadfont"
        default n
index 44f11a9..d038f11 100644 (file)
@@ -282,6 +282,12 @@ config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE
 
 endchoice
 
+config BUSYBOX_CONFIG_MICROCOM
+       bool "microcom"
+       default n
+       help
+         The poor man's minicom utility for chatting with serial port devices.
+
 config BUSYBOX_CONFIG_MOUNTPOINT
        bool "mountpoint"
        default n
index 1da1dc5..186e945 100644 (file)
@@ -83,6 +83,15 @@ config BUSYBOX_CONFIG_HTTPD
        help
          Serve web pages via an HTTP server.
 
+config BUSYBOX_CONFIG_FEATURE_HTTPD_RANGES
+       bool "Support 'Ranges:' header"
+       default y
+       depends on BUSYBOX_CONFIG_HTTPD
+       help
+         Makes httpd emit "Accept-Ranges: bytes" header and understand
+         "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
+         downloads, seeking in multimedia players etc.
+
 config BUSYBOX_CONFIG_FEATURE_HTTPD_USE_SENDFILE
        bool "Use sendfile system call"
        default y
@@ -183,6 +192,18 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_ERROR_PAGES
          '/path/e404.html' file instead of the terse '404 NOT FOUND'
          message.
 
+config BUSYBOX_CONFIG_FEATURE_HTTPD_PROXY
+       bool "Enable support for reverse proxy"
+       default n
+       depends on BUSYBOX_CONFIG_HTTPD
+       help
+         This option allows you to define URLs that will be forwarded
+         to another HTTP server. To setup add the following line to the
+         configuration file
+               P:/url/:http://hostname[:port]/new/path/
+         Then a request to /url/myfile will be forwarded to
+         http://hostname[:port]/new/path/myfile.
+
 config BUSYBOX_CONFIG_IFCONFIG
        bool "ifconfig"
        default y
@@ -248,7 +269,8 @@ config BUSYBOX_CONFIG_IFUPDOWN
 
 config BUSYBOX_CONFIG_IFUPDOWN_IFSTATE_PATH
        string "Absolute path to ifstate file"
-       default "/var/run/ifstate"
+       default n
+       depends on BUSYBOX_CONFIG_IFUPDOWN
        help
          ifupdown keeps state information in a file called ifstate.
          Typically it is located in /var/run/ifstate, however
@@ -307,13 +329,13 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6
          If you need support for IPv6, turn this option on.
 
 ### UNUSED
-### config FEATURE_IFUPDOWN_IPX
-###    bool "Enable support for IPX"
-###    default n
-###    depends on IFUPDOWN
-###    help
-###      If this option is selected you can use busybox to work with IPX
-###      networks.
+###config FEATURE_IFUPDOWN_IPX
+###    bool "Enable support for IPX"
+###    default n
+###    depends on IFUPDOWN
+###    help
+###      If this option is selected you can use busybox to work with IPX
+###      networks.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
        bool "Enable mapping support"
@@ -441,6 +463,16 @@ config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS
          Say N unless you desparately need the short form of the ip
          object commands.
 
+config BUSYBOX_CONFIG_FEATURE_IP_RARE_PROTOCOLS
+       bool "Support displaying rarely used link types"
+       default n
+       depends on BUSYBOX_CONFIG_IP
+       help
+         If you are not going to use links of type "frad", "econet",
+         "bif" etc, you probably don't need to enable this.
+         Ethernet, wireless, infrared, ppp/slip, ip tunnelling
+         link types are supported without this option selected.
+
 config BUSYBOX_CONFIG_IPADDR
        bool
        default n
index cd063db..59018cb 100644 (file)
@@ -49,6 +49,12 @@ config BUSYBOX_CONFIG_NMETER
        help
          Prints selected system stats continuously, one line per update.
 
+config BUSYBOX_CONFIG_PGREP
+       bool "pgrep"
+       default y
+       help
+         Look for processes by name.
+
 config BUSYBOX_CONFIG_PIDOF
        bool "pidof"
        default y
@@ -72,6 +78,12 @@ config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT
          The special pid %PPID can be used to name the parent process
          of the pidof, in other words the calling shell or shell script.
 
+config BUSYBOX_CONFIG_PKILL
+       bool "pkill"
+       default y
+       help
+         Send signals to processes by name.
+
 config BUSYBOX_CONFIG_PS
        bool "ps"
        default y
@@ -128,6 +140,13 @@ config BUSYBOX_CONFIG_FEATURE_TOP_DECIMALS
        help
          Show 1/10th of a percent in CPU/mem statistics.
 
+config BUSYBOX_CONFIG_FEATURE_TOPMEM
+       bool "topmem"
+       default n
+       depends on BUSYBOX_CONFIG_TOP
+       help
+         Enable 's' in top (gives lots of memory info)
+
 config BUSYBOX_CONFIG_UPTIME
        bool "uptime"
        default y
index 907c975..d3a8acf 100644 (file)
@@ -104,5 +104,13 @@ config BUSYBOX_CONFIG_FEATURE_SETFILES_CHECK_OPTION
          Support "-c" option (check the validity of the contexts against
          the specified binary policy) for setfiles. Requires libsepol.
 
+config BUSYBOX_CONFIG_SETSEBOOL
+       bool "setsebool"
+       default n
+       depends on BUSYBOX_CONFIG_SELINUX
+       help
+         Enable support for change boolean.
+         semanage and -P option is not supported yet.
+
 endmenu
 
index 28dc7b7..457fdc8 100644 (file)
@@ -360,6 +360,16 @@ config BUSYBOX_CONFIG_MOUNT
          NFS filesystems.  Most people using BusyBox will also want to enable
          the 'mount' utility.
 
+config BUSYBOX_CONFIG_FEATURE_MOUNT_HELPERS
+       bool "Support mount helpers"
+       default n
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable mounting of virtual file systems via external helpers.
+         E.g. mount obexfs#-b00.11.22.33.44.55 /mnt will in effect call
+         obexfs -b00.11.22.33.44.55 /mnt
+         The idea is to use such virtual filesystems in /etc/fstab
+
 config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
        bool "Support mounting NFS file systems"
        default y
index 8d81275..1d781f2 100644 (file)
@@ -1,8 +1,8 @@
-Index: busybox-1.7.2/include/applets.h
+Index: busybox-1.8.1/include/applets.h
 ===================================================================
---- busybox-1.7.2.orig/include/applets.h       2007-10-30 15:35:03.000000000 -0500
-+++ busybox-1.7.2/include/applets.h    2007-10-30 15:35:03.000000000 -0500
-@@ -209,6 +209,7 @@
+--- busybox-1.8.1.orig/include/applets.h       2007-11-10 16:54:28.318054115 +0100
++++ busybox-1.8.1/include/applets.h    2007-11-10 17:39:21.487529096 +0100
+@@ -218,6 +218,7 @@
  USE_LOAD_POLICY(APPLET(load_policy, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
  USE_LOADFONT(APPLET(loadfont, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
  USE_LOADKMAP(APPLET(loadkmap, _BB_DIR_SBIN, _BB_SUID_NEVER))
@@ -10,10 +10,10 @@ Index: busybox-1.7.2/include/applets.h
  USE_LOGGER(APPLET(logger, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
  USE_LOGIN(APPLET(login, _BB_DIR_BIN, _BB_SUID_ALWAYS))
  USE_LOGNAME(APPLET_NOFORK(logname, logname, _BB_DIR_USR_BIN, _BB_SUID_NEVER, logname))
-Index: busybox-1.7.2/miscutils/Config.in
+Index: busybox-1.8.1/miscutils/Config.in
 ===================================================================
---- busybox-1.7.2.orig/miscutils/Config.in     2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/miscutils/Config.in  2007-10-30 15:35:03.000000000 -0500
+--- busybox-1.8.1.orig/miscutils/Config.in     2007-11-10 16:54:16.477379354 +0100
++++ busybox-1.8.1/miscutils/Config.in  2007-11-10 16:54:28.366056851 +0100
 @@ -244,6 +244,12 @@
          Enables the 'hdparm -d' option to get/set using_dma flag.
          This is dangerous stuff, so you should probably say N.
@@ -27,23 +27,23 @@ Index: busybox-1.7.2/miscutils/Config.in
  config MAKEDEVS
        bool "makedevs"
        default n
-Index: busybox-1.7.2/miscutils/Kbuild
+Index: busybox-1.8.1/miscutils/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/miscutils/Kbuild        2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/miscutils/Kbuild     2007-10-30 15:35:03.000000000 -0500
+--- busybox-1.8.1.orig/miscutils/Kbuild        2007-11-10 16:54:16.481379580 +0100
++++ busybox-1.8.1/miscutils/Kbuild     2007-11-10 16:54:28.370057076 +0100
 @@ -16,6 +16,7 @@
  lib-$(CONFIG_HDPARM)      += hdparm.o
  lib-$(CONFIG_LAST)        += last.o
  lib-$(CONFIG_LESS)        += less.o
 +lib-$(CONFIG_LOCK)        += lock.o
  lib-$(CONFIG_MAKEDEVS)    += makedevs.o
+ lib-$(CONFIG_MICROCOM)    += microcom.o
  lib-$(CONFIG_MOUNTPOINT)  += mountpoint.o
- lib-$(CONFIG_MT)          += mt.o
-Index: busybox-1.7.2/miscutils/lock.c
+Index: busybox-1.8.1/miscutils/lock.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/miscutils/lock.c     2007-10-30 15:35:03.000000000 -0500
-@@ -0,0 +1,135 @@
++++ busybox-1.8.1/miscutils/lock.c     2007-11-10 17:40:37.203843924 +0100
+@@ -0,0 +1,132 @@
 +/*
 + * Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
 + *
@@ -56,7 +56,7 @@ Index: busybox-1.7.2/miscutils/lock.c
 +#include <fcntl.h>
 +#include <unistd.h>
 +#include <stdio.h>
-+#include "busybox.h" 
++#include "busybox.h"
 +
 +static int unlock = 0;
 +static int shared = 0;
@@ -84,19 +84,19 @@ Index: busybox-1.7.2/miscutils/lock.c
 +{
 +      FILE *f;
 +      int i;
-+      
++
 +      if ((f = fopen(file, "r")) == NULL)
 +              return 0;
-+      
++
 +      fscanf(f, "%d", &i);
 +      if (i > 0)
 +              kill(i, SIGTERM);
-+      
++
 +      fclose(f);
 +
 +      return 0;
 +}
-+              
++
 +static int do_lock(void)
 +{
 +      int pid;
@@ -118,7 +118,7 @@ Index: busybox-1.7.2/miscutils/lock.c
 +
 +      if (pid < 0)
 +              return -1;
-+      
++
 +      if (pid == 0) {
 +              signal(SIGKILL, exit_unlock);
 +              signal(SIGTERM, exit_unlock);
@@ -142,11 +142,8 @@ Index: busybox-1.7.2/miscutils/lock.c
 +      return 0;
 +}
 +
-+#ifndef CONFIG_LOCK
-+int main(int argc, char **argv)
-+#else
++int lock_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 +int lock_main(int argc, char **argv)
-+#endif
 +{
 +      char **args = &argv[1];
 +      int c = argc - 1;
index bc34c3b..57d3b0b 100644 (file)
@@ -1,8 +1,8 @@
-Index: busybox-1.7.2/include/usage.h
+Index: busybox-1.8.1/include/usage.h
 ===================================================================
---- busybox-1.7.2.orig/include/usage.h 2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/include/usage.h      2007-10-30 15:35:03.000000000 -0500
-@@ -1350,7 +1350,8 @@
+--- busybox-1.8.1.orig/include/usage.h 2007-11-10 16:54:16.433376848 +0100
++++ busybox-1.8.1/include/usage.h      2007-11-10 16:54:29.970148260 +0100
+@@ -1418,7 +1418,8 @@
        USE_FEATURE_HTTPD_BASIC_AUTH(" [-r realm]") \
        USE_FEATURE_HTTPD_AUTH_MD5(" [-m pass]") \
         " [-h home]" \
@@ -12,7 +12,7 @@ Index: busybox-1.7.2/include/usage.h
  #define httpd_full_usage \
         "Listen for incoming HTTP requests" \
         "\n\nOptions:" \
-@@ -1368,6 +1369,8 @@
+@@ -1436,6 +1437,8 @@
         "\n    -h HOME         Home directory (default .)" \
         "\n    -e STRING       HTML encode STRING" \
         "\n    -d STRING       URL decode STRING" \
@@ -20,12 +20,12 @@ Index: busybox-1.7.2/include/usage.h
 +       "\n    -H HOST         Redirect target host" \
  
  #define hwclock_trivial_usage \
-        "[-r|--show] [-s|--hctosys] [-w|--systohc]" \
-Index: busybox-1.7.2/networking/httpd.c
+       USE_GETOPT_LONG( \
+Index: busybox-1.8.1/networking/httpd.c
 ===================================================================
---- busybox-1.7.2.orig/networking/httpd.c      2007-10-30 15:35:03.000000000 -0500
-+++ busybox-1.7.2/networking/httpd.c   2007-10-30 15:35:03.000000000 -0500
-@@ -230,6 +230,8 @@
+--- busybox-1.8.1.orig/networking/httpd.c      2007-11-10 16:54:28.346055711 +0100
++++ busybox-1.8.1/networking/httpd.c   2007-11-10 16:54:56.639668071 +0100
+@@ -253,6 +253,8 @@
  
        const char *found_mime_type;
        const char *found_moved_temporarily;
@@ -34,16 +34,16 @@ Index: busybox-1.7.2/networking/httpd.c
        Htaccess_IP *ip_a_d;    /* config allow/deny lines */
  
        USE_FEATURE_HTTPD_BASIC_AUTH(const char *g_realm;)
-@@ -264,6 +266,8 @@
+@@ -297,6 +299,8 @@
  #define home_httpd        (G.home_httpd       )
  #define found_mime_type   (G.found_mime_type  )
  #define found_moved_temporarily (G.found_moved_temporarily)
 +#define redirect_path     (G.redirect_path    )
 +#define redirect_host     (G.redirect_host    )
- #define ContentLength     (G.ContentLength    )
  #define last_mod          (G.last_mod         )
  #define ip_a_d            (G.ip_a_d           )
-@@ -901,8 +905,11 @@
+ #define g_realm           (G.g_realm          )
+@@ -988,8 +992,11 @@
        }
  #endif
        if (responseNum == HTTP_MOVED_TEMPORARILY) {
@@ -56,7 +56,7 @@ Index: busybox-1.7.2/networking/httpd.c
                                (g_query ? "?" : ""),
                                (g_query ? g_query : ""));
        }
-@@ -1730,8 +1737,12 @@
+@@ -1907,8 +1914,12 @@
        *++urlp = '\0';       /* so keep last character */
        tptr = urlp;          /* end ptr */
  
@@ -70,7 +70,7 @@ Index: busybox-1.7.2/networking/httpd.c
                if (is_directory(urlcopy + 1, 1, &sb)) {
                        found_moved_temporarily = urlcopy;
                }
-@@ -2004,7 +2015,9 @@
+@@ -2252,7 +2263,9 @@
  #endif
  
  enum {
@@ -81,7 +81,7 @@ Index: busybox-1.7.2/networking/httpd.c
        d_opt_decode_url,
        h_opt_home_httpd,
        USE_FEATURE_HTTPD_ENCODE_URL_STR(e_opt_encode_url,)
-@@ -2053,12 +2066,13 @@
+@@ -2301,12 +2314,13 @@
        /* We do not "absolutize" path given by -h (home) opt.
         * If user gives relative path in -h, $SCRIPT_FILENAME can end up
         * relative too. */
index d36d93d..ef372ec 100644 (file)
@@ -1,8 +1,8 @@
-Index: busybox-1.7.2/modutils/insmod.c
+Index: busybox-1.8.1/modutils/insmod.c
 ===================================================================
---- busybox-1.7.2.orig/modutils/insmod.c       2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/modutils/insmod.c    2007-10-30 15:35:05.000000000 -0500
-@@ -61,19 +61,114 @@
+--- busybox-1.8.1.orig/modutils/insmod.c       2007-11-10 02:40:49.000000000 +0100
++++ busybox-1.8.1/modutils/insmod.c    2007-11-10 17:28:44.391223047 +0100
+@@ -61,21 +61,117 @@
  #include "libbb.h"
  #include <libgen.h>
  #include <sys/utsname.h>
@@ -17,17 +17,18 @@ Index: busybox-1.7.2/modutils/insmod.c
  #define ENABLE_FEATURE_2_4_MODULES 1
  #endif
  
--#if !ENABLE_FEATURE_2_4_MODULES
--#define insmod_ng_main insmod_main
-+#if ENABLE_FEATURE_2_4_MODULES
-+int insmod_main_24(int argc, char **argv);
- #endif
+-/*
+- * Big piece of 2.4-specific code
+- */
+ #if ENABLE_FEATURE_2_4_MODULES
 -
++int insmod_main_24(int argc, char **argv);
++#endif
  #if ENABLE_FEATURE_2_6_MODULES
--extern int insmod_ng_main( int argc, char **argv);
+-static int insmod_ng_main(int argc, char **argv);
 +int insmod_main_26(int argc, char **argv);
- #endif
-+int insmod_main(int argc, char **argv);
++#endif
++int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 +
 +static char *g_filename = NULL;
 +#define _PATH_MODULES "/lib/modules"
@@ -36,20 +37,18 @@ Index: busybox-1.7.2/modutils/insmod.c
 +                                 void *userdata, int depth)
 +{
 +      char *fullname = (char *) userdata;
++      char *tmp;
 +
 +      if (fullname[0] == '\0')
 +              return FALSE;
-+      else {
-+              char *tmp, *tmp1 = xstrdup(filename);
-+              tmp = bb_get_last_path_component(tmp1);
-+              if (strcmp(tmp, fullname) == 0) {
-+                      free(tmp1);
-+                      /* Stop searching if we find a match */
-+                      g_filename = xstrdup(filename);
-+                      return FALSE;
-+              }
-+              free(tmp1);
++
++      tmp = bb_get_last_path_component_nostrip(filename);
++      if (strcmp(tmp, fullname) == 0) {
++              /* Stop searching if we find a match */
++              g_filename = xstrdup(filename);
++              return FALSE;
 +      }
++
 +      return TRUE;
 +}
 +
@@ -70,7 +69,7 @@ Index: busybox-1.7.2/modutils/insmod.c
 +      if (k_version <= 4)
 +              suffix = ".o";
 +      else
-+#endif
+ #endif
 +              suffix = ".ko";
 +
 +      len = strlen(filename);
@@ -112,16 +111,21 @@ Index: busybox-1.7.2/modutils/insmod.c
 +              ret = 0;
 +      else
 +              free(g_filename);
-+
 +done:
 +      free(filename);
 +
 +      return ret;
 +}
- #if ENABLE_FEATURE_2_4_MODULES
-@@ -677,7 +772,6 @@
++
++/*
++ * Big piece of 2.4-specific code
++ */
++#if ENABLE_FEATURE_2_4_MODULES
+ #if ENABLE_FEATURE_INSMOD_LOADINKMEM
+ #define LOADBITS 0
+ #else
+@@ -673,7 +769,6 @@
  #endif
  
  
@@ -129,14 +133,10 @@ Index: busybox-1.7.2/modutils/insmod.c
  enum { STRVERSIONLEN = 64 };
  
  /*======================================================================*/
-@@ -790,37 +884,6 @@
- static int n_ext_modules_used;
- extern int delete_module(const char *);
+@@ -789,27 +884,6 @@
+ static char *m_fullName;
  
--static char *m_filename;
--static char *m_fullName;
--
--
 -/*======================================================================*/
 -
 -
@@ -144,35 +144,29 @@ Index: busybox-1.7.2/modutils/insmod.c
 -                              void *userdata, int depth)
 -{
 -      char *fullname = (char *) userdata;
+-      char *tmp;
 -
 -      if (fullname[0] == '\0')
 -              return FALSE;
--      else {
--              char *tmp, *tmp1 = xstrdup(filename);
--              tmp = bb_get_last_path_component(tmp1);
--              if (strcmp(tmp, fullname) == 0) {
--                      free(tmp1);
--                      /* Stop searching if we find a match */
--                      m_filename = xstrdup(filename);
--                      return FALSE;
--              }
--              free(tmp1);
+-
+-      tmp = bb_get_last_path_component_nostrip(filename);
+-      if (strcmp(tmp, fullname) == 0) {
+-              /* Stop searching if we find a match */
+-              m_filename = xstrdup(filename);
+-              return FALSE;
 -      }
 -      return TRUE;
 -}
 -
--
--/*======================================================================*/
--
- static struct obj_file *arch_new_file(void)
- {
-       struct arch_file *f;
-@@ -3952,145 +4015,57 @@
+ /*======================================================================*/
+@@ -3897,145 +3971,57 @@
  void print_load_map(struct obj_file *f);
  #endif
  
--int insmod_main( int argc, char **argv);
--int insmod_main( int argc, char **argv)
+-int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+-int insmod_main(int argc, char **argv)
 +int insmod_main_24( int argc, char **argv)
  {
        char *opt_o, *arg1;
@@ -183,7 +177,7 @@ Index: busybox-1.7.2/modutils/insmod.c
        ElfW(Addr) m_addr;
        struct obj_file *f;
 -      struct stat st;
--      char *m_name = 0;
+-      char *m_name = NULL;
 -      int exit_status = EXIT_FAILURE;
 +      char *tmp = NULL, *m_name = NULL;
 +      int ret = EINVAL;
@@ -194,12 +188,11 @@ Index: busybox-1.7.2/modutils/insmod.c
        int m_version, m_crcs;
  #endif
 -#if ENABLE_FEATURE_CLEAN_UP
--      FILE *fp = 0;
+       FILE *fp = NULL;
 -#else
 -      FILE *fp;
 -#endif
 -      int k_version = 0;
-+      FILE *fp = NULL;
 +      int k_version;
        struct utsname myuname;
  
@@ -247,8 +240,8 @@ Index: busybox-1.7.2/modutils/insmod.c
 -                      len -= 2;
 -                      tmp[len] = '\0';
 -              }
--
  
+-
 -#if ENABLE_FEATURE_2_6_MODULES
 -      if (k_version > 4)
 -              m_fullName = xasprintf("%s.ko", tmp);
@@ -263,12 +256,12 @@ Index: busybox-1.7.2/modutils/insmod.c
 -              m_name = tmp;
 -      } else {
 -              free(tmp1);
--              tmp1 = 0;       /* flag for free(m_name) before exit() */
+-              tmp1 = NULL;       /* flag for free(m_name) before exit() */
 +              tmp = xstrdup(arg1);
 +              m_name = basename(tmp);
        }
  
--      /* Get a filedesc for the module.  Check we we have a complete path */
+-      /* Get a filedesc for the module.  Check that we have a complete path */
 -      if (stat(arg1, &st) < 0 || !S_ISREG(st.st_mode)
 -       || (fp = fopen(arg1, "r")) == NULL
 -      ) {
@@ -277,7 +270,6 @@ Index: busybox-1.7.2/modutils/insmod.c
 -              if (k_version) {        /* uname succeedd */
 -                      char *module_dir;
 -                      char *tmdn;
--                      char real_module_dir[FILENAME_MAX];
 -
 -                      tmdn = concat_path_file(_PATH_MODULES, myuname.release);
 -                      /* Jump through hoops in case /lib/modules/`uname -r`
@@ -285,36 +277,37 @@ Index: busybox-1.7.2/modutils/insmod.c
 -                       * follow symlinks, but we do want to follow the
 -                       * /lib/modules/`uname -r` dir, So resolve it ourselves
 -                       * if it is a link... */
--                      if (realpath(tmdn, real_module_dir) == NULL)
--                              module_dir = tmdn;
--                      else
--                              module_dir = real_module_dir;
+-                      module_dir = xmalloc_readlink(tmdn);
+-                      if (!module_dir)
+-                              module_dir = xstrdup(tmdn);
 -                      recursive_action(module_dir, ACTION_RECURSE,
--                                      check_module_name_match, 0, m_fullName, 0);
+-                                      check_module_name_match, NULL, m_fullName, 0);
+-                      free(module_dir);
 -                      free(tmdn);
 -              }
 -
 -              /* Check if we have found anything yet */
--              if (m_filename == 0 || ((fp = fopen(m_filename, "r")) == NULL)) {
--                      char module_dir[FILENAME_MAX];
+-              if (!m_filename || ((fp = fopen(m_filename, "r")) == NULL)) {
+-                      int r;
+-                      char *module_dir;
 -
 -                      free(m_filename);
--                      m_filename = 0;
--                      if (realpath (_PATH_MODULES, module_dir) == NULL)
--                              strcpy(module_dir, _PATH_MODULES);
+-                      m_filename = NULL;
+-                      module_dir = xmalloc_readlink(_PATH_MODULES);
+-                      if (!module_dir)
+-                              module_dir = xstrdup(_PATH_MODULES);
 -                      /* No module found under /lib/modules/`uname -r`, this
 -                       * time cast the net a bit wider.  Search /lib/modules/ */
--                      if (!recursive_action(module_dir, ACTION_RECURSE,
--                                                  check_module_name_match, 0, m_fullName, 0)
+-                      r = recursive_action(module_dir, ACTION_RECURSE,
+-                                      check_module_name_match, NULL, m_fullName, 0);
+-                      if (r)
+-                              bb_error_msg_and_die("%s: module not found", m_fullName);
+-                      free(module_dir);
+-                      if (m_filename == NULL
+-                       || ((fp = fopen(m_filename, "r")) == NULL)
 -                      ) {
--                              if (m_filename == 0
--                               || ((fp = fopen(m_filename, "r")) == NULL)
--                              ) {
--                                      bb_error_msg("%s: no module by that name found", m_fullName);
--                                      goto out;
--                              }
--                      } else
--                              bb_error_msg_and_die("%s: no module by that name found", m_fullName);
+-                              bb_error_msg_and_die("%s: module not found", m_fullName);
+-                      }
 -              }
 -      } else
 -              m_filename = xstrdup(arg1);
@@ -335,8 +328,8 @@ Index: busybox-1.7.2/modutils/insmod.c
 -#endif
  
        f = obj_load(fp, LOADBITS);
-       if (f == NULL)
-@@ -4120,7 +4095,7 @@
+@@ -4062,7 +4048,7 @@
                                "\t%s was compiled for kernel version %s\n"
                                "\twhile this kernel is version %s",
                                flag_force_load ? "warning: " : "",
@@ -345,7 +338,7 @@ Index: busybox-1.7.2/modutils/insmod.c
                        if (!flag_force_load)
                                goto out;
                }
-@@ -4173,7 +4148,7 @@
+@@ -4104,7 +4090,7 @@
        hide_special_symbols(f);
  
  #if ENABLE_FEATURE_INSMOD_KSYMOOPS_SYMBOLS
@@ -354,14 +347,14 @@ Index: busybox-1.7.2/modutils/insmod.c
  #endif /* FEATURE_INSMOD_KSYMOOPS_SYMBOLS */
  
        new_create_module_ksymtab(f);
-@@ -4220,30 +4195,22 @@
+@@ -4147,18 +4133,19 @@
        if (flag_print_load_map)
                print_load_map(f);
  
 -      exit_status = EXIT_SUCCESS;
--
-+      ret = 0;
- out:
++      ret = EXIT_SUCCESS;
 out:
  #if ENABLE_FEATURE_CLEAN_UP
        if (fp)
                fclose(fp);
@@ -377,26 +370,18 @@ Index: busybox-1.7.2/modutils/insmod.c
 -      return exit_status;
 +      return ret;
  }
--
--
- #endif
  
--
- #if ENABLE_FEATURE_2_6_MODULES
--
--#include <sys/mman.h>
--#include <asm/unistd.h>
--#include <sys/syscall.h>
--
- /* We use error numbers in a loose translation... */
- static const char *moderror(int err)
- {
-@@ -4261,19 +4228,32 @@
+ #endif /* ENABLE_FEATURE_2_4_MODULES */
+@@ -4190,23 +4177,32 @@
        }
  }
  
--int insmod_ng_main(int argc, char **argv);
--int insmod_ng_main(int argc, char **argv)
+-#if !ENABLE_FEATURE_2_4_MODULES
+-int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+-int insmod_main(int argc, char **argv)
+-#else
+-static int insmod_ng_main(int argc, char **argv)
+-#endif
 +int insmod_main_26(int argc, char **argv)
  {
 -      long ret;
@@ -429,7 +414,7 @@ Index: busybox-1.7.2/modutils/insmod.c
        /* Rest is options */
        options = xzalloc(1);
        optlen = 0;
-@@ -4283,36 +4263,47 @@
+@@ -4216,36 +4212,47 @@
                optlen += sprintf(options + optlen, (strchr(*argv,' ') ? "\"%s\" " : "%s "), *argv);
        }
  
index 6a4c16a..7867634 100644 (file)
@@ -1,8 +1,8 @@
-Index: busybox-1.7.2/archival/Config.in
+Index: busybox-1.8.1/archival/Config.in
 ===================================================================
---- busybox-1.7.2.orig/archival/Config.in      2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/archival/Config.in   2007-10-30 15:35:05.000000000 -0500
-@@ -121,6 +121,15 @@
+--- busybox-1.8.1.orig/archival/Config.in      2007-11-10 17:39:21.063504932 +0100
++++ busybox-1.8.1/archival/Config.in   2007-11-10 17:40:53.320762376 +0100
+@@ -131,6 +131,15 @@
          gzip is used to compress files.
          It's probably the most widely used UNIX compression program.
  
@@ -18,10 +18,10 @@ Index: busybox-1.7.2/archival/Config.in
  config RPM2CPIO
        bool "rpm2cpio"
        default n
-Index: busybox-1.7.2/archival/dpkg.c
+Index: busybox-1.8.1/archival/dpkg.c
 ===================================================================
---- busybox-1.7.2.orig/archival/dpkg.c 2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/archival/dpkg.c      2007-10-30 15:35:05.000000000 -0500
+--- busybox-1.8.1.orig/archival/dpkg.c 2007-11-10 17:39:21.071505389 +0100
++++ busybox-1.8.1/archival/dpkg.c      2007-11-10 17:40:53.320762376 +0100
 @@ -1455,6 +1455,10 @@
        return ar_handle->sub_archive->buffer;
  }
@@ -42,11 +42,11 @@ Index: busybox-1.7.2/archival/dpkg.c
  static void unpack_package(deb_file_t *deb_file)
  {
        const char *package_name = name_hashtable[package_hashtable[deb_file->package]->name];
-Index: busybox-1.7.2/archival/ipkg.c
+Index: busybox-1.8.1/archival/ipkg.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/ipkg.c      2007-10-30 15:35:05.000000000 -0500
-@@ -0,0 +1,26 @@
++++ busybox-1.8.1/archival/ipkg.c      2007-11-10 17:41:16.866104145 +0100
+@@ -0,0 +1,27 @@
 +/* ipkg.c - the itsy package management system
 +
 +   Florina Boor
@@ -66,18 +66,19 @@ Index: busybox-1.7.2/archival/ipkg.c
 +   ipkg command line frontend using libipkg
 +   
 +*/
-+
 +#include "libipkg/libipkg.h"
++#include "busybox.h"
 +
++int ipkg_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 +int ipkg_main(int argc, char **argv)
 +{
 +      return ipkg_op(argc, argv);
 +}
-Index: busybox-1.7.2/archival/Kbuild
+Index: busybox-1.8.1/archival/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/archival/Kbuild 2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/archival/Kbuild      2007-10-30 15:35:05.000000000 -0500
-@@ -15,6 +15,7 @@
+--- busybox-1.8.1.orig/archival/Kbuild 2007-11-10 17:39:21.083506071 +0100
++++ busybox-1.8.1/archival/Kbuild      2007-11-10 17:40:53.332763058 +0100
+@@ -16,6 +16,7 @@
  lib-$(CONFIG_DPKG_DEB)                += dpkg_deb.o
  lib-$(CONFIG_GUNZIP)          += bbunzip.o
  lib-$(CONFIG_GZIP)            += gzip.o bbunzip.o
@@ -85,10 +86,10 @@ Index: busybox-1.7.2/archival/Kbuild
  lib-$(CONFIG_RPM2CPIO)                += rpm2cpio.o
  lib-$(CONFIG_RPM)             += rpm.o
  lib-$(CONFIG_TAR)             += tar.o
-Index: busybox-1.7.2/archival/libipkg/args.c
+Index: busybox-1.8.1/archival/libipkg/args.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/args.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/args.c      2007-11-10 17:40:53.336763287 +0100
 @@ -0,0 +1,242 @@
 +/* args.c - parse command-line args
 + 
@@ -332,10 +333,10 @@ Index: busybox-1.7.2/archival/libipkg/args.c
 +{
 +      bb_error_msg("version %s\n", IPKG_VERSION);
 +}
-Index: busybox-1.7.2/archival/libipkg/args.h
+Index: busybox-1.8.1/archival/libipkg/args.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/args.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/args.h      2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,72 @@
 +/* args.h - parse command-line args
 +
@@ -409,10 +410,10 @@ Index: busybox-1.7.2/archival/libipkg/args.h
 +void args_usage(char *complaint);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/conffile.c
+Index: busybox-1.8.1/archival/libipkg/conffile.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/conffile.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/conffile.c  2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,64 @@
 +/* conffile.c - the itsy package management system
 +
@@ -478,10 +479,10 @@ Index: busybox-1.7.2/archival/libipkg/conffile.c
 +
 +    return ret;
 +}
-Index: busybox-1.7.2/archival/libipkg/conffile.h
+Index: busybox-1.8.1/archival/libipkg/conffile.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/conffile.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/conffile.h  2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,30 @@
 +/* conffile.h - the itsy package management system
 +
@@ -513,10 +514,10 @@ Index: busybox-1.7.2/archival/libipkg/conffile.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/conffile_list.c
+Index: busybox-1.8.1/archival/libipkg/conffile_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/conffile_list.c     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/conffile_list.c     2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,47 @@
 +/* conffile_list.c - the itsy package management system
 +
@@ -565,10 +566,10 @@ Index: busybox-1.7.2/archival/libipkg/conffile_list.c
 +    return nv_pair_list_pop(list);
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/conffile_list.h
+Index: busybox-1.8.1/archival/libipkg/conffile_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/conffile_list.h     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/conffile_list.h     2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,36 @@
 +/* conffile_list.h - the itsy package management system
 +
@@ -606,10 +607,10 @@ Index: busybox-1.7.2/archival/libipkg/conffile_list.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/file_util.c
+Index: busybox-1.8.1/archival/libipkg/file_util.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/file_util.c 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/file_util.c 2007-11-10 17:40:53.340763516 +0100
 @@ -0,0 +1,132 @@
 +/* file_util.c - convenience routines for common stat operations
 +
@@ -743,10 +744,10 @@ Index: busybox-1.7.2/archival/libipkg/file_util.c
 +      return hash_file(file_name, HASH_MD5);
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/file_util.h
+Index: busybox-1.8.1/archival/libipkg/file_util.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/file_util.h 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/file_util.h 2007-11-10 17:40:53.344763742 +0100
 @@ -0,0 +1,29 @@
 +/* file_util.h - convenience routines for common file operations
 +
@@ -777,10 +778,10 @@ Index: busybox-1.7.2/archival/libipkg/file_util.h
 +char *file_md5sum_alloc(const char *file_name);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/hash_table.c
+Index: busybox-1.8.1/archival/libipkg/hash_table.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/hash_table.c        2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/hash_table.c        2007-11-10 17:40:53.344763742 +0100
 @@ -0,0 +1,155 @@
 +/* hash.c - hash tables for ipkg
 +
@@ -937,10 +938,10 @@ Index: busybox-1.7.2/archival/libipkg/hash_table.c
 +    }
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/hash_table.h
+Index: busybox-1.8.1/archival/libipkg/hash_table.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/hash_table.h        2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/hash_table.h        2007-11-10 17:40:53.344763742 +0100
 @@ -0,0 +1,44 @@
 +/* hash.h - hash tables for ipkg
 +
@@ -986,10 +987,10 @@ Index: busybox-1.7.2/archival/libipkg/hash_table.h
 +void hash_table_foreach(hash_table_t *hash, void (*f)(const char *key, void *entry, void *data), void *data);
 +
 +#endif /* _HASH_TABLE_H_ */
-Index: busybox-1.7.2/archival/libipkg/ipkg_cmd.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_cmd.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_cmd.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_cmd.c  2007-11-10 17:40:53.344763742 +0100
 @@ -0,0 +1,1431 @@
 +/* ipkg_cmd.c - the itsy package management system
 +
@@ -2422,10 +2423,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_cmd.c
 +}
 +
 +
-Index: busybox-1.7.2/archival/libipkg/ipkg_cmd.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_cmd.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_cmd.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_cmd.h  2007-11-10 17:40:53.348763971 +0100
 @@ -0,0 +1,46 @@
 +/* ipkg_cmd.h - the itsy package management system
 +
@@ -2473,10 +2474,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_cmd.h
 +int pkg_mark_provides(pkg_t *pkg);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_conf.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_conf.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_conf.c 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_conf.c 2007-11-10 17:40:53.348763971 +0100
 @@ -0,0 +1,711 @@
 +/* ipkg_conf.c - the itsy package management system
 +
@@ -3189,10 +3190,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_conf.c
 +     sprintf_alloc(&root_filename, "%s%s", (conf->offline_root ? conf->offline_root : ""), filename);
 +     return root_filename;
 +}
-Index: busybox-1.7.2/archival/libipkg/ipkg_conf.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_conf.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_conf.h 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_conf.h 2007-11-10 17:40:53.348763971 +0100
 @@ -0,0 +1,107 @@
 +/* ipkg_conf.h - the itsy package management system
 +
@@ -3301,10 +3302,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_conf.h
 +char *root_filename_alloc(ipkg_conf_t *conf, char *filename);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_configure.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_configure.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_configure.c    2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_configure.c    2007-11-10 17:40:53.348763971 +0100
 @@ -0,0 +1,40 @@
 +/* ipkg_configure.c - the itsy package management system
 +
@@ -3346,10 +3347,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_configure.c
 +    return 0;
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/ipkg_configure.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_configure.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_configure.h    2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_configure.h    2007-11-10 17:40:53.348763971 +0100
 @@ -0,0 +1,25 @@
 +/* ipkg_configure.h - the itsy package management system
 +
@@ -3376,10 +3377,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_configure.h
 +int ipkg_configure(ipkg_conf_t *ipkg_conf, pkg_t *pkg);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_download.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_download.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_download.c     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_download.c     2007-11-10 17:40:53.352764197 +0100
 @@ -0,0 +1,195 @@
 +/* ipkg_download.c - the itsy package management system
 +
@@ -3576,10 +3577,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_download.c
 +     }
 +     return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/ipkg_download.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_download.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_download.h     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_download.h     2007-11-10 17:40:53.352764197 +0100
 @@ -0,0 +1,30 @@
 +/* ipkg_download.h - the itsy package management system
 +
@@ -3611,10 +3612,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_download.h
 +int ipkg_prepare_url_for_install(ipkg_conf_t *conf, const char *url, char **namep);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg.h
+Index: busybox-1.8.1/archival/libipkg/ipkg.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg.h      2007-11-10 17:40:53.352764197 +0100
 @@ -0,0 +1,74 @@
 +/* ipkg.h - the itsy package management system
 +
@@ -3690,10 +3691,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg.h
 +extern ipkg_conf_t *global_conf;
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_includes.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_includes.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_includes.h     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_includes.h     2007-11-10 17:40:53.352764197 +0100
 @@ -0,0 +1,79 @@
 +#ifndef IPKG_INCLUDES_H
 +#define IPKG_INCLUDES_H
@@ -3774,10 +3775,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_includes.h
 +#endif
 +
 +#endif /* IPKG_INCLUDES_H */
-Index: busybox-1.7.2/archival/libipkg/ipkg_install.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_install.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_install.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_install.c      2007-11-10 17:40:53.356764426 +0100
 @@ -0,0 +1,1942 @@
 +/* ipkg_install.c - the itsy package management system
 +
@@ -5721,10 +5722,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_install.c
 +}
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_install.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_install.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_install.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_install.h      2007-11-10 17:40:53.356764426 +0100
 @@ -0,0 +1,35 @@
 +/* ipkg_install.h - the itsy package management system
 +
@@ -5761,10 +5762,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_install.h
 +int name_mark_dependencies_for_installation(ipkg_conf_t *conf, const char *pkg_name, pkg_vec_t *pkgs_needed);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_message.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_message.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_message.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_message.c      2007-11-10 17:40:53.356764426 +0100
 @@ -0,0 +1,61 @@
 +/* ipkg_message.c - the itsy package management system
 +
@@ -5827,10 +5828,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_message.c
 +      }
 +}
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_message.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_message.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_message.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_message.h      2007-11-10 17:40:53.356764426 +0100
 @@ -0,0 +1,32 @@
 +/* ipkg_message.h - the itsy package management system
 +
@@ -5864,10 +5865,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_message.h
 +extern void ipkg_message(ipkg_conf_t *conf, message_level_t level, const char *fmt, ...);
 +
 +#endif /* _IPKG_MESSAGE_H_ */
-Index: busybox-1.7.2/archival/libipkg/ipkg_remove.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_remove.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_remove.c       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_remove.c       2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,383 @@
 +/* ipkg_remove.c - the itsy package management system
 +
@@ -6252,10 +6253,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_remove.c
 +
 +    return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/ipkg_remove.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_remove.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_remove.h       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_remove.h       2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,33 @@
 +/* ipkg_remove.h - the itsy package management system
 +
@@ -6290,10 +6291,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_remove.h
 +
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/ipkg_upgrade.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_upgrade.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_upgrade.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_upgrade.c      2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,77 @@
 +/* ipkg_upgrade.c - the itsy package management system
 +
@@ -6372,10 +6373,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_upgrade.c
 +     new->state_flag |= SF_USER;
 +     return ipkg_install_pkg(conf, new,1);
 +}
-Index: busybox-1.7.2/archival/libipkg/ipkg_upgrade.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_upgrade.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_upgrade.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_upgrade.h      2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,18 @@
 +/* ipkg_upgrade.c - the itsy package management system
 +
@@ -6395,10 +6396,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_upgrade.h
 +#include "ipkg.h"
 +
 +int ipkg_upgrade_pkg(ipkg_conf_t *conf, pkg_t *old);
-Index: busybox-1.7.2/archival/libipkg/ipkg_utils.c
+Index: busybox-1.8.1/archival/libipkg/ipkg_utils.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_utils.c        2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_utils.c        2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,181 @@
 +/* ipkg_utils.c - the itsy package management system
 +
@@ -6581,10 +6582,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_utils.c
 +}
 +
 +       
-Index: busybox-1.7.2/archival/libipkg/ipkg_utils.h
+Index: busybox-1.8.1/archival/libipkg/ipkg_utils.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/ipkg_utils.h        2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/ipkg_utils.h        2007-11-10 17:40:53.360764656 +0100
 @@ -0,0 +1,29 @@
 +/* ipkg_utils.h - the itsy package management system
 +
@@ -6615,10 +6616,10 @@ Index: busybox-1.7.2/archival/libipkg/ipkg_utils.h
 +int line_is_blank(const char *line);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/Kbuild
+Index: busybox-1.8.1/archival/libipkg/Kbuild
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/Kbuild      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/Kbuild      2007-11-10 17:40:53.364764882 +0100
 @@ -0,0 +1,60 @@
 +# Makefile for busybox
 +#
@@ -6680,10 +6681,10 @@ Index: busybox-1.7.2/archival/libipkg/Kbuild
 +IPKG_ARCH:=$(TARGET_ARCH)
 +endif
 +CFLAGS += -DIPKG_LIB -DIPKGLIBDIR="\"/usr/lib\"" -DHOST_CPU_STR="\"$(IPKG_ARCH)\""
-Index: busybox-1.7.2/archival/libipkg/libipkg.c
+Index: busybox-1.8.1/archival/libipkg/libipkg.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/libipkg.c   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/libipkg.c   2007-11-10 17:40:53.364764882 +0100
 @@ -0,0 +1,527 @@
 +/* ipkglib.c - the itsy package management system
 +
@@ -7212,10 +7213,10 @@ Index: busybox-1.7.2/archival/libipkg/libipkg.c
 +}
 +
 +#endif /* IPKG_LIB */
-Index: busybox-1.7.2/archival/libipkg/libipkg.h
+Index: busybox-1.8.1/archival/libipkg/libipkg.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/libipkg.h   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/libipkg.h   2007-11-10 17:40:53.364764882 +0100
 @@ -0,0 +1,88 @@
 +/* ipkglib.h - the itsy package management system
 +
@@ -7305,10 +7306,10 @@ Index: busybox-1.7.2/archival/libipkg/libipkg.h
 +
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/nv_pair.c
+Index: busybox-1.8.1/archival/libipkg/nv_pair.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/nv_pair.c   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/nv_pair.c   2007-11-10 17:40:53.364764882 +0100
 @@ -0,0 +1,40 @@
 +/* nv_pair.c - the itsy package management system
 +
@@ -7350,10 +7351,10 @@ Index: busybox-1.7.2/archival/libipkg/nv_pair.c
 +}
 +
 +
-Index: busybox-1.7.2/archival/libipkg/nv_pair.h
+Index: busybox-1.8.1/archival/libipkg/nv_pair.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/nv_pair.h   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/nv_pair.h   2007-11-10 17:40:53.372765337 +0100
 @@ -0,0 +1,32 @@
 +/* nv_pair.h - the itsy package management system
 +
@@ -7387,10 +7388,10 @@ Index: busybox-1.7.2/archival/libipkg/nv_pair.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/nv_pair_list.c
+Index: busybox-1.8.1/archival/libipkg/nv_pair_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/nv_pair_list.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/nv_pair_list.c      2007-11-10 17:40:53.372765337 +0100
 @@ -0,0 +1,98 @@
 +/* nv_pair_list.c - the itsy package management system
 +
@@ -7490,10 +7491,10 @@ Index: busybox-1.7.2/archival/libipkg/nv_pair_list.c
 +     }    
 +     return NULL;
 +}
-Index: busybox-1.7.2/archival/libipkg/nv_pair_list.h
+Index: busybox-1.8.1/archival/libipkg/nv_pair_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/nv_pair_list.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/nv_pair_list.h      2007-11-10 17:40:53.372765337 +0100
 @@ -0,0 +1,60 @@
 +/* nv_pair_list.h - the itsy package management system
 +
@@ -7555,10 +7556,10 @@ Index: busybox-1.7.2/archival/libipkg/nv_pair_list.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/pkg.c
+Index: busybox-1.8.1/archival/libipkg/pkg.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg.c       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg.c       2007-11-10 17:40:53.376765566 +0100
 @@ -0,0 +1,1747 @@
 +/* pkg.c - the itsy package management system
 +
@@ -9307,10 +9308,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg.c
 +     }
 +     return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_depends.c
+Index: busybox-1.8.1/archival/libipkg/pkg_depends.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_depends.c       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_depends.c       2007-11-10 17:40:53.376765566 +0100
 @@ -0,0 +1,1031 @@
 +/* pkg_depends.c - the itsy package management system
 +
@@ -10343,10 +10344,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_depends.c
 +
 +     return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_depends.h
+Index: busybox-1.8.1/archival/libipkg/pkg_depends.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_depends.h       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_depends.h       2007-11-10 17:40:53.376765566 +0100
 @@ -0,0 +1,105 @@
 +/* pkg_depends.h - the itsy package management system
 +
@@ -10453,10 +10454,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_depends.h
 +int pkg_dependence_satisfied(ipkg_conf_t *conf, depend_t *depend);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/pkg_dest.c
+Index: busybox-1.8.1/archival/libipkg/pkg_dest.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_dest.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_dest.c  2007-11-10 17:40:53.376765566 +0100
 @@ -0,0 +1,92 @@
 +/* pkg_dest.c - the itsy package management system
 +
@@ -10550,10 +10551,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_dest.c
 +
 +    dest->root_dir = NULL;
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_dest.h
+Index: busybox-1.8.1/archival/libipkg/pkg_dest.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_dest.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_dest.h  2007-11-10 17:40:53.380765796 +0100
 @@ -0,0 +1,38 @@
 +/* pkg_dest.h - the itsy package management system
 +
@@ -10593,10 +10594,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_dest.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_dest_list.c
+Index: busybox-1.8.1/archival/libipkg/pkg_dest_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_dest_list.c     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_dest_list.c     2007-11-10 17:40:53.380765796 +0100
 @@ -0,0 +1,85 @@
 +/* pkg_dest_list.c - the itsy package management system
 +
@@ -10683,10 +10684,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_dest_list.c
 +{
 +    return (pkg_dest_list_elt_t *) void_list_pop((void_list_t *) list);
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_dest_list.h
+Index: busybox-1.8.1/archival/libipkg/pkg_dest_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_dest_list.h     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_dest_list.h     2007-11-10 17:40:53.380765796 +0100
 @@ -0,0 +1,50 @@
 +/* pkg_dest_list.h - the itsy package management system
 +
@@ -10738,10 +10739,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_dest_list.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_extract.c
+Index: busybox-1.8.1/archival/libipkg/pkg_extract.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_extract.c       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_extract.c       2007-11-10 17:40:53.380765796 +0100
 @@ -0,0 +1,224 @@
 +/* pkg_extract.c - the itsy package management system
 +
@@ -10967,10 +10968,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_extract.c
 +      
 +      return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_extract.h
+Index: busybox-1.8.1/archival/libipkg/pkg_extract.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_extract.h       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_extract.h       2007-11-10 17:40:53.380765796 +0100
 @@ -0,0 +1,32 @@
 +/* pkg_extract.c - the itsy package management system
 +
@@ -11004,10 +11005,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_extract.h
 +int pkg_extract_data_file_names_to_stream(pkg_t *pkg, FILE *file);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/pkg.h
+Index: busybox-1.8.1/archival/libipkg/pkg.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg.h       2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg.h       2007-11-10 17:40:53.384766022 +0100
 @@ -0,0 +1,229 @@
 +/* pkg.h - the itsy package management system
 +
@@ -11238,10 +11239,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg.h
 +int pkg_write_changed_filelists(ipkg_conf_t *conf);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/pkg_hash.c
+Index: busybox-1.8.1/archival/libipkg/pkg_hash.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_hash.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_hash.c  2007-11-10 17:40:53.388766251 +0100
 @@ -0,0 +1,616 @@
 +/* ipkg_hash.c - the itsy package management system
 +
@@ -11859,10 +11860,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_hash.c
 +}
 +
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_hash.h
+Index: busybox-1.8.1/archival/libipkg/pkg_hash.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_hash.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_hash.h  2007-11-10 17:40:53.388766251 +0100
 @@ -0,0 +1,61 @@
 +/* pkg_hash.h - the itsy package management system
 +
@@ -11925,10 +11926,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_hash.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_parse.c
+Index: busybox-1.8.1/archival/libipkg/pkg_parse.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_parse.c 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_parse.c 2007-11-10 17:40:53.388766251 +0100
 @@ -0,0 +1,366 @@
 +/* pkg_parse.c - the itsy package management system
 +
@@ -12296,10 +12297,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_parse.c
 +
 +    return 0;
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_parse.h
+Index: busybox-1.8.1/archival/libipkg/pkg_parse.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_parse.h 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_parse.h 2007-11-10 17:40:53.392766477 +0100
 @@ -0,0 +1,31 @@
 +/* pkg_parse.h - the itsy package management system
 +
@@ -12332,10 +12333,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_parse.h
 +int pkg_valorize_other_field(pkg_t *pkg, char ***raw);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/pkg_src.c
+Index: busybox-1.8.1/archival/libipkg/pkg_src.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_src.c   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_src.c   2007-11-10 17:40:53.392766477 +0100
 @@ -0,0 +1,43 @@
 +/* pkg_src.c - the itsy package management system
 +
@@ -12380,10 +12381,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_src.c
 +}
 +
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_src.h
+Index: busybox-1.8.1/archival/libipkg/pkg_src.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_src.h   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_src.h   2007-11-10 17:40:53.392766477 +0100
 @@ -0,0 +1,34 @@
 +/* pkg_src.h - the itsy package management system
 +
@@ -12419,10 +12420,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_src.h
 +void pkg_src_deinit(pkg_src_t *src);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/pkg_src_list.c
+Index: busybox-1.8.1/archival/libipkg/pkg_src_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_src_list.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_src_list.c      2007-11-10 17:40:53.392766477 +0100
 @@ -0,0 +1,75 @@
 +/* pkg_src_list.c - the itsy package management system
 +
@@ -12499,10 +12500,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_src_list.c
 +{
 +    return (pkg_src_list_elt_t *) void_list_pop((void_list_t *) list);
 +}
-Index: busybox-1.7.2/archival/libipkg/pkg_src_list.h
+Index: busybox-1.8.1/archival/libipkg/pkg_src_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_src_list.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_src_list.h      2007-11-10 17:40:53.396766706 +0100
 @@ -0,0 +1,57 @@
 +/* pkg_src_list.h - the itsy package management system
 +
@@ -12561,10 +12562,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_src_list.h
 +
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_vec.c
+Index: busybox-1.8.1/archival/libipkg/pkg_vec.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_vec.c   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_vec.c   2007-11-10 17:40:53.396766706 +0100
 @@ -0,0 +1,230 @@
 +/* pkg_vec.c - the itsy package management system
 +
@@ -12796,10 +12797,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_vec.c
 +     qsort(vec->pkgs, vec->len, sizeof(pkg_t *), (compare_fcn_t)compar);
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/pkg_vec.h
+Index: busybox-1.8.1/archival/libipkg/pkg_vec.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/pkg_vec.h   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/pkg_vec.h   2007-11-10 17:40:53.396766706 +0100
 @@ -0,0 +1,64 @@
 +/* pkg_vec.h - the itsy package management system
 +
@@ -12865,10 +12866,10 @@ Index: busybox-1.7.2/archival/libipkg/pkg_vec.h
 +void abstract_pkg_vec_sort(pkg_vec_t *vec, int (*compar)(abstract_pkg_t *, abstract_pkg_t *));
 +#endif
 +
-Index: busybox-1.7.2/archival/libipkg/sprintf_alloc.h
+Index: busybox-1.8.1/archival/libipkg/sprintf_alloc.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/sprintf_alloc.h     2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/sprintf_alloc.h     2007-11-10 17:40:53.396766706 +0100
 @@ -0,0 +1,25 @@
 +/* sprintf_alloca.c -- like sprintf with memory allocation
 +
@@ -12895,10 +12896,10 @@ Index: busybox-1.7.2/archival/libipkg/sprintf_alloc.h
 +#define sprintf_alloc(str, fmt, args...)  *str = xasprintf(fmt, ## args)
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/str_list.c
+Index: busybox-1.8.1/archival/libipkg/str_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/str_list.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/str_list.c  2007-11-10 17:40:53.396766706 +0100
 @@ -0,0 +1,76 @@
 +/* str_list.c - the itsy package management system
 +
@@ -12976,10 +12977,10 @@ Index: busybox-1.7.2/archival/libipkg/str_list.c
 +                                       (void *)target_str,
 +                                       (void_list_cmp_t)strcmp);
 +}
-Index: busybox-1.7.2/archival/libipkg/str_list.h
+Index: busybox-1.8.1/archival/libipkg/str_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/str_list.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/str_list.h  2007-11-10 17:40:53.400766935 +0100
 @@ -0,0 +1,51 @@
 +/* str_list.h - the itsy package management system
 +
@@ -13032,10 +13033,10 @@ Index: busybox-1.7.2/archival/libipkg/str_list.h
 +char *str_list_remove_elt(str_list_t *list, const char *target_str);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/str_util.c
+Index: busybox-1.8.1/archival/libipkg/str_util.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/str_util.c  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/str_util.c  2007-11-10 17:40:53.400766935 +0100
 @@ -0,0 +1,63 @@
 +/* str_utils.c - the itsy package management system
 +
@@ -13100,10 +13101,10 @@ Index: busybox-1.7.2/archival/libipkg/str_util.c
 +    return str ? strdup(str) : NULL;
 +}
 +
-Index: busybox-1.7.2/archival/libipkg/str_util.h
+Index: busybox-1.8.1/archival/libipkg/str_util.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/str_util.h  2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/str_util.h  2007-11-10 17:40:53.400766935 +0100
 @@ -0,0 +1,27 @@
 +/* str_utils.h - the itsy package management system
 +
@@ -13132,10 +13133,10 @@ Index: busybox-1.7.2/archival/libipkg/str_util.h
 +char *str_dup_safe(const char *str);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/user.c
+Index: busybox-1.8.1/archival/libipkg/user.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/user.c      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/user.c      2007-11-10 17:40:53.400766935 +0100
 @@ -0,0 +1,58 @@
 +/* user.c - the itsy package management system
 +
@@ -13195,10 +13196,10 @@ Index: busybox-1.7.2/archival/libipkg/user.c
 +
 +     return response;
 +}
-Index: busybox-1.7.2/archival/libipkg/user.h
+Index: busybox-1.8.1/archival/libipkg/user.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/user.h      2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/user.h      2007-11-10 17:40:53.400766935 +0100
 @@ -0,0 +1,23 @@
 +/* user.c - the itsy package management system
 +
@@ -13223,10 +13224,10 @@ Index: busybox-1.7.2/archival/libipkg/user.h
 +
 +char *get_user_response(const char *format, ...);
 +
-Index: busybox-1.7.2/archival/libipkg/void_list.c
+Index: busybox-1.8.1/archival/libipkg/void_list.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/void_list.c 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/void_list.c 2007-11-10 17:40:53.404767161 +0100
 @@ -0,0 +1,194 @@
 +/* void_list.c - the itsy package management system
 +
@@ -13422,10 +13423,10 @@ Index: busybox-1.7.2/archival/libipkg/void_list.c
 +     else
 +        return NULL;
 +}
-Index: busybox-1.7.2/archival/libipkg/void_list.h
+Index: busybox-1.8.1/archival/libipkg/void_list.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/void_list.h 2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/void_list.h 2007-11-10 17:40:53.404767161 +0100
 @@ -0,0 +1,59 @@
 +/* void_list.h - the itsy package management system
 +
@@ -13486,10 +13487,10 @@ Index: busybox-1.7.2/archival/libipkg/void_list.h
 +void *void_list_remove_elt(void_list_t *list, const void *target_data, void_list_cmp_t cmp);
 +
 +#endif
-Index: busybox-1.7.2/archival/libipkg/xsystem.c
+Index: busybox-1.8.1/archival/libipkg/xsystem.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/xsystem.c   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/xsystem.c   2007-11-10 17:40:53.404767161 +0100
 @@ -0,0 +1,64 @@
 +/* xsystem.c - system(3) with error messages
 +
@@ -13555,10 +13556,10 @@ Index: busybox-1.7.2/archival/libipkg/xsystem.c
 +    return -1;
 +}
 +       
-Index: busybox-1.7.2/archival/libipkg/xsystem.h
+Index: busybox-1.8.1/archival/libipkg/xsystem.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/archival/libipkg/xsystem.h   2007-10-30 15:35:05.000000000 -0500
++++ busybox-1.8.1/archival/libipkg/xsystem.h   2007-11-10 17:40:53.404767161 +0100
 @@ -0,0 +1,34 @@
 +/* xsystem.h - system(3) with error messages
 +
@@ -13594,10 +13595,10 @@ Index: busybox-1.7.2/archival/libipkg/xsystem.h
 +
 +#endif
 +       
-Index: busybox-1.7.2/archival/libunarchive/data_extract_all.c
+Index: busybox-1.8.1/archival/libunarchive/data_extract_all.c
 ===================================================================
---- busybox-1.7.2.orig/archival/libunarchive/data_extract_all.c        2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/archival/libunarchive/data_extract_all.c     2007-10-30 15:35:05.000000000 -0500
+--- busybox-1.8.1.orig/archival/libunarchive/data_extract_all.c        2007-11-10 17:39:21.471528185 +0100
++++ busybox-1.8.1/archival/libunarchive/data_extract_all.c     2007-11-10 17:40:53.404767161 +0100
 @@ -129,3 +129,17 @@
                }
        }
@@ -13616,23 +13617,23 @@ Index: busybox-1.7.2/archival/libunarchive/data_extract_all.c
 +      }
 +}
 +
-Index: busybox-1.7.2/archival/libunarchive/Kbuild
+Index: busybox-1.8.1/archival/libunarchive/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/archival/libunarchive/Kbuild    2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/archival/libunarchive/Kbuild 2007-10-30 15:35:05.000000000 -0500
-@@ -55,6 +55,7 @@
+--- busybox-1.8.1.orig/archival/libunarchive/Kbuild    2007-11-10 17:39:21.479528641 +0100
++++ busybox-1.8.1/archival/libunarchive/Kbuild 2007-11-10 17:40:53.408767391 +0100
+@@ -54,6 +54,7 @@
  lib-$(CONFIG_FEATURE_DEB_TAR_LZMA)      += decompress_unlzma.o get_header_tar_lzma.o
- lib-$(CONFIG_GUNZIP)                    += $(GUNZIP_FILES)
+ lib-$(CONFIG_GUNZIP)                    += decompress_unzip.o
  lib-$(CONFIG_FEATURE_GUNZIP_UNCOMPRESS) += decompress_uncompress.o
 +lib-$(CONFIG_IPKG)                    += $(GUNZIP_FILES) get_header_tar.o get_header_tar_gz.o
- lib-$(CONFIG_RPM2CPIO)                  += $(GUNZIP_FILES) get_header_cpio.o
- lib-$(CONFIG_RPM)                       += $(GUNZIP_FILES) get_header_cpio.o
+ lib-$(CONFIG_RPM2CPIO)                  += decompress_unzip.o get_header_cpio.o
+ lib-$(CONFIG_RPM)                       += decompress_unzip.o get_header_cpio.o
  lib-$(CONFIG_FEATURE_RPM_BZ2)           += decompress_bunzip2.o
-Index: busybox-1.7.2/include/applets.h
+Index: busybox-1.8.1/include/applets.h
 ===================================================================
---- busybox-1.7.2.orig/include/applets.h       2007-10-30 15:35:03.000000000 -0500
-+++ busybox-1.7.2/include/applets.h    2007-10-30 15:35:05.000000000 -0500
-@@ -190,6 +190,7 @@
+--- busybox-1.8.1.orig/include/applets.h       2007-11-10 17:39:21.487529096 +0100
++++ busybox-1.8.1/include/applets.h    2007-11-10 17:40:53.408767391 +0100
+@@ -198,6 +198,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))
@@ -13640,10 +13641,10 @@ Index: busybox-1.7.2/include/applets.h
  USE_IPLINK(APPLET(iplink, _BB_DIR_BIN, _BB_SUID_NEVER))
  USE_IPROUTE(APPLET(iproute, _BB_DIR_BIN, _BB_SUID_NEVER))
  USE_IPRULE(APPLET(iprule, _BB_DIR_BIN, _BB_SUID_NEVER))
-Index: busybox-1.7.2/include/unarchive.h
+Index: busybox-1.8.1/include/unarchive.h
 ===================================================================
---- busybox-1.7.2.orig/include/unarchive.h     2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/include/unarchive.h  2007-10-30 15:35:05.000000000 -0500
+--- busybox-1.8.1.orig/include/unarchive.h     2007-11-10 17:39:21.495529554 +0100
++++ busybox-1.8.1/include/unarchive.h  2007-11-10 17:40:53.408767391 +0100
 @@ -74,6 +74,7 @@
  
  extern void data_skip(archive_handle_t *archive_handle);
@@ -13652,11 +13653,11 @@ Index: busybox-1.7.2/include/unarchive.h
  extern void data_extract_to_stdout(archive_handle_t *archive_handle);
  extern void data_extract_to_buffer(archive_handle_t *archive_handle);
  
-Index: busybox-1.7.2/include/usage.h
+Index: busybox-1.8.1/include/usage.h
 ===================================================================
---- busybox-1.7.2.orig/include/usage.h 2007-10-30 15:35:03.000000000 -0500
-+++ busybox-1.7.2/include/usage.h      2007-10-30 15:35:05.000000000 -0500
-@@ -1226,6 +1226,82 @@
+--- busybox-1.8.1.orig/include/usage.h 2007-11-10 17:40:53.208755993 +0100
++++ busybox-1.8.1/include/usage.h      2007-11-10 17:40:53.412767617 +0100
+@@ -1294,6 +1294,82 @@
         "$ ls -la /tmp/busybox*\n" \
         "-rw-rw-r--    1 andersen andersen   554058 Apr 14 17:49 /tmp/busybox.tar.gz\n"
  
@@ -13739,10 +13740,10 @@ Index: busybox-1.7.2/include/usage.h
  #define halt_trivial_usage \
         "[-d delay] [-n] [-f]"
  #define halt_full_usage \
-Index: busybox-1.7.2/Makefile
+Index: busybox-1.8.1/Makefile
 ===================================================================
---- busybox-1.7.2.orig/Makefile        2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/Makefile     2007-10-30 15:35:05.000000000 -0500
+--- busybox-1.8.1.orig/Makefile        2007-11-10 17:39:21.511530465 +0100
++++ busybox-1.8.1/Makefile     2007-11-10 17:40:53.412767617 +0100
 @@ -428,6 +428,7 @@
  
  libs-y                := \
index 53e3fd8..9c8d082 100644 (file)
@@ -1,7 +1,7 @@
-Index: busybox-1.7.2/coreutils/md5_sha1_sum.c
+Index: busybox-1.8.1/coreutils/md5_sha1_sum.c
 ===================================================================
---- busybox-1.7.2.orig/coreutils/md5_sha1_sum.c        2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/coreutils/md5_sha1_sum.c     2007-10-30 15:35:06.000000000 -0500
+--- busybox-1.8.1.orig/coreutils/md5_sha1_sum.c        2007-11-10 02:40:51.000000000 +0100
++++ busybox-1.8.1/coreutils/md5_sha1_sum.c     2007-11-10 17:05:59.957468399 +0100
 @@ -8,75 +8,10 @@
  
  #include "libbb.h"
@@ -75,14 +75,14 @@ Index: busybox-1.7.2/coreutils/md5_sha1_sum.c
 -      return hash_value;
 -}
 -
- int md5_sha1_sum_main(int argc, char **argv);
+ int md5_sha1_sum_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
  int md5_sha1_sum_main(int argc, char **argv)
  {
-Index: busybox-1.7.2/include/libbb.h
+Index: busybox-1.8.1/include/libbb.h
 ===================================================================
---- busybox-1.7.2.orig/include/libbb.h 2007-10-30 15:35:04.000000000 -0500
-+++ busybox-1.7.2/include/libbb.h      2007-10-30 15:35:06.000000000 -0500
-@@ -947,6 +947,7 @@
+--- busybox-1.8.1.orig/include/libbb.h 2007-11-10 16:55:07.048261223 +0100
++++ busybox-1.8.1/include/libbb.h      2007-11-10 17:04:07.543062264 +0100
+@@ -1022,6 +1022,7 @@
  extern const char bb_uuenc_tbl_std[];
  void bb_uuencode(char *store, const void *s, int length, const char *tbl);
  
@@ -90,7 +90,7 @@ Index: busybox-1.7.2/include/libbb.h
  typedef struct sha1_ctx_t {
        uint32_t count[2];
        uint32_t hash[5];
-@@ -968,6 +969,8 @@
+@@ -1043,6 +1044,8 @@
  void md5_begin(md5_ctx_t *ctx);
  void md5_hash(const void *data, size_t length, md5_ctx_t *ctx);
  void *md5_end(void *resbuf, md5_ctx_t *ctx);
@@ -99,11 +99,11 @@ Index: busybox-1.7.2/include/libbb.h
  
  uint32_t *crc32_filltable(uint32_t *tbl256, int endian);
  
-Index: busybox-1.7.2/libbb/Kbuild
+Index: busybox-1.8.1/libbb/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/libbb/Kbuild    2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/libbb/Kbuild 2007-10-30 15:35:06.000000000 -0500
-@@ -38,6 +38,7 @@
+--- busybox-1.8.1.orig/libbb/Kbuild    2007-11-10 02:40:52.000000000 +0100
++++ busybox-1.8.1/libbb/Kbuild 2007-11-10 17:04:07.547062497 +0100
+@@ -39,6 +39,7 @@
  lib-y += get_last_path_component.o
  lib-y += get_line_from_file.o
  lib-y += getopt32.o
@@ -111,10 +111,10 @@ Index: busybox-1.7.2/libbb/Kbuild
  lib-y += herror_msg.o
  lib-y += herror_msg_and_die.o
  lib-y += human_readable.o
-Index: busybox-1.7.2/libbb/hash.c
+Index: busybox-1.8.1/libbb/hash.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/libbb/hash.c 2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/libbb/hash.c 2007-11-10 17:04:07.551062729 +0100
 @@ -0,0 +1,81 @@
 +/*
 + *  Copyright (C) 2003 Glenn L. McGrath
index f6fe78d..6ae1b9c 100644 (file)
@@ -1,7 +1,7 @@
-Index: busybox-1.7.2/editors/awk.c
+Index: busybox-1.8.1/editors/awk.c
 ===================================================================
---- busybox-1.7.2.orig/editors/awk.c   2007-10-30 15:35:03.000000000 -0500
-+++ busybox-1.7.2/editors/awk.c        2007-10-30 15:35:06.000000000 -0500
+--- busybox-1.8.1.orig/editors/awk.c   2007-11-10 16:55:07.032260312 +0100
++++ busybox-1.8.1/editors/awk.c        2007-11-10 17:07:04.493146078 +0100
 @@ -33,6 +33,11 @@
  /* these flags are static, don't change them when value is changed */
  #define       VF_DONTTOUCH    (VF_ARRAY | VF_SPECIAL | VF_WALK | VF_CHILD | VF_DIRTY)
@@ -71,21 +71,20 @@ Index: busybox-1.7.2/editors/awk.c
                        g_progname = L.s;
  
                        nvfree(fnargs);
-@@ -2753,6 +2768,13 @@
+@@ -2753,6 +2768,12 @@
  }
  
- int awk_main(int argc, char **argv);
+ int awk_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 +int awx_main(int argc, char **argv);
 +
 +#ifdef CONFIG_AWX
 +static int is_awx = 0;
 +#include "awx.c"
 +#endif
-+
  int awk_main(int argc, char **argv)
  {
        unsigned opt;
-@@ -2817,6 +2839,11 @@
+@@ -2817,6 +2838,11 @@
                        *s1 = '=';
                }
        }
@@ -97,10 +96,10 @@ Index: busybox-1.7.2/editors/awk.c
        opt_complementary = "v::f::";
        opt = getopt32(argv, "F:v:f:W:", &opt_F, &opt_v, &opt_f, &opt_W);
        argv += optind;
-Index: busybox-1.7.2/editors/awx.c
+Index: busybox-1.8.1/editors/awx.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/editors/awx.c        2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/editors/awx.c        2007-11-10 17:06:19.258568308 +0100
 @@ -0,0 +1,636 @@
 +/*
 + * awk web extension
@@ -738,10 +737,10 @@ Index: busybox-1.7.2/editors/awx.c
 +      return awk_main(argc, argv);
 +}
 +
-Index: busybox-1.7.2/editors/awx_parser.h
+Index: busybox-1.8.1/editors/awx_parser.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/editors/awx_parser.h 2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/editors/awx_parser.h 2007-11-10 17:06:19.266568760 +0100
 @@ -0,0 +1,38 @@
 +#ifndef __TEMPLATE_PARSER_H
 +#define __TEMPLATE_PARSER_H
@@ -781,10 +780,10 @@ Index: busybox-1.7.2/editors/awx_parser.h
 +void free_template(struct template_cb *cb, struct template_element *e);
 +
 +#endif
-Index: busybox-1.7.2/editors/awx_parser.l
+Index: busybox-1.8.1/editors/awx_parser.l
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/editors/awx_parser.l 2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/editors/awx_parser.l 2007-11-10 17:06:19.270568989 +0100
 @@ -0,0 +1,302 @@
 +%{
 +#include <stdio.h>
@@ -1088,10 +1087,10 @@ Index: busybox-1.7.2/editors/awx_parser.l
 +      free(e);
 +      return free_template(cb, next);
 +}
-Index: busybox-1.7.2/editors/Config.in
+Index: busybox-1.8.1/editors/Config.in
 ===================================================================
---- busybox-1.7.2.orig/editors/Config.in       2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/editors/Config.in    2007-10-30 15:35:06.000000000 -0500
+--- busybox-1.8.1.orig/editors/Config.in       2007-11-10 02:40:54.000000000 +0100
++++ busybox-1.8.1/editors/Config.in    2007-11-10 17:06:19.274569218 +0100
 @@ -12,6 +12,13 @@
          Awk is used as a pattern scanning and processing language.  This is
          the BusyBox implementation of that programming language.
@@ -1106,10 +1105,10 @@ Index: busybox-1.7.2/editors/Config.in
  config FEATURE_AWK_MATH
        bool "Enable math functions (requires libm)"
        default y
-Index: busybox-1.7.2/editors/Kbuild
+Index: busybox-1.8.1/editors/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/editors/Kbuild  2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/editors/Kbuild       2007-10-30 15:35:06.000000000 -0500
+--- busybox-1.8.1.orig/editors/Kbuild  2007-11-10 02:40:54.000000000 +0100
++++ busybox-1.8.1/editors/Kbuild       2007-11-10 17:06:19.278569448 +0100
 @@ -12,3 +12,12 @@
  lib-$(CONFIG_PATCH)     += patch.o
  lib-$(CONFIG_SED)       += sed.o
@@ -1123,11 +1122,11 @@ Index: busybox-1.7.2/editors/Kbuild
 +editors/awx_parser.o: editors/awx_parser.c FORCE
 +      $(call cmd,force_checksrc)
 +      $(call if_changed_rule,cc_o_c)
-Index: busybox-1.7.2/include/applets.h
+Index: busybox-1.8.1/include/applets.h
 ===================================================================
---- busybox-1.7.2.orig/include/applets.h       2007-10-30 15:35:05.000000000 -0500
-+++ busybox-1.7.2/include/applets.h    2007-10-30 15:35:06.000000000 -0500
-@@ -76,6 +76,7 @@
+--- busybox-1.8.1.orig/include/applets.h       2007-11-10 17:03:38.957433264 +0100
++++ busybox-1.8.1/include/applets.h    2007-11-10 17:06:19.282569674 +0100
+@@ -83,6 +83,7 @@
  USE_ARPING(APPLET(arping, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
  USE_ASH(APPLET_NOUSAGE(ash, ash, _BB_DIR_BIN, _BB_SUID_NEVER))
  USE_AWK(APPLET_NOEXEC(awk, awk, _BB_DIR_USR_BIN, _BB_SUID_NEVER, awk))
@@ -1135,10 +1134,10 @@ Index: busybox-1.7.2/include/applets.h
  USE_BASENAME(APPLET_NOFORK(basename, basename, _BB_DIR_USR_BIN, _BB_SUID_NEVER, basename))
  USE_BBCONFIG(APPLET(bbconfig, _BB_DIR_BIN, _BB_SUID_NEVER))
  //USE_BBSH(APPLET(bbsh, _BB_DIR_BIN, _BB_SUID_NEVER))
-Index: busybox-1.7.2/include/cgi.h
+Index: busybox-1.8.1/include/cgi.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/include/cgi.h        2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/include/cgi.h        2007-11-10 17:06:19.282569674 +0100
 @@ -0,0 +1,8 @@
 +#ifndef CGI_H
 +#define CGI_H
@@ -1148,10 +1147,10 @@ Index: busybox-1.7.2/include/cgi.h
 +int cgi_init(var_handler);
 +
 +#endif
-Index: busybox-1.7.2/libbb/cgi.c
+Index: busybox-1.8.1/libbb/cgi.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ busybox-1.7.2/libbb/cgi.c  2007-10-30 15:35:06.000000000 -0500
++++ busybox-1.8.1/libbb/cgi.c  2007-11-10 17:06:19.282569674 +0100
 @@ -0,0 +1,457 @@
 +/* --------------------------------------------------------------------------
 + * functions for processing cgi form data
@@ -1610,11 +1609,11 @@ Index: busybox-1.7.2/libbb/cgi.c
 +
 +      return retval;
 +} 
-Index: busybox-1.7.2/libbb/Kbuild
+Index: busybox-1.8.1/libbb/Kbuild
 ===================================================================
---- busybox-1.7.2.orig/libbb/Kbuild    2007-10-30 15:35:06.000000000 -0500
-+++ busybox-1.7.2/libbb/Kbuild 2007-10-30 15:35:06.000000000 -0500
-@@ -99,6 +99,7 @@
+--- busybox-1.8.1.orig/libbb/Kbuild    2007-11-10 17:04:07.547062497 +0100
++++ busybox-1.8.1/libbb/Kbuild 2007-11-10 17:06:19.282569674 +0100
+@@ -101,6 +101,7 @@
  lib-y += xreadlink.o
  
  # conditionally compiled objects:
diff --git a/package/busybox/patches/990-upstream_tail_fix.patch b/package/busybox/patches/990-upstream_tail_fix.patch
deleted file mode 100644 (file)
index 17ca435..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-Index: busybox-1.7.2/coreutils/tail.c
-===================================================================
---- busybox-1.7.2.orig/coreutils/tail.c        2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/coreutils/tail.c     2007-10-30 15:35:06.000000000 -0500
-@@ -47,13 +47,16 @@
- static ssize_t tail_read(int fd, char *buf, size_t count)
- {
-       ssize_t r;
--      off_t current, end;
-+      off_t current;
-       struct stat sbuf;
--      end = current = lseek(fd, 0, SEEK_CUR);
--      if (!fstat(fd, &sbuf))
--              end = sbuf.st_size;
--      lseek(fd, end < current ? 0 : current, SEEK_SET);
-+      /* (A good comment is missing here) */
-+      current = lseek(fd, 0, SEEK_CUR);
-+      /* /proc files report zero st_size, don't lseek them. */
-+      if (fstat(fd, &sbuf) == 0 && sbuf.st_size)
-+              if (sbuf.st_size < current)
-+                      lseek(fd, 0, SEEK_SET);
-+
-       r = safe_read(fd, buf, count);
-       if (r < 0) {
-               bb_perror_msg(bb_msg_read_error);
-@@ -67,8 +70,12 @@
- static unsigned eat_num(const char *p)
- {
--      if (*p == '-') p++;
--      else if (*p == '+') { p++; G.status = EXIT_FAILURE; }
-+      if (*p == '-')
-+              p++;
-+      else if (*p == '+') {
-+              p++;
-+              G.status = EXIT_FAILURE;
-+      }
-       return xatou_sfx(p, tail_suffixes);
- }
diff --git a/package/busybox/patches/991-upstream_logger_fix.patch b/package/busybox/patches/991-upstream_logger_fix.patch
deleted file mode 100644 (file)
index f225a1b..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Index: busybox-1.7.2/sysklogd/logger.c
-===================================================================
---- busybox-1.7.2.orig/sysklogd/logger.c       2007-10-30 15:34:59.000000000 -0500
-+++ busybox-1.7.2/sysklogd/logger.c    2007-10-30 15:35:07.000000000 -0500
-@@ -107,7 +107,7 @@
-       argv += optind;
-       if (!argc) {
- #define strbuf bb_common_bufsiz1
--              while (fgets(strbuf, BUFSIZ, stdin)) {
-+              while (fgets(strbuf, COMMON_BUFSIZE, stdin)) {
-                       if (strbuf[0]
-                        && NOT_LONE_CHAR(strbuf, '\n')
-                       ) {
-@@ -117,11 +117,11 @@
-               }
-       } else {
-               char *message = NULL;
--              int len = 1; /* for NUL */
-+              int len = 0;
-               int pos = 0;
-               do {
-                       len += strlen(*argv) + 1;
--                      message = xrealloc(message, len);
-+                      message = xrealloc(message, len + 1);
-                       sprintf(message + pos, " %s", *argv),
-                       pos = len;
-               } while (*++argv);