rpm2cpio: handle bz2 too; code shrink
[oweals/busybox.git] / coreutils / length.c
index 4cbe7e17b088b2c105dda17a1036d3d8f3c0e2b0..43a0f59880097e73d8db3df23a4e178077d5db1f 100644 (file)
@@ -1,14 +1,22 @@
 /* vi: set sw=4 ts=4: */
-#include "internal.h"
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
+/*
+ * Licensed under GPLv2, see file LICENSE in this tarball for details.
+ */
 
-extern int length_main(int argc, char **argv)
+/* BB_AUDIT SUSv3 N/A -- Apparently a busybox (obsolete?) extension. */
+
+#include "libbb.h"
+
+/* This is a NOFORK applet. Be very careful! */
+
+int length_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+int length_main(int argc, char **argv)
 {
-       if (argc != 2 || **(argv + 1) == '-') {
-               usage("length string\n");
+       if ((argc != 2) || (**(++argv) == '-')) {
+               bb_show_usage();
        }
-       printf("%lu\n", (long)strlen(argv[1]));
-       return (TRUE);
+
+       printf("%u\n", (unsigned)strlen(*argv));
+
+       return fflush(stdout);
 }