Commit a080cc0f authored by Peter Korsgaard's avatar Peter Korsgaard
Browse files

busybox: add 1.16.0 fixes

parent f4f15704
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@

	Fixes all over the tree.

	Updated/fixed packages: qt
	Updated/fixed packages: busybox, qt

2010.02-rc2, Released February 23th, 2010:

+35 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.16.0/shell/ash.c busybox-1.16.0-ash/shell/ash.c
--- busybox-1.16.0/shell/ash.c	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-ash/shell/ash.c	2010-02-21 01:52:22.000000000 +0100
@@ -4539,7 +4539,7 @@ forkchild(struct job *jp, union node *n,
 	if (mode == FORK_NOJOB          /* is it `xxx` ? */
 	 && n && n->type == NCMD        /* is it single cmd? */
 	/* && n->ncmd.args->type == NARG - always true? */
-	 && strcmp(n->ncmd.args->narg.text, "trap") == 0
+	 && n->ncmd.args && strcmp(n->ncmd.args->narg.text, "trap") == 0
 	 && n->ncmd.args->narg.next == NULL /* "trap" with no arguments */
 	/* && n->ncmd.args->narg.backquote == NULL - do we need to check this? */
 	) {
@@ -4627,7 +4627,7 @@ forkchild(struct job *jp, union node *n,
 	}
 #if JOBS
 	if (n && n->type == NCMD
-	 && strcmp(n->ncmd.args->narg.text, "jobs") == 0
+	 && n->ncmd.args && strcmp(n->ncmd.args->narg.text, "jobs") == 0
 	) {
 		TRACE(("Job hack\n"));
 		/* "jobs": we do not want to clear job list for it,
diff -urpN busybox-1.16.0/shell/ash_test/ash-misc/nulltick1.right busybox-1.16.0-ash/shell/ash_test/ash-misc/nulltick1.right
--- busybox-1.16.0/shell/ash_test/ash-misc/nulltick1.right	1970-01-01 01:00:00.000000000 +0100
+++ busybox-1.16.0-ash/shell/ash_test/ash-misc/nulltick1.right	2010-02-21 01:52:22.000000000 +0100
@@ -0,0 +1,3 @@
+Test 1
+Test 2
+Done
diff -urpN busybox-1.16.0/shell/ash_test/ash-misc/nulltick1.tests busybox-1.16.0-ash/shell/ash_test/ash-misc/nulltick1.tests
--- busybox-1.16.0/shell/ash_test/ash-misc/nulltick1.tests	1970-01-01 01:00:00.000000000 +0100
+++ busybox-1.16.0-ash/shell/ash_test/ash-misc/nulltick1.tests	2010-02-21 01:52:22.000000000 +0100
@@ -0,0 +1,3 @@
+echo Test ` ` 1
+echo Test `</dev/null` 2
+echo Done
+317 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.16.0/coreutils/fsync.c busybox-1.16.0-compat/coreutils/fsync.c
--- busybox-1.16.0/coreutils/fsync.c	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-compat/coreutils/fsync.c	2010-02-21 01:54:07.000000000 +0100
@@ -7,6 +7,9 @@
  * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
  */
 #include "libbb.h"
+#ifndef O_NOATIME
+# define O_NOATIME 0
+#endif
 
 /* This is a NOFORK applet. Be very careful! */
 
diff -urpN busybox-1.16.0/editors/diff.c busybox-1.16.0-compat/editors/diff.c
--- busybox-1.16.0/editors/diff.c	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-compat/editors/diff.c	2010-02-21 01:54:07.000000000 +0100
@@ -227,10 +227,12 @@ struct cand {
 
 static int search(const int *c, int k, int y, const struct cand *list)
 {
+	int i, j;
+
 	if (list[c[k]].y < y)	/* quick look for typical case */
 		return k + 1;
 
-	for (int i = 0, j = k + 1;;) {
+	for (i = 0, j = k + 1;;) {
 		const int l = (i + j) >> 1;
 		if (l > i) {
 			const int t = list[c[l]].y;
@@ -265,11 +267,13 @@ static void stone(const int *a, int n, c
 	int clistlen = 100;
 	int k = 0;
 	struct cand *clist = xzalloc(clistlen * sizeof(clist[0]));
+	struct cand cand;
+	struct cand *q;
 	int *klist = xzalloc((n + 2) * sizeof(klist[0]));
 	/*clist[0] = (struct cand){0}; - xzalloc did it */
 	/*klist[0] = 0; */
 
-	for (struct cand cand = {1}; cand.x <= n; cand.x++) {
+	for (cand.x = 1; cand.x <= n; cand.x++) {
 		int j = a[cand.x], oldl = 0;
 		unsigned numtries = 0;
 		if (j == 0)
@@ -303,7 +307,7 @@ static void stone(const int *a, int n, c
 		} while ((cand.y = b[++j]) > 0 && numtries < bound);
 	}
 	/* Unravel */
-	for (struct cand *q = clist + klist[k]; q->y; q = clist + q->pred)
+	for (q = clist + klist[k]; q->y; q = clist + q->pred)
 		J[q->x + pref] = q->y + pref;
 	free(klist);
 	free(clist);
@@ -348,10 +352,11 @@ static void equiv(struct line *a, int n,
 
 static void unsort(const struct line *f, int l, int *b)
 {
+	int i;
 	int *a = xmalloc((l + 1) * sizeof(a[0]));
-	for (int i = 1; i <= l; i++)
+	for (i = 1; i <= l; i++)
 		a[f[i].serial] = f[i].value;
-	for (int i = 1; i <= l; i++)
+	for (i = 1; i <= l; i++)
 		b[i] = a[i];
 	free(a);
 }
@@ -370,12 +375,13 @@ static int line_compar(const void *a, co
 
 static void fetch(FILE_and_pos_t *ft, const off_t *ix, int a, int b, int ch)
 {
-	for (int i = a; i <= b; i++) {
+	int i, j, col;
+	for (i = a; i <= b; i++) {
 		seek_ft(ft, ix[i - 1]);
 		putchar(ch);
 		if (option_mask32 & FLAG(T))
 			putchar('\t');
-		for (int j = 0, col = 0; j < ix[i] - ix[i - 1]; j++) {
+		for (j = 0, col = 0; j < ix[i] - ix[i - 1]; j++) {
 			int c = fgetc(ft->ft_fp);
 			if (c == EOF) {
 				printf("\n\\ No newline at end of file\n");
@@ -410,19 +416,20 @@ static NOINLINE int *create_J(FILE_and_p
 {
 	int *J, slen[2], *class, *member;
 	struct line *nfile[2], *sfile[2];
-	int pref = 0, suff = 0;
+	int pref = 0, suff = 0, i, j, delta;
 
 	/* Lines of both files are hashed, and in the process
 	 * their offsets are stored in the array ix[fileno]
 	 * where fileno == 0 points to the old file, and
 	 * fileno == 1 points to the new one.
 	 */
-	for (int i = 0; i < 2; i++) {
+	for (i = 0; i < 2; i++) {
 		unsigned hash;
 		token_t tok;
 		size_t sz = 100;
 		nfile[i] = xmalloc((sz + 3) * sizeof(nfile[i][0]));
 		/* ft gets here without the correct position, cant use seek_ft */
+		ft[i].ft_pos = 0;
 		fseeko(ft[i].ft_fp, 0, SEEK_SET);
 
 		nlen[i] = 0;
@@ -460,11 +467,11 @@ start:
 			nlen[i]--;
 		/* Now we copy the line offsets into ix */
 		ix[i] = xmalloc((nlen[i] + 2) * sizeof(ix[i][0]));
-		for (int j = 0; j < nlen[i] + 1; j++)
+		for (j = 0; j < nlen[i] + 1; j++)
 			ix[i][j] = nfile[i][j].offset;
 	}
 
-	/* lenght of prefix and suffix is calculated */
+	/* length of prefix and suffix is calculated */
 	for (; pref < nlen[0] && pref < nlen[1] &&
 	       nfile[0][pref + 1].value == nfile[1][pref + 1].value;
 	       pref++);
@@ -475,10 +482,10 @@ start:
 	 * the result being sorted and stored in sfile[fileno],
 	 * and their sizes are stored in slen[fileno]
 	 */
-	for (int j = 0; j < 2; j++) {
+	for (j = 0; j < 2; j++) {
 		sfile[j] = nfile[j] + pref;
 		slen[j] = nlen[j] - pref - suff;
-		for (int i = 0; i <= slen[j]; i++)
+		for (i = 0; i <= slen[j]; i++)
 			sfile[j][i].serial = i;
 		qsort(sfile[j] + 1, slen[j], sizeof(*sfile[j]), line_compar);
 	}
@@ -494,7 +501,7 @@ start:
 	free(nfile[1]);
 
 	class = xmalloc((slen[0] + 1) * sizeof(class[0]));
-	for (int i = 1; i <= slen[0]; i++) /* Unsorting */
+	for (i = 1; i <= slen[0]; i++) /* Unsorting */
 		class[sfile[0][i].serial] = sfile[0][i].value;
 	free(nfile[0]);
 #else
@@ -512,7 +519,7 @@ start:
 	 * are initialized with 0 (no matches), so that function stone can
 	 * then assign them their right values
 	 */
-	for (int i = 0, delta = nlen[1] - nlen[0]; i <= nlen[0]; i++)
+	for (i = 0, delta = nlen[1] - nlen[0]; i <= nlen[0]; i++)
 		J[i] = i <= pref            ?  i :
 		       i > (nlen[0] - suff) ? (i + delta) : 0;
 	/* Here the magic is performed */
@@ -526,14 +533,14 @@ start:
 	 * which, due to limitations intrinsic to any hashing algorithm,
 	 * are different but ended up confounded as the same
 	 */
-	for (int i = 1; i <= nlen[0]; i++) {
+	for (i = 1; i <= nlen[0]; i++) {
 		if (!J[i])
 			continue;
 
 		seek_ft(&ft[0], ix[0][i - 1]);
 		seek_ft(&ft[1], ix[1][J[i] - 1]);
 
-		for (int j = J[i]; i <= nlen[0] && J[i] == j; i++, j++) {
+		for (j = J[i]; i <= nlen[0] && J[i] == j; i++, j++) {
 			token_t tok0 = 0, tok1 = 0;
 			do {
 				tok0 = read_token(&ft[0], tok0);
@@ -555,13 +562,18 @@ static bool diff(FILE* fp[2], char *file
 {
 	int nlen[2];
 	off_t *ix[2];
-	FILE_and_pos_t ft[2] = { { fp[0] }, { fp[1] } };
-	int *J = create_J(ft, nlen, ix);
-
-	bool anychange = false;
+	FILE_and_pos_t ft[2];
 	typedef struct { int a, b; } vec_t[2];
 	vec_t *vec = NULL;
-	int i = 1, idx = -1;
+	int i = 1, j, k, idx = -1;
+	bool anychange = false;
+	int *J;
+
+	ft[0].ft_fp = fp[0];
+	ft[1].ft_fp = fp[1];
+	/* note that ft[i].ft_pos is unintitalized, create_J()
+	 * must not assume otherwise */
+	J = create_J(ft, nlen, ix);
 
 	do {
 		bool nonempty = false;
@@ -596,8 +608,8 @@ static bool diff(FILE* fp[2], char *file
 					break;
 				}
 
-				for (int j = 0; j < 2; j++)
-					for (int k = v[j].a; k < v[j].b; k++)
+				for (j = 0; j < 2; j++)
+					for (k = v[j].a; k < v[j].b; k++)
 						nonempty |= (ix[j][k+1] - ix[j][k] != 1);
 
 				vec = xrealloc_vector(vec, 6, ++idx);
@@ -612,6 +624,7 @@ static bool diff(FILE* fp[2], char *file
 		if (idx < 0 || ((option_mask32 & FLAG(B)) && !nonempty))
 			goto cont;
 		if (!(option_mask32 & FLAG(q))) {
+			int lowa;
 			vec_t span, *cvp = vec;
 
 			if (!anychange) {
@@ -621,7 +634,7 @@ static bool diff(FILE* fp[2], char *file
 			}
 
 			printf("@@");
-			for (int j = 0; j < 2; j++) {
+			for (j = 0; j < 2; j++) {
 				int a = span[j].a = MAX(1, (*cvp)[j].a - opt_U_context);
 				int b = span[j].b = MIN(nlen[j], vec[idx][j].b + opt_U_context);
 
@@ -635,12 +648,12 @@ static bool diff(FILE* fp[2], char *file
 			 * Output changes in "unified" diff format--the old and new lines
 			 * are printed together.
 			 */
-			for (int lowa = span[0].a; ; lowa = (*cvp++)[0].b + 1) {
+			for (lowa = span[0].a; ; lowa = (*cvp++)[0].b + 1) {
 				bool end = cvp > &vec[idx];
 				fetch(&ft[0], ix[0], lowa, end ? span[0].b : (*cvp)[0].a - 1, ' ');
 				if (end)
 					break;
-				for (int j = 0; j < 2; j++)
+				for (j = 0; j < 2; j++)
 					fetch(&ft[j], ix[j], (*cvp)[j].a, (*cvp)[j].b, j ? '+' : '-');
 			}
 		}
@@ -660,9 +673,9 @@ static int diffreg(char *file[2])
 {
 	FILE *fp[2] = { stdin, stdin };
 	bool binary = false, differ = false;
-	int status = STATUS_SAME;
+	int status = STATUS_SAME, i;
 
-	for (int i = 0; i < 2; i++) {
+	for (i = 0; i < 2; i++) {
 		int fd = open_or_warn_stdin(file[i]);
 		if (fd == -1)
 			goto out;
@@ -688,7 +701,7 @@ static int diffreg(char *file[2])
 		const size_t sz = COMMON_BUFSIZE / 2;
 		char *const buf0 = bb_common_bufsiz1;
 		char *const buf1 = buf0 + sz;
-		int i, j;
+		int j, k;
 		i = fread(buf0, 1, sz, fp[0]);
 		j = fread(buf1, 1, sz, fp[1]);
 		if (i != j) {
@@ -697,7 +710,7 @@ static int diffreg(char *file[2])
 		}
 		if (i == 0)
 			break;
-		for (int k = 0; k < i; k++) {
+		for (k = 0; k < i; k++) {
 			if (!buf0[k] || !buf1[k])
 				binary = true;
 			if (buf0[k] != buf1[k])
@@ -771,9 +784,10 @@ static int FAST_FUNC skip_dir(const char
 static void diffdir(char *p[2], const char *s_start)
 {
 	struct dlist list[2];
+	int i;
 
 	memset(&list, 0, sizeof(list));
-	for (int i = 0; i < 2; i++) {
+	for (i = 0; i < 2; i++) {
 		/*list[i].s = list[i].e = 0; - memset did it */
 		/*list[i].dl = NULL; */
 
@@ -815,7 +829,7 @@ static void diffdir(char *p[2], const ch
 		else {
 			char *fullpath[2], *path[2]; /* if -N */
 
-			for (int i = 0; i < 2; i++) {
+			for (i = 0; i < 2; i++) {
 				if (pos == 0 || i == k) {
 					path[i] = fullpath[i] = concat_path_file(p[i], dp[i]);
 					stat(fullpath[i], &stb[i]);
@@ -883,7 +897,7 @@ static const char diff_longopts[] ALIGN1
 int diff_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 int diff_main(int argc UNUSED_PARAM, char **argv)
 {
-	int gotstdin = 0;
+	int gotstdin = 0, i;
 	char *file[2], *s_start = NULL;
 	llist_t *L_arg = NULL;
 
@@ -900,7 +914,7 @@ int diff_main(int argc UNUSED_PARAM, cha
 	while (L_arg)
 		label[!!label[0]] = llist_pop(&L_arg);
 	xfunc_error_retval = 2;
-	for (int i = 0; i < 2; i++) {
+	for (i = 0; i < 2; i++) {
 		file[i] = argv[i];
 		/* Compat: "diff file name_which_doesnt_exist" exits with 2 */
 		if (LONE_DASH(file[i])) {
diff -urpN busybox-1.16.0/miscutils/fbsplash.c busybox-1.16.0-compat/miscutils/fbsplash.c
--- busybox-1.16.0/miscutils/fbsplash.c	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-compat/miscutils/fbsplash.c	2010-02-21 01:54:07.000000000 +0100
@@ -301,7 +301,7 @@ static void fb_drawimage(void)
  */
 static void init(const char *cfg_filename)
 {
-	static const char const param_names[] ALIGN1 =
+	static const char param_names[] ALIGN1 =
 		"BAR_WIDTH\0" "BAR_HEIGHT\0"
 		"BAR_LEFT\0" "BAR_TOP\0"
 		"BAR_R\0" "BAR_G\0" "BAR_B\0"
+438 −0
Original line number Diff line number Diff line
diff -urpN busybox-1.16.0/scripts/defconfig busybox-1.16.0-defconfig/scripts/defconfig
--- busybox-1.16.0/scripts/defconfig	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-defconfig/scripts/defconfig	2010-02-21 01:53:15.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Busybox version: 1.15.0.svn
-# Fri Aug 21 00:14:11 2009
+# Busybox version: 1.16.0
+# Wed Jan 27 20:00:00 2010
 #
 CONFIG_HAVE_DOT_CONFIG=y
 
@@ -14,6 +14,8 @@ CONFIG_HAVE_DOT_CONFIG=y
 #
 # CONFIG_DESKTOP is not set
 # CONFIG_EXTRA_COMPAT is not set
+CONFIG_INCLUDE_SUSv2=y
+# CONFIG_USE_PORTABLE_CODE is not set
 CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
 # CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
 # CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
@@ -22,7 +24,7 @@ CONFIG_FEATURE_VERBOSE_USAGE=y
 CONFIG_FEATURE_COMPRESS_USAGE=y
 CONFIG_FEATURE_INSTALLER=y
 CONFIG_LOCALE_SUPPORT=y
-# CONFIG_FEATURE_ASSUME_UNICODE is not set
+CONFIG_FEATURE_ASSUME_UNICODE=y
 # CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
 CONFIG_LONG_OPTS=y
 CONFIG_FEATURE_DEVPTS=y
@@ -59,7 +61,6 @@ CONFIG_EXTRA_CFLAGS=""
 CONFIG_NO_DEBUG_LIB=y
 # CONFIG_DMALLOC is not set
 # CONFIG_EFENCE is not set
-CONFIG_INCLUDE_SUSv2=y
 
 #
 # Installation Options
@@ -120,10 +121,11 @@ CONFIG_FEATURE_CPIO_P=y
 # CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
 CONFIG_GUNZIP=y
 CONFIG_GZIP=y
+CONFIG_FEATURE_GZIP_LONG_OPTIONS=y
 CONFIG_LZOP=y
 # CONFIG_LZOP_COMPR_HIGH is not set
-# CONFIG_RPM2CPIO is not set
-# CONFIG_RPM is not set
+CONFIG_RPM2CPIO=y
+CONFIG_RPM=y
 CONFIG_TAR=y
 CONFIG_FEATURE_TAR_CREATE=y
 CONFIG_FEATURE_TAR_AUTODETECT=y
@@ -133,6 +135,7 @@ CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=
 CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
 CONFIG_FEATURE_TAR_LONG_OPTIONS=y
 CONFIG_FEATURE_TAR_UNAME_GNAME=y
+CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y
 CONFIG_UNCOMPRESS=y
 CONFIG_UNLZMA=y
 CONFIG_FEATURE_LZMA_FAST=y
@@ -148,15 +151,19 @@ CONFIG_CATV=y
 CONFIG_CHGRP=y
 CONFIG_CHMOD=y
 CONFIG_CHOWN=y
+CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y
 CONFIG_CHROOT=y
 CONFIG_CKSUM=y
 CONFIG_COMM=y
 CONFIG_CP=y
+CONFIG_FEATURE_CP_LONG_OPTIONS=y
 CONFIG_CUT=y
 CONFIG_DATE=y
 CONFIG_FEATURE_DATE_ISOFMT=y
+CONFIG_FEATURE_DATE_COMPAT=y
 CONFIG_DD=y
 CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
+CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
 CONFIG_FEATURE_DD_IBS_OBS=y
 CONFIG_DF=y
 CONFIG_FEATURE_DF_FANCY=y
@@ -271,7 +278,7 @@ CONFIG_FEATURE_AUTOWIDTH=y
 CONFIG_FEATURE_HUMAN_READABLE=y
 
 #
-# Common options for md5sum, sha1sum
+# Common options for md5sum, sha1sum, sha256sum, sha512sum
 #
 CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
 
@@ -318,9 +325,8 @@ CONFIG_AWK=y
 CONFIG_FEATURE_AWK_LIBM=y
 CONFIG_CMP=y
 CONFIG_DIFF=y
-CONFIG_FEATURE_DIFF_BINARY=y
+CONFIG_FEATURE_DIFF_LONG_OPTIONS=y
 CONFIG_FEATURE_DIFF_DIR=y
-CONFIG_FEATURE_DIFF_MINIMAL=y
 CONFIG_ED=y
 CONFIG_PATCH=y
 CONFIG_SED=y
@@ -364,6 +370,7 @@ CONFIG_FEATURE_FIND_DELETE=y
 CONFIG_FEATURE_FIND_PATH=y
 CONFIG_FEATURE_FIND_REGEX=y
 # CONFIG_FEATURE_FIND_CONTEXT is not set
+CONFIG_FEATURE_FIND_LINKS=y
 CONFIG_GREP=y
 CONFIG_FEATURE_GREP_EGREP_ALIAS=y
 CONFIG_FEATURE_GREP_FGREP_ALIAS=y
@@ -453,6 +460,7 @@ CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALRE
 # Options common to multiple modutils
 #
 # CONFIG_FEATURE_2_4_MODULES is not set
+# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
 # CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
 # CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
 # CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
@@ -467,8 +475,8 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
 #
 # Linux System Utilities
 #
-# CONFIG_ACPID is not set
-# CONFIG_FEATURE_ACPID_COMPAT is not set
+CONFIG_ACPID=y
+CONFIG_FEATURE_ACPID_COMPAT=y
 CONFIG_BLKID=y
 CONFIG_DMESG=y
 CONFIG_FEATURE_DMESG_PRETTY=y
@@ -488,12 +496,14 @@ CONFIG_FEATURE_FDISK_ADVANCED=y
 CONFIG_FINDFS=y
 CONFIG_FREERAMDISK=y
 CONFIG_FSCK_MINIX=y
+CONFIG_MKFS_EXT2=y
 CONFIG_MKFS_MINIX=y
 
 #
 # Minix filesystem support
 #
 CONFIG_FEATURE_MINIX2=y
+# CONFIG_MKFS_REISER is not set
 CONFIG_MKFS_VFAT=y
 CONFIG_GETOPT=y
 CONFIG_FEATURE_GETOPT_LONG=y
@@ -506,6 +516,8 @@ CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
 CONFIG_IPCRM=y
 CONFIG_IPCS=y
 CONFIG_LOSETUP=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
 CONFIG_MDEV=y
 CONFIG_FEATURE_MDEV_CONF=y
 CONFIG_FEATURE_MDEV_RENAME=y
@@ -518,6 +530,7 @@ CONFIG_MORE=y
 CONFIG_FEATURE_USE_TERMIOS=y
 CONFIG_VOLUMEID=y
 CONFIG_FEATURE_VOLUMEID_EXT=y
+CONFIG_FEATURE_VOLUMEID_BTRFS=y
 CONFIG_FEATURE_VOLUMEID_REISERFS=y
 CONFIG_FEATURE_VOLUMEID_FAT=y
 CONFIG_FEATURE_VOLUMEID_HFS=y
@@ -595,11 +608,12 @@ CONFIG_DEVMEM=y
 CONFIG_EJECT=y
 CONFIG_FEATURE_EJECT_SCSI=y
 CONFIG_FBSPLASH=y
-# CONFIG_FLASH_LOCK is not set
-# CONFIG_FLASH_UNLOCK is not set
-# CONFIG_FLASH_ERASEALL is not set
+CONFIG_FLASHCP=y
+CONFIG_FLASH_LOCK=y
+CONFIG_FLASH_UNLOCK=y
+CONFIG_FLASH_ERASEALL=y
 CONFIG_IONICE=y
-# CONFIG_INOTIFYD is not set
+CONFIG_INOTIFYD=y
 CONFIG_LAST=y
 # CONFIG_FEATURE_LAST_SMALL is not set
 CONFIG_FEATURE_LAST_FANCY=y
@@ -632,8 +646,8 @@ CONFIG_RUNLEVEL=y
 CONFIG_RX=y
 CONFIG_SETSID=y
 CONFIG_STRINGS=y
-# CONFIG_TASKSET is not set
-# CONFIG_FEATURE_TASKSET_FANCY is not set
+CONFIG_TASKSET=y
+CONFIG_FEATURE_TASKSET_FANCY=y
 CONFIG_TIME=y
 CONFIG_TIMEOUT=y
 CONFIG_TTYSIZE=y
@@ -658,6 +672,7 @@ CONFIG_ETHER_WAKE=y
 CONFIG_FAKEIDENTD=y
 CONFIG_FTPD=y
 CONFIG_FEATURE_FTP_WRITE=y
+CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y
 CONFIG_FTPGET=y
 CONFIG_FTPPUT=y
 CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
@@ -723,6 +738,8 @@ CONFIG_NETSTAT=y
 CONFIG_FEATURE_NETSTAT_WIDE=y
 CONFIG_FEATURE_NETSTAT_PRG=y
 CONFIG_NSLOOKUP=y
+CONFIG_NTPD=y
+CONFIG_FEATURE_NTPD_SERVER=y
 CONFIG_PING=y
 CONFIG_PING6=y
 CONFIG_FEATURE_FANCY_PING=y
@@ -734,13 +751,16 @@ CONFIG_FEATURE_TELNET_TTYPE=y
 CONFIG_FEATURE_TELNET_AUTOLOGIN=y
 CONFIG_TELNETD=y
 CONFIG_FEATURE_TELNETD_STANDALONE=y
+CONFIG_FEATURE_TELNETD_INETD_WAIT=y
 CONFIG_TFTP=y
 CONFIG_TFTPD=y
 CONFIG_FEATURE_TFTP_GET=y
 CONFIG_FEATURE_TFTP_PUT=y
 CONFIG_FEATURE_TFTP_BLOCKSIZE=y
+CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
 # CONFIG_TFTP_DEBUG is not set
 CONFIG_TRACEROUTE=y
+CONFIG_TRACEROUTE6=y
 CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
 # CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
 # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
@@ -814,6 +834,7 @@ CONFIG_FEATURE_TOP_SMP_CPU=y
 CONFIG_FEATURE_TOP_DECIMALS=y
 CONFIG_FEATURE_TOP_SMP_PROCESS=y
 CONFIG_FEATURE_TOPMEM=y
+CONFIG_FEATURE_SHOW_THREADS=y
 CONFIG_UPTIME=y
 CONFIG_WATCH=y
 
@@ -878,6 +899,7 @@ CONFIG_HUSH_CASE=y
 CONFIG_HUSH_FUNCTIONS=y
 CONFIG_HUSH_LOCAL=y
 CONFIG_HUSH_EXPORT_N=y
+CONFIG_HUSH_RANDOM_SUPPORT=y
 # CONFIG_LASH is not set
 CONFIG_MSH=y
 CONFIG_SH_MATH_SUPPORT=y
diff -urpN busybox-1.16.0/TODO_config_nommu busybox-1.16.0-defconfig/TODO_config_nommu
--- busybox-1.16.0/TODO_config_nommu	2010-01-25 01:59:38.000000000 +0100
+++ busybox-1.16.0-defconfig/TODO_config_nommu	2010-02-21 01:53:15.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Busybox version: 1.15.0.svn
-# Fri Aug 21 00:13:18 2009
+# Busybox version: 1.16.0
+# Wed Jan 27 21:01:26 2010
 #
 CONFIG_HAVE_DOT_CONFIG=y
 
@@ -14,6 +14,8 @@ CONFIG_HAVE_DOT_CONFIG=y
 #
 CONFIG_DESKTOP=y
 CONFIG_EXTRA_COMPAT=y
+CONFIG_INCLUDE_SUSv2=y
+# CONFIG_USE_PORTABLE_CODE is not set
 CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
 # CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
 # CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
@@ -59,7 +61,6 @@ CONFIG_EXTRA_CFLAGS=""
 CONFIG_NO_DEBUG_LIB=y
 # CONFIG_DMALLOC is not set
 # CONFIG_EFENCE is not set
-CONFIG_INCLUDE_SUSv2=y
 
 #
 # Installation Options
@@ -120,6 +121,7 @@ CONFIG_DPKG_DEB=y
 CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY=y
 CONFIG_GUNZIP=y
 CONFIG_GZIP=y
+CONFIG_FEATURE_GZIP_LONG_OPTIONS=y
 CONFIG_LZOP=y
 CONFIG_LZOP_COMPR_HIGH=y
 CONFIG_RPM2CPIO=y
@@ -133,6 +135,7 @@ CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=
 CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
 CONFIG_FEATURE_TAR_LONG_OPTIONS=y
 CONFIG_FEATURE_TAR_UNAME_GNAME=y
+CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y
 CONFIG_UNCOMPRESS=y
 CONFIG_UNLZMA=y
 CONFIG_FEATURE_LZMA_FAST=y
@@ -148,15 +151,19 @@ CONFIG_CATV=y
 CONFIG_CHGRP=y
 CONFIG_CHMOD=y
 CONFIG_CHOWN=y
+CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y
 CONFIG_CHROOT=y
 CONFIG_CKSUM=y
 CONFIG_COMM=y
 CONFIG_CP=y
+CONFIG_FEATURE_CP_LONG_OPTIONS=y
 CONFIG_CUT=y
 CONFIG_DATE=y
 CONFIG_FEATURE_DATE_ISOFMT=y
+CONFIG_FEATURE_DATE_COMPAT=y
 CONFIG_DD=y
 CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
+CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
 CONFIG_FEATURE_DD_IBS_OBS=y
 CONFIG_DF=y
 CONFIG_FEATURE_DF_FANCY=y
@@ -271,7 +278,7 @@ CONFIG_FEATURE_AUTOWIDTH=y
 CONFIG_FEATURE_HUMAN_READABLE=y
 
 #
-# Common options for md5sum, sha1sum
+# Common options for md5sum, sha1sum, sha256sum, sha512sum
 #
 CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
 
@@ -318,9 +325,8 @@ CONFIG_AWK=y
 CONFIG_FEATURE_AWK_LIBM=y
 CONFIG_CMP=y
 CONFIG_DIFF=y
-CONFIG_FEATURE_DIFF_BINARY=y
+CONFIG_FEATURE_DIFF_LONG_OPTIONS=y
 CONFIG_FEATURE_DIFF_DIR=y
-CONFIG_FEATURE_DIFF_MINIMAL=y
 CONFIG_ED=y
 CONFIG_PATCH=y
 CONFIG_SED=y
@@ -364,6 +370,7 @@ CONFIG_FEATURE_FIND_DELETE=y
 CONFIG_FEATURE_FIND_PATH=y
 CONFIG_FEATURE_FIND_REGEX=y
 CONFIG_FEATURE_FIND_CONTEXT=y
+CONFIG_FEATURE_FIND_LINKS=y
 CONFIG_GREP=y
 CONFIG_FEATURE_GREP_EGREP_ALIAS=y
 CONFIG_FEATURE_GREP_FGREP_ALIAS=y
@@ -453,6 +460,7 @@ CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALRE
 # Options common to multiple modutils
 #
 # CONFIG_FEATURE_2_4_MODULES is not set
+CONFIG_FEATURE_INSMOD_TRY_MMAP=y
 # CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
 # CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
 # CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
@@ -488,12 +496,14 @@ CONFIG_FEATURE_FDISK_ADVANCED=y
 CONFIG_FINDFS=y
 CONFIG_FREERAMDISK=y
 CONFIG_FSCK_MINIX=y
+CONFIG_MKFS_EXT2=y
 CONFIG_MKFS_MINIX=y
 
 #
 # Minix filesystem support
 #
 CONFIG_FEATURE_MINIX2=y
+CONFIG_MKFS_REISER=y
 CONFIG_MKFS_VFAT=y
 CONFIG_GETOPT=y
 CONFIG_FEATURE_GETOPT_LONG=y
@@ -506,6 +516,8 @@ CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
 CONFIG_IPCRM=y
 CONFIG_IPCS=y
 CONFIG_LOSETUP=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
 CONFIG_MDEV=y
 CONFIG_FEATURE_MDEV_CONF=y
 CONFIG_FEATURE_MDEV_RENAME=y
@@ -518,6 +530,7 @@ CONFIG_MORE=y
 CONFIG_FEATURE_USE_TERMIOS=y
 CONFIG_VOLUMEID=y
 CONFIG_FEATURE_VOLUMEID_EXT=y
+CONFIG_FEATURE_VOLUMEID_BTRFS=y
 CONFIG_FEATURE_VOLUMEID_REISERFS=y
 CONFIG_FEATURE_VOLUMEID_FAT=y
 CONFIG_FEATURE_VOLUMEID_HFS=y
@@ -595,6 +608,7 @@ CONFIG_DEVMEM=y
 CONFIG_EJECT=y
 CONFIG_FEATURE_EJECT_SCSI=y
 CONFIG_FBSPLASH=y
+CONFIG_FLASHCP=y
 # CONFIG_FLASH_LOCK is not set
 # CONFIG_FLASH_UNLOCK is not set
 # CONFIG_FLASH_ERASEALL is not set
@@ -638,6 +652,7 @@ CONFIG_TIME=y
 CONFIG_TIMEOUT=y
 CONFIG_TTYSIZE=y
 CONFIG_VOLNAME=y
+CONFIG_WALL=y
 CONFIG_WATCHDOG=y
 
 #
@@ -657,6 +672,7 @@ CONFIG_ETHER_WAKE=y
 CONFIG_FAKEIDENTD=y
 CONFIG_FTPD=y
 CONFIG_FEATURE_FTP_WRITE=y
+CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y
 CONFIG_FTPGET=y
 CONFIG_FTPPUT=y
 CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
@@ -722,6 +738,8 @@ CONFIG_NETSTAT=y
 CONFIG_FEATURE_NETSTAT_WIDE=y
 CONFIG_FEATURE_NETSTAT_PRG=y
 CONFIG_NSLOOKUP=y
+CONFIG_NTPD=y
+CONFIG_FEATURE_NTPD_SERVER=y
 CONFIG_PING=y
 CONFIG_PING6=y
 CONFIG_FEATURE_FANCY_PING=y
@@ -733,13 +751,16 @@ CONFIG_FEATURE_TELNET_TTYPE=y
 CONFIG_FEATURE_TELNET_AUTOLOGIN=y
 CONFIG_TELNETD=y
 CONFIG_FEATURE_TELNETD_STANDALONE=y
+CONFIG_FEATURE_TELNETD_INETD_WAIT=y
 CONFIG_TFTP=y
 CONFIG_TFTPD=y
 CONFIG_FEATURE_TFTP_GET=y
 CONFIG_FEATURE_TFTP_PUT=y
 CONFIG_FEATURE_TFTP_BLOCKSIZE=y
+CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
 CONFIG_TFTP_DEBUG=y
 CONFIG_TRACEROUTE=y
+CONFIG_TRACEROUTE6=y
 CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
 CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y
 CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
@@ -813,6 +834,7 @@ CONFIG_FEATURE_TOP_SMP_CPU=y
 CONFIG_FEATURE_TOP_DECIMALS=y
 CONFIG_FEATURE_TOP_SMP_PROCESS=y
 CONFIG_FEATURE_TOPMEM=y
+CONFIG_FEATURE_SHOW_THREADS=y
 CONFIG_UPTIME=y
 CONFIG_WATCH=y
 
@@ -881,6 +903,7 @@ CONFIG_HUSH_CASE=y
 CONFIG_HUSH_FUNCTIONS=y
 CONFIG_HUSH_LOCAL=y
 CONFIG_HUSH_EXPORT_N=y
+CONFIG_HUSH_RANDOM_SUPPORT=y
 CONFIG_LASH=y
 CONFIG_MSH=y
 CONFIG_SH_MATH_SUPPORT=y
+16 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading