Fix bug (wrong value computed) when reading file from stdin, implement
[oweals/busybox.git] / coreutils / hostid.c
index f8d5862ae23aab795ee78abb7bb4990810d8549d..917dc223e3222db342d73243092d39c2f362627c 100644 (file)
@@ -1,3 +1,4 @@
+/* vi: set sw=4 ts=4: */
 /*
  * Mini hostid implementation for busybox
  *
  *
  */
 
-#include "internal.h"
-#include <stdio.h>
+/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
 
-extern int hostid_main(int argc, char **argv) {
-       printf ("%lx\n", gethostid());
-       exit( TRUE);
+#include <stdlib.h>
+#include <unistd.h>
+#include "busybox.h"
+
+extern int hostid_main(int argc, char **argv)
+{
+       if (argc > 1) {
+               bb_show_usage();
+       }
+
+       bb_printf("%lx\n", gethostid());
+
+       bb_fflush_stdout_and_exit(EXIT_SUCCESS);
 }