From b6f11bf793d94d557fe303713586f8e802684343 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Tue, 2 Sep 2003 18:34:12 +0000 Subject: [PATCH] Ready to pass stuff in core. --- shred.h | 1 + shredtree.c | 16 +++++++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/shred.h b/shred.h index 189f07b..0eba471 100644 --- a/shred.h +++ b/shred.h @@ -41,6 +41,7 @@ extern struct hash_t *chunk_buffer; /* functions */ extern void generate_shredfile(const char *, FILE *); +extern struct sorthash_t *generate_shredlist(const int, const char *argv[]); extern void shredreport(int argc, char *argv[]); /* shred.h ends here */ diff --git a/shredtree.c b/shredtree.c index 69b07ef..f0123d5 100644 --- a/shredtree.c +++ b/shredtree.c @@ -259,17 +259,23 @@ void generate_shredfile(const char *tree, FILE *ofp) } } -struct sorthash_t *generate_shredlist(const char *tree) +struct sorthash_t *generate_shredlist(const int argc, const char *argv[]) /* generate an in-core list of sorthash structures */ { - char **place, **list; + int i; sort_buffer = (struct sorthash_t*)calloc(sizeof(struct sorthash_t),1); sort_count = 0; - list = sorted_file_list(tree); - for (place = list; place < list + file_count; place++) - shredfile(*place, corehook); + for (i = 0; i < argc; i++) + { + char **place, **list; + + list = sorted_file_list(argv[i]); + for (place = list; place < list + file_count; place++) + shredfile(*place, corehook); + free(list); + } /* caller is responsible for freeing this */ return(sort_buffer); -- 2.43.0