packages: busybox/busybox-initrd.config, busybox/busybox-logconsole.patch, ...

arekm arekm at pld-linux.org
Thu Dec 9 20:59:33 CET 2010


Author: arekm                        Date: Thu Dec  9 19:59:33 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- up to 1.18.0

---- Files affected:
packages/busybox:
   busybox-initrd.config (1.53 -> 1.54) , busybox-logconsole.patch (1.10 -> 1.11) , busybox.config (1.42 -> 1.43) , busybox.spec (1.181 -> 1.182) , busybox-1.18.0-buildsys.patch (NONE -> 1.1)  (NEW), busybox-1.18.0-runsvdir.patch (NONE -> 1.1)  (NEW), busybox-1.18.0-sha.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/busybox/busybox-initrd.config
diff -u packages/busybox/busybox-initrd.config:1.53 packages/busybox/busybox-initrd.config:1.54
--- packages/busybox/busybox-initrd.config:1.53	Mon Oct 18 21:15:12 2010
+++ packages/busybox/busybox-initrd.config	Thu Dec  9 20:59:28 2010
@@ -68,6 +68,7 @@
 CONFIG_INCLUDE_SUSv2=y
 # CONFIG_USE_PORTABLE_CODE is not set
 # CONFIG_PARSE is not set
+CONFIG_PLATFORM_LINUX=y
 
 #
 # Installation Options
@@ -253,6 +254,7 @@
 # CONFIG_FEATURE_TEST_64 is not set
 # CONFIG_TOUCH is not set
 # CONFIG_TR is not set
+# CONFIG_BASE64 is not set
 # CONFIG_FEATURE_TR_CLASSES is not set
 # CONFIG_FEATURE_TR_EQUIV is not set
 CONFIG_TRUE=y
@@ -396,6 +398,8 @@
 CONFIG_HALT=y
 # CONFIG_FEATURE_CALL_TELINIT is not set
 # CONFIG_MESG is not set
+# CONFIG_ADD_SHELL is not set
+# CONFIG_REMOVE_SHELL is not set
 CONFIG_BOOTCHARTD=y
 # CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
 CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE=y
@@ -476,6 +480,7 @@
 #
 # CONFIG_BLKID is not set
 CONFIG_DMESG=y
+# CONFIG_BLOCKDEV is not set
 # CONFIG_FEATURE_DMESG_PRETTY is not set
 # CONFIG_FBSET is not set
 # CONFIG_FEATURE_FBSET_FANCY is not set
@@ -625,6 +630,8 @@
 # CONFIG_MICROCOM is not set
 # CONFIG_MOUNTPOINT is not set
 # CONFIG_MT is not set
+# CONFIG_NANDWRITE is not set
+# CONFIG_NANDDUMP is not set
 # CONFIG_RAIDAUTORUN is not set
 # CONFIG_READAHEAD is not set
 # CONFIG_RFKILL is not set
@@ -721,6 +728,7 @@
 # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
 # CONFIG_NAMEIF is not set
 # CONFIG_FEATURE_NAMEIF_EXTENDED is not set
+# CONFIG_NBDCLIENT is not set
 # CONFIG_NC is not set
 # CONFIG_NC_SERVER is not set
 # CONFIG_NC_EXTRA is not set
@@ -792,6 +800,10 @@
 # CONFIG_FEATURE_PS_TIME is not set
 # CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
 # CONFIG_RENICE is not set
+# CONFIG_IOSTAT is not set
+# CONFIG_MPSTAT is not set
+# CONFIG_PMAP is not set
+# CONFIG_POWERTOP is not set
 # CONFIG_BB_SYSCTL is not set
 # CONFIG_TOP is not set
 # CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set

================================================================
Index: packages/busybox/busybox-logconsole.patch
diff -u packages/busybox/busybox-logconsole.patch:1.10 packages/busybox/busybox-logconsole.patch:1.11
--- packages/busybox/busybox-logconsole.patch:1.10	Mon Nov  8 20:40:51 2010
+++ packages/busybox/busybox-logconsole.patch	Thu Dec  9 20:59:28 2010
@@ -1,23 +1,23 @@
 --- busybox-1.17.3/include/libbb.h.orig	2010-10-09 22:57:13.000000000 +0300
 +++ busybox-1.17.3/include/libbb.h	2010-11-08 21:21:38.520518694 +0200
-@@ -1620,7 +1620,7 @@
+@@ -1677,7 +1677,7 @@
  # define VC_2 "/dev/vc/2"
  # define VC_3 "/dev/vc/3"
  # define VC_4 "/dev/vc/4"
 -# define VC_5 "/dev/vc/5"
 +# define VC_12 "/dev/vc/12"
- # if defined(__sh__) || defined(__H8300H__) || defined(__H8300S__)
- /* Yes, this sucks, but both SH (including sh64) and H8 have a SCI(F) for their
-    respective serial ports .. as such, we can't use the common device paths for
-@@ -1644,7 +1644,7 @@
+ # define VC_FORMAT "/dev/vc/%d"
+ # define LOOP_FORMAT "/dev/loop/%d"
+ # define LOOP_NAMESIZE (sizeof("/dev/loop/") + sizeof(int)*3 + 1)
+@@ -1690,7 +1690,7 @@
  # define VC_2 "/dev/tty2"
  # define VC_3 "/dev/tty3"
  # define VC_4 "/dev/tty4"
 -# define VC_5 "/dev/tty5"
 +# define VC_12 "/dev/tty12"
- # if defined(__sh__) || defined(__H8300H__) || defined(__H8300S__)
- #  define SC_0 "/dev/ttySC0"
- #  define SC_1 "/dev/ttySC1"
+ # define VC_FORMAT "/dev/tty%d"
+ # define LOOP_FORMAT "/dev/loop%d"
+ # define LOOP_NAMESIZE (sizeof("/dev/loop") + sizeof(int)*3 + 1)
 --- busybox/init/init.c.orig	2008-04-19 04:03:13.000000000 +0000
 +++ busybox.o/init/init.c	2008-04-26 17:09:58.075653000 +0000
 @@ -64,7 +64,7 @@

================================================================
Index: packages/busybox/busybox.config
diff -u packages/busybox/busybox.config:1.42 packages/busybox/busybox.config:1.43
--- packages/busybox/busybox.config:1.42	Mon Oct 18 21:15:12 2010
+++ packages/busybox/busybox.config	Thu Dec  9 20:59:28 2010
@@ -32,6 +32,7 @@
 CONFIG_UNICODE_COMBINING_WCHARS=y
 CONFIG_UNICODE_WIDE_WCHARS=y
 CONFIG_UNICODE_BIDI_SUPPORT=y
+CONFIG_UNICODE_NEUTRAL_TABLE=y
 CONFIG_UNICODE_PRESERVE_BROKEN=y
 CONFIG_GETOPT_LONG=y
 CONFIG_FEATURE_DEVPTS=y
@@ -45,6 +46,7 @@
 CONFIG_BUSYBOX_EXEC_PATH="/bin/busybox"
 CONFIG_FEATURE_SYSLOG=y
 CONFIG_FEATURE_HAVE_RPC=y
+CONFIG_PLATFORM_LINUX=y
 
 #
 # Build Options
@@ -121,6 +123,7 @@
 CONFIG_FEATURE_SEAMLESS_XZ=y
 CONFIG_AR=y
 CONFIG_FEATURE_AR_LONG_FILENAMES=y
+CONFIG_FEATURE_AR_CREATE=y
 CONFIG_BUNZIP2=y
 CONFIG_BZIP2=y
 CONFIG_CPIO=y
@@ -146,16 +149,19 @@
 CONFIG_FEATURE_TAR_LONG_OPTIONS=y
 CONFIG_FEATURE_TAR_UNAME_GNAME=y
 CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y
+CONFIG_FEATURE_TAR_TO_COMMAND=y
 CONFIG_UNCOMPRESS=y
 CONFIG_UNLZMA=y
 CONFIG_UNXZ=y
 CONFIG_XZ=y
 # CONFIG_FEATURE_LZMA_FAST is not set
+CONFIG_LZMA=y
 CONFIG_UNZIP=y
 
 #
 # Coreutils
 #
+CONFIG_BASE64=y
 CONFIG_BASENAME=y
 CONFIG_CAL=y
 CONFIG_CAT=y
@@ -173,6 +179,7 @@
 CONFIG_CUT=y
 CONFIG_DATE=y
 CONFIG_FEATURE_DATE_ISOFMT=y
+CONFIG_FEATURE_DATE_NANO=y
 CONFIG_DD=y
 CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
 CONFIG_FEATURE_DD_IBS_OBS=y
@@ -319,6 +326,12 @@
 CONFIG_SHOWKEY=y
 
 #
+# Common options for loadfont and setfont
+#
+CONFIG_FEATURE_LOADFONT_PSF2=y
+CONFIG_FEATURE_LOADFONT_RAW=y
+
+#
 # Debian Utilities
 #
 CONFIG_MKTEMP=y
@@ -357,6 +370,7 @@
 CONFIG_FEATURE_VI_SETOPTS=y
 CONFIG_FEATURE_VI_SET=y
 # CONFIG_FEATURE_VI_WIN_RESIZE is not set
+CONFIG_FEATURE_VI_ASK_TERMINAL=y
 CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
 CONFIG_FEATURE_ALLOW_EXEC=y
 
@@ -408,6 +422,7 @@
 # CONFIG_FEATURE_EXTRA_QUIET is not set
 # CONFIG_FEATURE_INIT_COREDUMPS is not set
 CONFIG_FEATURE_INITRD=y
+CONFIG_INIT_TERMINAL_TYPE="linux"
 CONFIG_HALT=y
 CONFIG_MESG=y
 CONFIG_BOOTCHARTD=y
@@ -449,6 +464,8 @@
 CONFIG_FEATURE_SU_CHECKS_SHELLS=y
 CONFIG_SULOGIN=y
 CONFIG_VLOCK=y
+CONFIG_ADD_SHELL=y
+CONFIG_REMOVE_SHELL=y
 
 #
 # Linux Ext2 FS Progs
@@ -495,6 +512,7 @@
 CONFIG_ACPID=y
 CONFIG_FEATURE_ACPID_COMPAT=y
 CONFIG_BLKID=y
+CONFIG_BLOCKDEV=y
 CONFIG_DMESG=y
 CONFIG_FEATURE_DMESG_PRETTY=y
 CONFIG_FBSET=y
@@ -509,6 +527,7 @@
 # CONFIG_FEATURE_SGI_LABEL is not set
 # CONFIG_FEATURE_SUN_LABEL is not set
 CONFIG_FEATURE_OSF_LABEL=y
+CONFIG_FEATURE_GPT_LABEL=y
 CONFIG_FEATURE_FDISK_ADVANCED=y
 CONFIG_FINDFS=y
 CONFIG_FLOCK=y
@@ -608,6 +627,8 @@
 CONFIG_FEATURE_BEEP_LENGTH_MS=30
 # CONFIG_CHAT is not set
 CONFIG_CONSPY=y
+# CONFIG_NANDWRITE is not set
+# CONFIG_NANDDUMP is not set
 # CONFIG_FEATURE_CHAT_NOFAIL is not set
 # CONFIG_FEATURE_CHAT_TTY_HIFI is not set
 # CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
@@ -675,8 +696,8 @@
 CONFIG_TIME=y
 CONFIG_TIMEOUT=y
 CONFIG_TTYSIZE=y
-CONFIG_UBIATTACH=y
-CONFIG_UBIDETACH=y
+# CONFIG_UBIATTACH is not set
+# CONFIG_UBIDETACH is not set
 CONFIG_VOLNAME=y
 CONFIG_WATCHDOG=y
 
@@ -716,6 +737,7 @@
 CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
 CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
 CONFIG_FEATURE_HTTPD_PROXY=y
+CONFIG_FEATURE_HTTPD_GZIP=y
 CONFIG_IFCONFIG=y
 CONFIG_FEATURE_IFCONFIG_STATUS=y
 CONFIG_FEATURE_IFCONFIG_SLIP=y
@@ -761,6 +783,7 @@
 CONFIG_NC=y
 CONFIG_NC_SERVER=y
 # CONFIG_NC_EXTRA is not set
+# CONFIG_NC_110_COMPAT is not set
 CONFIG_NETSTAT=y
 CONFIG_FEATURE_NETSTAT_WIDE=y
 CONFIG_FEATURE_NETSTAT_PRG=y
@@ -821,11 +844,13 @@
 CONFIG_FEATURE_WGET_STATUSBAR=y
 CONFIG_FEATURE_WGET_AUTHENTICATION=y
 # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+CONFIG_FEATURE_WGET_TIMEOUT=y
 CONFIG_ZCIP=y
 CONFIG_TCPSVD=y
 CONFIG_UDPSVD=y
 CONFIG_TUNCTL=y
 CONFIG_FEATURE_TUNCTL_UG=y
+CONFIG_NBDCLIENT=y
 
 #
 # Print Utilities
@@ -852,6 +877,10 @@
 #
 CONFIG_FREE=y
 CONFIG_FUSER=y
+CONFIG_IOSTAT=y
+CONFIG_MPSTAT=y
+CONFIG_PMAP=y
+CONFIG_POWERTOP=y
 CONFIG_KILL=y
 CONFIG_KILLALL=y
 CONFIG_KILLALL5=y
@@ -918,6 +947,7 @@
 # CONFIG_FEATURE_SH_IS_MSH is not set
 # CONFIG_FEATURE_SH_IS_NONE is not set
 CONFIG_FEATURE_BASH_IS_ASH=y
+# CONFIG_FEATURE_BASH_IS_HUSH is not set
 # CONFIG_FEATURE_BASH_IS_NONE is not set
 CONFIG_ASH=y
 
@@ -942,6 +972,9 @@
 CONFIG_ASH_EXPAND_PRMT=y
 CONFIG_HUSH=y
 CONFIG_HUSH_BASH_COMPAT=y
+CONFIG_HUSH_BRACE_EXPANSION=y
+CONFIG_HUSH_SAVEHISTORY=y
+CONFIG_HUSH_MODE_X=y
 CONFIG_HUSH_HELP=y
 CONFIG_HUSH_INTERACTIVE=y
 CONFIG_HUSH_JOB=y
@@ -973,9 +1006,11 @@
 # CONFIG_FEATURE_ROTATE_LOGFILE is not set
 CONFIG_FEATURE_REMOTE_LOG=y
 CONFIG_FEATURE_SYSLOGD_DUP=y
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
 CONFIG_FEATURE_IPC_SYSLOG=y
 CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
 CONFIG_LOGREAD=y
 CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
 CONFIG_KLOGD=y
+CONFIG_FEATURE_KLOGD_KLOGCTL=y
 CONFIG_LOGGER=y

================================================================
Index: packages/busybox/busybox.spec
diff -u packages/busybox/busybox.spec:1.181 packages/busybox/busybox.spec:1.182
--- packages/busybox/busybox.spec:1.181	Mon Nov  8 20:40:51 2010
+++ packages/busybox/busybox.spec	Thu Dec  9 20:59:28 2010
@@ -37,15 +37,18 @@
 Summary(pt_BR.UTF-8):	BusyBox é um conjunto de utilitários UNIX em um único binário
 Name:		busybox
 # stable line only
-Version:	1.17.3
+Version:	1.18.0
 Release:	0.1
 License:	GPL
 Group:		Applications
 Source0:	http://www.busybox.net/downloads/%{name}-%{version}.tar.bz2
-# Source0-md5:	a2ce1a951571da8c6e0eaf75b1acef60
+# Source0-md5:	7a8150a10558a5292fa1f52f1c65b0f5
 Source1:	%{name}.config
 Source2:	%{name}-initrd.config
 %{?with_altconfig:Source3:	%{cfgfile}}
+Patch100:	busybox-1.18.0-buildsys.patch
+Patch101:	busybox-1.18.0-runsvdir.patch
+Patch102:	busybox-1.18.0-sha.patch
 Patch1:		%{name}-logconsole.patch
 Patch2:		%{name}-printf-gettext.patch
 Patch3:		%{name}-loadfont.patch
@@ -152,6 +155,9 @@
 
 %prep
 %setup -q
+%patch100 -p1
+%patch101 -p1
+%patch102 -p1
 %patch1 -p1
 %patch2 -p1
 #%patch3 -p1
@@ -228,7 +234,7 @@
 	CFLAGS_EXTRA="%{rpmcflags}" \
 	LDFLAGS="%{ld_rpmldflags}" \
 	CC="%{__cc}"
-%{__make} busybox.links docs/BusyBox.1
+%{__make} busybox.links docs/busybox.1
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -241,8 +247,7 @@
 %endif
 
 install busybox.links $RPM_BUILD_ROOT%{_libdir}/busybox
-install docs/BusyBox.1 $RPM_BUILD_ROOT%{_mandir}/man1
-echo ".so BusyBox.1" > $RPM_BUILD_ROOT%{_mandir}/man1/busybox.1
+install docs/busybox.1 $RPM_BUILD_ROOT%{_mandir}/man1
 
 # install links to busybox binary, when linkfl is defined
 %if %{with linkfl}
@@ -289,6 +294,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.182  2010/12/09 19:59:28  arekm
+- up to 1.18.0
+
 Revision 1.181  2010/11/08 19:40:51  caleb
 - Began upgrade to 0.17.3, NFY
 

================================================================
Index: packages/busybox/busybox-1.18.0-buildsys.patch
diff -u /dev/null packages/busybox/busybox-1.18.0-buildsys.patch:1.1
--- /dev/null	Thu Dec  9 20:59:33 2010
+++ packages/busybox/busybox-1.18.0-buildsys.patch	Thu Dec  9 20:59:28 2010
@@ -0,0 +1,51 @@
+diff -urpN busybox-1.18.0/Config.in busybox-1.18.0-buildsys/Config.in
+--- busybox-1.18.0/Config.in	2010-11-22 21:43:21.000000000 +0100
++++ busybox-1.18.0-buildsys/Config.in	2010-12-05 23:14:04.173614427 +0100
+@@ -128,8 +128,9 @@ config INSTALL_NO_USR
+ 	default n
+ 	depends on FEATURE_INSTALLER
+ 	help
+-	  Disable use of /usr. busybox --install will install applets
+-	  only to /bin and /sbin, never to /usr/bin or /usr/sbin.
++	  Disable use of /usr. busybox --install and "make install"
++	  will install applets only to /bin and /sbin,
++	  never to /usr/bin or /usr/sbin.
+ 
+ config LOCALE_SUPPORT
+ 	bool "Enable locale support (system needs locale for this to work)"
+diff -urpN busybox-1.18.0/include/applets.src.h busybox-1.18.0-buildsys/include/applets.src.h
+--- busybox-1.18.0/include/applets.src.h	2010-11-22 21:43:22.000000000 +0100
++++ busybox-1.18.0-buildsys/include/applets.src.h	2010-12-05 23:14:04.174614202 +0100
+@@ -56,6 +56,11 @@ s     - suid type:
+ # define APPLET_NOFORK(name,main,l,s,name2)  { #name, #main, l, s, 1, 1 },
+ #endif
+ 
++#if ENABLE_INSTALL_NO_USR
++# define _BB_DIR_USR_BIN _BB_DIR_BIN
++# define _BB_DIR_USR_SBIN _BB_DIR_SBIN
++#endif
++
+ 
+ INSERT
+ IF_TEST(APPLET_NOFORK([,  test, _BB_DIR_USR_BIN, _BB_SUID_DROP, test))
+diff -urpN busybox-1.18.0/scripts/gen_build_files.sh busybox-1.18.0-buildsys/scripts/gen_build_files.sh
+--- busybox-1.18.0/scripts/gen_build_files.sh	2010-11-22 21:43:22.000000000 +0100
++++ busybox-1.18.0-buildsys/scripts/gen_build_files.sh	2010-11-24 14:59:47.732712663 +0100
+@@ -18,14 +18,14 @@ generate()
+ 	local src="$1" dst="$2" header="$3" insert="$4"
+ 	#chk "${dst}"
+ 	(
+-		echo "${header}"
++		printf "%s\n" "${header}"
+ 		if grep -qs '^INSERT$' "${src}"; then
+ 			sed -n '1,/^INSERT$/p' "${src}"
+-			echo "${insert}"
++			printf "%s\n" "${insert}"
+ 			sed -n '/^INSERT$/,$p' "${src}"
+ 		else
+ 			if [ -n "${insert}" ]; then
+-				echo "ERROR: INSERT line missing in: ${src}" 1>&2
++				printf "%s\n" "ERROR: INSERT line missing in: ${src}" 1>&2
+ 			fi
+ 			cat "${src}"
+ 		fi

================================================================
Index: packages/busybox/busybox-1.18.0-runsvdir.patch
diff -u /dev/null packages/busybox/busybox-1.18.0-runsvdir.patch:1.1
--- /dev/null	Thu Dec  9 20:59:33 2010
+++ packages/busybox/busybox-1.18.0-runsvdir.patch	Thu Dec  9 20:59:28 2010
@@ -0,0 +1,17 @@
+diff -urpN busybox-1.18.0/runit/runsvdir.c busybox-1.18.0-runsvdir/runit/runsvdir.c
+--- busybox-1.18.0/runit/runsvdir.c	2010-11-22 21:43:22.000000000 +0100
++++ busybox-1.18.0-runsvdir/runit/runsvdir.c	2010-12-06 01:27:56.926036992 +0100
+@@ -312,8 +312,11 @@ int runsvdir_main(int argc UNUSED_PARAM,
+ 						last_mtime = s.st_mtime;
+ 						last_dev = s.st_dev;
+ 						last_ino = s.st_ino;
+-						//if (now <= mtime)
+-						//	sleep(1);
++						/* if the svdir changed this very second, wait until the
++						 * next second, because we won't be able to detect more
++						 * changes within this second */
++						while (time(NULL) == last_mtime)
++							usleep(100000);
+ 						need_rescan = do_rescan();
+ 						while (fchdir(curdir) == -1) {
+ 							warn2_cannot("change directory, pausing", "");

================================================================
Index: packages/busybox/busybox-1.18.0-sha.patch
diff -u /dev/null packages/busybox/busybox-1.18.0-sha.patch:1.1
--- /dev/null	Thu Dec  9 20:59:33 2010
+++ packages/busybox/busybox-1.18.0-sha.patch	Thu Dec  9 20:59:28 2010
@@ -0,0 +1,118 @@
+diff -urpN busybox-1.18.0/libbb/pw_encrypt_sha.c busybox-1.18.0-sha/libbb/pw_encrypt_sha.c
+--- busybox-1.18.0/libbb/pw_encrypt_sha.c	2010-11-22 21:43:22.000000000 +0100
++++ busybox-1.18.0-sha/libbb/pw_encrypt_sha.c	2010-12-01 13:56:24.372704380 +0100
+@@ -3,7 +3,7 @@
+  */
+ 
+ /* Prefix for optional rounds specification.  */
+-static const char str_rounds[] = "rounds=%u$";
++static const char str_rounds[] ALIGN1 = "rounds=%u$";
+ 
+ /* Maximum salt string length.  */
+ #define SALT_LEN_MAX 16
+@@ -19,8 +19,8 @@ NOINLINE
+ sha_crypt(/*const*/ char *key_data, /*const*/ char *salt_data)
+ {
+ 	void (*sha_begin)(void *ctx) FAST_FUNC;
+-	void (*sha_hash)(const void *buffer, size_t len, void *ctx) FAST_FUNC;
+-	void (*sha_end)(void *resbuf, void *ctx) FAST_FUNC;
++	void (*sha_hash)(void *ctx, const void *buffer, size_t len) FAST_FUNC;
++	void (*sha_end)(void *ctx, void *resbuf) FAST_FUNC;
+ 	int _32or64;
+ 
+ 	char *result, *resptr;
+@@ -103,40 +103,40 @@ sha_crypt(/*const*/ char *key_data, /*co
+ 
+ 	/* Add KEY, SALT.  */
+ 	sha_begin(&ctx);
+-	sha_hash(key_data, key_len, &ctx);
+-	sha_hash(salt_data, salt_len, &ctx);
++	sha_hash(&ctx, key_data, key_len);
++	sha_hash(&ctx, salt_data, salt_len);
+ 
+ 	/* Compute alternate SHA sum with input KEY, SALT, and KEY.
+ 	   The final result will be added to the first context.  */
+ 	sha_begin(&alt_ctx);
+-	sha_hash(key_data, key_len, &alt_ctx);
+-	sha_hash(salt_data, salt_len, &alt_ctx);
+-	sha_hash(key_data, key_len, &alt_ctx);
+-	sha_end(alt_result, &alt_ctx);
++	sha_hash(&alt_ctx, key_data, key_len);
++	sha_hash(&alt_ctx, salt_data, salt_len);
++	sha_hash(&alt_ctx, key_data, key_len);
++	sha_end(&alt_ctx, alt_result);
+ 
+ 	/* Add result of this to the other context.  */
+ 	/* Add for any character in the key one byte of the alternate sum.  */
+ 	for (cnt = key_len; cnt > _32or64; cnt -= _32or64)
+-		sha_hash(alt_result, _32or64, &ctx);
+-	sha_hash(alt_result, cnt, &ctx);
++		sha_hash(&ctx, alt_result, _32or64);
++	sha_hash(&ctx, alt_result, cnt);
+ 
+ 	/* Take the binary representation of the length of the key and for every
+ 	   1 add the alternate sum, for every 0 the key.  */
+ 	for (cnt = key_len; cnt != 0; cnt >>= 1)
+ 		if ((cnt & 1) != 0)
+-			sha_hash(alt_result, _32or64, &ctx);
++			sha_hash(&ctx, alt_result, _32or64);
+ 		else
+-			sha_hash(key_data, key_len, &ctx);
++			sha_hash(&ctx, key_data, key_len);
+ 
+ 	/* Create intermediate result.  */
+-	sha_end(alt_result, &ctx);
++	sha_end(&ctx, alt_result);
+ 
+ 	/* Start computation of P byte sequence.  */
+ 	/* For every character in the password add the entire password.  */
+ 	sha_begin(&alt_ctx);
+ 	for (cnt = 0; cnt < key_len; ++cnt)
+-		sha_hash(key_data, key_len, &alt_ctx);
+-	sha_end(temp_result, &alt_ctx);
++		sha_hash(&alt_ctx, key_data, key_len);
++	sha_end(&alt_ctx, temp_result);
+ 
+ 	/* NB: past this point, raw key_data is not used anymore */
+ 
+@@ -153,8 +153,8 @@ sha_crypt(/*const*/ char *key_data, /*co
+ 	/* For every character in the password add the entire password.  */
+ 	sha_begin(&alt_ctx);
+ 	for (cnt = 0; cnt < 16 + alt_result[0]; ++cnt)
+-		sha_hash(salt_data, salt_len, &alt_ctx);
+-	sha_end(temp_result, &alt_ctx);
++		sha_hash(&alt_ctx, salt_data, salt_len);
++	sha_end(&alt_ctx, temp_result);
+ 
+ 	/* NB: past this point, raw salt_data is not used anymore */
+ 
+@@ -174,22 +174,22 @@ sha_crypt(/*const*/ char *key_data, /*co
+ 
+ 		/* Add key or last result.  */
+ 		if ((cnt & 1) != 0)
+-			sha_hash(p_bytes, key_len, &ctx);
++			sha_hash(&ctx, p_bytes, key_len);
+ 		else
+-			sha_hash(alt_result, _32or64, &ctx);
++			sha_hash(&ctx, alt_result, _32or64);
+ 		/* Add salt for numbers not divisible by 3.  */
+ 		if (cnt % 3 != 0)
+-			sha_hash(s_bytes, salt_len, &ctx);
++			sha_hash(&ctx, s_bytes, salt_len);
+ 		/* Add key for numbers not divisible by 7.  */
+ 		if (cnt % 7 != 0)
+-			sha_hash(p_bytes, key_len, &ctx);
++			sha_hash(&ctx, p_bytes, key_len);
+ 		/* Add key or last result.  */
+ 		if ((cnt & 1) != 0)
+-			sha_hash(alt_result, _32or64, &ctx);
++			sha_hash(&ctx, alt_result, _32or64);
+ 		else
+-			sha_hash(p_bytes, key_len, &ctx);
++			sha_hash(&ctx, p_bytes, key_len);
+ 
+-		sha_end(alt_result, &ctx);
++		sha_end(&ctx, alt_result);
+ 	}
+ 
+ 	/* Append encrypted password to result buffer */
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/busybox/busybox-initrd.config?r1=1.53&r2=1.54&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/busybox/busybox-logconsole.patch?r1=1.10&r2=1.11&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/busybox/busybox.config?r1=1.42&r2=1.43&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/busybox/busybox.spec?r1=1.181&r2=1.182&f=u



More information about the pld-cvs-commit mailing list