Closed wongsyrone closed 9 years ago
mostly busybox issue, 'reboot' not working. check compile logs, generate config files, compile and test on old fw.
Procd -> cmake
seems busybox missing default config entry, if you want to custom configs, I have to regenerate config folder.
uname: make OS name configurable
A mailing list thread in September 2013 discussed changing the string
returned by the non-POSIX 'uname -o' option. Nothing ever came of this
because there was no agreement as to what the string should be.
Make the string configurable so that people can decide for themselves.
Signed-off-by: Ron Yorston <rmy@frippery.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat
-rw-r--r-- coreutils/Config.src 8
-rw-r--r-- coreutils/uname.c 4
2 files changed, 10 insertions, 2 deletions
diff --git a/coreutils/Config.src b/coreutils/Config.src
index 02155d2..ffbef1a 100644
--- a/coreutils/Config.src
+++ b/coreutils/Config.src
@@ -630,6 +630,14 @@ config UNAME
help
uname is used to print system information.
+config UNAME_OSNAME
+ string "Operating system name"
+ default "GNU/Linux"
+ depends on UNAME
+ help
+ Sets the operating system name reported by uname -o. The
+ default is "GNU/Linux".
+
config UNEXPAND
bool "unexpand"
default y
diff --git a/coreutils/uname.c b/coreutils/uname.c
index 1c6aa5f..fd677d2 100644
--- a/coreutils/uname.c
+++ b/coreutils/uname.c
@@ -74,7 +74,7 @@ typedef struct {
struct utsname name;
char processor[sizeof(((struct utsname*)NULL)->machine)];
char platform[sizeof(((struct utsname*)NULL)->machine)];
- char os[sizeof("GNU/Linux")];
+ char os[sizeof(CONFIG_UNAME_OSNAME)];
} uname_info_t;
static const char options[] ALIGN1 = "snrvmpioa";
@@ -141,7 +141,7 @@ int uname_main(int argc UNUSED_PARAM, char **argv)
#endif
strcpy(uname_info.processor, unknown_str);
strcpy(uname_info.platform, unknown_str);
- strcpy(uname_info.os, "GNU/Linux");
+ strcpy(uname_info.os, CONFIG_UNAME_OSNAME);
#if 0
/* Fedora does something like this */
strcpy(uname_info.processor, uname_info.name.machine);
uname -o
whether returns GNU/Linux
or not on previous buggy firmware.RESULT: return n
on buggy firmware
revert back busybox to 1.32.2 cmake to https://github.com/wongsyrone/openwrt-1/commit/6f612002851ac4b5097c4af115fc9d4be9d54367 https://github.com/wongsyrone/openwrt-1/commit/9ce620b47fc166e11eb515a20e76d3c151d5818a https://github.com/wongsyrone/openwrt-1/commit/8a62c6e4b87b1e8012504dafb561aa2a81392cdd ubi-utils
finally confirmed: shadowvpn's init script issue
maybe a
procd
issue, or busybox's issue.