#define NBDEBUG 0 /* Unix SMB/CIFS implementation. SMB torture tester Copyright (C) Andrew Tridgell 1997-1998 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define NO_SYSLOG #include "includes.h" #define MAX_FILES 1000 static char buf[70000]; extern int line_count; extern int nbio_id; static int nprocs; static struct { int fd; int handle; } ftable[MAX_FILES]; static struct { double bytes_in, bytes_out; int line; int done; } *children; double nbio_total(void) { int i; double total = 0; for (i=0;iname[0] == '.') return; n = strdup(name); n[strlen(n)-1] = 0; asprintf(&s, "%s%s", n, finfo->name); if (finfo->mode & aDIR) { char *s2; asprintf(&s2, "%s\\*", s); cli_list(c, s2, aDIR, delete_fn, NULL); nb_rmdir(s); } else { total_deleted++; nb_unlink(s); } free(s); free(n); } void nb_deltree(const char *dname) { char *mask; asprintf(&mask, "%s\\*", dname); total_deleted = 0; cli_list(c, mask, aDIR, delete_fn, NULL); free(mask); cli_rmdir(c, dname); if (total_deleted) printf("WARNING: Cleaned up %d files\n", total_deleted); } void nb_cleanup(void) { cli_rmdir(c, "clients"); children[nbio_id].done = 1; }