*/
#include "internal.h"
-#include <linux/unistd.h>
#include <stdio.h>
-#include <getopt.h>
#include <stdlib.h>
#if __GNU_LIBRARY__ < 5
# include <sys/klog.h>
#endif
-static const char dmesg_usage[] = "dmesg [-c] [-n level] [-s bufsize]\n";
+static const char dmesg_usage[] = "dmesg [-c] [-n LEVEL] [-s SIZE]\n"
+#ifndef BB_FEATURE_TRIVIAL_HELP
+ "\nPrints or controls the kernel ring buffer\n\n"
+ "Options:\n"
+ "\t-c\t\tClears the ring buffer's contents after printing\n"
+ "\t-n LEVEL\tSets console logging level\n"
+ "\t-s SIZE\t\tUse a buffer of size SIZE\n"
+#endif
+ ;
int dmesg_main(int argc, char **argv)
{
if (bufsize < 4096)
bufsize = 4096;
- buf = (char *) malloc(bufsize);
+ buf = (char *) xmalloc(bufsize);
n = klogctl(cmd, buf, bufsize);
if (n < 0) {
goto klogctl_error;
exit(FALSE);
klogctl_error:
perror("klogctl");
- exit(FALSE);
-
+ return(FALSE);
}