summaryrefslogtreecommitdiff
path: root/package/busybox
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-04-22 19:49:25 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2010-04-22 19:49:25 +0200
commitbddf022e9c08ccb535ffb6b259031e1198c3b705 (patch)
tree861a68b1cee7e04dcbfbd413800313193a65ae06 /package/busybox
parent79aa182cc99a71384078d8f9904a251eee8f192a (diff)
fix busybox compile, when ipkg is choosen and udhcpd is not
Diffstat (limited to 'package/busybox')
-rw-r--r--package/busybox/Makefile10
-rw-r--r--package/busybox/patches/001-ipkg.patch236
2 files changed, 146 insertions, 100 deletions
diff --git a/package/busybox/Makefile b/package/busybox/Makefile
index 2f1d9369f..4881762a1 100644
--- a/package/busybox/Makefile
+++ b/package/busybox/Makefile
@@ -22,6 +22,10 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,BUSYBOX,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,UDHCPD,udhcpd,${PKG_VERSION}-${PKG_RELEASE},busybox,${PKG_DESCR_UDHCPD},${PKG_SECTION_UDHCPD}))
+SUB_INSTALLS-y:=
+SUB_INSTALLS-m:=
+SUB_INSTALLS-${ADK_PACKAGE_UDHCPD}+= udhcpd-install
+
CONFIG_STYLE:= manual
BUILD_STYLE:= manual
INSTALL_STYLE:= manual
@@ -56,7 +60,7 @@ else
IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox
endif
-do-install: $(TOPDIR)/.busyboxcfg ${WRKBUILD}/.config
+do-install: $(TOPDIR)/.busyboxcfg ${WRKBUILD}/.config ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
ifeq ($(ADK_NATIVE),y)
$(MAKE) V=1 \
IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE)
@@ -69,10 +73,10 @@ ifeq ($(ADK_DEBUG),y)
${INSTALL_BIN} $(WRKBUILD)/busybox_unstripped \
$(IDIR_BUSYBOX)/bin/busybox
endif
-ifeq ($(ADK_PACKAGE_UDHCPD),y)
+
+udhcpd-install:
${INSTALL_DIR} ${IDIR_UDHCPD}/etc/
${INSTALL_DATA} ./files/udhcpd.conf ${IDIR_UDHCPD}/etc/
-endif
fake: $(TOPDIR)/.busyboxcfg do-configure do-install
diff --git a/package/busybox/patches/001-ipkg.patch b/package/busybox/patches/001-ipkg.patch
index b28473e02..7295e4c49 100644
--- a/package/busybox/patches/001-ipkg.patch
+++ b/package/busybox/patches/001-ipkg.patch
@@ -1,6 +1,6 @@
diff -Nur busybox-1.16.1.orig/archival/Config.in busybox-1.16.1/archival/Config.in
--- busybox-1.16.1.orig/archival/Config.in 2010-03-28 19:43:35.000000000 +0200
-+++ busybox-1.16.1/archival/Config.in 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/Config.in 2010-04-22 19:18:12.000000000 +0200
@@ -187,6 +187,14 @@
are actually slower than gzip at equivalent compression ratios
and take up 3.2K of code.
@@ -18,7 +18,7 @@ diff -Nur busybox-1.16.1.orig/archival/Config.in busybox-1.16.1/archival/Config.
default n
diff -Nur busybox-1.16.1.orig/archival/ipkg.c busybox-1.16.1/archival/ipkg.c
--- busybox-1.16.1.orig/archival/ipkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/ipkg.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/ipkg.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,28 @@
+/* ipkg.c - the itsy package management system
+
@@ -50,7 +50,7 @@ diff -Nur busybox-1.16.1.orig/archival/ipkg.c busybox-1.16.1/archival/ipkg.c
+}
diff -Nur busybox-1.16.1.orig/archival/Kbuild busybox-1.16.1/archival/Kbuild
--- busybox-1.16.1.orig/archival/Kbuild 2010-03-20 03:58:07.000000000 +0100
-+++ busybox-1.16.1/archival/Kbuild 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/Kbuild 2010-04-22 19:18:12.000000000 +0200
@@ -16,6 +16,7 @@
lib-$(CONFIG_DPKG_DEB) += dpkg_deb.o
lib-$(CONFIG_GUNZIP) += bbunzip.o
@@ -61,7 +61,7 @@ diff -Nur busybox-1.16.1.orig/archival/Kbuild busybox-1.16.1/archival/Kbuild
lib-$(CONFIG_RPM2CPIO) += rpm2cpio.o
diff -Nur busybox-1.16.1.orig/archival/libipkg/args.c busybox-1.16.1/archival/libipkg/args.c
--- busybox-1.16.1.orig/archival/libipkg/args.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/args.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/args.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,242 @@
+/* args.c - parse command-line args
+
@@ -307,7 +307,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/args.c busybox-1.16.1/archival/li
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/args.h busybox-1.16.1/archival/libipkg/args.h
--- busybox-1.16.1.orig/archival/libipkg/args.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/args.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/args.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,72 @@
+/* args.h - parse command-line args
+
@@ -383,7 +383,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/args.h busybox-1.16.1/archival/li
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile.c busybox-1.16.1/archival/libipkg/conffile.c
--- busybox-1.16.1.orig/archival/libipkg/conffile.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/conffile.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/conffile.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,65 @@
+/* conffile.c - the itsy package management system
+
@@ -452,7 +452,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile.c busybox-1.16.1/archiva
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile.h busybox-1.16.1/archival/libipkg/conffile.h
--- busybox-1.16.1.orig/archival/libipkg/conffile.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/conffile.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/conffile.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,30 @@
+/* conffile.h - the itsy package management system
+
@@ -486,7 +486,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile.h busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile_list.c busybox-1.16.1/archival/libipkg/conffile_list.c
--- busybox-1.16.1.orig/archival/libipkg/conffile_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/conffile_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/conffile_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,47 @@
+/* conffile_list.c - the itsy package management system
+
@@ -537,7 +537,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile_list.c busybox-1.16.1/ar
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile_list.h busybox-1.16.1/archival/libipkg/conffile_list.h
--- busybox-1.16.1.orig/archival/libipkg/conffile_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/conffile_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/conffile_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,36 @@
+/* conffile_list.h - the itsy package management system
+
@@ -577,7 +577,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/conffile_list.h busybox-1.16.1/ar
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/file_util.c busybox-1.16.1/archival/libipkg/file_util.c
--- busybox-1.16.1.orig/archival/libipkg/file_util.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/file_util.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/file_util.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,186 @@
+/* file_util.c - convenience routines for common stat operations
+
@@ -767,7 +767,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/file_util.c busybox-1.16.1/archiv
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/file_util.h busybox-1.16.1/archival/libipkg/file_util.h
--- busybox-1.16.1.orig/archival/libipkg/file_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/file_util.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/file_util.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,29 @@
+/* file_util.h - convenience routines for common file operations
+
@@ -800,7 +800,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/file_util.h busybox-1.16.1/archiv
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/hash_table.c busybox-1.16.1/archival/libipkg/hash_table.c
--- busybox-1.16.1.orig/archival/libipkg/hash_table.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/hash_table.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/hash_table.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,155 @@
+/* hash.c - hash tables for ipkg
+
@@ -959,7 +959,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/hash_table.c busybox-1.16.1/archi
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/hash_table.h busybox-1.16.1/archival/libipkg/hash_table.h
--- busybox-1.16.1.orig/archival/libipkg/hash_table.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/hash_table.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/hash_table.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,44 @@
+/* hash.h - hash tables for ipkg
+
@@ -1007,7 +1007,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/hash_table.h busybox-1.16.1/archi
+#endif /* _HASH_TABLE_H_ */
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.c busybox-1.16.1/archival/libipkg/ipkg_cmd.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_cmd.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_cmd.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,1386 @@
+/* ipkg_cmd.c - the itsy package management system
+
@@ -2397,7 +2397,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.c busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.h busybox-1.16.1/archival/libipkg/ipkg_cmd.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_cmd.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_cmd.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,41 @@
+/* ipkg_cmd.h - the itsy package management system
+
@@ -2442,7 +2442,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_cmd.h busybox-1.16.1/archiva
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_conf.c busybox-1.16.1/archival/libipkg/ipkg_conf.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_conf.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_conf.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_conf.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,711 @@
+/* ipkg_conf.c - the itsy package management system
+
@@ -3157,7 +3157,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_conf.c busybox-1.16.1/archiv
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_conf.h busybox-1.16.1/archival/libipkg/ipkg_conf.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_conf.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_conf.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_conf.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,107 @@
+/* ipkg_conf.h - the itsy package management system
+
@@ -3268,7 +3268,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_conf.h busybox-1.16.1/archiv
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_configure.c busybox-1.16.1/archival/libipkg/ipkg_configure.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_configure.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_configure.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_configure.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,40 @@
+/* ipkg_configure.c - the itsy package management system
+
@@ -3312,7 +3312,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_configure.c busybox-1.16.1/a
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_configure.h busybox-1.16.1/archival/libipkg/ipkg_configure.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_configure.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_configure.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_configure.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,25 @@
+/* ipkg_configure.h - the itsy package management system
+
@@ -3341,7 +3341,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_configure.h busybox-1.16.1/a
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_download.c busybox-1.16.1/archival/libipkg/ipkg_download.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_download.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_download.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_download.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,195 @@
+/* ipkg_download.c - the itsy package management system
+
@@ -3540,7 +3540,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_download.c busybox-1.16.1/ar
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_download.h busybox-1.16.1/archival/libipkg/ipkg_download.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_download.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_download.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_download.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,30 @@
+/* ipkg_download.h - the itsy package management system
+
@@ -3574,7 +3574,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_download.h busybox-1.16.1/ar
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg.h busybox-1.16.1/archival/libipkg/ipkg.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,68 @@
+/* ipkg.h - the itsy package management system
+
@@ -3646,7 +3646,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg.h busybox-1.16.1/archival/li
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_includes.h busybox-1.16.1/archival/libipkg/ipkg_includes.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_includes.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_includes.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_includes.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,79 @@
+#ifndef IPKG_INCLUDES_H
+#define IPKG_INCLUDES_H
@@ -3729,7 +3729,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_includes.h busybox-1.16.1/ar
+#endif /* IPKG_INCLUDES_H */
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_install.c busybox-1.16.1/archival/libipkg/ipkg_install.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_install.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_install.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_install.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,1982 @@
+/* ipkg_install.c - the itsy package management system
+
@@ -5715,7 +5715,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_install.c busybox-1.16.1/arc
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_install.h busybox-1.16.1/archival/libipkg/ipkg_install.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_install.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_install.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_install.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,35 @@
+/* ipkg_install.h - the itsy package management system
+
@@ -5754,7 +5754,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_install.h busybox-1.16.1/arc
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_message.c busybox-1.16.1/archival/libipkg/ipkg_message.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_message.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_message.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_message.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,35 @@
+/* ipkg_message.c - the itsy package management system
+
@@ -5793,7 +5793,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_message.c busybox-1.16.1/arc
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_message.h busybox-1.16.1/archival/libipkg/ipkg_message.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_message.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_message.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_message.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,32 @@
+/* ipkg_message.h - the itsy package management system
+
@@ -5829,7 +5829,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_message.h busybox-1.16.1/arc
+#endif /* _IPKG_MESSAGE_H_ */
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_remove.c busybox-1.16.1/archival/libipkg/ipkg_remove.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_remove.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_remove.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_remove.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,385 @@
+/* ipkg_remove.c - the itsy package management system
+
@@ -6218,7 +6218,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_remove.c busybox-1.16.1/arch
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_remove.h busybox-1.16.1/archival/libipkg/ipkg_remove.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_remove.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_remove.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_remove.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,33 @@
+/* ipkg_remove.h - the itsy package management system
+
@@ -6255,7 +6255,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_remove.h busybox-1.16.1/arch
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.c busybox-1.16.1/archival/libipkg/ipkg_upgrade.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_upgrade.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_upgrade.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,79 @@
+/* ipkg_upgrade.c - the itsy package management system
+
@@ -6338,7 +6338,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.c busybox-1.16.1/arc
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.h busybox-1.16.1/archival/libipkg/ipkg_upgrade.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_upgrade.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_upgrade.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,18 @@
+/* ipkg_upgrade.c - the itsy package management system
+
@@ -6360,7 +6360,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_upgrade.h busybox-1.16.1/arc
+int ipkg_upgrade_pkg(ipkg_conf_t *conf, pkg_t *old);
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_utils.c busybox-1.16.1/archival/libipkg/ipkg_utils.c
--- busybox-1.16.1.orig/archival/libipkg/ipkg_utils.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_utils.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_utils.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,185 @@
+/* ipkg_utils.c - the itsy package management system
+
@@ -6549,7 +6549,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_utils.c busybox-1.16.1/archi
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_utils.h busybox-1.16.1/archival/libipkg/ipkg_utils.h
--- busybox-1.16.1.orig/archival/libipkg/ipkg_utils.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/ipkg_utils.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/ipkg_utils.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,29 @@
+/* ipkg_utils.h - the itsy package management system
+
@@ -6582,7 +6582,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/ipkg_utils.h busybox-1.16.1/archi
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/Kbuild busybox-1.16.1/archival/libipkg/Kbuild
--- busybox-1.16.1.orig/archival/libipkg/Kbuild 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/Kbuild 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/Kbuild 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,60 @@
+# Makefile for busybox
+#
@@ -6646,7 +6646,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/Kbuild busybox-1.16.1/archival/li
+CFLAGS += -DIPKGLIBDIR="\"/usr/lib\"" -DHOST_CPU_STR="\"$(IPKG_ARCH)\""
diff -Nur busybox-1.16.1.orig/archival/libipkg/libipkg.c busybox-1.16.1/archival/libipkg/libipkg.c
--- busybox-1.16.1.orig/archival/libipkg/libipkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/libipkg.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/libipkg.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,525 @@
+/* ipkglib.c - the itsy package management system
+
@@ -7175,7 +7175,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/libipkg.c busybox-1.16.1/archival
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/libipkg.h busybox-1.16.1/archival/libipkg/libipkg.h
--- busybox-1.16.1.orig/archival/libipkg/libipkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/libipkg.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/libipkg.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,78 @@
+/* ipkglib.h - the itsy package management system
+
@@ -7257,7 +7257,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/libipkg.h busybox-1.16.1/archival
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair.c busybox-1.16.1/archival/libipkg/nv_pair.c
--- busybox-1.16.1.orig/archival/libipkg/nv_pair.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/nv_pair.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/nv_pair.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,40 @@
+/* nv_pair.c - the itsy package management system
+
@@ -7301,7 +7301,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair.c busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair.h busybox-1.16.1/archival/libipkg/nv_pair.h
--- busybox-1.16.1.orig/archival/libipkg/nv_pair.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/nv_pair.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/nv_pair.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,32 @@
+/* nv_pair.h - the itsy package management system
+
@@ -7337,7 +7337,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair.h busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair_list.c busybox-1.16.1/archival/libipkg/nv_pair_list.c
--- busybox-1.16.1.orig/archival/libipkg/nv_pair_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/nv_pair_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/nv_pair_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,98 @@
+/* nv_pair_list.c - the itsy package management system
+
@@ -7439,7 +7439,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair_list.c busybox-1.16.1/arc
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair_list.h busybox-1.16.1/archival/libipkg/nv_pair_list.h
--- busybox-1.16.1.orig/archival/libipkg/nv_pair_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/nv_pair_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/nv_pair_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,60 @@
+/* nv_pair_list.h - the itsy package management system
+
@@ -7503,7 +7503,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/nv_pair_list.h busybox-1.16.1/arc
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg.c busybox-1.16.1/archival/libipkg/pkg.c
--- busybox-1.16.1.orig/archival/libipkg/pkg.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,1757 @@
+/* pkg.c - the itsy package management system
+
@@ -9264,7 +9264,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg.c busybox-1.16.1/archival/lib
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_depends.c busybox-1.16.1/archival/libipkg/pkg_depends.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_depends.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_depends.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_depends.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,1032 @@
+/* pkg_depends.c - the itsy package management system
+
@@ -10300,7 +10300,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_depends.c busybox-1.16.1/arch
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_depends.h busybox-1.16.1/archival/libipkg/pkg_depends.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_depends.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_depends.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_depends.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,105 @@
+/* pkg_depends.h - the itsy package management system
+
@@ -10409,7 +10409,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_depends.h busybox-1.16.1/arch
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest.c busybox-1.16.1/archival/libipkg/pkg_dest.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_dest.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_dest.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_dest.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,92 @@
+/* pkg_dest.c - the itsy package management system
+
@@ -10505,7 +10505,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest.c busybox-1.16.1/archiva
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest.h busybox-1.16.1/archival/libipkg/pkg_dest.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_dest.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_dest.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_dest.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,38 @@
+/* pkg_dest.h - the itsy package management system
+
@@ -10547,7 +10547,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest.h busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.c busybox-1.16.1/archival/libipkg/pkg_dest_list.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_dest_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_dest_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,85 @@
+/* pkg_dest_list.c - the itsy package management system
+
@@ -10636,7 +10636,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.c busybox-1.16.1/ar
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.h busybox-1.16.1/archival/libipkg/pkg_dest_list.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_dest_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_dest_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,50 @@
+/* pkg_dest_list.h - the itsy package management system
+
@@ -10690,8 +10690,8 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_dest_list.h busybox-1.16.1/ar
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/archival/libipkg/pkg_extract.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_extract.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_extract.c 2010-04-04 13:52:46.000000000 +0200
-@@ -0,0 +1,225 @@
++++ busybox-1.16.1/archival/libipkg/pkg_extract.c 2010-04-22 19:33:49.000000000 +0200
+@@ -0,0 +1,255 @@
+/* pkg_extract.c - the itsy package management system
+
+ Carl D. Worth
@@ -10725,6 +10725,36 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+#define IPKG_DATA_ARCHIVE "data.tar.gz"
+#define IPKG_CONTROL_FILE "control"
+
++static void FAST_FUNC ipkg_data_extract_all_prefix(archive_handle_t *archive_handle)
++{
++ char *name_ptr = archive_handle->file_header->name;
++
++ /* Skip all leading "/" */
++ while (*name_ptr == '/')
++ name_ptr++;
++ /* Skip all leading "./" and "../" */
++ while (name_ptr[0] == '.') {
++ if (name_ptr[1] == '.' && name_ptr[2] == '/')
++ name_ptr++;
++ if (name_ptr[1] != '/')
++ break;
++ name_ptr += 2;
++ }
++
++ if (name_ptr[0] != '\0') {
++ archive_handle->file_header->name = xasprintf("%s%s", archive_handle->dpkg__buffer, name_ptr);
++ data_extract_all(archive_handle);
++ }
++}
++
++static void FAST_FUNC ipkg_data_extract_to_buffer(archive_handle_t *archive_handle)
++{
++ unsigned size = archive_handle->file_header->size;
++
++ archive_handle->dpkg__buffer = xzalloc(size + 1);
++ xread(archive_handle->src_fd, archive_handle->dpkg__buffer, size);
++}
++
+static void extract_ipkg_file_to_dir(pkg_t *pkg, const char *dir, const char *filename)
+{
+ archive_handle_t *archive;
@@ -10735,9 +10765,9 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+ archive->src_fd = xopen(pkg->local_filename, O_RDONLY);
+ archive->filter = filter_accept_list;
+ llist_add_to(&(archive->accept), (char *)filename);
-+ archive->buffer = path;
-+ archive->action_data = data_extract_all_prefix;
-+ archive->ah_flags |= ARCHIVE_EXTRACT_UNCONDITIONAL;
++ archive->dpkg__buffer = path;
++ archive->action_data = ipkg_data_extract_all_prefix;
++ archive->ah_flags |= ARCHIVE_UNLINK_OLD;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
+ free(archive->accept);
@@ -10749,15 +10779,15 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+{
+ unsigned int size = strlen(archive->file_header->name) + 2;
+
-+ if (archive->buffer == NULL) {
-+ archive->buffer = xmalloc(size);
-+ strcpy(archive->buffer, archive->file_header->name);
++ if (archive->dpkg__buffer == NULL) {
++ archive->dpkg__buffer = xmalloc(size);
++ strcpy(archive->dpkg__buffer, archive->file_header->name);
+ } else {
-+ size += strlen(archive->buffer);
-+ archive->buffer = xrealloc(archive->buffer, size);
-+ strcat(archive->buffer, archive->file_header->name);
++ size += strlen(archive->dpkg__buffer);
++ archive->dpkg__buffer = xrealloc(archive->dpkg__buffer, size);
++ strcat(archive->dpkg__buffer, archive->file_header->name);
+ }
-+ strcat(archive->buffer, "\n");
++ strcat(archive->dpkg__buffer, "\n");
+ data_skip(archive);
+}
+
@@ -10773,11 +10803,11 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+ archive->src_fd = xopen(name, O_RDONLY);
+ archive->filter = filter_accept_list;
+ llist_add_to(&(archive->accept), (char *)filename);
-+ archive->action_data = data_extract_to_buffer;
++ archive->action_data = ipkg_data_extract_to_buffer;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
-+ fputs(archive->buffer, stream);
-+ free(archive->buffer);
++ fputs(archive->dpkg__buffer, stream);
++ free(archive->dpkg__buffer);
+ free(archive->accept);
+ free(archive);
+ free(name);
@@ -10802,9 +10832,9 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+ archive = init_handle();
+ archive->src_fd = xopen(name, O_RDONLY);
+ archive->filter = filter_accept_all;
-+ archive->buffer = path;
-+ archive->action_data = data_extract_all_prefix;
-+ archive->ah_flags |= ARCHIVE_CREATE_LEADING_DIRS | ARCHIVE_PRESERVE_DATE | ARCHIVE_EXTRACT_UNCONDITIONAL;
++ archive->dpkg__buffer = path;
++ archive->action_data = ipkg_data_extract_all_prefix;
++ archive->ah_flags |= ARCHIVE_CREATE_LEADING_DIRS | ARCHIVE_RESTORE_DATE | ARCHIVE_UNLINK_OLD;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
+ free(archive);
@@ -10826,9 +10856,9 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+ archive = init_handle();
+ archive->src_fd = xopen(name, O_RDONLY);
+ archive->filter = filter_accept_all;
-+ archive->buffer = path;
-+ archive->action_data = data_extract_all_prefix;
-+ archive->ah_flags |= ARCHIVE_CREATE_LEADING_DIRS | ARCHIVE_PRESERVE_DATE | ARCHIVE_EXTRACT_UNCONDITIONAL;
++ archive->dpkg__buffer = path;
++ archive->action_data = ipkg_data_extract_all_prefix;
++ archive->ah_flags |= ARCHIVE_CREATE_LEADING_DIRS | ARCHIVE_RESTORE_DATE | ARCHIVE_UNLINK_OLD;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
+ free(archive);
@@ -10910,8 +10940,8 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+ archive->action_data = data_extract_file_name_to_buffer;
+ while( get_header_tar_gz(archive) == EXIT_SUCCESS );
+ close(archive->src_fd);
-+ fputs(archive->buffer, file);
-+ free(archive->buffer);
++ fputs(archive->dpkg__buffer, file);
++ free(archive->dpkg__buffer);
+ free(archive);
+ free(name);
+
@@ -10919,7 +10949,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.c busybox-1.16.1/arch
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.h busybox-1.16.1/archival/libipkg/pkg_extract.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_extract.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_extract.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_extract.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,32 @@
+/* pkg_extract.c - the itsy package management system
+
@@ -10955,7 +10985,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_extract.h busybox-1.16.1/arch
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg.h busybox-1.16.1/archival/libipkg/pkg.h
--- busybox-1.16.1.orig/archival/libipkg/pkg.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,229 @@
+/* pkg.h - the itsy package management system
+
@@ -11188,7 +11218,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg.h busybox-1.16.1/archival/lib
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_hash.c busybox-1.16.1/archival/libipkg/pkg_hash.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_hash.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_hash.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_hash.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,623 @@
+/* ipkg_hash.c - the itsy package management system
+
@@ -11815,7 +11845,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_hash.c busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_hash.h busybox-1.16.1/archival/libipkg/pkg_hash.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_hash.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_hash.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_hash.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,61 @@
+/* pkg_hash.h - the itsy package management system
+
@@ -11880,7 +11910,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_hash.h busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_parse.c busybox-1.16.1/archival/libipkg/pkg_parse.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_parse.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_parse.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_parse.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,368 @@
+/* pkg_parse.c - the itsy package management system
+
@@ -12252,7 +12282,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_parse.c busybox-1.16.1/archiv
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_parse.h busybox-1.16.1/archival/libipkg/pkg_parse.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_parse.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_parse.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_parse.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,31 @@
+/* pkg_parse.h - the itsy package management system
+
@@ -12287,7 +12317,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_parse.h busybox-1.16.1/archiv
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src.c busybox-1.16.1/archival/libipkg/pkg_src.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_src.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_src.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_src.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,43 @@
+/* pkg_src.c - the itsy package management system
+
@@ -12334,7 +12364,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src.c busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src.h busybox-1.16.1/archival/libipkg/pkg_src.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_src.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_src.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_src.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,34 @@
+/* pkg_src.h - the itsy package management system
+
@@ -12372,7 +12402,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src.h busybox-1.16.1/archival
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src_list.c busybox-1.16.1/archival/libipkg/pkg_src_list.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_src_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_src_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_src_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,75 @@
+/* pkg_src_list.c - the itsy package management system
+
@@ -12451,7 +12481,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src_list.c busybox-1.16.1/arc
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src_list.h busybox-1.16.1/archival/libipkg/pkg_src_list.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_src_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_src_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_src_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,57 @@
+/* pkg_src_list.h - the itsy package management system
+
@@ -12512,7 +12542,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_src_list.h busybox-1.16.1/arc
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_vec.c busybox-1.16.1/archival/libipkg/pkg_vec.c
--- busybox-1.16.1.orig/archival/libipkg/pkg_vec.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_vec.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_vec.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,231 @@
+/* pkg_vec.c - the itsy package management system
+
@@ -12747,7 +12777,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_vec.c busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_vec.h busybox-1.16.1/archival/libipkg/pkg_vec.h
--- busybox-1.16.1.orig/archival/libipkg/pkg_vec.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/pkg_vec.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/pkg_vec.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,62 @@
+/* pkg_vec.h - the itsy package management system
+
@@ -12813,7 +12843,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/pkg_vec.h busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/sprintf_alloc.h busybox-1.16.1/archival/libipkg/sprintf_alloc.h
--- busybox-1.16.1.orig/archival/libipkg/sprintf_alloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/sprintf_alloc.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/sprintf_alloc.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,25 @@
+/* sprintf_alloca.c -- like sprintf with memory allocation
+
@@ -12842,7 +12872,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/sprintf_alloc.h busybox-1.16.1/ar
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/str_list.c busybox-1.16.1/archival/libipkg/str_list.c
--- busybox-1.16.1.orig/archival/libipkg/str_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/str_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/str_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,76 @@
+/* str_list.c - the itsy package management system
+
@@ -12922,7 +12952,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/str_list.c busybox-1.16.1/archiva
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/str_list.h busybox-1.16.1/archival/libipkg/str_list.h
--- busybox-1.16.1.orig/archival/libipkg/str_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/str_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/str_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,51 @@
+/* str_list.h - the itsy package management system
+
@@ -12977,7 +13007,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/str_list.h busybox-1.16.1/archiva
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/str_util.c busybox-1.16.1/archival/libipkg/str_util.c
--- busybox-1.16.1.orig/archival/libipkg/str_util.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/str_util.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/str_util.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,69 @@
+/* str_utils.c - the itsy package management system
+
@@ -13050,7 +13080,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/str_util.c busybox-1.16.1/archiva
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/str_util.h busybox-1.16.1/archival/libipkg/str_util.h
--- busybox-1.16.1.orig/archival/libipkg/str_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/str_util.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/str_util.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,27 @@
+/* str_utils.h - the itsy package management system
+
@@ -13081,7 +13111,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/str_util.h busybox-1.16.1/archiva
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/user.c busybox-1.16.1/archival/libipkg/user.c
--- busybox-1.16.1.orig/archival/libipkg/user.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/user.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/user.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,49 @@
+/* user.c - the itsy package management system
+
@@ -13134,7 +13164,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/user.c busybox-1.16.1/archival/li
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/user.h busybox-1.16.1/archival/libipkg/user.h
--- busybox-1.16.1.orig/archival/libipkg/user.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/user.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/user.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,23 @@
+/* user.c - the itsy package management system
+
@@ -13161,7 +13191,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/user.h busybox-1.16.1/archival/li
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/void_list.c busybox-1.16.1/archival/libipkg/void_list.c
--- busybox-1.16.1.orig/archival/libipkg/void_list.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/void_list.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/void_list.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,194 @@
+/* void_list.c - the itsy package management system
+
@@ -13359,7 +13389,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/void_list.c busybox-1.16.1/archiv
+}
diff -Nur busybox-1.16.1.orig/archival/libipkg/void_list.h busybox-1.16.1/archival/libipkg/void_list.h
--- busybox-1.16.1.orig/archival/libipkg/void_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/void_list.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/void_list.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,59 @@
+/* void_list.h - the itsy package management system
+
@@ -13422,7 +13452,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/void_list.h busybox-1.16.1/archiv
+#endif
diff -Nur busybox-1.16.1.orig/archival/libipkg/xsystem.c busybox-1.16.1/archival/libipkg/xsystem.c
--- busybox-1.16.1.orig/archival/libipkg/xsystem.c 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/xsystem.c 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/xsystem.c 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,64 @@
+/* xsystem.c - system(3) with error messages
+
@@ -13490,7 +13520,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/xsystem.c busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libipkg/xsystem.h busybox-1.16.1/archival/libipkg/xsystem.h
--- busybox-1.16.1.orig/archival/libipkg/xsystem.h 1970-01-01 01:00:00.000000000 +0100
-+++ busybox-1.16.1/archival/libipkg/xsystem.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libipkg/xsystem.h 2010-04-22 19:18:12.000000000 +0200
@@ -0,0 +1,34 @@
+/* xsystem.h - system(3) with error messages
+
@@ -13528,7 +13558,7 @@ diff -Nur busybox-1.16.1.orig/archival/libipkg/xsystem.h busybox-1.16.1/archival
+
diff -Nur busybox-1.16.1.orig/archival/libunarchive/Kbuild busybox-1.16.1/archival/libunarchive/Kbuild
--- busybox-1.16.1.orig/archival/libunarchive/Kbuild 2010-03-20 03:58:07.000000000 +0100
-+++ busybox-1.16.1/archival/libunarchive/Kbuild 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/archival/libunarchive/Kbuild 2010-04-22 19:18:12.000000000 +0200
@@ -40,6 +40,7 @@
lib-$(CONFIG_DPKG) += $(DPKG_FILES)
lib-$(CONFIG_DPKG_DEB) += $(DPKG_FILES)
@@ -13539,7 +13569,7 @@ diff -Nur busybox-1.16.1.orig/archival/libunarchive/Kbuild busybox-1.16.1/archiv
lib-$(CONFIG_TAR) += get_header_tar.o
diff -Nur busybox-1.16.1.orig/include/applets.h busybox-1.16.1/include/applets.h
--- busybox-1.16.1.orig/include/applets.h 2010-03-28 19:43:35.000000000 +0200
-+++ busybox-1.16.1/include/applets.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/include/applets.h 2010-04-22 19:18:12.000000000 +0200
@@ -214,6 +214,7 @@
IF_IPCALC(APPLET(ipcalc, _BB_DIR_BIN, _BB_SUID_DROP))
IF_IPCRM(APPLET(ipcrm, _BB_DIR_USR_BIN, _BB_SUID_REQUIRE))
@@ -13548,9 +13578,21 @@ diff -Nur busybox-1.16.1.orig/include/applets.h busybox-1.16.1/include/applets.h
IF_IPLINK(APPLET(iplink, _BB_DIR_BIN, _BB_SUID_DROP))
IF_IPROUTE(APPLET(iproute, _BB_DIR_BIN, _BB_SUID_DROP))
IF_IPRULE(APPLET(iprule, _BB_DIR_BIN, _BB_SUID_DROP))
+diff -Nur busybox-1.16.1.orig/include/unarchive.h busybox-1.16.1/include/unarchive.h
+--- busybox-1.16.1.orig/include/unarchive.h 2010-03-28 19:43:35.000000000 +0200
++++ busybox-1.16.1/include/unarchive.h 2010-04-22 19:21:25.000000000 +0200
+@@ -65,7 +65,7 @@
+ struct hardlinks_t *cpio__hardlinks_to_create;
+ struct hardlinks_t *cpio__created_hardlinks;
+ #endif
+-#if ENABLE_DPKG || ENABLE_DPKG_DEB
++#if ENABLE_DPKG || ENABLE_DPKG_DEB || ENABLE_IPKG
+ /* Temporary storage */
+ char *dpkg__buffer;
+ /* How to process any sub archive, e.g. get_header_tar_gz */
diff -Nur busybox-1.16.1.orig/include/usage.h busybox-1.16.1/include/usage.h
--- busybox-1.16.1.orig/include/usage.h 2010-03-28 19:44:04.000000000 +0200
-+++ busybox-1.16.1/include/usage.h 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/include/usage.h 2010-04-22 19:18:12.000000000 +0200
@@ -1592,6 +1592,82 @@
"$ ls -la /tmp/busybox*\n" \
"-rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/busybox.tar.gz\n"
@@ -13636,7 +13678,7 @@ diff -Nur busybox-1.16.1.orig/include/usage.h busybox-1.16.1/include/usage.h
#define halt_full_usage "\n\n" \
diff -Nur busybox-1.16.1.orig/Makefile busybox-1.16.1/Makefile
--- busybox-1.16.1.orig/Makefile 2010-03-28 19:44:09.000000000 +0200
-+++ busybox-1.16.1/Makefile 2010-04-04 13:52:46.000000000 +0200
++++ busybox-1.16.1/Makefile 2010-04-22 19:18:12.000000000 +0200
@@ -454,6 +454,7 @@
libs-y := \