Brand new version of xargs. Tested thoroughly by Kent Robotti. (Domo arigato,
[oweals/busybox.git] / findutils / find.c
index 2c1039b5337b8899b886115c0bf6b1754fcb49bd..48faf2c30bcf3bd6601fd9d3a47e11691c615a8d 100644 (file)
@@ -3,7 +3,7 @@
  * Mini find implementation for busybox
  *
  *
- * Copyright (C) 1999 by Lineo, inc.
+ * Copyright (C) 1999,2000 by Lineo, inc.
  * Written by Erik Andersen <andersen@lineo.com>, <andersee@debian.org>
  *
  * This program is free software; you can redistribute it and/or modify
@@ -22,8 +22,7 @@
  *
  */
 
-#include "internal.h"
-#include "regexp.h"
+#include "busybox.h"
 #include <stdio.h>
 #include <unistd.h>
 #include <dirent.h>
@@ -33,16 +32,7 @@ static char *pattern = NULL;
 static char *directory = ".";
 static int dereferenceFlag = FALSE;
 
-static const char find_usage[] = "find [PATH...] [EXPRESSION]\n\n"
-       "Search for files in a directory hierarchy.  The default PATH is\n"
-       "the current directory; default EXPRESSION is '-print'\n\n"
-       "\nEXPRESSION may consist of:\n"
-       "\t-follow\n\t\tDereference symbolic links.\n"
-       "\t-name PATTERN\n\t\tFile name (with leading directories removed) matches PATTERN.\n"
-       "\t-print\n\t\tprint the full file name followed by a newline to stdout.\n";
-
-
-static int fileAction(const char *fileName, struct stat *statbuf)
+static int fileAction(const char *fileName, struct stat *statbuf, void* junk)
 {
        if (pattern == NULL)
                fprintf(stdout, "%s\n", fileName);
@@ -109,9 +99,9 @@ int find_main(int argc, char **argv)
        }
 
        if (recursiveAction(directory, TRUE, FALSE, FALSE,
-                                               fileAction, fileAction) == FALSE) {
+                                               fileAction, fileAction, NULL) == FALSE) {
                exit(FALSE);
        }
 
-       exit(TRUE);
+       return(TRUE);
 }