Fix bug (wrong value computed) when reading file from stdin, implement
[oweals/busybox.git] / coreutils / hostid.c
index 3bf79de473fef8df7895754fc4d51147000fc9e5..917dc223e3222db342d73243092d39c2f362627c 100644 (file)
  *
  */
 
-#include "internal.h"
-#include <stdio.h>
+/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
+
+#include <stdlib.h>
+#include <unistd.h>
+#include "busybox.h"
 
 extern int hostid_main(int argc, char **argv)
 {
-       if (argc > 1 && strcmp(argv[1], "--help") == 0)
-               usage(hostid_usage);
+       if (argc > 1) {
+               bb_show_usage();
+       }
+
+       bb_printf("%lx\n", gethostid());
 
-       printf("%lx\n", gethostid());
-       return(TRUE);
+       bb_fflush_stdout_and_exit(EXIT_SUCCESS);
 }