summaryrefslogtreecommitdiff
path: root/package/nvram
diff options
context:
space:
mode:
authorwbx <wbx@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-31 15:22:43 +0000
committerwbx <wbx@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-31 15:22:43 +0000
commit9eef5d78c3ee327718f7372bf6b3ef9fe051e921 (patch)
treecb52022ec4b067e07a3fefb0a3a66838184debe1 /package/nvram
parent1d172228181f3add9c5e9f08019f97e2b8c93bda (diff)
add changes to nvram from #254/#266, resolves problems on older wap54g, thx for report
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3089 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/nvram')
-rw-r--r--package/nvram/src/main.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/package/nvram/src/main.c b/package/nvram/src/main.c
index a64430f7bc..7af26729d9 100644
--- a/package/nvram/src/main.c
+++ b/package/nvram/src/main.c
@@ -26,6 +26,15 @@ usage(void)
exit(0);
}
+/* hack for some PMON default nvram values which have '\r' appended */
+void
+puts_trim_cr(char *str)
+{
+ int len= strlen(str);
+ if (len && (str[len-1] == '\r')) len--;
+ printf("%.*s\n", len, str);
+}
+
/* NVRAM utility */
int
main(int argc, char **argv)
@@ -44,8 +53,9 @@ main(int argc, char **argv)
for (; *argv; argv++) {
if (!strncmp(*argv, "get", 3)) {
if (*++argv) {
- if ((value = nvram_get(*argv)))
- puts(value);
+ if ((value = nvram_get(*argv))) {
+ puts_trim_cr(value);
+ }
}
}
else if (!strncmp(*argv, "set", 3)) {
@@ -66,7 +76,7 @@ main(int argc, char **argv)
!strncmp(*argv, "getall", 6)) {
nvram_getall(buf, sizeof(buf));
for (name = buf; *name; name += strlen(name) + 1)
- puts(name);
+ puts_trim_cr(name);
size = sizeof(struct nvram_header) + (int) name - (int) buf;
fprintf(stderr, "size: %d bytes (%d left)\n", size, NVRAM_SPACE - size);
}