aboutsummaryrefslogtreecommitdiff
path: root/toys/lsb/dmesg.c
diff options
context:
space:
mode:
Diffstat (limited to 'toys/lsb/dmesg.c')
-rw-r--r--toys/lsb/dmesg.c69
1 files changed, 33 insertions, 36 deletions
diff --git a/toys/lsb/dmesg.c b/toys/lsb/dmesg.c
index 8d73513b..10032562 100644
--- a/toys/lsb/dmesg.c
+++ b/toys/lsb/dmesg.c
@@ -1,6 +1,4 @@
-/* vi: set sw=4 ts=4:
- *
- * dmesg.c - display/control kernel ring buffer.
+/* dmesg.c - display/control kernel ring buffer.
*
* Copyright 2006, 2007 Rob Landley <rob@landley.net>
*
@@ -9,16 +7,16 @@
USE_DMESG(NEWTOY(dmesg, "s#n#c", TOYFLAG_BIN))
config DMESG
- bool "dmesg"
- default y
- help
- usage: dmesg [-n level] [-s bufsize] | -c
+ bool "dmesg"
+ default y
+ help
+ usage: dmesg [-n level] [-s bufsize] | -c
- Print or control the kernel ring buffer.
+ Print or control the kernel ring buffer.
- -n Set kernel logging level (1-9).
- -s Size of buffer to read (in bytes), default 16384.
- -c Clear the ring buffer after printing.
+ -n Set kernel logging level (1-9).
+ -s Size of buffer to read (in bytes), default 16384.
+ -c Clear the ring buffer after printing.
*/
#define FOR_dmesg
@@ -26,33 +24,32 @@ config DMESG
#include <sys/klog.h>
GLOBALS(
- long level;
- long size;
+ long level;
+ long size;
)
void dmesg_main(void)
{
- // For -n just tell kernel to which messages to keep.
- if (toys.optflags & 2) {
- if (klogctl(8, NULL, TT.level))
- error_exit("klogctl");
- } else {
- int size, i, last = '\n';
- char *data;
-
- // Figure out how much data we need, and fetch it.
- size = TT.size;
- if (size<2) size = 16384;
- data = xmalloc(size);
- size = klogctl(3 + (toys.optflags&1), data, size);
- if (size < 0) error_exit("klogctl");
-
- // Display data, filtering out level markers.
- for (i=0; i<size; ) {
- if (last=='\n' && data[i]=='<') i += 3;
- else xputc(last = data[i++]);
- }
- if (last!='\n') xputc('\n');
- if (CFG_TOYBOX_FREE) free(data);
- }
+ // For -n just tell kernel to which messages to keep.
+ if (toys.optflags & 2) {
+ if (klogctl(8, NULL, TT.level)) error_exit("klogctl");
+ } else {
+ int size, i, last = '\n';
+ char *data;
+
+ // Figure out how much data we need, and fetch it.
+ size = TT.size;
+ if (size<2) size = 16384;
+ data = xmalloc(size);
+ size = klogctl(3 + (toys.optflags&1), data, size);
+ if (size < 0) error_exit("klogctl");
+
+ // Display data, filtering out level markers.
+ for (i=0; i<size; ) {
+ if (last=='\n' && data[i]=='<') i += 3;
+ else xputc(last = data[i++]);
+ }
+ if (last!='\n') xputc('\n');
+ if (CFG_TOYBOX_FREE) free(data);
+ }
}