From d290bbe6d9826fbcfa2e0a7624886284697ed7eb Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Fri, 29 Nov 2013 20:15:45 +0800 Subject: busybox: add busybox_git.bb recipe Add busybox_git.bb recipe so that it would be easier to hack with busybox. Set DEFAULT_PREFERENCE to "-1" in the git recipe so that we still use the busybox_1.21.1.bb recipe by default. Signed-off-by: Chen Qi Signed-off-by: Richard Purdie --- .../busybox-appletlib-dependency.patch | 37 - ...usybox-list-suid-and-non-suid-app-configs.patch | 179 ---- ...sybox-sed-fix-sed-clusternewline-testcase.patch | 262 ----- .../busybox-sulogin-empty-root-password.patch | 58 -- .../busybox-udhcpc-no_deconfig.patch | 137 --- meta/recipes-core/busybox/busybox-1.21.1/defconfig | 1020 -------------------- .../busybox/busybox-1.21.1/fail_on_no_media.patch | 31 - .../busybox/busybox-1.21.1/get_header_tar.patch | 22 - .../busybox/busybox-1.21.1/login-utilities.cfg | 13 - .../busybox-1.21.1/run-parts.in.usr-bin.patch | 29 - .../busybox/busybox-1.21.1/stat-usr-bin.patch | 21 - ...estsuite-du-du-k-works-fix-false-positive.patch | 35 - .../busybox/busybox-1.21.1/watch.in.usr-bin.patch | 29 - .../busybox/busybox-appletlib-dependency.patch | 37 + ...usybox-list-suid-and-non-suid-app-configs.patch | 179 ++++ ...sybox-sed-fix-sed-clusternewline-testcase.patch | 262 +++++ .../busybox-sulogin-empty-root-password.patch | 58 ++ .../busybox/busybox-udhcpc-no_deconfig.patch | 137 +++ meta/recipes-core/busybox/busybox/defconfig | 1020 ++++++++++++++++++++ .../busybox/busybox/fail_on_no_media.patch | 31 + .../busybox/busybox/get_header_tar.patch | 22 + .../busybox/busybox/login-utilities.cfg | 13 + .../busybox/busybox/run-parts.in.usr-bin.patch | 29 + .../busybox/busybox/stat-usr-bin.patch | 21 + ...estsuite-du-du-k-works-fix-false-positive.patch | 35 + .../busybox/busybox/watch.in.usr-bin.patch | 29 + meta/recipes-core/busybox/busybox_git.bb | 53 + 27 files changed, 1926 insertions(+), 1873 deletions(-) delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/busybox-appletlib-dependency.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/busybox-list-suid-and-non-suid-app-configs.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/busybox-sed-fix-sed-clusternewline-testcase.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/busybox-sulogin-empty-root-password.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/busybox-udhcpc-no_deconfig.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/defconfig delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/fail_on_no_media.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/get_header_tar.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/login-utilities.cfg delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/run-parts.in.usr-bin.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/stat-usr-bin.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/testsuite-du-du-k-works-fix-false-positive.patch delete mode 100644 meta/recipes-core/busybox/busybox-1.21.1/watch.in.usr-bin.patch create mode 100644 meta/recipes-core/busybox/busybox/busybox-appletlib-dependency.patch create mode 100644 meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch create mode 100644 meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch create mode 100644 meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch create mode 100644 meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch create mode 100644 meta/recipes-core/busybox/busybox/defconfig create mode 100644 meta/recipes-core/busybox/busybox/fail_on_no_media.patch create mode 100644 meta/recipes-core/busybox/busybox/get_header_tar.patch create mode 100644 meta/recipes-core/busybox/busybox/login-utilities.cfg create mode 100644 meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch create mode 100644 meta/recipes-core/busybox/busybox/stat-usr-bin.patch create mode 100644 meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch create mode 100644 meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch create mode 100644 meta/recipes-core/busybox/busybox_git.bb (limited to 'meta/recipes-core/busybox') diff --git a/meta/recipes-core/busybox/busybox-1.21.1/busybox-appletlib-dependency.patch b/meta/recipes-core/busybox/busybox-1.21.1/busybox-appletlib-dependency.patch deleted file mode 100644 index de2dbcceb1..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/busybox-appletlib-dependency.patch +++ /dev/null @@ -1,37 +0,0 @@ -Upstream-Status: Pending - -# copy commit message from OE as the patch comment: -# commit 98c24291aa165f53423c27ae033831ce0b3bb676 -# Author: Roman I Khimov -# Date: Thu Mar 26 23:03:58 2009 +0000 -# -# busybox: update appletlib dependency patch -# -# Previous version still failed from time to time on clean-start builds -# with 4 bitbake threads and '-j16'. Building busybox as sole target worked -# well. -# -# The reason is that previous version introduced a race between applets make -# processes spawned from top-level Makefile and from libbb Makefile. -# -# Fix it with high-level dependency that doesn't create races. -# -# Signed-off-by: Koen Kooi -# -# above comment added by Kevin Tian , 2010-07-06 - -Index: busybox-1.13.2/Makefile -=================================================================== ---- busybox-1.13.2.orig/Makefile 2009-03-19 15:44:37.419270265 +0300 -+++ busybox-1.13.2/Makefile 2009-03-19 15:45:57.737521296 +0300 -@@ -471,6 +471,10 @@ - util-linux/ \ - util-linux/volume_id/ \ - -+# Lib interdeps -+# libbb uses headers generated in applets -+libbb: applets -+ - endif # KBUILD_EXTMOD - - ifeq ($(dot-config),1) diff --git a/meta/recipes-core/busybox/busybox-1.21.1/busybox-list-suid-and-non-suid-app-configs.patch b/meta/recipes-core/busybox/busybox-1.21.1/busybox-list-suid-and-non-suid-app-configs.patch deleted file mode 100644 index 753a044481..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/busybox-list-suid-and-non-suid-app-configs.patch +++ /dev/null @@ -1,179 +0,0 @@ -Make busybox have the ability to list configuration items regarding suid -apps and non-suid apps separately. - -From: Bernhard Reutner-Fischer -Date: Mon, 17 Jun 2013 11:06:05 +0800 -Subject: [PATCH] busybox: list suid and non-suid app configs - -Upstream-Status: Pending - -Signed-off-by: Chen Qi - ---- - Makefile.custom | 4 ++++ - applets/busybox.mksuid | 53 ++++++++++++++++++++++++++++++++++++++++++++ - include/applets.src.h | 9 +++++++- - scripts/kconfig/confdata.c | 24 ++++++++++++++++---- - 4 files changed, 85 insertions(+), 5 deletions(-) - create mode 100644 applets/busybox.mksuid - -diff --git a/Makefile.custom b/Makefile.custom -index 6da79e6..a276d6f 100644 ---- a/Makefile.custom -+++ b/Makefile.custom -@@ -4,6 +4,10 @@ - - busybox.links: $(srctree)/applets/busybox.mkll $(objtree)/include/autoconf.h include/applets.h - $(Q)-$(SHELL) $^ >$@ -+busybox.cfg.suid: $(srctree)/applets/busybox.mksuid $(objtree)/include/autoconf.h include/applets.h -+ $(Q)-SUID="yes" $(SHELL) $^ > $@ -+busybox.cfg.nosuid: $(srctree)/applets/busybox.mksuid $(objtree)/include/autoconf.h include/applets.h -+ $(Q)-SUID="DROP" $(SHELL) $^ > $@ - - .PHONY: install - ifeq ($(CONFIG_INSTALL_APPLET_SYMLINKS),y) -diff --git a/applets/busybox.mksuid b/applets/busybox.mksuid -new file mode 100644 -index 0000000..e11a7a1 ---- /dev/null -+++ b/applets/busybox.mksuid -@@ -0,0 +1,53 @@ -+#!/bin/sh -+# Make list of configuration variables regarding suid handling -+ -+# input $1: full path to autoconf.h -+# input $2: full path to applets.h -+# input $3: full path to .config -+# output (stdout): list of CONFIG_ that do or may require suid -+ -+# If the environment variable SUID is not set or set to DROP, -+# lists all config options that do not require suid permissions. -+# Otherwise, lists all config options for applets that DO or MAY require -+# suid permissions. -+ -+# Maintainer: Bernhard Reutner-Fischer -+ -+export LC_ALL=POSIX -+export LC_CTYPE=POSIX -+ -+CONFIG_H=${1:-include/autoconf.h} -+APPLETS_H=${2:-include/applets.h} -+DOT_CONFIG=${3:-.config} -+ -+case ${SUID:-DROP} in -+ [dD][rR][oO][pP]) USE="DROP" ;; -+ *) USE="suid" ;; -+esac -+ -+$HOSTCC -E -DMAKE_SUID -include $CONFIG_H $APPLETS_H | -+ awk -v USE=${USE} ' -+ /^SUID[ \t]/{ -+ if (USE == "DROP") { -+ if ($2 != "BB_SUID_DROP") next -+ } else { -+ if ($2 == "BB_SUID_DROP") next -+ } -+ cfg = $NF -+ gsub("\"", "", cfg) -+ cfg = substr(cfg, 8) -+ s[i++] = "CONFIG_" cfg -+ s[i++] = "CONFIG_FEATURE_" cfg "_.*" -+ } -+ END{ -+ while (getline < ARGV[2]) { -+ for (j in s) { -+ if ($0 ~ "^" s[j] "=y$") { -+ sub(/=.*/, "") -+ print -+ if (s[j] !~ /\*$/) delete s[j] # can drop this applet now -+ } -+ } -+ } -+ } -+' - $DOT_CONFIG -diff --git a/include/applets.src.h b/include/applets.src.h -index 02b995b..8386c84 100644 ---- a/include/applets.src.h -+++ b/include/applets.src.h -@@ -52,6 +52,12 @@ s - suid type: - # define APPLET_NOEXEC(name,main,l,s,name2) LINK l name - # define APPLET_NOFORK(name,main,l,s,name2) LINK l name - -+#elif defined(MAKE_SUID) -+# define APPLET(name,l,s) SUID s l name -+# define APPLET_ODDNAME(name,main,l,s,name2) SUID s l name -+# define APPLET_NOEXEC(name,main,l,s,name2) SUID s l name -+# define APPLET_NOFORK(name,main,l,s,name2) SUID s l name -+ - #else - static struct bb_applet applets[] = { /* name, main, location, need_suid */ - # define APPLET(name,l,s) { #name, #name, l, s }, -@@ -414,7 +420,8 @@ IF_YES(APPLET_NOFORK(yes, yes, BB_DIR_USR_BIN, BB_SUID_DROP, yes)) - IF_GUNZIP(APPLET_ODDNAME(zcat, gunzip, BB_DIR_BIN, BB_SUID_DROP, zcat)) - IF_ZCIP(APPLET(zcip, BB_DIR_SBIN, BB_SUID_DROP)) - --#if !defined(PROTOTYPES) && !defined(NAME_MAIN_CNAME) && !defined(MAKE_USAGE) -+#if !defined(PROTOTYPES) && !defined(NAME_MAIN_CNAME) && !defined(MAKE_USAGE) \ -+ && !defined(MAKE_LINKS) && !defined(MAKE_SUID) - }; - #endif - -diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c -index bd2d70e..303df0b 100644 ---- a/scripts/kconfig/confdata.c -+++ b/scripts/kconfig/confdata.c -@@ -474,7 +474,11 @@ int conf_write(const char *name) - fprintf(out_h, "#define CONFIG_%s 1\n", sym->name); - /* bbox */ - fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); -- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#ifdef MAKE_SUID\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); -+ fprintf(out_h, "#else\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#endif\n"); - fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); - } - break; -@@ -506,7 +510,11 @@ int conf_write(const char *name) - fputs("\"\n", out_h); - /* bbox */ - fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); -- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#ifdef MAKE_SUID\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); -+ fprintf(out_h, "#else\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#endif\n"); - fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); - } - break; -@@ -518,7 +526,11 @@ int conf_write(const char *name) - fprintf(out_h, "#define CONFIG_%s 0x%s\n", sym->name, str); - /* bbox */ - fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); -- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#ifdef MAKE_SUID\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); -+ fprintf(out_h, "#else\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#endif\n"); - fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); - } - break; -@@ -532,7 +544,11 @@ int conf_write(const char *name) - fprintf(out_h, "#define CONFIG_%s %s\n", sym->name, str); - /* bbox */ - fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); -- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#ifdef MAKE_SUID\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); -+ fprintf(out_h, "#else\n"); -+ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); -+ fprintf(out_h, "#endif\n"); - fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); - } - break; --- -1.7.9.5 - diff --git a/meta/recipes-core/busybox/busybox-1.21.1/busybox-sed-fix-sed-clusternewline-testcase.patch b/meta/recipes-core/busybox/busybox-1.21.1/busybox-sed-fix-sed-clusternewline-testcase.patch deleted file mode 100644 index 1894037422..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/busybox-sed-fix-sed-clusternewline-testcase.patch +++ /dev/null @@ -1,262 +0,0 @@ -From 6394bcf17925715db042cfb24f5886b1bed1dfc9 Mon Sep 17 00:00:00 2001 -From: Jackie Huang -Date: Thu, 31 Oct 2013 14:36:31 +0800 -Subject: [PATCH] sed: fix "sed clusternewline" and "autoinsert newline" testcase - -Upstream-Status: Backport [busybox.net] - -Signed-off-by: Jackie Huang ---- - editors/sed.c | 135 ++++++++++++++++++++++++++-------------------------- - testsuite/sed.tests | 4 -- - 2 files changed, 68 insertions(+), 71 deletions(-) - -diff --git a/editors/sed.c b/editors/sed.c -index f8ca5d3..98478b4 100644 ---- a/editors/sed.c -+++ b/editors/sed.c -@@ -845,37 +845,79 @@ static void append(char *s) - llist_add_to_end(&G.append_head, xstrdup(s)); - } - --static void flush_append(void) -+/* Output line of text. */ -+/* Note: -+ * The tricks with NO_EOL_CHAR and last_puts_char are there to emulate gnu sed. -+ * Without them, we had this: -+ * echo -n thingy >z1 -+ * echo -n again >z2 -+ * >znull -+ * sed "s/i/z/" z1 z2 znull | hexdump -vC -+ * output: -+ * gnu sed 4.1.5: -+ * 00000000 74 68 7a 6e 67 79 0a 61 67 61 7a 6e |thzngy.agazn| -+ * bbox: -+ * 00000000 74 68 7a 6e 67 79 61 67 61 7a 6e |thzngyagazn| -+ */ -+enum { -+ NO_EOL_CHAR = 1, -+ LAST_IS_NUL = 2, -+}; -+static void puts_maybe_newline(char *s, FILE *file, char *last_puts_char, char last_gets_char) -+{ -+ char lpc = *last_puts_char; -+ -+ /* Need to insert a '\n' between two files because first file's -+ * last line wasn't terminated? */ -+ if (lpc != '\n' && lpc != '\0') { -+ fputc('\n', file); -+ lpc = '\n'; -+ } -+ fputs(s, file); -+ -+ /* 'x' - just something which is not '\n', '\0' or NO_EOL_CHAR */ -+ if (s[0]) -+ lpc = 'x'; -+ -+ /* had trailing '\0' and it was last char of file? */ -+ if (last_gets_char == LAST_IS_NUL) { -+ fputc('\0', file); -+ lpc = 'x'; /* */ -+ } else -+ /* had trailing '\n' or '\0'? */ -+ if (last_gets_char != NO_EOL_CHAR) { -+ fputc(last_gets_char, file); -+ lpc = last_gets_char; -+ } -+ -+ if (ferror(file)) { -+ xfunc_error_retval = 4; /* It's what gnu sed exits with... */ -+ bb_error_msg_and_die(bb_msg_write_error); -+ } -+ *last_puts_char = lpc; -+} -+ -+static void flush_append(char *last_puts_char, char last_gets_char) - { - char *data; - - /* Output appended lines. */ - while ((data = (char *)llist_pop(&G.append_head))) { -- fprintf(G.nonstdout, "%s\n", data); -+ puts_maybe_newline(data, G.nonstdout, last_puts_char, last_gets_char); - free(data); - } - } - --static void add_input_file(FILE *file) --{ -- G.input_file_list = xrealloc_vector(G.input_file_list, 2, G.input_file_count); -- G.input_file_list[G.input_file_count++] = file; --} -- - /* Get next line of input from G.input_file_list, flushing append buffer and - * noting if we ran out of files without a newline on the last line we read. - */ --enum { -- NO_EOL_CHAR = 1, -- LAST_IS_NUL = 2, --}; --static char *get_next_line(char *gets_char) -+static char *get_next_line(char *gets_char, char *last_puts_char, char last_gets_char) - { - char *temp = NULL; - int len; - char gc; - -- flush_append(); -+ flush_append(last_puts_char, last_gets_char); - - /* will be returned if last line in the file - * doesn't end with either '\n' or '\0' */ -@@ -919,54 +961,6 @@ static char *get_next_line(char *gets_char) - return temp; - } - --/* Output line of text. */ --/* Note: -- * The tricks with NO_EOL_CHAR and last_puts_char are there to emulate gnu sed. -- * Without them, we had this: -- * echo -n thingy >z1 -- * echo -n again >z2 -- * >znull -- * sed "s/i/z/" z1 z2 znull | hexdump -vC -- * output: -- * gnu sed 4.1.5: -- * 00000000 74 68 7a 6e 67 79 0a 61 67 61 7a 6e |thzngy.agazn| -- * bbox: -- * 00000000 74 68 7a 6e 67 79 61 67 61 7a 6e |thzngyagazn| -- */ --static void puts_maybe_newline(char *s, FILE *file, char *last_puts_char, char last_gets_char) --{ -- char lpc = *last_puts_char; -- -- /* Need to insert a '\n' between two files because first file's -- * last line wasn't terminated? */ -- if (lpc != '\n' && lpc != '\0') { -- fputc('\n', file); -- lpc = '\n'; -- } -- fputs(s, file); -- -- /* 'x' - just something which is not '\n', '\0' or NO_EOL_CHAR */ -- if (s[0]) -- lpc = 'x'; -- -- /* had trailing '\0' and it was last char of file? */ -- if (last_gets_char == LAST_IS_NUL) { -- fputc('\0', file); -- lpc = 'x'; /* */ -- } else -- /* had trailing '\n' or '\0'? */ -- if (last_gets_char != NO_EOL_CHAR) { -- fputc(last_gets_char, file); -- lpc = last_gets_char; -- } -- -- if (ferror(file)) { -- xfunc_error_retval = 4; /* It's what gnu sed exits with... */ -- bb_error_msg_and_die(bb_msg_write_error); -- } -- *last_puts_char = lpc; --} -- - #define sed_puts(s, n) (puts_maybe_newline(s, G.nonstdout, &last_puts_char, n)) - - static int beg_match(sed_cmd_t *sed_cmd, const char *pattern_space) -@@ -989,7 +983,7 @@ static void process_files(void) - int substituted; - - /* Prime the pump */ -- next_line = get_next_line(&next_gets_char); -+ next_line = get_next_line(&next_gets_char, &last_puts_char, '\n' /*last_gets_char*/); - - /* Go through every line in each file */ - again: -@@ -1003,7 +997,7 @@ static void process_files(void) - - /* Read one line in advance so we can act on the last line, - * the '$' address */ -- next_line = get_next_line(&next_gets_char); -+ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); - linenum++; - - /* For every line, go through all the commands */ -@@ -1176,6 +1170,7 @@ static void process_files(void) - /* Append line to linked list to be printed later */ - case 'a': - append(sed_cmd->string); -+ last_gets_char = '\n'; - break; - - /* Insert text before this line */ -@@ -1222,7 +1217,7 @@ static void process_files(void) - free(pattern_space); - pattern_space = next_line; - last_gets_char = next_gets_char; -- next_line = get_next_line(&next_gets_char); -+ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); - substituted = 0; - linenum++; - break; -@@ -1258,7 +1253,7 @@ static void process_files(void) - pattern_space[len] = '\n'; - strcpy(pattern_space + len+1, next_line); - last_gets_char = next_gets_char; -- next_line = get_next_line(&next_gets_char); -+ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); - linenum++; - break; - } -@@ -1362,7 +1357,7 @@ static void process_files(void) - - /* Delete and such jump here. */ - discard_line: -- flush_append(); -+ flush_append(&last_puts_char, last_gets_char); - free(pattern_space); - - goto again; -@@ -1403,6 +1398,12 @@ static void add_cmd_block(char *cmdstr) - free(sv); - } - -+static void add_input_file(FILE *file) -+{ -+ G.input_file_list = xrealloc_vector(G.input_file_list, 2, G.input_file_count); -+ G.input_file_list[G.input_file_count++] = file; -+} -+ - int sed_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; - int sed_main(int argc UNUSED_PARAM, char **argv) - { -diff --git a/testsuite/sed.tests b/testsuite/sed.tests -index 468565f..e26483c 100755 ---- a/testsuite/sed.tests -+++ b/testsuite/sed.tests -@@ -135,10 +135,8 @@ testing "sed empty file plus cat" "sed -e 's/nohit//' input -" "one\ntwo" \ - "" "one\ntwo" - testing "sed cat plus empty file" "sed -e 's/nohit//' input -" "one\ntwo" \ - "one\ntwo" "" --test x"$SKIP_KNOWN_BUGS" = x"" && { - testing "sed append autoinserts newline" "sed -e '/woot/a woo' -" \ - "woot\nwoo\n" "" "woot" --} - testing "sed insert doesn't autoinsert newline" "sed -e '/woot/i woo' -" \ - "woo\nwoot" "" "woot" - testing "sed print autoinsert newlines" "sed -e 'p' -" "one\none" "" "one" -@@ -154,11 +152,9 @@ testing "sed selective matches insert newline" \ - testing "sed selective matches noinsert newline" \ - "sed -ne 's/woo/bang/p' input -" "a bang\nb bang" "a woo\nb woo" \ - "c no\nd no" --test x"$SKIP_KNOWN_BUGS" = x"" && { - testing "sed clusternewline" \ - "sed -e '/one/a 111' -e '/two/i 222' -e p input -" \ - "one\none\n111\n222\ntwo\ntwo" "one" "two" --} - testing "sed subst+write" \ - "sed -e 's/i/z/' -e 'woutputw' input -; $ECHO -n X; cat outputw" \ - "thzngy\nagaznXthzngy\nagazn" "thingy" "again" --- -1.8.3 - diff --git a/meta/recipes-core/busybox/busybox-1.21.1/busybox-sulogin-empty-root-password.patch b/meta/recipes-core/busybox/busybox-1.21.1/busybox-sulogin-empty-root-password.patch deleted file mode 100644 index baad298a3f..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/busybox-sulogin-empty-root-password.patch +++ /dev/null @@ -1,58 +0,0 @@ -Upstream-Status: Backport -Signed-off-by: Jonathan Liu - -From b6dc13c2d3754704b1bf5af4e6b957b48585102f Mon Sep 17 00:00:00 2001 -From: Jonathan Liu -Date: Tue, 21 May 2013 17:01:55 +0200 -Subject: [PATCH] sulogin: allow system maintenance login if root password is - empty - -The current password checking is unable to distinguish between the user -entering an empty password or pressing Control-D. As a result, an empty -password always results in normal startup. - -We modify bb_ask to return NULL if Control-D is pressed without entering -a password. The sulogin applet is then modified to only proceed to -normal startup if bb_ask returns NULL. This covers EOF with no password, -interrupt by timeout and ^C. - -Signed-off-by: Jonathan Liu -Signed-off-by: Denys Vlasenko ---- - libbb/bb_askpass.c | 4 +++- - loginutils/sulogin.c | 4 ++-- - 2 files changed, 5 insertions(+), 3 deletions(-) - -diff --git a/libbb/bb_askpass.c b/libbb/bb_askpass.c -index fe2b506..77c1bcd 100644 ---- a/libbb/bb_askpass.c -+++ b/libbb/bb_askpass.c -@@ -65,7 +65,9 @@ char* FAST_FUNC bb_ask(const int fd, int timeout, const char *prompt) - i = 0; - while (1) { - int r = read(fd, &ret[i], 1); -- if (r < 0) { -+ if ((i == 0 && r == 0) /* EOF (^D) with no password */ -+ || r < 0 -+ ) { - /* read is interrupted by timeout or ^C */ - ret = NULL; - break; -diff --git a/loginutils/sulogin.c b/loginutils/sulogin.c -index f79802a..65e6384 100644 ---- a/loginutils/sulogin.c -+++ b/loginutils/sulogin.c -@@ -83,8 +83,8 @@ int sulogin_main(int argc UNUSED_PARAM, char **argv) - cp = bb_ask(STDIN_FILENO, timeout, - "Give root password for system maintenance\n" - "(or type Control-D for normal startup):"); -- -- if (!cp || !*cp) { -+ if (!cp) { -+ /* ^D, ^C, timeout, or read error */ - bb_info_msg("Normal startup"); - return 0; - } --- -1.8.2.3 - diff --git a/meta/recipes-core/busybox/busybox-1.21.1/busybox-udhcpc-no_deconfig.patch b/meta/recipes-core/busybox/busybox-1.21.1/busybox-udhcpc-no_deconfig.patch deleted file mode 100644 index 4c9ce3b711..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/busybox-udhcpc-no_deconfig.patch +++ /dev/null @@ -1,137 +0,0 @@ -From 53626cd06a3ef05ed847daea802ef0aa9661caa7 Mon Sep 17 00:00:00 2001 -From: Anders Darander -Date: Thu, 3 Nov 2011 08:51:31 +0100 -Subject: [PATCH] busybox-udhcpc-no_deconfig.patch - -Upstream-Status: Pending - -Add a new option -D to the udhcpc client that allows for -dhcp renewal to occur without having to down the interface -in the process. - -Signed-off-by: Greg Moffatt - -Updated to latest Busybox 1.17.3 - -Signed-off-by: Mark Hatle - -Updated to Busybox 1.18.4 -option spec is changed - -Signed-off-by: Qing He - -Updated to Busybox 1.19.3 - -Signed-off-by: Anders Darander - -Fixed options -b, -a and -P. - -Signed-off-by: Andreas Oberritter ---- - networking/udhcp/dhcpc.c | 29 +++++++++++++++++++++-------- - 1 files changed, 21 insertions(+), 8 deletions(-) - -Index: busybox-1.20.2/networking/udhcp/dhcpc.c -=================================================================== ---- busybox-1.20.2.orig/networking/udhcp/dhcpc.c -+++ busybox-1.20.2/networking/udhcp/dhcpc.c -@@ -29,6 +29,9 @@ - #include - #include - -+/* option whether to down the interface when reconfiguring */ -+static int allow_deconfig = 1; -+ - /* "struct client_config_t client_config" is in bb_common_bufsiz1 */ - - -@@ -81,8 +84,9 @@ enum { - OPT_x = 1 << 18, - OPT_f = 1 << 19, - OPT_B = 1 << 20, -+ OPT_D = 1 << 21, - /* The rest has variable bit positions, need to be clever */ -- OPTBIT_B = 20, -+ OPTBIT_D = 21, - USE_FOR_MMU( OPTBIT_b,) - IF_FEATURE_UDHCPC_ARPING(OPTBIT_a,) - IF_FEATURE_UDHCP_PORT( OPTBIT_P,) -@@ -1040,7 +1044,8 @@ static void perform_renew(void) - state = RENEW_REQUESTED; - break; - case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - case REQUESTING: - case RELEASED: - change_listen_mode(LISTEN_RAW); -@@ -1064,7 +1069,8 @@ static void perform_release(uint32_t ser - bb_info_msg("Unicasting a release of %s to %s", - inet_ntoa(temp_addr), buffer); - send_release(server_addr, requested_ip); /* unicast */ -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - } - bb_info_msg("Entering released state"); - -@@ -1215,7 +1221,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c - /* O,x: list; -T,-t,-A take numeric param */ - opt_complementary = "O::x::T+:t+:A+" IF_UDHCP_VERBOSE(":vv") ; - IF_LONG_OPTS(applet_long_options = udhcpc_longopts;) -- opt = getopt32(argv, "CV:H:h:F:i:np:qRr:s:T:t:SA:O:ox:fB" -+ opt = getopt32(argv, "CV:H:h:F:i:np:qRr:s:T:t:SA:O:ox:fBD" - USE_FOR_MMU("b") - IF_FEATURE_UDHCPC_ARPING("a") - IF_FEATURE_UDHCP_PORT("P:") -@@ -1316,6 +1322,9 @@ int udhcpc_main(int argc UNUSED_PARAM, c - logmode |= LOGMODE_SYSLOG; - } - -+ if (opt & OPT_D) -+ allow_deconfig = 0; -+ - /* Make sure fd 0,1,2 are open */ - bb_sanitize_stdio(); - /* Equivalent of doing a fflush after every \n */ -@@ -1330,7 +1339,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c - srand(monotonic_us()); - - state = INIT_SELECTING; -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - change_listen_mode(LISTEN_RAW); - packet_num = 0; - timeout = 0; -@@ -1484,7 +1494,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c - } - /* Timed out, enter init state */ - bb_info_msg("Lease lost, entering init state"); -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - state = INIT_SELECTING; - client_config.first_secs = 0; /* make secs field count from 0 */ - /*timeout = 0; - already is */ -@@ -1667,7 +1678,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c - send_decline(/*xid,*/ server_addr, packet.yiaddr); - - if (state != REQUESTING) -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - change_listen_mode(LISTEN_RAW); - state = INIT_SELECTING; - client_config.first_secs = 0; /* make secs field count from 0 */ -@@ -1711,7 +1723,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c - bb_info_msg("Received DHCP NAK"); - udhcp_run_script(&packet, "nak"); - if (state != REQUESTING) -- udhcp_run_script(NULL, "deconfig"); -+ if (allow_deconfig) -+ udhcp_run_script(NULL, "deconfig"); - change_listen_mode(LISTEN_RAW); - sleep(3); /* avoid excessive network traffic */ - state = INIT_SELECTING; diff --git a/meta/recipes-core/busybox/busybox-1.21.1/defconfig b/meta/recipes-core/busybox/busybox-1.21.1/defconfig deleted file mode 100644 index f0e63c2a1f..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/defconfig +++ /dev/null @@ -1,1020 +0,0 @@ -# -# Automatically generated make config: don't edit -# Busybox version: 1.20.2 -# Mon Aug 20 17:01:45 2012 -# -CONFIG_HAVE_DOT_CONFIG=y - -# -# Busybox Settings -# - -# -# General Configuration -# -# CONFIG_DESKTOP is not set -# CONFIG_EXTRA_COMPAT is not set -# CONFIG_INCLUDE_SUSv2 is not set -# CONFIG_USE_PORTABLE_CODE is not set -CONFIG_PLATFORM_LINUX=y -CONFIG_FEATURE_BUFFERS_USE_MALLOC=y -# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set -# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set -CONFIG_SHOW_USAGE=y -# CONFIG_FEATURE_VERBOSE_USAGE is not set -CONFIG_FEATURE_COMPRESS_USAGE=y -# CONFIG_FEATURE_INSTALLER is not set -# CONFIG_INSTALL_NO_USR is not set -# CONFIG_LOCALE_SUPPORT is not set -# CONFIG_UNICODE_SUPPORT is not set -# CONFIG_UNICODE_USING_LOCALE is not set -# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -CONFIG_SUBST_WCHAR=0 -CONFIG_LAST_SUPPORTED_WCHAR=0 -# CONFIG_UNICODE_COMBINING_WCHARS is not set -# CONFIG_UNICODE_WIDE_WCHARS is not set -# CONFIG_UNICODE_BIDI_SUPPORT is not set -# CONFIG_UNICODE_NEUTRAL_TABLE is not set -# CONFIG_UNICODE_PRESERVE_BROKEN is not set -CONFIG_LONG_OPTS=y -CONFIG_FEATURE_DEVPTS=y -# CONFIG_FEATURE_CLEAN_UP is not set -CONFIG_FEATURE_UTMP=y -# CONFIG_FEATURE_WTMP is not set -CONFIG_FEATURE_PIDFILE=y -CONFIG_FEATURE_SUID=y -CONFIG_FEATURE_SUID_CONFIG=y -CONFIG_FEATURE_SUID_CONFIG_QUIET=y -# CONFIG_SELINUX is not set -# CONFIG_FEATURE_PREFER_APPLETS is not set -CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" -CONFIG_FEATURE_SYSLOG=y -CONFIG_FEATURE_HAVE_RPC=y - -# -# Build Options -# -# CONFIG_STATIC is not set -# CONFIG_PIE is not set -# CONFIG_NOMMU is not set -# CONFIG_BUILD_LIBBUSYBOX is not set -# CONFIG_FEATURE_INDIVIDUAL is not set -# CONFIG_FEATURE_SHARED_BUSYBOX is not set -CONFIG_LFS=y -# CONFIG_CROSS_COMPILER_PREFIX is not set -CONFIG_SYSROOT="" -# CONFIG_EXTRA_CFLAGS is not set -CONFIG_EXTRA_LDFLAGS="" -CONFIG_EXTRA_LDLIBS="" - -# -# Debugging Options -# -# CONFIG_DEBUG is not set -# CONFIG_DEBUG_PESSIMIZE is not set -# CONFIG_WERROR is not set -CONFIG_NO_DEBUG_LIB=y -# CONFIG_DMALLOC is not set -# CONFIG_EFENCE is not set - -# -# Installation Options ("make install" behavior) -# -CONFIG_INSTALL_APPLET_SYMLINKS=y -# CONFIG_INSTALL_APPLET_HARDLINKS is not set -# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set -# CONFIG_INSTALL_APPLET_DONT is not set -# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set -# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set -# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set -CONFIG_PREFIX="./_install" - -# -# Busybox Library Tuning -# -CONFIG_FEATURE_SYSTEMD=y -CONFIG_FEATURE_RTMINMAX=y -CONFIG_PASSWORD_MINLEN=6 -CONFIG_MD5_SMALL=1 -CONFIG_FEATURE_FAST_TOP=y -# CONFIG_FEATURE_ETC_NETWORKS is not set -CONFIG_FEATURE_USE_TERMIOS=y -CONFIG_FEATURE_EDITING=y -CONFIG_FEATURE_EDITING_MAX_LEN=1024 -# CONFIG_FEATURE_EDITING_VI is not set -CONFIG_FEATURE_EDITING_HISTORY=15 -CONFIG_FEATURE_EDITING_SAVEHISTORY=y -# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set -# CONFIG_FEATURE_REVERSE_SEARCH is not set -CONFIG_FEATURE_TAB_COMPLETION=y -CONFIG_FEATURE_USERNAME_COMPLETION=y -CONFIG_FEATURE_EDITING_FANCY_PROMPT=y -# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set -CONFIG_FEATURE_NON_POSIX_CP=y -# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set -CONFIG_FEATURE_COPYBUF_KB=4 -CONFIG_FEATURE_SKIP_ROOTFS=y -CONFIG_MONOTONIC_SYSCALL=y -CONFIG_IOCTL_HEX2STR_ERROR=y -CONFIG_FEATURE_HWIB=y - -# -# Applets -# - -# -# Archival Utilities -# -# CONFIG_FEATURE_SEAMLESS_XZ is not set -CONFIG_FEATURE_SEAMLESS_LZMA=y -CONFIG_FEATURE_SEAMLESS_BZ2=y -CONFIG_FEATURE_SEAMLESS_GZ=y -CONFIG_FEATURE_SEAMLESS_Z=y -CONFIG_AR=y -# CONFIG_FEATURE_AR_LONG_FILENAMES is not set -# CONFIG_FEATURE_AR_CREATE is not set -CONFIG_BUNZIP2=y -# CONFIG_BZIP2 is not set -CONFIG_CPIO=y -# CONFIG_FEATURE_CPIO_O is not set -# CONFIG_FEATURE_CPIO_P is not set -# CONFIG_DPKG is not set -# CONFIG_DPKG_DEB is not set -# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set -CONFIG_GUNZIP=y -CONFIG_GZIP=y -# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set -CONFIG_GZIP_FAST=0 -# CONFIG_LZOP is not set -# CONFIG_LZOP_COMPR_HIGH is not set -# CONFIG_RPM2CPIO is not set -# CONFIG_RPM is not set -CONFIG_TAR=y -CONFIG_FEATURE_TAR_CREATE=y -CONFIG_FEATURE_TAR_AUTODETECT=y -CONFIG_FEATURE_TAR_FROM=y -CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y -# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set -CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y -# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set -# CONFIG_FEATURE_TAR_TO_COMMAND is not set -# CONFIG_FEATURE_TAR_UNAME_GNAME is not set -# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set -# CONFIG_FEATURE_TAR_SELINUX is not set -# CONFIG_UNCOMPRESS is not set -# CONFIG_UNLZMA is not set -# CONFIG_FEATURE_LZMA_FAST is not set -# CONFIG_LZMA is not set -# CONFIG_UNXZ is not set -# CONFIG_XZ is not set -CONFIG_UNZIP=y - -# -# Coreutils -# -CONFIG_BASENAME=y -CONFIG_CAT=y -CONFIG_DATE=y -# CONFIG_FEATURE_DATE_ISOFMT is not set -# CONFIG_FEATURE_DATE_NANO is not set -CONFIG_FEATURE_DATE_COMPAT=y -# CONFIG_HOSTID is not set -CONFIG_ID=y -CONFIG_GROUPS=y -CONFIG_TEST=y -CONFIG_FEATURE_TEST_64=y -CONFIG_TOUCH=y -CONFIG_FEATURE_TOUCH_SUSV3=y -CONFIG_TR=y -CONFIG_FEATURE_TR_CLASSES=y -# CONFIG_FEATURE_TR_EQUIV is not set -# CONFIG_BASE64 is not set -CONFIG_WHO=y -CONFIG_USERS=y -# CONFIG_CAL is not set -# CONFIG_CATV is not set -CONFIG_CHGRP=y -CONFIG_CHMOD=y -CONFIG_CHOWN=y -# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set -CONFIG_CHROOT=y -# CONFIG_CKSUM is not set -# CONFIG_COMM is not set -CONFIG_CP=y -# CONFIG_FEATURE_CP_LONG_OPTIONS is not set -CONFIG_CUT=y -CONFIG_DD=y -CONFIG_FEATURE_DD_SIGNAL_HANDLING=y -# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set -# CONFIG_FEATURE_DD_IBS_OBS is not set -CONFIG_DF=y -# CONFIG_FEATURE_DF_FANCY is not set -CONFIG_DIRNAME=y -# CONFIG_DOS2UNIX is not set -# CONFIG_UNIX2DOS is not set -CONFIG_DU=y -CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y -CONFIG_ECHO=y -CONFIG_FEATURE_FANCY_ECHO=y -CONFIG_ENV=y -CONFIG_FEATURE_ENV_LONG_OPTIONS=y -# CONFIG_EXPAND is not set -# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set -CONFIG_EXPR=y -CONFIG_EXPR_MATH_SUPPORT_64=y -CONFIG_FALSE=y -# CONFIG_FOLD is not set -# CONFIG_FSYNC is not set -CONFIG_HEAD=y -# CONFIG_FEATURE_FANCY_HEAD is not set -# CONFIG_INSTALL is not set -# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set -CONFIG_LN=y -CONFIG_LOGNAME=y -CONFIG_LS=y -CONFIG_FEATURE_LS_FILETYPES=y -CONFIG_FEATURE_LS_FOLLOWLINKS=y -CONFIG_FEATURE_LS_RECURSIVE=y -CONFIG_FEATURE_LS_SORTFILES=y -CONFIG_FEATURE_LS_TIMESTAMPS=y -CONFIG_FEATURE_LS_USERNAME=y -CONFIG_FEATURE_LS_COLOR=y -# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set -CONFIG_MD5SUM=y -CONFIG_MKDIR=y -CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y -CONFIG_MKFIFO=y -CONFIG_MKNOD=y -CONFIG_MV=y -# CONFIG_FEATURE_MV_LONG_OPTIONS is not set -# CONFIG_NICE is not set -CONFIG_NOHUP=y -CONFIG_OD=y -# CONFIG_PRINTENV is not set -CONFIG_PRINTF=y -CONFIG_PWD=y -CONFIG_READLINK=y -CONFIG_FEATURE_READLINK_FOLLOW=y -CONFIG_REALPATH=y -CONFIG_RM=y -CONFIG_RMDIR=y -# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set -CONFIG_SEQ=y -# CONFIG_SHA1SUM is not set -# CONFIG_SHA256SUM is not set -# CONFIG_SHA512SUM is not set -CONFIG_SLEEP=y -CONFIG_FEATURE_FANCY_SLEEP=y -# CONFIG_FEATURE_FLOAT_SLEEP is not set -CONFIG_SORT=y -CONFIG_FEATURE_SORT_BIG=y -# CONFIG_SPLIT is not set -# CONFIG_FEATURE_SPLIT_FANCY is not set -CONFIG_STAT=y -CONFIG_FEATURE_STAT_FORMAT=y -CONFIG_STTY=y -# CONFIG_SUM is not set -CONFIG_SYNC=y -# CONFIG_TAC is not set -CONFIG_TAIL=y -CONFIG_FEATURE_FANCY_TAIL=y -CONFIG_TEE=y -# CONFIG_FEATURE_TEE_USE_BLOCK_IO is not set -CONFIG_TRUE=y -CONFIG_TTY=y -CONFIG_UNAME=y -# CONFIG_UNEXPAND is not set -# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set -CONFIG_UNIQ=y -CONFIG_USLEEP=y -# CONFIG_UUDECODE is not set -# CONFIG_UUENCODE is not set -CONFIG_WC=y -# CONFIG_FEATURE_WC_LARGE is not set -CONFIG_WHOAMI=y -CONFIG_YES=y - -# -# Common options for cp and mv -# -# CONFIG_FEATURE_PRESERVE_HARDLINKS is not set - -# -# Common options for ls, more and telnet -# -CONFIG_FEATURE_AUTOWIDTH=y - -# -# Common options for df, du, ls -# -CONFIG_FEATURE_HUMAN_READABLE=y - -# -# Common options for md5sum, sha1sum, sha256sum, sha512sum -# -CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y - -# -# Console Utilities -# -CONFIG_CHVT=y -# CONFIG_FGCONSOLE is not set -CONFIG_CLEAR=y -CONFIG_DEALLOCVT=y -CONFIG_DUMPKMAP=y -# CONFIG_KBD_MODE is not set -CONFIG_LOADFONT=y -CONFIG_LOADKMAP=y -CONFIG_OPENVT=y -CONFIG_RESET=y -# CONFIG_RESIZE is not set -# CONFIG_FEATURE_RESIZE_PRINT is not set -CONFIG_SETCONSOLE=y -# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set -# CONFIG_SETFONT is not set -# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set -CONFIG_DEFAULT_SETFONT_DIR="" -# CONFIG_SETKEYCODES is not set -# CONFIG_SETLOGCONS is not set -# CONFIG_SHOWKEY is not set - -# -# Common options for loadfont and setfont -# -# CONFIG_FEATURE_LOADFONT_PSF2 is not set -# CONFIG_FEATURE_LOADFONT_RAW is not set - -# -# Debian Utilities -# -CONFIG_MKTEMP=y -# CONFIG_PIPE_PROGRESS is not set -CONFIG_RUN_PARTS=y -CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y -# CONFIG_FEATURE_RUN_PARTS_FANCY is not set -CONFIG_START_STOP_DAEMON=y -CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y -CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y -CONFIG_WHICH=y - -# -# Editors -# -CONFIG_PATCH=y -CONFIG_VI=y -CONFIG_FEATURE_VI_MAX_LEN=1024 -CONFIG_FEATURE_VI_8BIT=y -CONFIG_FEATURE_VI_COLON=y -CONFIG_FEATURE_VI_YANKMARK=y -CONFIG_FEATURE_VI_SEARCH=y -# CONFIG_FEATURE_VI_REGEX_SEARCH is not set -CONFIG_FEATURE_VI_USE_SIGNALS=y -# CONFIG_FEATURE_VI_DOT_CMD is not set -# CONFIG_FEATURE_VI_READONLY is not set -# CONFIG_FEATURE_VI_SETOPTS is not set -# CONFIG_FEATURE_VI_SET is not set -CONFIG_FEATURE_VI_WIN_RESIZE=y -# CONFIG_FEATURE_VI_ASK_TERMINAL is not set -CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y -CONFIG_AWK=y -# CONFIG_FEATURE_AWK_LIBM is not set -CONFIG_CMP=y -CONFIG_DIFF=y -# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set -CONFIG_FEATURE_DIFF_DIR=y -# CONFIG_ED is not set -CONFIG_SED=y -CONFIG_FEATURE_ALLOW_EXEC=y - -# -# Finding Utilities -# -CONFIG_FIND=y -CONFIG_FEATURE_FIND_PRINT0=y -CONFIG_FEATURE_FIND_MTIME=y -CONFIG_FEATURE_FIND_MMIN=y -CONFIG_FEATURE_FIND_PERM=y -CONFIG_FEATURE_FIND_TYPE=y -CONFIG_FEATURE_FIND_XDEV=y -CONFIG_FEATURE_FIND_MAXDEPTH=y -CONFIG_FEATURE_FIND_NEWER=y -# CONFIG_FEATURE_FIND_INUM is not set -CONFIG_FEATURE_FIND_EXEC=y -CONFIG_FEATURE_FIND_USER=y -CONFIG_FEATURE_FIND_GROUP=y -CONFIG_FEATURE_FIND_NOT=y -CONFIG_FEATURE_FIND_DEPTH=y -CONFIG_FEATURE_FIND_PAREN=y -CONFIG_FEATURE_FIND_SIZE=y -CONFIG_FEATURE_FIND_PRUNE=y -# CONFIG_FEATURE_FIND_DELETE is not set -CONFIG_FEATURE_FIND_PATH=y -CONFIG_FEATURE_FIND_REGEX=y -# CONFIG_FEATURE_FIND_CONTEXT is not set -# CONFIG_FEATURE_FIND_LINKS is not set -CONFIG_GREP=y -CONFIG_FEATURE_GREP_EGREP_ALIAS=y -CONFIG_FEATURE_GREP_FGREP_ALIAS=y -CONFIG_FEATURE_GREP_CONTEXT=y -CONFIG_XARGS=y -# CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set -# CONFIG_FEATURE_XARGS_SUPPORT_QUOTES is not set -# CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is not set -# CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM is not set - -# -# Init Utilities -# -# CONFIG_BOOTCHARTD is not set -# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set -# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set -CONFIG_HALT=y -# CONFIG_FEATURE_CALL_TELINIT is not set -CONFIG_TELINIT_PATH="" -# CONFIG_INIT is not set -# CONFIG_FEATURE_USE_INITTAB is not set -# CONFIG_FEATURE_KILL_REMOVED is not set -CONFIG_FEATURE_KILL_DELAY=0 -# CONFIG_FEATURE_INIT_SCTTY is not set -# CONFIG_FEATURE_INIT_SYSLOG is not set -# CONFIG_FEATURE_EXTRA_QUIET is not set -# CONFIG_FEATURE_INIT_COREDUMPS is not set -# CONFIG_FEATURE_INITRD is not set -CONFIG_INIT_TERMINAL_TYPE="" -# CONFIG_MESG is not set -# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set - -# -# Login/Password Management Utilities -# -# CONFIG_ADD_SHELL is not set -# CONFIG_REMOVE_SHELL is not set -# CONFIG_FEATURE_SHADOWPASSWDS is not set -# CONFIG_USE_BB_PWD_GRP is not set -# CONFIG_USE_BB_SHADOW is not set -CONFIG_USE_BB_CRYPT=y -# CONFIG_USE_BB_CRYPT_SHA is not set -# CONFIG_ADDUSER is not set -# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set -# CONFIG_FEATURE_CHECK_NAMES is not set -CONFIG_FIRST_SYSTEM_ID=100 -CONFIG_LAST_SYSTEM_ID=999 -# CONFIG_ADDGROUP is not set -# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set -# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set -# CONFIG_DELUSER is not set -# CONFIG_DELGROUP is not set -# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set -# CONFIG_GETTY is not set -# CONFIG_LOGIN is not set -# CONFIG_LOGIN_SESSION_AS_CHILD is not set -# CONFIG_PAM is not set -# CONFIG_LOGIN_SCRIPTS is not set -# CONFIG_FEATURE_NOLOGIN is not set -# CONFIG_FEATURE_SECURETTY is not set -# CONFIG_PASSWD is not set -# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set -# CONFIG_CRYPTPW is not set -# CONFIG_CHPASSWD is not set -CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="" -# CONFIG_SU is not set -# CONFIG_FEATURE_SU_SYSLOG is not set -# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set -# CONFIG_SULOGIN is not set -# CONFIG_VLOCK is not set - -# -# Linux Ext2 FS Progs -# -CONFIG_CHATTR=y -CONFIG_FSCK=y -# CONFIG_LSATTR is not set -# CONFIG_TUNE2FS is not set - -# -# Linux Module Utilities -# -# CONFIG_MODINFO is not set -# CONFIG_MODPROBE_SMALL is not set -# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set -# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set -CONFIG_INSMOD=y -CONFIG_RMMOD=y -CONFIG_LSMOD=y -# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set -CONFIG_MODPROBE=y -# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set -CONFIG_DEPMOD=y - -# -# 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 -# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set -# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set -CONFIG_FEATURE_CHECK_TAINTED_MODULE=y -CONFIG_FEATURE_MODUTILS_ALIAS=y -CONFIG_FEATURE_MODUTILS_SYMBOLS=y -CONFIG_DEFAULT_MODULES_DIR="/lib/modules" -CONFIG_DEFAULT_DEPMOD_FILE="modules.dep" - -# -# Linux System Utilities -# -# CONFIG_BLOCKDEV is not set -# CONFIG_MDEV is not set -# CONFIG_FEATURE_MDEV_CONF is not set -# CONFIG_FEATURE_MDEV_RENAME is not set -# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set -# CONFIG_FEATURE_MDEV_EXEC is not set -# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set -# CONFIG_REV is not set -# CONFIG_ACPID is not set -# CONFIG_FEATURE_ACPID_COMPAT is not set -# CONFIG_BLKID is not set -# CONFIG_FEATURE_BLKID_TYPE is not set -CONFIG_DMESG=y -CONFIG_FEATURE_DMESG_PRETTY=y -CONFIG_FBSET=y -CONFIG_FEATURE_FBSET_FANCY=y -CONFIG_FEATURE_FBSET_READMODE=y -# CONFIG_FDFLUSH is not set -# CONFIG_FDFORMAT is not set -CONFIG_FDISK=y -# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set -CONFIG_FEATURE_FDISK_WRITABLE=y -# CONFIG_FEATURE_AIX_LABEL is not set -# CONFIG_FEATURE_SGI_LABEL is not set -# CONFIG_FEATURE_SUN_LABEL is not set -# CONFIG_FEATURE_OSF_LABEL is not set -# CONFIG_FEATURE_GPT_LABEL is not set -# CONFIG_FEATURE_FDISK_ADVANCED is not set -# CONFIG_FINDFS is not set -CONFIG_FLOCK=y -# CONFIG_FREERAMDISK is not set -CONFIG_FSCK_MINIX=y -# CONFIG_MKFS_EXT2 is not set -CONFIG_MKFS_MINIX=y -CONFIG_FEATURE_MINIX2=y -# CONFIG_MKFS_REISER is not set -# CONFIG_MKFS_VFAT is not set -# CONFIG_GETOPT is not set -# CONFIG_FEATURE_GETOPT_LONG is not set -CONFIG_HEXDUMP=y -# CONFIG_FEATURE_HEXDUMP_REVERSE is not set -# CONFIG_HD is not set -CONFIG_HWCLOCK=y -CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y -CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y -# CONFIG_IPCRM is not set -# CONFIG_IPCS is not set -CONFIG_LOSETUP=y -# CONFIG_LSPCI is not set -# CONFIG_LSUSB is not set -CONFIG_MKSWAP=y -# CONFIG_FEATURE_MKSWAP_UUID is not set -CONFIG_MORE=y -CONFIG_MOUNT=y -# CONFIG_FEATURE_MOUNT_FAKE is not set -# CONFIG_FEATURE_MOUNT_VERBOSE is not set -# CONFIG_FEATURE_MOUNT_HELPERS is not set -# CONFIG_FEATURE_MOUNT_LABEL is not set -CONFIG_FEATURE_MOUNT_NFS=y -# CONFIG_FEATURE_MOUNT_CIFS is not set -CONFIG_FEATURE_MOUNT_FLAGS=y -CONFIG_FEATURE_MOUNT_FSTAB=y -CONFIG_PIVOT_ROOT=y -CONFIG_RDATE=y -# CONFIG_RDEV is not set -# CONFIG_READPROFILE is not set -# CONFIG_RTCWAKE is not set -# CONFIG_SCRIPT is not set -# CONFIG_SCRIPTREPLAY is not set -# CONFIG_SETARCH is not set -CONFIG_SWAPONOFF=y -CONFIG_FEATURE_SWAPON_PRI=y -CONFIG_SWITCH_ROOT=y -CONFIG_UMOUNT=y -CONFIG_FEATURE_UMOUNT_ALL=y - -# -# Common options for mount/umount -# -CONFIG_FEATURE_MOUNT_LOOP=y -CONFIG_FEATURE_MOUNT_LOOP_CREATE=y -# CONFIG_FEATURE_MTAB_SUPPORT is not set -# CONFIG_VOLUMEID is not set -# CONFIG_FEATURE_VOLUMEID_EXT is not set -# CONFIG_FEATURE_VOLUMEID_BTRFS is not set -# CONFIG_FEATURE_VOLUMEID_REISERFS is not set -# CONFIG_FEATURE_VOLUMEID_FAT is not set -# CONFIG_FEATURE_VOLUMEID_HFS is not set -# CONFIG_FEATURE_VOLUMEID_JFS is not set -# CONFIG_FEATURE_VOLUMEID_XFS is not set -# CONFIG_FEATURE_VOLUMEID_NTFS is not set -# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set -# CONFIG_FEATURE_VOLUMEID_UDF is not set -# CONFIG_FEATURE_VOLUMEID_LUKS is not set -# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set -# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set -# CONFIG_FEATURE_VOLUMEID_ROMFS is not set -# CONFIG_FEATURE_VOLUMEID_SYSV is not set -# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set -# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set - -# -# Miscellaneous Utilities -# -# CONFIG_CONSPY is not set -CONFIG_LESS=y -CONFIG_FEATURE_LESS_MAXLINES=9999999 -CONFIG_FEATURE_LESS_BRACKETS=y -CONFIG_FEATURE_LESS_FLAGS=y -# CONFIG_FEATURE_LESS_MARKS is not set -# CONFIG_FEATURE_LESS_REGEXP is not set -# CONFIG_FEATURE_LESS_WINCH is not set -# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set -# CONFIG_FEATURE_LESS_DASHCMD is not set -# CONFIG_FEATURE_LESS_LINENUMS is not set -# CONFIG_NANDWRITE is not set -# CONFIG_NANDDUMP is not set -# CONFIG_SETSERIAL is not set -# CONFIG_UBIATTACH is not set -# CONFIG_UBIDETACH is not set -# CONFIG_UBIMKVOL is not set -# CONFIG_UBIRMVOL is not set -# CONFIG_UBIRSVOL is not set -# CONFIG_UBIUPDATEVOL is not set -# CONFIG_ADJTIMEX is not set -# CONFIG_BBCONFIG is not set -# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set -# CONFIG_BEEP is not set -CONFIG_FEATURE_BEEP_FREQ=0 -CONFIG_FEATURE_BEEP_LENGTH_MS=0 -# CONFIG_CHAT 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 -# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set -# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set -# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set -# CONFIG_FEATURE_CHAT_CLR_ABORT is not set -# CONFIG_CHRT is not set -# CONFIG_CROND is not set -# CONFIG_FEATURE_CROND_D is not set -# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set -CONFIG_FEATURE_CROND_DIR="" -# CONFIG_CRONTAB is not set -CONFIG_DC=y -# CONFIG_FEATURE_DC_LIBM is not set -# CONFIG_DEVFSD is not set -# CONFIG_DEVFSD_MODLOAD is not set -# CONFIG_DEVFSD_FG_NP is not set -# CONFIG_DEVFSD_VERBOSE is not set -# CONFIG_FEATURE_DEVFS is not set -# CONFIG_DEVMEM is not set -# CONFIG_EJECT is not set -# CONFIG_FEATURE_EJECT_SCSI is not set -# CONFIG_FBSPLASH is not set -# CONFIG_FLASHCP is not set -# CONFIG_FLASH_LOCK is not set -# CONFIG_FLASH_UNLOCK is not set -# CONFIG_FLASH_ERASEALL is not set -# CONFIG_IONICE is not set -# CONFIG_INOTIFYD is not set -# CONFIG_LAST is not set -# CONFIG_FEATURE_LAST_SMALL is not set -# CONFIG_FEATURE_LAST_FANCY is not set -# CONFIG_HDPARM is not set -# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set -# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set -# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set -# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set -# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set -# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set -# CONFIG_MAKEDEVS is not set -# CONFIG_FEATURE_MAKEDEVS_LEAF is not set -# CONFIG_FEATURE_MAKEDEVS_TABLE is not set -# CONFIG_MAN is not set -CONFIG_MICROCOM=y -# CONFIG_MOUNTPOINT is not set -# CONFIG_MT is not set -# CONFIG_RAIDAUTORUN is not set -# CONFIG_READAHEAD is not set -CONFIG_RFKILL=y -# CONFIG_RUNLEVEL is not set -# CONFIG_RX is not set -# CONFIG_SETSID is not set -CONFIG_STRINGS=y -# CONFIG_TASKSET is not set -# CONFIG_FEATURE_TASKSET_FANCY is not set -CONFIG_TIME=y -# CONFIG_TIMEOUT is not set -# CONFIG_TTYSIZE is not set -# CONFIG_VOLNAME is not set -# CONFIG_WALL is not set -# CONFIG_WATCHDOG is not set - -# -# Networking Utilities -# -# CONFIG_NAMEIF is not set -# CONFIG_FEATURE_NAMEIF_EXTENDED is not set -# CONFIG_NBDCLIENT is not set -CONFIG_NC=y -# CONFIG_NC_SERVER is not set -# CONFIG_NC_EXTRA is not set -# CONFIG_NC_110_COMPAT is not set -CONFIG_PING=y -CONFIG_PING6=y -CONFIG_FEATURE_FANCY_PING=y -# CONFIG_WHOIS is not set -CONFIG_FEATURE_IPV6=y -# CONFIG_FEATURE_UNIX_LOCAL is not set -CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y -# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set -# CONFIG_ARP is not set -# CONFIG_ARPING is not set -# CONFIG_BRCTL is not set -# CONFIG_FEATURE_BRCTL_FANCY is not set -# CONFIG_FEATURE_BRCTL_SHOW is not set -# CONFIG_DNSD is not set -# CONFIG_ETHER_WAKE is not set -# CONFIG_FAKEIDENTD is not set -# CONFIG_FTPD is not set -# CONFIG_FEATURE_FTP_WRITE is not set -# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set -# CONFIG_FTPGET is not set -# CONFIG_FTPPUT is not set -# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set -CONFIG_HOSTNAME=y -# CONFIG_HTTPD is not set -# CONFIG_FEATURE_HTTPD_RANGES is not set -# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set -# CONFIG_FEATURE_HTTPD_SETUID is not set -# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set -# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set -# CONFIG_FEATURE_HTTPD_CGI is not set -# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set -# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set -# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set -# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set -# CONFIG_FEATURE_HTTPD_PROXY is not set -# CONFIG_FEATURE_HTTPD_GZIP is not set -CONFIG_IFCONFIG=y -CONFIG_FEATURE_IFCONFIG_STATUS=y -# CONFIG_FEATURE_IFCONFIG_SLIP is not set -# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set -CONFIG_FEATURE_IFCONFIG_HW=y -# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set -# CONFIG_IFENSLAVE is not set -# CONFIG_IFPLUGD is not set -CONFIG_IFUPDOWN=y -CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate" -# CONFIG_FEATURE_IFUPDOWN_IP is not set -# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set -CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN=y -CONFIG_FEATURE_IFUPDOWN_IPV4=y -CONFIG_FEATURE_IFUPDOWN_IPV6=y -CONFIG_FEATURE_IFUPDOWN_MAPPING=y -# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set -# CONFIG_INETD is not set -# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set -# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set -# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set -# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set -# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set -# CONFIG_FEATURE_INETD_RPC is not set -CONFIG_IP=y -CONFIG_FEATURE_IP_ADDRESS=y -CONFIG_FEATURE_IP_LINK=y -CONFIG_FEATURE_IP_ROUTE=y -CONFIG_FEATURE_IP_TUNNEL=y -# CONFIG_FEATURE_IP_RULE is not set -# CONFIG_FEATURE_IP_SHORT_FORMS is not set -# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set -# CONFIG_IPADDR is not set -# CONFIG_IPLINK is not set -# CONFIG_IPROUTE is not set -# CONFIG_IPTUNNEL is not set -# CONFIG_IPRULE is not set -# CONFIG_IPCALC is not set -# CONFIG_FEATURE_IPCALC_FANCY is not set -# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set -CONFIG_NETSTAT=y -# CONFIG_FEATURE_NETSTAT_WIDE is not set -# CONFIG_FEATURE_NETSTAT_PRG is not set -CONFIG_NSLOOKUP=y -# CONFIG_NTPD is not set -# CONFIG_FEATURE_NTPD_SERVER is not set -# CONFIG_PSCAN is not set -CONFIG_ROUTE=y -# CONFIG_SLATTACH is not set -# CONFIG_TCPSVD is not set -CONFIG_TELNET=y -# CONFIG_FEATURE_TELNET_TTYPE is not set -CONFIG_FEATURE_TELNET_AUTOLOGIN=y -# CONFIG_TELNETD is not set -# CONFIG_FEATURE_TELNETD_STANDALONE is not set -# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set -CONFIG_TFTP=y -# CONFIG_TFTPD is not set - -# -# Common options for tftp/tftpd -# -CONFIG_FEATURE_TFTP_GET=y -CONFIG_FEATURE_TFTP_PUT=y -# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set -# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set -# CONFIG_TFTP_DEBUG is not set -CONFIG_TRACEROUTE=y -# CONFIG_TRACEROUTE6 is not set -# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set -# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set -# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set -# CONFIG_TUNCTL is not set -# CONFIG_FEATURE_TUNCTL_UG is not set -# CONFIG_UDHCPC6 is not set -CONFIG_UDHCPD=y -# CONFIG_DHCPRELAY is not set -CONFIG_DUMPLEASES=y -# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set -# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set -CONFIG_DHCPD_LEASES_FILE="/var/lib/misc/udhcpd.leases" -CONFIG_UDHCPC=y -CONFIG_FEATURE_UDHCPC_ARPING=y -# CONFIG_FEATURE_UDHCP_PORT is not set -CONFIG_UDHCP_DEBUG=0 -# CONFIG_FEATURE_UDHCP_RFC3397 is not set -# CONFIG_FEATURE_UDHCP_8021Q is not set -CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" -CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 -CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" -# CONFIG_UDPSVD is not set -# CONFIG_VCONFIG is not set -CONFIG_WGET=y -CONFIG_FEATURE_WGET_STATUSBAR=y -CONFIG_FEATURE_WGET_AUTHENTICATION=y -CONFIG_FEATURE_WGET_LONG_OPTIONS=y -CONFIG_FEATURE_WGET_TIMEOUT=y -# CONFIG_ZCIP is not set - -# -# Print Utilities -# -# CONFIG_LPD is not set -# CONFIG_LPR is not set -# CONFIG_LPQ is not set - -# -# Mail Utilities -# -# CONFIG_MAKEMIME is not set -CONFIG_FEATURE_MIME_CHARSET="" -# CONFIG_POPMAILDIR is not set -# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set -# CONFIG_REFORMIME is not set -# CONFIG_FEATURE_REFORMIME_COMPAT is not set -# CONFIG_SENDMAIL is not set - -# -# Process Utilities -# -# CONFIG_IOSTAT is not set -# CONFIG_LSOF is not set -# CONFIG_MPSTAT is not set -# CONFIG_NMETER is not set -# CONFIG_PMAP is not set -# CONFIG_POWERTOP is not set -# CONFIG_PSTREE is not set -# CONFIG_PWDX is not set -# CONFIG_SMEMCAP is not set -CONFIG_UPTIME=y -# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set -CONFIG_FREE=y -CONFIG_FUSER=y -CONFIG_KILL=y -CONFIG_KILLALL=y -# CONFIG_KILLALL5 is not set -# CONFIG_PGREP is not set -CONFIG_PIDOF=y -# CONFIG_FEATURE_PIDOF_SINGLE is not set -# CONFIG_FEATURE_PIDOF_OMIT is not set -# CONFIG_PKILL is not set -CONFIG_PS=y -CONFIG_FEATURE_PS_WIDE=y -CONFIG_FEATURE_PS_LONG=y -# CONFIG_FEATURE_PS_TIME is not set -# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set -# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set -CONFIG_RENICE=y -CONFIG_BB_SYSCTL=y -CONFIG_TOP=y -CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y -CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y -# CONFIG_FEATURE_TOP_SMP_CPU is not set -# CONFIG_FEATURE_TOP_DECIMALS is not set -# CONFIG_FEATURE_TOP_SMP_PROCESS is not set -# CONFIG_FEATURE_TOPMEM is not set -# CONFIG_FEATURE_SHOW_THREADS is not set -CONFIG_WATCH=y - -# -# Runit Utilities -# -# CONFIG_RUNSV is not set -# CONFIG_RUNSVDIR is not set -# CONFIG_FEATURE_RUNSVDIR_LOG is not set -# CONFIG_SV is not set -CONFIG_SV_DEFAULT_SERVICE_DIR="" -# CONFIG_SVLOGD is not set -# CONFIG_CHPST is not set -# CONFIG_SETUIDGID is not set -# CONFIG_ENVUIDGID is not set -# CONFIG_ENVDIR is not set -# CONFIG_SOFTLIMIT is not set -# CONFIG_CHCON is not set -# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set -# CONFIG_GETENFORCE is not set -# CONFIG_GETSEBOOL is not set -# CONFIG_LOAD_POLICY is not set -# CONFIG_MATCHPATHCON is not set -# CONFIG_RESTORECON is not set -# CONFIG_RUNCON is not set -# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set -# CONFIG_SELINUXENABLED is not set -# CONFIG_SETENFORCE is not set -# CONFIG_SETFILES is not set -# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set -# CONFIG_SETSEBOOL is not set -# CONFIG_SESTATUS is not set - -# -# Shells -# -CONFIG_ASH=y -CONFIG_ASH_BASH_COMPAT=y -# CONFIG_ASH_IDLE_TIMEOUT is not set -CONFIG_ASH_JOB_CONTROL=y -CONFIG_ASH_ALIAS=y -CONFIG_ASH_GETOPTS=y -CONFIG_ASH_BUILTIN_ECHO=y -CONFIG_ASH_BUILTIN_PRINTF=y -CONFIG_ASH_BUILTIN_TEST=y -# CONFIG_ASH_CMDCMD is not set -# CONFIG_ASH_MAIL is not set -CONFIG_ASH_OPTIMIZE_FOR_SIZE=y -# CONFIG_ASH_RANDOM_SUPPORT is not set -CONFIG_ASH_EXPAND_PRMT=y -# CONFIG_CTTYHACK is not set -# CONFIG_HUSH is not set -# CONFIG_HUSH_BASH_COMPAT is not set -# CONFIG_HUSH_BRACE_EXPANSION is not set -# CONFIG_HUSH_HELP is not set -# CONFIG_HUSH_INTERACTIVE is not set -# CONFIG_HUSH_SAVEHISTORY is not set -# CONFIG_HUSH_JOB is not set -# CONFIG_HUSH_TICK is not set -# CONFIG_HUSH_IF is not set -# CONFIG_HUSH_LOOPS is not set -# CONFIG_HUSH_CASE is not set -# CONFIG_HUSH_FUNCTIONS is not set -# CONFIG_HUSH_LOCAL is not set -# CONFIG_HUSH_RANDOM_SUPPORT is not set -# CONFIG_HUSH_EXPORT_N is not set -# CONFIG_HUSH_MODE_X is not set -# CONFIG_MSH is not set -CONFIG_FEATURE_SH_IS_ASH=y -# CONFIG_FEATURE_SH_IS_HUSH is not set -# CONFIG_FEATURE_SH_IS_NONE is not set -# CONFIG_FEATURE_BASH_IS_ASH is not set -# CONFIG_FEATURE_BASH_IS_HUSH is not set -CONFIG_FEATURE_BASH_IS_NONE=y -CONFIG_SH_MATH_SUPPORT=y -# CONFIG_SH_MATH_SUPPORT_64 is not set -CONFIG_FEATURE_SH_EXTRA_QUIET=y -# CONFIG_FEATURE_SH_STANDALONE is not set -# CONFIG_FEATURE_SH_NOFORK is not set -CONFIG_FEATURE_SH_HISTFILESIZE=y - -# -# System Logging Utilities -# -CONFIG_SYSLOGD=y -CONFIG_FEATURE_ROTATE_LOGFILE=y -CONFIG_FEATURE_REMOTE_LOG=y -CONFIG_FEATURE_SYSLOGD_DUP=y -CONFIG_FEATURE_SYSLOGD_CFG=y -CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 -CONFIG_FEATURE_IPC_SYSLOG=y -CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=64 -CONFIG_LOGREAD=y -CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y -CONFIG_KLOGD=y -CONFIG_FEATURE_KLOGD_KLOGCTL=y -CONFIG_LOGGER=y diff --git a/meta/recipes-core/busybox/busybox-1.21.1/fail_on_no_media.patch b/meta/recipes-core/busybox/busybox-1.21.1/fail_on_no_media.patch deleted file mode 100644 index 6745f169fe..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/fail_on_no_media.patch +++ /dev/null @@ -1,31 +0,0 @@ -Upstream-Status: Pending - -The current behaviour of busybox is to try all fstype when automounting -even when no media exists. The util-linux mount command bails when no -media exists, so change the behaviour of busybox to do the same. - -It could also be argued that the KERN_INFO message from btrfs could be -removed, but that would be harder to accomplish. - -Signed-off-by: Saul Wold - - -Index: busybox-1.20.2/util-linux/mount.c -=================================================================== ---- busybox-1.20.2.orig/util-linux/mount.c -+++ busybox-1.20.2/util-linux/mount.c -@@ -598,7 +598,13 @@ static int mount_it_now(struct mntent *m - break; - errno = errno_save; - } -- -+ /* -+ * Break if there is no media, no point retrying for all -+ * fs types since there is no media available -+ */ -+ if (rc == -1 && errno == ENOMEDIUM) { -+ bb_perror_msg_and_die("mounting %s on %s failed", mp->mnt_fsname, mp->mnt_dir); -+ } - if (!rc || (vfsflags & MS_RDONLY) || (errno != EACCES && errno != EROFS)) - break; - if (!(vfsflags & MS_SILENT)) diff --git a/meta/recipes-core/busybox/busybox-1.21.1/get_header_tar.patch b/meta/recipes-core/busybox/busybox-1.21.1/get_header_tar.patch deleted file mode 100644 index 0e528ff91f..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/get_header_tar.patch +++ /dev/null @@ -1,22 +0,0 @@ -Upstream-Status: Pending - -# copy commit message from OE as the patch comment: -# commit 5a0e1d473ca7aca5ffefffe9a2ec44ae7a1f35bc -# Author: Frans Meulenbroeks -# Date: Wed Feb 11 22:40:21 2009 +0100 -# -# busybox: fix tar problem with filenames that are exactly 100 bytes -# -# above comment added by Kevin Tian , 2010-07-06 - ---- busybox-1.13.2/archival/libarchive/get_header_tar.c.orig 2008-11-09 18:28:02.000000000 +0100 -+++ busybox-1.13.2/archival/libarchive/get_header_tar.c 2009-02-11 22:34:52.000000000 +0100 -@@ -252,6 +252,8 @@ - file_header->name = concat_path_file(tar.prefix, tar.name); - } else - file_header->name = xstrdup(tar.name); -+ if (strlen(file_header->name) > 100) -+ file_header->name[100] = 0; - } - - /* Set bits 12-15 of the files mode */ diff --git a/meta/recipes-core/busybox/busybox-1.21.1/login-utilities.cfg b/meta/recipes-core/busybox/busybox-1.21.1/login-utilities.cfg deleted file mode 100644 index cc9b2db502..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/login-utilities.cfg +++ /dev/null @@ -1,13 +0,0 @@ -CONFIG_FEATURE_SHADOWPASSWDS=y -CONFIG_ADDUSER=y -CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y -CONFIG_ADDGROUP=y -CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y -CONFIG_DELUSER=y -CONFIG_DELGROUP=y -CONFIG_GETTY=y -CONFIG_LOGIN=y -CONFIG_PASSWD=y -CONFIG_SU=y -CONFIG_SULOGIN=y -CONFIG_VLOCK=y diff --git a/meta/recipes-core/busybox/busybox-1.21.1/run-parts.in.usr-bin.patch b/meta/recipes-core/busybox/busybox-1.21.1/run-parts.in.usr-bin.patch deleted file mode 100644 index 45f69a937c..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/run-parts.in.usr-bin.patch +++ /dev/null @@ -1,29 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -# copy commit message from OE as the patch comment: -# commit f1b326c83be0d95571b991d8d2ee239982380b6b -# Author: Martin Jansa -# Date: Fri Apr 30 15:37:38 2010 +0200 -# -# busybox: add patch for installing run-parts to /usr/bin/ instead of /bin -# -# * otherwise debianutils install will fail with -# update-alternatives: Error: cannot register alternative run-parts to /usr/bin/run-parts since it is -# -# Signed-off-by: Martin Jansa -# -# Poky doesn't have debianutils, but let's keep it for safety -# above comment added by Kevin Tian , 2010-07-06 - -diff -uNr busybox-1.15.3.orig//include/applets.src.h busybox-1.15.3/include/applets.src.h ---- busybox-1.15.3.orig//include/applets.src.h 2009-12-12 22:13:28.000000000 +0100 -+++ busybox-1.15.3/include/applets.src.h 2010-04-30 15:35:40.000000000 +0200 -@@ -304,7 +304,7 @@ - IF_RPM(APPLET(rpm, BB_DIR_BIN, BB_SUID_DROP)) - IF_RPM2CPIO(APPLET(rpm2cpio, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_RTCWAKE(APPLET(rtcwake, BB_DIR_USR_SBIN, BB_SUID_DROP)) --IF_RUN_PARTS(APPLET_ODDNAME(run-parts, run_parts, BB_DIR_BIN, BB_SUID_DROP, run_parts)) -+IF_RUN_PARTS(APPLET_ODDNAME(run-parts, run_parts, BB_DIR_USR_BIN, BB_SUID_DROP, run_parts)) - IF_RUNCON(APPLET(runcon, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_RUNLEVEL(APPLET(runlevel, BB_DIR_SBIN, BB_SUID_DROP)) - IF_RUNSV(APPLET(runsv, BB_DIR_USR_BIN, _BB_SUID_DROP)) diff --git a/meta/recipes-core/busybox/busybox-1.21.1/stat-usr-bin.patch b/meta/recipes-core/busybox/busybox-1.21.1/stat-usr-bin.patch deleted file mode 100644 index 4049324e8b..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/stat-usr-bin.patch +++ /dev/null @@ -1,21 +0,0 @@ -busybox: move /bin/stat to /usr/bin/stat to match coreutils - -The coreutils stat binary lives in /usr/bin, fix busybox to use the same path so -they can be properly tracked by alternatives. - -Upstream-Status: Inappropriate [embedded] -Signed-off-by: Andy Ross - -diff --git a/include/applets.src.h b/include/applets.src.h -index 0d33bfc..30ae3ad 100644 ---- a/include/applets.src.h -+++ b/include/applets.src.h -@@ -340,7 +340,7 @@ IF_SOFTLIMIT(APPLET_ODDNAME(softlimit, chpst, BB_DIR_USR_BIN, BB_SUID_DROP, soft - IF_SORT(APPLET_NOEXEC(sort, sort, BB_DIR_USR_BIN, BB_SUID_DROP, sort)) - IF_SPLIT(APPLET(split, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_START_STOP_DAEMON(APPLET_ODDNAME(start-stop-daemon, start_stop_daemon, BB_DIR_SBIN, BB_SUID_DROP, start_stop_daemon)) --IF_STAT(APPLET(stat, BB_DIR_BIN, BB_SUID_DROP)) -+IF_STAT(APPLET(stat, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_STRINGS(APPLET(strings, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_STTY(APPLET(stty, BB_DIR_BIN, BB_SUID_DROP)) - /* Needs to be run by root or be suid root - needs to change uid and gid: */ diff --git a/meta/recipes-core/busybox/busybox-1.21.1/testsuite-du-du-k-works-fix-false-positive.patch b/meta/recipes-core/busybox/busybox-1.21.1/testsuite-du-du-k-works-fix-false-positive.patch deleted file mode 100644 index 070c41be07..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/testsuite-du-du-k-works-fix-false-positive.patch +++ /dev/null @@ -1,35 +0,0 @@ -Upstream-Status: Accepted - -[Yocto 2896] - -Signed-off-by: Kang Kai ---- -From 03b614739b923994ff0bef74622973ad18fefebd Mon Sep 17 00:00:00 2001 -From: Kang Kai -Date: Mon, 28 Jan 2013 14:02:51 +0100 -Subject: [PATCH] testsuite/du/du-k-works: fix false positive - -Signed-off-by: Kang Kai -Signed-off-by: Denys Vlasenko ---- - testsuite/du/du-k-works | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/testsuite/du/du-k-works b/testsuite/du/du-k-works -index 36dcaa8..417b0da 100644 ---- a/testsuite/du/du-k-works -+++ b/testsuite/du/du-k-works -@@ -2,6 +2,10 @@ mkdir du.testdir - cd du.testdir - dd if=/dev/zero of=file1 bs=1k count=64 2>/dev/null - dd if=/dev/zero of=file2 bs=1k count=16 2>/dev/null -+# ext4 on images <512M gives 81kb -+# ext3 on images <512M gives 83kb - test x"`busybox du -k .`" = x"80 ." \ -+ -o x"`busybox du -k .`" = x"81 ." \ -+ -o x"`busybox du -k .`" = x"83 ." \ - -o x"`busybox du -k .`" = x"84 ." \ - -o x"`busybox du -k .`" = x"88 ." --- -1.7.5.4 - diff --git a/meta/recipes-core/busybox/busybox-1.21.1/watch.in.usr-bin.patch b/meta/recipes-core/busybox/busybox-1.21.1/watch.in.usr-bin.patch deleted file mode 100644 index e8e1edfb7e..0000000000 --- a/meta/recipes-core/busybox/busybox-1.21.1/watch.in.usr-bin.patch +++ /dev/null @@ -1,29 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -From f2372ab626a395d067704f4c318180fb6039de15 Mon Sep 17 00:00:00 2001 -From: Andreas Oberritter -Date: Sat, 24 Mar 2012 17:36:48 +0100 -Subject: [PATCH] watch: move from /bin to /usr/bin for compatibility with - procps - -Signed-off-by: Andreas Oberritter ---- - include/applets.src.h | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/include/applets.src.h b/include/applets.src.h -index 87d9cbb..c148a8c 100644 ---- a/include/applets.src.h -+++ b/include/applets.src.h -@@ -404,7 +404,7 @@ IF_VLOCK(APPLET(vlock, BB_DIR_USR_BIN, BB_SUID_REQUIRE)) - IF_VOLNAME(APPLET(volname, BB_DIR_USR_BIN, BB_SUID_DROP)) - /* Needs to be run by root or be suid root - needs to write to /dev/TTY: */ - IF_WALL(APPLET(wall, BB_DIR_USR_BIN, BB_SUID_REQUIRE)) --IF_WATCH(APPLET(watch, BB_DIR_BIN, BB_SUID_DROP)) -+IF_WATCH(APPLET(watch, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_WATCHDOG(APPLET(watchdog, BB_DIR_SBIN, BB_SUID_DROP)) - IF_WC(APPLET(wc, BB_DIR_USR_BIN, BB_SUID_DROP)) - IF_WGET(APPLET(wget, BB_DIR_USR_BIN, BB_SUID_DROP)) --- -1.7.5.4 - diff --git a/meta/recipes-core/busybox/busybox/busybox-appletlib-dependency.patch b/meta/recipes-core/busybox/busybox/busybox-appletlib-dependency.patch new file mode 100644 index 0000000000..de2dbcceb1 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/busybox-appletlib-dependency.patch @@ -0,0 +1,37 @@ +Upstream-Status: Pending + +# copy commit message from OE as the patch comment: +# commit 98c24291aa165f53423c27ae033831ce0b3bb676 +# Author: Roman I Khimov +# Date: Thu Mar 26 23:03:58 2009 +0000 +# +# busybox: update appletlib dependency patch +# +# Previous version still failed from time to time on clean-start builds +# with 4 bitbake threads and '-j16'. Building busybox as sole target worked +# well. +# +# The reason is that previous version introduced a race between applets make +# processes spawned from top-level Makefile and from libbb Makefile. +# +# Fix it with high-level dependency that doesn't create races. +# +# Signed-off-by: Koen Kooi +# +# above comment added by Kevin Tian , 2010-07-06 + +Index: busybox-1.13.2/Makefile +=================================================================== +--- busybox-1.13.2.orig/Makefile 2009-03-19 15:44:37.419270265 +0300 ++++ busybox-1.13.2/Makefile 2009-03-19 15:45:57.737521296 +0300 +@@ -471,6 +471,10 @@ + util-linux/ \ + util-linux/volume_id/ \ + ++# Lib interdeps ++# libbb uses headers generated in applets ++libbb: applets ++ + endif # KBUILD_EXTMOD + + ifeq ($(dot-config),1) diff --git a/meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch b/meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch new file mode 100644 index 0000000000..753a044481 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch @@ -0,0 +1,179 @@ +Make busybox have the ability to list configuration items regarding suid +apps and non-suid apps separately. + +From: Bernhard Reutner-Fischer +Date: Mon, 17 Jun 2013 11:06:05 +0800 +Subject: [PATCH] busybox: list suid and non-suid app configs + +Upstream-Status: Pending + +Signed-off-by: Chen Qi + +--- + Makefile.custom | 4 ++++ + applets/busybox.mksuid | 53 ++++++++++++++++++++++++++++++++++++++++++++ + include/applets.src.h | 9 +++++++- + scripts/kconfig/confdata.c | 24 ++++++++++++++++---- + 4 files changed, 85 insertions(+), 5 deletions(-) + create mode 100644 applets/busybox.mksuid + +diff --git a/Makefile.custom b/Makefile.custom +index 6da79e6..a276d6f 100644 +--- a/Makefile.custom ++++ b/Makefile.custom +@@ -4,6 +4,10 @@ + + busybox.links: $(srctree)/applets/busybox.mkll $(objtree)/include/autoconf.h include/applets.h + $(Q)-$(SHELL) $^ >$@ ++busybox.cfg.suid: $(srctree)/applets/busybox.mksuid $(objtree)/include/autoconf.h include/applets.h ++ $(Q)-SUID="yes" $(SHELL) $^ > $@ ++busybox.cfg.nosuid: $(srctree)/applets/busybox.mksuid $(objtree)/include/autoconf.h include/applets.h ++ $(Q)-SUID="DROP" $(SHELL) $^ > $@ + + .PHONY: install + ifeq ($(CONFIG_INSTALL_APPLET_SYMLINKS),y) +diff --git a/applets/busybox.mksuid b/applets/busybox.mksuid +new file mode 100644 +index 0000000..e11a7a1 +--- /dev/null ++++ b/applets/busybox.mksuid +@@ -0,0 +1,53 @@ ++#!/bin/sh ++# Make list of configuration variables regarding suid handling ++ ++# input $1: full path to autoconf.h ++# input $2: full path to applets.h ++# input $3: full path to .config ++# output (stdout): list of CONFIG_ that do or may require suid ++ ++# If the environment variable SUID is not set or set to DROP, ++# lists all config options that do not require suid permissions. ++# Otherwise, lists all config options for applets that DO or MAY require ++# suid permissions. ++ ++# Maintainer: Bernhard Reutner-Fischer ++ ++export LC_ALL=POSIX ++export LC_CTYPE=POSIX ++ ++CONFIG_H=${1:-include/autoconf.h} ++APPLETS_H=${2:-include/applets.h} ++DOT_CONFIG=${3:-.config} ++ ++case ${SUID:-DROP} in ++ [dD][rR][oO][pP]) USE="DROP" ;; ++ *) USE="suid" ;; ++esac ++ ++$HOSTCC -E -DMAKE_SUID -include $CONFIG_H $APPLETS_H | ++ awk -v USE=${USE} ' ++ /^SUID[ \t]/{ ++ if (USE == "DROP") { ++ if ($2 != "BB_SUID_DROP") next ++ } else { ++ if ($2 == "BB_SUID_DROP") next ++ } ++ cfg = $NF ++ gsub("\"", "", cfg) ++ cfg = substr(cfg, 8) ++ s[i++] = "CONFIG_" cfg ++ s[i++] = "CONFIG_FEATURE_" cfg "_.*" ++ } ++ END{ ++ while (getline < ARGV[2]) { ++ for (j in s) { ++ if ($0 ~ "^" s[j] "=y$") { ++ sub(/=.*/, "") ++ print ++ if (s[j] !~ /\*$/) delete s[j] # can drop this applet now ++ } ++ } ++ } ++ } ++' - $DOT_CONFIG +diff --git a/include/applets.src.h b/include/applets.src.h +index 02b995b..8386c84 100644 +--- a/include/applets.src.h ++++ b/include/applets.src.h +@@ -52,6 +52,12 @@ s - suid type: + # define APPLET_NOEXEC(name,main,l,s,name2) LINK l name + # define APPLET_NOFORK(name,main,l,s,name2) LINK l name + ++#elif defined(MAKE_SUID) ++# define APPLET(name,l,s) SUID s l name ++# define APPLET_ODDNAME(name,main,l,s,name2) SUID s l name ++# define APPLET_NOEXEC(name,main,l,s,name2) SUID s l name ++# define APPLET_NOFORK(name,main,l,s,name2) SUID s l name ++ + #else + static struct bb_applet applets[] = { /* name, main, location, need_suid */ + # define APPLET(name,l,s) { #name, #name, l, s }, +@@ -414,7 +420,8 @@ IF_YES(APPLET_NOFORK(yes, yes, BB_DIR_USR_BIN, BB_SUID_DROP, yes)) + IF_GUNZIP(APPLET_ODDNAME(zcat, gunzip, BB_DIR_BIN, BB_SUID_DROP, zcat)) + IF_ZCIP(APPLET(zcip, BB_DIR_SBIN, BB_SUID_DROP)) + +-#if !defined(PROTOTYPES) && !defined(NAME_MAIN_CNAME) && !defined(MAKE_USAGE) ++#if !defined(PROTOTYPES) && !defined(NAME_MAIN_CNAME) && !defined(MAKE_USAGE) \ ++ && !defined(MAKE_LINKS) && !defined(MAKE_SUID) + }; + #endif + +diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c +index bd2d70e..303df0b 100644 +--- a/scripts/kconfig/confdata.c ++++ b/scripts/kconfig/confdata.c +@@ -474,7 +474,11 @@ int conf_write(const char *name) + fprintf(out_h, "#define CONFIG_%s 1\n", sym->name); + /* bbox */ + fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); +- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#ifdef MAKE_SUID\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); ++ fprintf(out_h, "#else\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#endif\n"); + fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); + } + break; +@@ -506,7 +510,11 @@ int conf_write(const char *name) + fputs("\"\n", out_h); + /* bbox */ + fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); +- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#ifdef MAKE_SUID\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); ++ fprintf(out_h, "#else\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#endif\n"); + fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); + } + break; +@@ -518,7 +526,11 @@ int conf_write(const char *name) + fprintf(out_h, "#define CONFIG_%s 0x%s\n", sym->name, str); + /* bbox */ + fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); +- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#ifdef MAKE_SUID\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); ++ fprintf(out_h, "#else\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#endif\n"); + fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); + } + break; +@@ -532,7 +544,11 @@ int conf_write(const char *name) + fprintf(out_h, "#define CONFIG_%s %s\n", sym->name, str); + /* bbox */ + fprintf(out_h, "#define ENABLE_%s 1\n", sym->name); +- fprintf(out_h, "#define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#ifdef MAKE_SUID\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__ \"CONFIG_%s\"\n", sym->name, sym->name); ++ fprintf(out_h, "#else\n"); ++ fprintf(out_h, "# define IF_%s(...) __VA_ARGS__\n", sym->name); ++ fprintf(out_h, "#endif\n"); + fprintf(out_h, "#define IF_NOT_%s(...)\n", sym->name); + } + break; +-- +1.7.9.5 + diff --git a/meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch b/meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch new file mode 100644 index 0000000000..1894037422 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch @@ -0,0 +1,262 @@ +From 6394bcf17925715db042cfb24f5886b1bed1dfc9 Mon Sep 17 00:00:00 2001 +From: Jackie Huang +Date: Thu, 31 Oct 2013 14:36:31 +0800 +Subject: [PATCH] sed: fix "sed clusternewline" and "autoinsert newline" testcase + +Upstream-Status: Backport [busybox.net] + +Signed-off-by: Jackie Huang +--- + editors/sed.c | 135 ++++++++++++++++++++++++++-------------------------- + testsuite/sed.tests | 4 -- + 2 files changed, 68 insertions(+), 71 deletions(-) + +diff --git a/editors/sed.c b/editors/sed.c +index f8ca5d3..98478b4 100644 +--- a/editors/sed.c ++++ b/editors/sed.c +@@ -845,37 +845,79 @@ static void append(char *s) + llist_add_to_end(&G.append_head, xstrdup(s)); + } + +-static void flush_append(void) ++/* Output line of text. */ ++/* Note: ++ * The tricks with NO_EOL_CHAR and last_puts_char are there to emulate gnu sed. ++ * Without them, we had this: ++ * echo -n thingy >z1 ++ * echo -n again >z2 ++ * >znull ++ * sed "s/i/z/" z1 z2 znull | hexdump -vC ++ * output: ++ * gnu sed 4.1.5: ++ * 00000000 74 68 7a 6e 67 79 0a 61 67 61 7a 6e |thzngy.agazn| ++ * bbox: ++ * 00000000 74 68 7a 6e 67 79 61 67 61 7a 6e |thzngyagazn| ++ */ ++enum { ++ NO_EOL_CHAR = 1, ++ LAST_IS_NUL = 2, ++}; ++static void puts_maybe_newline(char *s, FILE *file, char *last_puts_char, char last_gets_char) ++{ ++ char lpc = *last_puts_char; ++ ++ /* Need to insert a '\n' between two files because first file's ++ * last line wasn't terminated? */ ++ if (lpc != '\n' && lpc != '\0') { ++ fputc('\n', file); ++ lpc = '\n'; ++ } ++ fputs(s, file); ++ ++ /* 'x' - just something which is not '\n', '\0' or NO_EOL_CHAR */ ++ if (s[0]) ++ lpc = 'x'; ++ ++ /* had trailing '\0' and it was last char of file? */ ++ if (last_gets_char == LAST_IS_NUL) { ++ fputc('\0', file); ++ lpc = 'x'; /* */ ++ } else ++ /* had trailing '\n' or '\0'? */ ++ if (last_gets_char != NO_EOL_CHAR) { ++ fputc(last_gets_char, file); ++ lpc = last_gets_char; ++ } ++ ++ if (ferror(file)) { ++ xfunc_error_retval = 4; /* It's what gnu sed exits with... */ ++ bb_error_msg_and_die(bb_msg_write_error); ++ } ++ *last_puts_char = lpc; ++} ++ ++static void flush_append(char *last_puts_char, char last_gets_char) + { + char *data; + + /* Output appended lines. */ + while ((data = (char *)llist_pop(&G.append_head))) { +- fprintf(G.nonstdout, "%s\n", data); ++ puts_maybe_newline(data, G.nonstdout, last_puts_char, last_gets_char); + free(data); + } + } + +-static void add_input_file(FILE *file) +-{ +- G.input_file_list = xrealloc_vector(G.input_file_list, 2, G.input_file_count); +- G.input_file_list[G.input_file_count++] = file; +-} +- + /* Get next line of input from G.input_file_list, flushing append buffer and + * noting if we ran out of files without a newline on the last line we read. + */ +-enum { +- NO_EOL_CHAR = 1, +- LAST_IS_NUL = 2, +-}; +-static char *get_next_line(char *gets_char) ++static char *get_next_line(char *gets_char, char *last_puts_char, char last_gets_char) + { + char *temp = NULL; + int len; + char gc; + +- flush_append(); ++ flush_append(last_puts_char, last_gets_char); + + /* will be returned if last line in the file + * doesn't end with either '\n' or '\0' */ +@@ -919,54 +961,6 @@ static char *get_next_line(char *gets_char) + return temp; + } + +-/* Output line of text. */ +-/* Note: +- * The tricks with NO_EOL_CHAR and last_puts_char are there to emulate gnu sed. +- * Without them, we had this: +- * echo -n thingy >z1 +- * echo -n again >z2 +- * >znull +- * sed "s/i/z/" z1 z2 znull | hexdump -vC +- * output: +- * gnu sed 4.1.5: +- * 00000000 74 68 7a 6e 67 79 0a 61 67 61 7a 6e |thzngy.agazn| +- * bbox: +- * 00000000 74 68 7a 6e 67 79 61 67 61 7a 6e |thzngyagazn| +- */ +-static void puts_maybe_newline(char *s, FILE *file, char *last_puts_char, char last_gets_char) +-{ +- char lpc = *last_puts_char; +- +- /* Need to insert a '\n' between two files because first file's +- * last line wasn't terminated? */ +- if (lpc != '\n' && lpc != '\0') { +- fputc('\n', file); +- lpc = '\n'; +- } +- fputs(s, file); +- +- /* 'x' - just something which is not '\n', '\0' or NO_EOL_CHAR */ +- if (s[0]) +- lpc = 'x'; +- +- /* had trailing '\0' and it was last char of file? */ +- if (last_gets_char == LAST_IS_NUL) { +- fputc('\0', file); +- lpc = 'x'; /* */ +- } else +- /* had trailing '\n' or '\0'? */ +- if (last_gets_char != NO_EOL_CHAR) { +- fputc(last_gets_char, file); +- lpc = last_gets_char; +- } +- +- if (ferror(file)) { +- xfunc_error_retval = 4; /* It's what gnu sed exits with... */ +- bb_error_msg_and_die(bb_msg_write_error); +- } +- *last_puts_char = lpc; +-} +- + #define sed_puts(s, n) (puts_maybe_newline(s, G.nonstdout, &last_puts_char, n)) + + static int beg_match(sed_cmd_t *sed_cmd, const char *pattern_space) +@@ -989,7 +983,7 @@ static void process_files(void) + int substituted; + + /* Prime the pump */ +- next_line = get_next_line(&next_gets_char); ++ next_line = get_next_line(&next_gets_char, &last_puts_char, '\n' /*last_gets_char*/); + + /* Go through every line in each file */ + again: +@@ -1003,7 +997,7 @@ static void process_files(void) + + /* Read one line in advance so we can act on the last line, + * the '$' address */ +- next_line = get_next_line(&next_gets_char); ++ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); + linenum++; + + /* For every line, go through all the commands */ +@@ -1176,6 +1170,7 @@ static void process_files(void) + /* Append line to linked list to be printed later */ + case 'a': + append(sed_cmd->string); ++ last_gets_char = '\n'; + break; + + /* Insert text before this line */ +@@ -1222,7 +1217,7 @@ static void process_files(void) + free(pattern_space); + pattern_space = next_line; + last_gets_char = next_gets_char; +- next_line = get_next_line(&next_gets_char); ++ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); + substituted = 0; + linenum++; + break; +@@ -1258,7 +1253,7 @@ static void process_files(void) + pattern_space[len] = '\n'; + strcpy(pattern_space + len+1, next_line); + last_gets_char = next_gets_char; +- next_line = get_next_line(&next_gets_char); ++ next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char); + linenum++; + break; + } +@@ -1362,7 +1357,7 @@ static void process_files(void) + + /* Delete and such jump here. */ + discard_line: +- flush_append(); ++ flush_append(&last_puts_char, last_gets_char); + free(pattern_space); + + goto again; +@@ -1403,6 +1398,12 @@ static void add_cmd_block(char *cmdstr) + free(sv); + } + ++static void add_input_file(FILE *file) ++{ ++ G.input_file_list = xrealloc_vector(G.input_file_list, 2, G.input_file_count); ++ G.input_file_list[G.input_file_count++] = file; ++} ++ + int sed_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; + int sed_main(int argc UNUSED_PARAM, char **argv) + { +diff --git a/testsuite/sed.tests b/testsuite/sed.tests +index 468565f..e26483c 100755 +--- a/testsuite/sed.tests ++++ b/testsuite/sed.tests +@@ -135,10 +135,8 @@ testing "sed empty file plus cat" "sed -e 's/nohit//' input -" "one\ntwo" \ + "" "one\ntwo" + testing "sed cat plus empty file" "sed -e 's/nohit//' input -" "one\ntwo" \ + "one\ntwo" "" +-test x"$SKIP_KNOWN_BUGS" = x"" && { + testing "sed append autoinserts newline" "sed -e '/woot/a woo' -" \ + "woot\nwoo\n" "" "woot" +-} + testing "sed insert doesn't autoinsert newline" "sed -e '/woot/i woo' -" \ + "woo\nwoot" "" "woot" + testing "sed print autoinsert newlines" "sed -e 'p' -" "one\none" "" "one" +@@ -154,11 +152,9 @@ testing "sed selective matches insert newline" \ + testing "sed selective matches noinsert newline" \ + "sed -ne 's/woo/bang/p' input -" "a bang\nb bang" "a woo\nb woo" \ + "c no\nd no" +-test x"$SKIP_KNOWN_BUGS" = x"" && { + testing "sed clusternewline" \ + "sed -e '/one/a 111' -e '/two/i 222' -e p input -" \ + "one\none\n111\n222\ntwo\ntwo" "one" "two" +-} + testing "sed subst+write" \ + "sed -e 's/i/z/' -e 'woutputw' input -; $ECHO -n X; cat outputw" \ + "thzngy\nagaznXthzngy\nagazn" "thingy" "again" +-- +1.8.3 + diff --git a/meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch b/meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch new file mode 100644 index 0000000000..baad298a3f --- /dev/null +++ b/meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch @@ -0,0 +1,58 @@ +Upstream-Status: Backport +Signed-off-by: Jonathan Liu + +From b6dc13c2d3754704b1bf5af4e6b957b48585102f Mon Sep 17 00:00:00 2001 +From: Jonathan Liu +Date: Tue, 21 May 2013 17:01:55 +0200 +Subject: [PATCH] sulogin: allow system maintenance login if root password is + empty + +The current password checking is unable to distinguish between the user +entering an empty password or pressing Control-D. As a result, an empty +password always results in normal startup. + +We modify bb_ask to return NULL if Control-D is pressed without entering +a password. The sulogin applet is then modified to only proceed to +normal startup if bb_ask returns NULL. This covers EOF with no password, +interrupt by timeout and ^C. + +Signed-off-by: Jonathan Liu +Signed-off-by: Denys Vlasenko +--- + libbb/bb_askpass.c | 4 +++- + loginutils/sulogin.c | 4 ++-- + 2 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/libbb/bb_askpass.c b/libbb/bb_askpass.c +index fe2b506..77c1bcd 100644 +--- a/libbb/bb_askpass.c ++++ b/libbb/bb_askpass.c +@@ -65,7 +65,9 @@ char* FAST_FUNC bb_ask(const int fd, int timeout, const char *prompt) + i = 0; + while (1) { + int r = read(fd, &ret[i], 1); +- if (r < 0) { ++ if ((i == 0 && r == 0) /* EOF (^D) with no password */ ++ || r < 0 ++ ) { + /* read is interrupted by timeout or ^C */ + ret = NULL; + break; +diff --git a/loginutils/sulogin.c b/loginutils/sulogin.c +index f79802a..65e6384 100644 +--- a/loginutils/sulogin.c ++++ b/loginutils/sulogin.c +@@ -83,8 +83,8 @@ int sulogin_main(int argc UNUSED_PARAM, char **argv) + cp = bb_ask(STDIN_FILENO, timeout, + "Give root password for system maintenance\n" + "(or type Control-D for normal startup):"); +- +- if (!cp || !*cp) { ++ if (!cp) { ++ /* ^D, ^C, timeout, or read error */ + bb_info_msg("Normal startup"); + return 0; + } +-- +1.8.2.3 + diff --git a/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch b/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch new file mode 100644 index 0000000000..4c9ce3b711 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch @@ -0,0 +1,137 @@ +From 53626cd06a3ef05ed847daea802ef0aa9661caa7 Mon Sep 17 00:00:00 2001 +From: Anders Darander +Date: Thu, 3 Nov 2011 08:51:31 +0100 +Subject: [PATCH] busybox-udhcpc-no_deconfig.patch + +Upstream-Status: Pending + +Add a new option -D to the udhcpc client that allows for +dhcp renewal to occur without having to down the interface +in the process. + +Signed-off-by: Greg Moffatt + +Updated to latest Busybox 1.17.3 + +Signed-off-by: Mark Hatle + +Updated to Busybox 1.18.4 +option spec is changed + +Signed-off-by: Qing He + +Updated to Busybox 1.19.3 + +Signed-off-by: Anders Darander + +Fixed options -b, -a and -P. + +Signed-off-by: Andreas Oberritter +--- + networking/udhcp/dhcpc.c | 29 +++++++++++++++++++++-------- + 1 files changed, 21 insertions(+), 8 deletions(-) + +Index: busybox-1.20.2/networking/udhcp/dhcpc.c +=================================================================== +--- busybox-1.20.2.orig/networking/udhcp/dhcpc.c ++++ busybox-1.20.2/networking/udhcp/dhcpc.c +@@ -29,6 +29,9 @@ + #include + #include + ++/* option whether to down the interface when reconfiguring */ ++static int allow_deconfig = 1; ++ + /* "struct client_config_t client_config" is in bb_common_bufsiz1 */ + + +@@ -81,8 +84,9 @@ enum { + OPT_x = 1 << 18, + OPT_f = 1 << 19, + OPT_B = 1 << 20, ++ OPT_D = 1 << 21, + /* The rest has variable bit positions, need to be clever */ +- OPTBIT_B = 20, ++ OPTBIT_D = 21, + USE_FOR_MMU( OPTBIT_b,) + IF_FEATURE_UDHCPC_ARPING(OPTBIT_a,) + IF_FEATURE_UDHCP_PORT( OPTBIT_P,) +@@ -1040,7 +1044,8 @@ static void perform_renew(void) + state = RENEW_REQUESTED; + break; + case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + case REQUESTING: + case RELEASED: + change_listen_mode(LISTEN_RAW); +@@ -1064,7 +1069,8 @@ static void perform_release(uint32_t ser + bb_info_msg("Unicasting a release of %s to %s", + inet_ntoa(temp_addr), buffer); + send_release(server_addr, requested_ip); /* unicast */ +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + } + bb_info_msg("Entering released state"); + +@@ -1215,7 +1221,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c + /* O,x: list; -T,-t,-A take numeric param */ + opt_complementary = "O::x::T+:t+:A+" IF_UDHCP_VERBOSE(":vv") ; + IF_LONG_OPTS(applet_long_options = udhcpc_longopts;) +- opt = getopt32(argv, "CV:H:h:F:i:np:qRr:s:T:t:SA:O:ox:fB" ++ opt = getopt32(argv, "CV:H:h:F:i:np:qRr:s:T:t:SA:O:ox:fBD" + USE_FOR_MMU("b") + IF_FEATURE_UDHCPC_ARPING("a") + IF_FEATURE_UDHCP_PORT("P:") +@@ -1316,6 +1322,9 @@ int udhcpc_main(int argc UNUSED_PARAM, c + logmode |= LOGMODE_SYSLOG; + } + ++ if (opt & OPT_D) ++ allow_deconfig = 0; ++ + /* Make sure fd 0,1,2 are open */ + bb_sanitize_stdio(); + /* Equivalent of doing a fflush after every \n */ +@@ -1330,7 +1339,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c + srand(monotonic_us()); + + state = INIT_SELECTING; +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + change_listen_mode(LISTEN_RAW); + packet_num = 0; + timeout = 0; +@@ -1484,7 +1494,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c + } + /* Timed out, enter init state */ + bb_info_msg("Lease lost, entering init state"); +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + state = INIT_SELECTING; + client_config.first_secs = 0; /* make secs field count from 0 */ + /*timeout = 0; - already is */ +@@ -1667,7 +1678,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c + send_decline(/*xid,*/ server_addr, packet.yiaddr); + + if (state != REQUESTING) +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + change_listen_mode(LISTEN_RAW); + state = INIT_SELECTING; + client_config.first_secs = 0; /* make secs field count from 0 */ +@@ -1711,7 +1723,8 @@ int udhcpc_main(int argc UNUSED_PARAM, c + bb_info_msg("Received DHCP NAK"); + udhcp_run_script(&packet, "nak"); + if (state != REQUESTING) +- udhcp_run_script(NULL, "deconfig"); ++ if (allow_deconfig) ++ udhcp_run_script(NULL, "deconfig"); + change_listen_mode(LISTEN_RAW); + sleep(3); /* avoid excessive network traffic */ + state = INIT_SELECTING; diff --git a/meta/recipes-core/busybox/busybox/defconfig b/meta/recipes-core/busybox/busybox/defconfig new file mode 100644 index 0000000000..f0e63c2a1f --- /dev/null +++ b/meta/recipes-core/busybox/busybox/defconfig @@ -0,0 +1,1020 @@ +# +# Automatically generated make config: don't edit +# Busybox version: 1.20.2 +# Mon Aug 20 17:01:45 2012 +# +CONFIG_HAVE_DOT_CONFIG=y + +# +# Busybox Settings +# + +# +# General Configuration +# +# CONFIG_DESKTOP is not set +# CONFIG_EXTRA_COMPAT is not set +# CONFIG_INCLUDE_SUSv2 is not set +# CONFIG_USE_PORTABLE_CODE is not set +CONFIG_PLATFORM_LINUX=y +CONFIG_FEATURE_BUFFERS_USE_MALLOC=y +# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set +# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set +CONFIG_SHOW_USAGE=y +# CONFIG_FEATURE_VERBOSE_USAGE is not set +CONFIG_FEATURE_COMPRESS_USAGE=y +# CONFIG_FEATURE_INSTALLER is not set +# CONFIG_INSTALL_NO_USR is not set +# CONFIG_LOCALE_SUPPORT is not set +# CONFIG_UNICODE_SUPPORT is not set +# CONFIG_UNICODE_USING_LOCALE is not set +# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set +CONFIG_SUBST_WCHAR=0 +CONFIG_LAST_SUPPORTED_WCHAR=0 +# CONFIG_UNICODE_COMBINING_WCHARS is not set +# CONFIG_UNICODE_WIDE_WCHARS is not set +# CONFIG_UNICODE_BIDI_SUPPORT is not set +# CONFIG_UNICODE_NEUTRAL_TABLE is not set +# CONFIG_UNICODE_PRESERVE_BROKEN is not set +CONFIG_LONG_OPTS=y +CONFIG_FEATURE_DEVPTS=y +# CONFIG_FEATURE_CLEAN_UP is not set +CONFIG_FEATURE_UTMP=y +# CONFIG_FEATURE_WTMP is not set +CONFIG_FEATURE_PIDFILE=y +CONFIG_FEATURE_SUID=y +CONFIG_FEATURE_SUID_CONFIG=y +CONFIG_FEATURE_SUID_CONFIG_QUIET=y +# CONFIG_SELINUX is not set +# CONFIG_FEATURE_PREFER_APPLETS is not set +CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" +CONFIG_FEATURE_SYSLOG=y +CONFIG_FEATURE_HAVE_RPC=y + +# +# Build Options +# +# CONFIG_STATIC is not set +# CONFIG_PIE is not set +# CONFIG_NOMMU is not set +# CONFIG_BUILD_LIBBUSYBOX is not set +# CONFIG_FEATURE_INDIVIDUAL is not set +# CONFIG_FEATURE_SHARED_BUSYBOX is not set +CONFIG_LFS=y +# CONFIG_CROSS_COMPILER_PREFIX is not set +CONFIG_SYSROOT="" +# CONFIG_EXTRA_CFLAGS is not set +CONFIG_EXTRA_LDFLAGS="" +CONFIG_EXTRA_LDLIBS="" + +# +# Debugging Options +# +# CONFIG_DEBUG is not set +# CONFIG_DEBUG_PESSIMIZE is not set +# CONFIG_WERROR is not set +CONFIG_NO_DEBUG_LIB=y +# CONFIG_DMALLOC is not set +# CONFIG_EFENCE is not set + +# +# Installation Options ("make install" behavior) +# +CONFIG_INSTALL_APPLET_SYMLINKS=y +# CONFIG_INSTALL_APPLET_HARDLINKS is not set +# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set +# CONFIG_INSTALL_APPLET_DONT is not set +# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set +# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set +# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set +CONFIG_PREFIX="./_install" + +# +# Busybox Library Tuning +# +CONFIG_FEATURE_SYSTEMD=y +CONFIG_FEATURE_RTMINMAX=y +CONFIG_PASSWORD_MINLEN=6 +CONFIG_MD5_SMALL=1 +CONFIG_FEATURE_FAST_TOP=y +# CONFIG_FEATURE_ETC_NETWORKS is not set +CONFIG_FEATURE_USE_TERMIOS=y +CONFIG_FEATURE_EDITING=y +CONFIG_FEATURE_EDITING_MAX_LEN=1024 +# CONFIG_FEATURE_EDITING_VI is not set +CONFIG_FEATURE_EDITING_HISTORY=15 +CONFIG_FEATURE_EDITING_SAVEHISTORY=y +# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set +# CONFIG_FEATURE_REVERSE_SEARCH is not set +CONFIG_FEATURE_TAB_COMPLETION=y +CONFIG_FEATURE_USERNAME_COMPLETION=y +CONFIG_FEATURE_EDITING_FANCY_PROMPT=y +# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set +CONFIG_FEATURE_NON_POSIX_CP=y +# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +CONFIG_FEATURE_COPYBUF_KB=4 +CONFIG_FEATURE_SKIP_ROOTFS=y +CONFIG_MONOTONIC_SYSCALL=y +CONFIG_IOCTL_HEX2STR_ERROR=y +CONFIG_FEATURE_HWIB=y + +# +# Applets +# + +# +# Archival Utilities +# +# CONFIG_FEATURE_SEAMLESS_XZ is not set +CONFIG_FEATURE_SEAMLESS_LZMA=y +CONFIG_FEATURE_SEAMLESS_BZ2=y +CONFIG_FEATURE_SEAMLESS_GZ=y +CONFIG_FEATURE_SEAMLESS_Z=y +CONFIG_AR=y +# CONFIG_FEATURE_AR_LONG_FILENAMES is not set +# CONFIG_FEATURE_AR_CREATE is not set +CONFIG_BUNZIP2=y +# CONFIG_BZIP2 is not set +CONFIG_CPIO=y +# CONFIG_FEATURE_CPIO_O is not set +# CONFIG_FEATURE_CPIO_P is not set +# CONFIG_DPKG is not set +# CONFIG_DPKG_DEB is not set +# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set +CONFIG_GUNZIP=y +CONFIG_GZIP=y +# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set +CONFIG_GZIP_FAST=0 +# CONFIG_LZOP is not set +# CONFIG_LZOP_COMPR_HIGH is not set +# CONFIG_RPM2CPIO is not set +# CONFIG_RPM is not set +CONFIG_TAR=y +CONFIG_FEATURE_TAR_CREATE=y +CONFIG_FEATURE_TAR_AUTODETECT=y +CONFIG_FEATURE_TAR_FROM=y +CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y +# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set +CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y +# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set +# CONFIG_FEATURE_TAR_TO_COMMAND is not set +# CONFIG_FEATURE_TAR_UNAME_GNAME is not set +# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set +# CONFIG_FEATURE_TAR_SELINUX is not set +# CONFIG_UNCOMPRESS is not set +# CONFIG_UNLZMA is not set +# CONFIG_FEATURE_LZMA_FAST is not set +# CONFIG_LZMA is not set +# CONFIG_UNXZ is not set +# CONFIG_XZ is not set +CONFIG_UNZIP=y + +# +# Coreutils +# +CONFIG_BASENAME=y +CONFIG_CAT=y +CONFIG_DATE=y +# CONFIG_FEATURE_DATE_ISOFMT is not set +# CONFIG_FEATURE_DATE_NANO is not set +CONFIG_FEATURE_DATE_COMPAT=y +# CONFIG_HOSTID is not set +CONFIG_ID=y +CONFIG_GROUPS=y +CONFIG_TEST=y +CONFIG_FEATURE_TEST_64=y +CONFIG_TOUCH=y +CONFIG_FEATURE_TOUCH_SUSV3=y +CONFIG_TR=y +CONFIG_FEATURE_TR_CLASSES=y +# CONFIG_FEATURE_TR_EQUIV is not set +# CONFIG_BASE64 is not set +CONFIG_WHO=y +CONFIG_USERS=y +# CONFIG_CAL is not set +# CONFIG_CATV is not set +CONFIG_CHGRP=y +CONFIG_CHMOD=y +CONFIG_CHOWN=y +# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set +CONFIG_CHROOT=y +# CONFIG_CKSUM is not set +# CONFIG_COMM is not set +CONFIG_CP=y +# CONFIG_FEATURE_CP_LONG_OPTIONS is not set +CONFIG_CUT=y +CONFIG_DD=y +CONFIG_FEATURE_DD_SIGNAL_HANDLING=y +# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set +# CONFIG_FEATURE_DD_IBS_OBS is not set +CONFIG_DF=y +# CONFIG_FEATURE_DF_FANCY is not set +CONFIG_DIRNAME=y +# CONFIG_DOS2UNIX is not set +# CONFIG_UNIX2DOS is not set +CONFIG_DU=y +CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y +CONFIG_ECHO=y +CONFIG_FEATURE_FANCY_ECHO=y +CONFIG_ENV=y +CONFIG_FEATURE_ENV_LONG_OPTIONS=y +# CONFIG_EXPAND is not set +# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set +CONFIG_EXPR=y +CONFIG_EXPR_MATH_SUPPORT_64=y +CONFIG_FALSE=y +# CONFIG_FOLD is not set +# CONFIG_FSYNC is not set +CONFIG_HEAD=y +# CONFIG_FEATURE_FANCY_HEAD is not set +# CONFIG_INSTALL is not set +# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set +CONFIG_LN=y +CONFIG_LOGNAME=y +CONFIG_LS=y +CONFIG_FEATURE_LS_FILETYPES=y +CONFIG_FEATURE_LS_FOLLOWLINKS=y +CONFIG_FEATURE_LS_RECURSIVE=y +CONFIG_FEATURE_LS_SORTFILES=y +CONFIG_FEATURE_LS_TIMESTAMPS=y +CONFIG_FEATURE_LS_USERNAME=y +CONFIG_FEATURE_LS_COLOR=y +# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set +CONFIG_MD5SUM=y +CONFIG_MKDIR=y +CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y +CONFIG_MKFIFO=y +CONFIG_MKNOD=y +CONFIG_MV=y +# CONFIG_FEATURE_MV_LONG_OPTIONS is not set +# CONFIG_NICE is not set +CONFIG_NOHUP=y +CONFIG_OD=y +# CONFIG_PRINTENV is not set +CONFIG_PRINTF=y +CONFIG_PWD=y +CONFIG_READLINK=y +CONFIG_FEATURE_READLINK_FOLLOW=y +CONFIG_REALPATH=y +CONFIG_RM=y +CONFIG_RMDIR=y +# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set +CONFIG_SEQ=y +# CONFIG_SHA1SUM is not set +# CONFIG_SHA256SUM is not set +# CONFIG_SHA512SUM is not set +CONFIG_SLEEP=y +CONFIG_FEATURE_FANCY_SLEEP=y +# CONFIG_FEATURE_FLOAT_SLEEP is not set +CONFIG_SORT=y +CONFIG_FEATURE_SORT_BIG=y +# CONFIG_SPLIT is not set +# CONFIG_FEATURE_SPLIT_FANCY is not set +CONFIG_STAT=y +CONFIG_FEATURE_STAT_FORMAT=y +CONFIG_STTY=y +# CONFIG_SUM is not set +CONFIG_SYNC=y +# CONFIG_TAC is not set +CONFIG_TAIL=y +CONFIG_FEATURE_FANCY_TAIL=y +CONFIG_TEE=y +# CONFIG_FEATURE_TEE_USE_BLOCK_IO is not set +CONFIG_TRUE=y +CONFIG_TTY=y +CONFIG_UNAME=y +# CONFIG_UNEXPAND is not set +# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set +CONFIG_UNIQ=y +CONFIG_USLEEP=y +# CONFIG_UUDECODE is not set +# CONFIG_UUENCODE is not set +CONFIG_WC=y +# CONFIG_FEATURE_WC_LARGE is not set +CONFIG_WHOAMI=y +CONFIG_YES=y + +# +# Common options for cp and mv +# +# CONFIG_FEATURE_PRESERVE_HARDLINKS is not set + +# +# Common options for ls, more and telnet +# +CONFIG_FEATURE_AUTOWIDTH=y + +# +# Common options for df, du, ls +# +CONFIG_FEATURE_HUMAN_READABLE=y + +# +# Common options for md5sum, sha1sum, sha256sum, sha512sum +# +CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y + +# +# Console Utilities +# +CONFIG_CHVT=y +# CONFIG_FGCONSOLE is not set +CONFIG_CLEAR=y +CONFIG_DEALLOCVT=y +CONFIG_DUMPKMAP=y +# CONFIG_KBD_MODE is not set +CONFIG_LOADFONT=y +CONFIG_LOADKMAP=y +CONFIG_OPENVT=y +CONFIG_RESET=y +# CONFIG_RESIZE is not set +# CONFIG_FEATURE_RESIZE_PRINT is not set +CONFIG_SETCONSOLE=y +# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set +# CONFIG_SETFONT is not set +# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set +CONFIG_DEFAULT_SETFONT_DIR="" +# CONFIG_SETKEYCODES is not set +# CONFIG_SETLOGCONS is not set +# CONFIG_SHOWKEY is not set + +# +# Common options for loadfont and setfont +# +# CONFIG_FEATURE_LOADFONT_PSF2 is not set +# CONFIG_FEATURE_LOADFONT_RAW is not set + +# +# Debian Utilities +# +CONFIG_MKTEMP=y +# CONFIG_PIPE_PROGRESS is not set +CONFIG_RUN_PARTS=y +CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y +# CONFIG_FEATURE_RUN_PARTS_FANCY is not set +CONFIG_START_STOP_DAEMON=y +CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y +CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y +CONFIG_WHICH=y + +# +# Editors +# +CONFIG_PATCH=y +CONFIG_VI=y +CONFIG_FEATURE_VI_MAX_LEN=1024 +CONFIG_FEATURE_VI_8BIT=y +CONFIG_FEATURE_VI_COLON=y +CONFIG_FEATURE_VI_YANKMARK=y +CONFIG_FEATURE_VI_SEARCH=y +# CONFIG_FEATURE_VI_REGEX_SEARCH is not set +CONFIG_FEATURE_VI_USE_SIGNALS=y +# CONFIG_FEATURE_VI_DOT_CMD is not set +# CONFIG_FEATURE_VI_READONLY is not set +# CONFIG_FEATURE_VI_SETOPTS is not set +# CONFIG_FEATURE_VI_SET is not set +CONFIG_FEATURE_VI_WIN_RESIZE=y +# CONFIG_FEATURE_VI_ASK_TERMINAL is not set +CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y +CONFIG_AWK=y +# CONFIG_FEATURE_AWK_LIBM is not set +CONFIG_CMP=y +CONFIG_DIFF=y +# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set +CONFIG_FEATURE_DIFF_DIR=y +# CONFIG_ED is not set +CONFIG_SED=y +CONFIG_FEATURE_ALLOW_EXEC=y + +# +# Finding Utilities +# +CONFIG_FIND=y +CONFIG_FEATURE_FIND_PRINT0=y +CONFIG_FEATURE_FIND_MTIME=y +CONFIG_FEATURE_FIND_MMIN=y +CONFIG_FEATURE_FIND_PERM=y +CONFIG_FEATURE_FIND_TYPE=y +CONFIG_FEATURE_FIND_XDEV=y +CONFIG_FEATURE_FIND_MAXDEPTH=y +CONFIG_FEATURE_FIND_NEWER=y +# CONFIG_FEATURE_FIND_INUM is not set +CONFIG_FEATURE_FIND_EXEC=y +CONFIG_FEATURE_FIND_USER=y +CONFIG_FEATURE_FIND_GROUP=y +CONFIG_FEATURE_FIND_NOT=y +CONFIG_FEATURE_FIND_DEPTH=y +CONFIG_FEATURE_FIND_PAREN=y +CONFIG_FEATURE_FIND_SIZE=y +CONFIG_FEATURE_FIND_PRUNE=y +# CONFIG_FEATURE_FIND_DELETE is not set +CONFIG_FEATURE_FIND_PATH=y +CONFIG_FEATURE_FIND_REGEX=y +# CONFIG_FEATURE_FIND_CONTEXT is not set +# CONFIG_FEATURE_FIND_LINKS is not set +CONFIG_GREP=y +CONFIG_FEATURE_GREP_EGREP_ALIAS=y +CONFIG_FEATURE_GREP_FGREP_ALIAS=y +CONFIG_FEATURE_GREP_CONTEXT=y +CONFIG_XARGS=y +# CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set +# CONFIG_FEATURE_XARGS_SUPPORT_QUOTES is not set +# CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is not set +# CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM is not set + +# +# Init Utilities +# +# CONFIG_BOOTCHARTD is not set +# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set +# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set +CONFIG_HALT=y +# CONFIG_FEATURE_CALL_TELINIT is not set +CONFIG_TELINIT_PATH="" +# CONFIG_INIT is not set +# CONFIG_FEATURE_USE_INITTAB is not set +# CONFIG_FEATURE_KILL_REMOVED is not set +CONFIG_FEATURE_KILL_DELAY=0 +# CONFIG_FEATURE_INIT_SCTTY is not set +# CONFIG_FEATURE_INIT_SYSLOG is not set +# CONFIG_FEATURE_EXTRA_QUIET is not set +# CONFIG_FEATURE_INIT_COREDUMPS is not set +# CONFIG_FEATURE_INITRD is not set +CONFIG_INIT_TERMINAL_TYPE="" +# CONFIG_MESG is not set +# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set + +# +# Login/Password Management Utilities +# +# CONFIG_ADD_SHELL is not set +# CONFIG_REMOVE_SHELL is not set +# CONFIG_FEATURE_SHADOWPASSWDS is not set +# CONFIG_USE_BB_PWD_GRP is not set +# CONFIG_USE_BB_SHADOW is not set +CONFIG_USE_BB_CRYPT=y +# CONFIG_USE_BB_CRYPT_SHA is not set +# CONFIG_ADDUSER is not set +# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set +# CONFIG_FEATURE_CHECK_NAMES is not set +CONFIG_FIRST_SYSTEM_ID=100 +CONFIG_LAST_SYSTEM_ID=999 +# CONFIG_ADDGROUP is not set +# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set +# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_DELUSER is not set +# CONFIG_DELGROUP is not set +# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set +# CONFIG_GETTY is not set +# CONFIG_LOGIN is not set +# CONFIG_LOGIN_SESSION_AS_CHILD is not set +# CONFIG_PAM is not set +# CONFIG_LOGIN_SCRIPTS is not set +# CONFIG_FEATURE_NOLOGIN is not set +# CONFIG_FEATURE_SECURETTY is not set +# CONFIG_PASSWD is not set +# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set +# CONFIG_CRYPTPW is not set +# CONFIG_CHPASSWD is not set +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="" +# CONFIG_SU is not set +# CONFIG_FEATURE_SU_SYSLOG is not set +# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set +# CONFIG_SULOGIN is not set +# CONFIG_VLOCK is not set + +# +# Linux Ext2 FS Progs +# +CONFIG_CHATTR=y +CONFIG_FSCK=y +# CONFIG_LSATTR is not set +# CONFIG_TUNE2FS is not set + +# +# Linux Module Utilities +# +# CONFIG_MODINFO is not set +# CONFIG_MODPROBE_SMALL is not set +# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set +# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set +CONFIG_INSMOD=y +CONFIG_RMMOD=y +CONFIG_LSMOD=y +# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set +CONFIG_MODPROBE=y +# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set +CONFIG_DEPMOD=y + +# +# 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 +# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set +# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set +CONFIG_FEATURE_CHECK_TAINTED_MODULE=y +CONFIG_FEATURE_MODUTILS_ALIAS=y +CONFIG_FEATURE_MODUTILS_SYMBOLS=y +CONFIG_DEFAULT_MODULES_DIR="/lib/modules" +CONFIG_DEFAULT_DEPMOD_FILE="modules.dep" + +# +# Linux System Utilities +# +# CONFIG_BLOCKDEV is not set +# CONFIG_MDEV is not set +# CONFIG_FEATURE_MDEV_CONF is not set +# CONFIG_FEATURE_MDEV_RENAME is not set +# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set +# CONFIG_FEATURE_MDEV_EXEC is not set +# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +# CONFIG_REV is not set +# CONFIG_ACPID is not set +# CONFIG_FEATURE_ACPID_COMPAT is not set +# CONFIG_BLKID is not set +# CONFIG_FEATURE_BLKID_TYPE is not set +CONFIG_DMESG=y +CONFIG_FEATURE_DMESG_PRETTY=y +CONFIG_FBSET=y +CONFIG_FEATURE_FBSET_FANCY=y +CONFIG_FEATURE_FBSET_READMODE=y +# CONFIG_FDFLUSH is not set +# CONFIG_FDFORMAT is not set +CONFIG_FDISK=y +# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set +CONFIG_FEATURE_FDISK_WRITABLE=y +# CONFIG_FEATURE_AIX_LABEL is not set +# CONFIG_FEATURE_SGI_LABEL is not set +# CONFIG_FEATURE_SUN_LABEL is not set +# CONFIG_FEATURE_OSF_LABEL is not set +# CONFIG_FEATURE_GPT_LABEL is not set +# CONFIG_FEATURE_FDISK_ADVANCED is not set +# CONFIG_FINDFS is not set +CONFIG_FLOCK=y +# CONFIG_FREERAMDISK is not set +CONFIG_FSCK_MINIX=y +# CONFIG_MKFS_EXT2 is not set +CONFIG_MKFS_MINIX=y +CONFIG_FEATURE_MINIX2=y +# CONFIG_MKFS_REISER is not set +# CONFIG_MKFS_VFAT is not set +# CONFIG_GETOPT is not set +# CONFIG_FEATURE_GETOPT_LONG is not set +CONFIG_HEXDUMP=y +# CONFIG_FEATURE_HEXDUMP_REVERSE is not set +# CONFIG_HD is not set +CONFIG_HWCLOCK=y +CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y +CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y +# CONFIG_IPCRM is not set +# CONFIG_IPCS is not set +CONFIG_LOSETUP=y +# CONFIG_LSPCI is not set +# CONFIG_LSUSB is not set +CONFIG_MKSWAP=y +# CONFIG_FEATURE_MKSWAP_UUID is not set +CONFIG_MORE=y +CONFIG_MOUNT=y +# CONFIG_FEATURE_MOUNT_FAKE is not set +# CONFIG_FEATURE_MOUNT_VERBOSE is not set +# CONFIG_FEATURE_MOUNT_HELPERS is not set +# CONFIG_FEATURE_MOUNT_LABEL is not set +CONFIG_FEATURE_MOUNT_NFS=y +# CONFIG_FEATURE_MOUNT_CIFS is not set +CONFIG_FEATURE_MOUNT_FLAGS=y +CONFIG_FEATURE_MOUNT_FSTAB=y +CONFIG_PIVOT_ROOT=y +CONFIG_RDATE=y +# CONFIG_RDEV is not set +# CONFIG_READPROFILE is not set +# CONFIG_RTCWAKE is not set +# CONFIG_SCRIPT is not set +# CONFIG_SCRIPTREPLAY is not set +# CONFIG_SETARCH is not set +CONFIG_SWAPONOFF=y +CONFIG_FEATURE_SWAPON_PRI=y +CONFIG_SWITCH_ROOT=y +CONFIG_UMOUNT=y +CONFIG_FEATURE_UMOUNT_ALL=y + +# +# Common options for mount/umount +# +CONFIG_FEATURE_MOUNT_LOOP=y +CONFIG_FEATURE_MOUNT_LOOP_CREATE=y +# CONFIG_FEATURE_MTAB_SUPPORT is not set +# CONFIG_VOLUMEID is not set +# CONFIG_FEATURE_VOLUMEID_EXT is not set +# CONFIG_FEATURE_VOLUMEID_BTRFS is not set +# CONFIG_FEATURE_VOLUMEID_REISERFS is not set +# CONFIG_FEATURE_VOLUMEID_FAT is not set +# CONFIG_FEATURE_VOLUMEID_HFS is not set +# CONFIG_FEATURE_VOLUMEID_JFS is not set +# CONFIG_FEATURE_VOLUMEID_XFS is not set +# CONFIG_FEATURE_VOLUMEID_NTFS is not set +# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set +# CONFIG_FEATURE_VOLUMEID_UDF is not set +# CONFIG_FEATURE_VOLUMEID_LUKS is not set +# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set +# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set +# CONFIG_FEATURE_VOLUMEID_ROMFS is not set +# CONFIG_FEATURE_VOLUMEID_SYSV is not set +# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set +# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set + +# +# Miscellaneous Utilities +# +# CONFIG_CONSPY is not set +CONFIG_LESS=y +CONFIG_FEATURE_LESS_MAXLINES=9999999 +CONFIG_FEATURE_LESS_BRACKETS=y +CONFIG_FEATURE_LESS_FLAGS=y +# CONFIG_FEATURE_LESS_MARKS is not set +# CONFIG_FEATURE_LESS_REGEXP is not set +# CONFIG_FEATURE_LESS_WINCH is not set +# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set +# CONFIG_FEATURE_LESS_DASHCMD is not set +# CONFIG_FEATURE_LESS_LINENUMS is not set +# CONFIG_NANDWRITE is not set +# CONFIG_NANDDUMP is not set +# CONFIG_SETSERIAL is not set +# CONFIG_UBIATTACH is not set +# CONFIG_UBIDETACH is not set +# CONFIG_UBIMKVOL is not set +# CONFIG_UBIRMVOL is not set +# CONFIG_UBIRSVOL is not set +# CONFIG_UBIUPDATEVOL is not set +# CONFIG_ADJTIMEX is not set +# CONFIG_BBCONFIG is not set +# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set +# CONFIG_BEEP is not set +CONFIG_FEATURE_BEEP_FREQ=0 +CONFIG_FEATURE_BEEP_LENGTH_MS=0 +# CONFIG_CHAT 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 +# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set +# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set +# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set +# CONFIG_FEATURE_CHAT_CLR_ABORT is not set +# CONFIG_CHRT is not set +# CONFIG_CROND is not set +# CONFIG_FEATURE_CROND_D is not set +# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set +CONFIG_FEATURE_CROND_DIR="" +# CONFIG_CRONTAB is not set +CONFIG_DC=y +# CONFIG_FEATURE_DC_LIBM is not set +# CONFIG_DEVFSD is not set +# CONFIG_DEVFSD_MODLOAD is not set +# CONFIG_DEVFSD_FG_NP is not set +# CONFIG_DEVFSD_VERBOSE is not set +# CONFIG_FEATURE_DEVFS is not set +# CONFIG_DEVMEM is not set +# CONFIG_EJECT is not set +# CONFIG_FEATURE_EJECT_SCSI is not set +# CONFIG_FBSPLASH is not set +# CONFIG_FLASHCP is not set +# CONFIG_FLASH_LOCK is not set +# CONFIG_FLASH_UNLOCK is not set +# CONFIG_FLASH_ERASEALL is not set +# CONFIG_IONICE is not set +# CONFIG_INOTIFYD is not set +# CONFIG_LAST is not set +# CONFIG_FEATURE_LAST_SMALL is not set +# CONFIG_FEATURE_LAST_FANCY is not set +# CONFIG_HDPARM is not set +# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set +# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set +# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set +# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set +# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set +# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set +# CONFIG_MAKEDEVS is not set +# CONFIG_FEATURE_MAKEDEVS_LEAF is not set +# CONFIG_FEATURE_MAKEDEVS_TABLE is not set +# CONFIG_MAN is not set +CONFIG_MICROCOM=y +# CONFIG_MOUNTPOINT is not set +# CONFIG_MT is not set +# CONFIG_RAIDAUTORUN is not set +# CONFIG_READAHEAD is not set +CONFIG_RFKILL=y +# CONFIG_RUNLEVEL is not set +# CONFIG_RX is not set +# CONFIG_SETSID is not set +CONFIG_STRINGS=y +# CONFIG_TASKSET is not set +# CONFIG_FEATURE_TASKSET_FANCY is not set +CONFIG_TIME=y +# CONFIG_TIMEOUT is not set +# CONFIG_TTYSIZE is not set +# CONFIG_VOLNAME is not set +# CONFIG_WALL is not set +# CONFIG_WATCHDOG is not set + +# +# Networking Utilities +# +# CONFIG_NAMEIF is not set +# CONFIG_FEATURE_NAMEIF_EXTENDED is not set +# CONFIG_NBDCLIENT is not set +CONFIG_NC=y +# CONFIG_NC_SERVER is not set +# CONFIG_NC_EXTRA is not set +# CONFIG_NC_110_COMPAT is not set +CONFIG_PING=y +CONFIG_PING6=y +CONFIG_FEATURE_FANCY_PING=y +# CONFIG_WHOIS is not set +CONFIG_FEATURE_IPV6=y +# CONFIG_FEATURE_UNIX_LOCAL is not set +CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y +# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set +# CONFIG_ARP is not set +# CONFIG_ARPING is not set +# CONFIG_BRCTL is not set +# CONFIG_FEATURE_BRCTL_FANCY is not set +# CONFIG_FEATURE_BRCTL_SHOW is not set +# CONFIG_DNSD is not set +# CONFIG_ETHER_WAKE is not set +# CONFIG_FAKEIDENTD is not set +# CONFIG_FTPD is not set +# CONFIG_FEATURE_FTP_WRITE is not set +# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set +# CONFIG_FTPGET is not set +# CONFIG_FTPPUT is not set +# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set +CONFIG_HOSTNAME=y +# CONFIG_HTTPD is not set +# CONFIG_FEATURE_HTTPD_RANGES is not set +# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set +# CONFIG_FEATURE_HTTPD_SETUID is not set +# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set +# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set +# CONFIG_FEATURE_HTTPD_CGI is not set +# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set +# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set +# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set +# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set +# CONFIG_FEATURE_HTTPD_PROXY is not set +# CONFIG_FEATURE_HTTPD_GZIP is not set +CONFIG_IFCONFIG=y +CONFIG_FEATURE_IFCONFIG_STATUS=y +# CONFIG_FEATURE_IFCONFIG_SLIP is not set +# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set +CONFIG_FEATURE_IFCONFIG_HW=y +# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set +# CONFIG_IFENSLAVE is not set +# CONFIG_IFPLUGD is not set +CONFIG_IFUPDOWN=y +CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate" +# CONFIG_FEATURE_IFUPDOWN_IP is not set +# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set +CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN=y +CONFIG_FEATURE_IFUPDOWN_IPV4=y +CONFIG_FEATURE_IFUPDOWN_IPV6=y +CONFIG_FEATURE_IFUPDOWN_MAPPING=y +# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set +# CONFIG_INETD is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set +# CONFIG_FEATURE_INETD_RPC is not set +CONFIG_IP=y +CONFIG_FEATURE_IP_ADDRESS=y +CONFIG_FEATURE_IP_LINK=y +CONFIG_FEATURE_IP_ROUTE=y +CONFIG_FEATURE_IP_TUNNEL=y +# CONFIG_FEATURE_IP_RULE is not set +# CONFIG_FEATURE_IP_SHORT_FORMS is not set +# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set +# CONFIG_IPADDR is not set +# CONFIG_IPLINK is not set +# CONFIG_IPROUTE is not set +# CONFIG_IPTUNNEL is not set +# CONFIG_IPRULE is not set +# CONFIG_IPCALC is not set +# CONFIG_FEATURE_IPCALC_FANCY is not set +# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set +CONFIG_NETSTAT=y +# CONFIG_FEATURE_NETSTAT_WIDE is not set +# CONFIG_FEATURE_NETSTAT_PRG is not set +CONFIG_NSLOOKUP=y +# CONFIG_NTPD is not set +# CONFIG_FEATURE_NTPD_SERVER is not set +# CONFIG_PSCAN is not set +CONFIG_ROUTE=y +# CONFIG_SLATTACH is not set +# CONFIG_TCPSVD is not set +CONFIG_TELNET=y +# CONFIG_FEATURE_TELNET_TTYPE is not set +CONFIG_FEATURE_TELNET_AUTOLOGIN=y +# CONFIG_TELNETD is not set +# CONFIG_FEATURE_TELNETD_STANDALONE is not set +# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set +CONFIG_TFTP=y +# CONFIG_TFTPD is not set + +# +# Common options for tftp/tftpd +# +CONFIG_FEATURE_TFTP_GET=y +CONFIG_FEATURE_TFTP_PUT=y +# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set +# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set +# CONFIG_TFTP_DEBUG is not set +CONFIG_TRACEROUTE=y +# CONFIG_TRACEROUTE6 is not set +# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set +# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set +# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set +# CONFIG_TUNCTL is not set +# CONFIG_FEATURE_TUNCTL_UG is not set +# CONFIG_UDHCPC6 is not set +CONFIG_UDHCPD=y +# CONFIG_DHCPRELAY is not set +CONFIG_DUMPLEASES=y +# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set +# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set +CONFIG_DHCPD_LEASES_FILE="/var/lib/misc/udhcpd.leases" +CONFIG_UDHCPC=y +CONFIG_FEATURE_UDHCPC_ARPING=y +# CONFIG_FEATURE_UDHCP_PORT is not set +CONFIG_UDHCP_DEBUG=0 +# CONFIG_FEATURE_UDHCP_RFC3397 is not set +# CONFIG_FEATURE_UDHCP_8021Q is not set +CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" +CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 +CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" +# CONFIG_UDPSVD is not set +# CONFIG_VCONFIG is not set +CONFIG_WGET=y +CONFIG_FEATURE_WGET_STATUSBAR=y +CONFIG_FEATURE_WGET_AUTHENTICATION=y +CONFIG_FEATURE_WGET_LONG_OPTIONS=y +CONFIG_FEATURE_WGET_TIMEOUT=y +# CONFIG_ZCIP is not set + +# +# Print Utilities +# +# CONFIG_LPD is not set +# CONFIG_LPR is not set +# CONFIG_LPQ is not set + +# +# Mail Utilities +# +# CONFIG_MAKEMIME is not set +CONFIG_FEATURE_MIME_CHARSET="" +# CONFIG_POPMAILDIR is not set +# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set +# CONFIG_REFORMIME is not set +# CONFIG_FEATURE_REFORMIME_COMPAT is not set +# CONFIG_SENDMAIL is not set + +# +# Process Utilities +# +# CONFIG_IOSTAT is not set +# CONFIG_LSOF is not set +# CONFIG_MPSTAT is not set +# CONFIG_NMETER is not set +# CONFIG_PMAP is not set +# CONFIG_POWERTOP is not set +# CONFIG_PSTREE is not set +# CONFIG_PWDX is not set +# CONFIG_SMEMCAP is not set +CONFIG_UPTIME=y +# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set +CONFIG_FREE=y +CONFIG_FUSER=y +CONFIG_KILL=y +CONFIG_KILLALL=y +# CONFIG_KILLALL5 is not set +# CONFIG_PGREP is not set +CONFIG_PIDOF=y +# CONFIG_FEATURE_PIDOF_SINGLE is not set +# CONFIG_FEATURE_PIDOF_OMIT is not set +# CONFIG_PKILL is not set +CONFIG_PS=y +CONFIG_FEATURE_PS_WIDE=y +CONFIG_FEATURE_PS_LONG=y +# CONFIG_FEATURE_PS_TIME is not set +# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set +# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set +CONFIG_RENICE=y +CONFIG_BB_SYSCTL=y +CONFIG_TOP=y +CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y +CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y +# CONFIG_FEATURE_TOP_SMP_CPU is not set +# CONFIG_FEATURE_TOP_DECIMALS is not set +# CONFIG_FEATURE_TOP_SMP_PROCESS is not set +# CONFIG_FEATURE_TOPMEM is not set +# CONFIG_FEATURE_SHOW_THREADS is not set +CONFIG_WATCH=y + +# +# Runit Utilities +# +# CONFIG_RUNSV is not set +# CONFIG_RUNSVDIR is not set +# CONFIG_FEATURE_RUNSVDIR_LOG is not set +# CONFIG_SV is not set +CONFIG_SV_DEFAULT_SERVICE_DIR="" +# CONFIG_SVLOGD is not set +# CONFIG_CHPST is not set +# CONFIG_SETUIDGID is not set +# CONFIG_ENVUIDGID is not set +# CONFIG_ENVDIR is not set +# CONFIG_SOFTLIMIT is not set +# CONFIG_CHCON is not set +# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set +# CONFIG_GETENFORCE is not set +# CONFIG_GETSEBOOL is not set +# CONFIG_LOAD_POLICY is not set +# CONFIG_MATCHPATHCON is not set +# CONFIG_RESTORECON is not set +# CONFIG_RUNCON is not set +# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set +# CONFIG_SELINUXENABLED is not set +# CONFIG_SETENFORCE is not set +# CONFIG_SETFILES is not set +# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_SETSEBOOL is not set +# CONFIG_SESTATUS is not set + +# +# Shells +# +CONFIG_ASH=y +CONFIG_ASH_BASH_COMPAT=y +# CONFIG_ASH_IDLE_TIMEOUT is not set +CONFIG_ASH_JOB_CONTROL=y +CONFIG_ASH_ALIAS=y +CONFIG_ASH_GETOPTS=y +CONFIG_ASH_BUILTIN_ECHO=y +CONFIG_ASH_BUILTIN_PRINTF=y +CONFIG_ASH_BUILTIN_TEST=y +# CONFIG_ASH_CMDCMD is not set +# CONFIG_ASH_MAIL is not set +CONFIG_ASH_OPTIMIZE_FOR_SIZE=y +# CONFIG_ASH_RANDOM_SUPPORT is not set +CONFIG_ASH_EXPAND_PRMT=y +# CONFIG_CTTYHACK is not set +# CONFIG_HUSH is not set +# CONFIG_HUSH_BASH_COMPAT is not set +# CONFIG_HUSH_BRACE_EXPANSION is not set +# CONFIG_HUSH_HELP is not set +# CONFIG_HUSH_INTERACTIVE is not set +# CONFIG_HUSH_SAVEHISTORY is not set +# CONFIG_HUSH_JOB is not set +# CONFIG_HUSH_TICK is not set +# CONFIG_HUSH_IF is not set +# CONFIG_HUSH_LOOPS is not set +# CONFIG_HUSH_CASE is not set +# CONFIG_HUSH_FUNCTIONS is not set +# CONFIG_HUSH_LOCAL is not set +# CONFIG_HUSH_RANDOM_SUPPORT is not set +# CONFIG_HUSH_EXPORT_N is not set +# CONFIG_HUSH_MODE_X is not set +# CONFIG_MSH is not set +CONFIG_FEATURE_SH_IS_ASH=y +# CONFIG_FEATURE_SH_IS_HUSH is not set +# CONFIG_FEATURE_SH_IS_NONE is not set +# CONFIG_FEATURE_BASH_IS_ASH is not set +# CONFIG_FEATURE_BASH_IS_HUSH is not set +CONFIG_FEATURE_BASH_IS_NONE=y +CONFIG_SH_MATH_SUPPORT=y +# CONFIG_SH_MATH_SUPPORT_64 is not set +CONFIG_FEATURE_SH_EXTRA_QUIET=y +# CONFIG_FEATURE_SH_STANDALONE is not set +# CONFIG_FEATURE_SH_NOFORK is not set +CONFIG_FEATURE_SH_HISTFILESIZE=y + +# +# System Logging Utilities +# +CONFIG_SYSLOGD=y +CONFIG_FEATURE_ROTATE_LOGFILE=y +CONFIG_FEATURE_REMOTE_LOG=y +CONFIG_FEATURE_SYSLOGD_DUP=y +CONFIG_FEATURE_SYSLOGD_CFG=y +CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 +CONFIG_FEATURE_IPC_SYSLOG=y +CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=64 +CONFIG_LOGREAD=y +CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y +CONFIG_KLOGD=y +CONFIG_FEATURE_KLOGD_KLOGCTL=y +CONFIG_LOGGER=y diff --git a/meta/recipes-core/busybox/busybox/fail_on_no_media.patch b/meta/recipes-core/busybox/busybox/fail_on_no_media.patch new file mode 100644 index 0000000000..6745f169fe --- /dev/null +++ b/meta/recipes-core/busybox/busybox/fail_on_no_media.patch @@ -0,0 +1,31 @@ +Upstream-Status: Pending + +The current behaviour of busybox is to try all fstype when automounting +even when no media exists. The util-linux mount command bails when no +media exists, so change the behaviour of busybox to do the same. + +It could also be argued that the KERN_INFO message from btrfs could be +removed, but that would be harder to accomplish. + +Signed-off-by: Saul Wold + + +Index: busybox-1.20.2/util-linux/mount.c +=================================================================== +--- busybox-1.20.2.orig/util-linux/mount.c ++++ busybox-1.20.2/util-linux/mount.c +@@ -598,7 +598,13 @@ static int mount_it_now(struct mntent *m + break; + errno = errno_save; + } +- ++ /* ++ * Break if there is no media, no point retrying for all ++ * fs types since there is no media available ++ */ ++ if (rc == -1 && errno == ENOMEDIUM) { ++ bb_perror_msg_and_die("mounting %s on %s failed", mp->mnt_fsname, mp->mnt_dir); ++ } + if (!rc || (vfsflags & MS_RDONLY) || (errno != EACCES && errno != EROFS)) + break; + if (!(vfsflags & MS_SILENT)) diff --git a/meta/recipes-core/busybox/busybox/get_header_tar.patch b/meta/recipes-core/busybox/busybox/get_header_tar.patch new file mode 100644 index 0000000000..0e528ff91f --- /dev/null +++ b/meta/recipes-core/busybox/busybox/get_header_tar.patch @@ -0,0 +1,22 @@ +Upstream-Status: Pending + +# copy commit message from OE as the patch comment: +# commit 5a0e1d473ca7aca5ffefffe9a2ec44ae7a1f35bc +# Author: Frans Meulenbroeks +# Date: Wed Feb 11 22:40:21 2009 +0100 +# +# busybox: fix tar problem with filenames that are exactly 100 bytes +# +# above comment added by Kevin Tian , 2010-07-06 + +--- busybox-1.13.2/archival/libarchive/get_header_tar.c.orig 2008-11-09 18:28:02.000000000 +0100 ++++ busybox-1.13.2/archival/libarchive/get_header_tar.c 2009-02-11 22:34:52.000000000 +0100 +@@ -252,6 +252,8 @@ + file_header->name = concat_path_file(tar.prefix, tar.name); + } else + file_header->name = xstrdup(tar.name); ++ if (strlen(file_header->name) > 100) ++ file_header->name[100] = 0; + } + + /* Set bits 12-15 of the files mode */ diff --git a/meta/recipes-core/busybox/busybox/login-utilities.cfg b/meta/recipes-core/busybox/busybox/login-utilities.cfg new file mode 100644 index 0000000000..cc9b2db502 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/login-utilities.cfg @@ -0,0 +1,13 @@ +CONFIG_FEATURE_SHADOWPASSWDS=y +CONFIG_ADDUSER=y +CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y +CONFIG_ADDGROUP=y +CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y +CONFIG_DELUSER=y +CONFIG_DELGROUP=y +CONFIG_GETTY=y +CONFIG_LOGIN=y +CONFIG_PASSWD=y +CONFIG_SU=y +CONFIG_SULOGIN=y +CONFIG_VLOCK=y diff --git a/meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch b/meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch new file mode 100644 index 0000000000..45f69a937c --- /dev/null +++ b/meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch @@ -0,0 +1,29 @@ +Upstream-Status: Inappropriate [configuration] + +# copy commit message from OE as the patch comment: +# commit f1b326c83be0d95571b991d8d2ee239982380b6b +# Author: Martin Jansa +# Date: Fri Apr 30 15:37:38 2010 +0200 +# +# busybox: add patch for installing run-parts to /usr/bin/ instead of /bin +# +# * otherwise debianutils install will fail with +# update-alternatives: Error: cannot register alternative run-parts to /usr/bin/run-parts since it is +# +# Signed-off-by: Martin Jansa +# +# Poky doesn't have debianutils, but let's keep it for safety +# above comment added by Kevin Tian , 2010-07-06 + +diff -uNr busybox-1.15.3.orig//include/applets.src.h busybox-1.15.3/include/applets.src.h +--- busybox-1.15.3.orig//include/applets.src.h 2009-12-12 22:13:28.000000000 +0100 ++++ busybox-1.15.3/include/applets.src.h 2010-04-30 15:35:40.000000000 +0200 +@@ -304,7 +304,7 @@ + IF_RPM(APPLET(rpm, BB_DIR_BIN, BB_SUID_DROP)) + IF_RPM2CPIO(APPLET(rpm2cpio, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_RTCWAKE(APPLET(rtcwake, BB_DIR_USR_SBIN, BB_SUID_DROP)) +-IF_RUN_PARTS(APPLET_ODDNAME(run-parts, run_parts, BB_DIR_BIN, BB_SUID_DROP, run_parts)) ++IF_RUN_PARTS(APPLET_ODDNAME(run-parts, run_parts, BB_DIR_USR_BIN, BB_SUID_DROP, run_parts)) + IF_RUNCON(APPLET(runcon, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_RUNLEVEL(APPLET(runlevel, BB_DIR_SBIN, BB_SUID_DROP)) + IF_RUNSV(APPLET(runsv, BB_DIR_USR_BIN, _BB_SUID_DROP)) diff --git a/meta/recipes-core/busybox/busybox/stat-usr-bin.patch b/meta/recipes-core/busybox/busybox/stat-usr-bin.patch new file mode 100644 index 0000000000..4049324e8b --- /dev/null +++ b/meta/recipes-core/busybox/busybox/stat-usr-bin.patch @@ -0,0 +1,21 @@ +busybox: move /bin/stat to /usr/bin/stat to match coreutils + +The coreutils stat binary lives in /usr/bin, fix busybox to use the same path so +they can be properly tracked by alternatives. + +Upstream-Status: Inappropriate [embedded] +Signed-off-by: Andy Ross + +diff --git a/include/applets.src.h b/include/applets.src.h +index 0d33bfc..30ae3ad 100644 +--- a/include/applets.src.h ++++ b/include/applets.src.h +@@ -340,7 +340,7 @@ IF_SOFTLIMIT(APPLET_ODDNAME(softlimit, chpst, BB_DIR_USR_BIN, BB_SUID_DROP, soft + IF_SORT(APPLET_NOEXEC(sort, sort, BB_DIR_USR_BIN, BB_SUID_DROP, sort)) + IF_SPLIT(APPLET(split, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_START_STOP_DAEMON(APPLET_ODDNAME(start-stop-daemon, start_stop_daemon, BB_DIR_SBIN, BB_SUID_DROP, start_stop_daemon)) +-IF_STAT(APPLET(stat, BB_DIR_BIN, BB_SUID_DROP)) ++IF_STAT(APPLET(stat, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_STRINGS(APPLET(strings, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_STTY(APPLET(stty, BB_DIR_BIN, BB_SUID_DROP)) + /* Needs to be run by root or be suid root - needs to change uid and gid: */ diff --git a/meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch b/meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch new file mode 100644 index 0000000000..070c41be07 --- /dev/null +++ b/meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch @@ -0,0 +1,35 @@ +Upstream-Status: Accepted + +[Yocto 2896] + +Signed-off-by: Kang Kai +--- +From 03b614739b923994ff0bef74622973ad18fefebd Mon Sep 17 00:00:00 2001 +From: Kang Kai +Date: Mon, 28 Jan 2013 14:02:51 +0100 +Subject: [PATCH] testsuite/du/du-k-works: fix false positive + +Signed-off-by: Kang Kai +Signed-off-by: Denys Vlasenko +--- + testsuite/du/du-k-works | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/testsuite/du/du-k-works b/testsuite/du/du-k-works +index 36dcaa8..417b0da 100644 +--- a/testsuite/du/du-k-works ++++ b/testsuite/du/du-k-works +@@ -2,6 +2,10 @@ mkdir du.testdir + cd du.testdir + dd if=/dev/zero of=file1 bs=1k count=64 2>/dev/null + dd if=/dev/zero of=file2 bs=1k count=16 2>/dev/null ++# ext4 on images <512M gives 81kb ++# ext3 on images <512M gives 83kb + test x"`busybox du -k .`" = x"80 ." \ ++ -o x"`busybox du -k .`" = x"81 ." \ ++ -o x"`busybox du -k .`" = x"83 ." \ + -o x"`busybox du -k .`" = x"84 ." \ + -o x"`busybox du -k .`" = x"88 ." +-- +1.7.5.4 + diff --git a/meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch b/meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch new file mode 100644 index 0000000000..e8e1edfb7e --- /dev/null +++ b/meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch @@ -0,0 +1,29 @@ +Upstream-Status: Inappropriate [configuration] + +From f2372ab626a395d067704f4c318180fb6039de15 Mon Sep 17 00:00:00 2001 +From: Andreas Oberritter +Date: Sat, 24 Mar 2012 17:36:48 +0100 +Subject: [PATCH] watch: move from /bin to /usr/bin for compatibility with + procps + +Signed-off-by: Andreas Oberritter +--- + include/applets.src.h | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/include/applets.src.h b/include/applets.src.h +index 87d9cbb..c148a8c 100644 +--- a/include/applets.src.h ++++ b/include/applets.src.h +@@ -404,7 +404,7 @@ IF_VLOCK(APPLET(vlock, BB_DIR_USR_BIN, BB_SUID_REQUIRE)) + IF_VOLNAME(APPLET(volname, BB_DIR_USR_BIN, BB_SUID_DROP)) + /* Needs to be run by root or be suid root - needs to write to /dev/TTY: */ + IF_WALL(APPLET(wall, BB_DIR_USR_BIN, BB_SUID_REQUIRE)) +-IF_WATCH(APPLET(watch, BB_DIR_BIN, BB_SUID_DROP)) ++IF_WATCH(APPLET(watch, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_WATCHDOG(APPLET(watchdog, BB_DIR_SBIN, BB_SUID_DROP)) + IF_WC(APPLET(wc, BB_DIR_USR_BIN, BB_SUID_DROP)) + IF_WGET(APPLET(wget, BB_DIR_USR_BIN, BB_SUID_DROP)) +-- +1.7.5.4 + diff --git a/meta/recipes-core/busybox/busybox_git.bb b/meta/recipes-core/busybox/busybox_git.bb new file mode 100644 index 0000000000..91ecff8212 --- /dev/null +++ b/meta/recipes-core/busybox/busybox_git.bb @@ -0,0 +1,53 @@ +require busybox.inc + +SRCREV = "e73f3c1d3d83699b723251f7e6a981021ce75475" +# Lookout for PV bump too when SRCREV is changed +PV = "1.21.1+git${SRCPV}" + +S = "${WORKDIR}/git" + +SRC_URI = "git://busybox.net/busybox.git \ + file://get_header_tar.patch \ + file://busybox-appletlib-dependency.patch \ + file://run-parts.in.usr-bin.patch \ + file://watch.in.usr-bin.patch \ + file://busybox-udhcpc-no_deconfig.patch \ + file://find-touchscreen.sh \ + file://busybox-cron \ + file://busybox-httpd \ + file://busybox-udhcpd \ + file://default.script \ + file://simple.script \ + file://hwclock.sh \ + file://mount.busybox \ + file://syslog \ + file://syslog-startup.conf \ + file://syslog.conf \ + file://busybox-syslog.default \ + file://mdev \ + file://mdev.conf \ + file://umount.busybox \ + file://defconfig \ + file://stat-usr-bin.patch \ + file://busybox-syslog.service.in \ + file://busybox-klogd.service.in \ + file://testsuite-du-du-k-works-fix-false-positive.patch \ + file://fail_on_no_media.patch \ + file://busybox-sulogin-empty-root-password.patch \ + file://run-ptest \ + file://inetd.conf \ + file://inetd \ + file://login-utilities.cfg \ + file://busybox-list-suid-and-non-suid-app-configs.patch \ + file://busybox-sed-fix-sed-clusternewline-testcase.patch \ +" + +EXTRA_OEMAKE += "V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y" + +do_install_ptest () { + cp -r ${B}/testsuite ${D}${PTEST_PATH}/ + cp ${B}/.config ${D}${PTEST_PATH}/ + ln -s /bin/busybox ${D}${PTEST_PATH}/busybox +} + +DEFAULT_PREFERENCE = "-1" -- cgit 1.2.3-korg