From 0d1ae015fef8e15442dafa61b9c8d929ce467969 Mon Sep 17 00:00:00 2001 From: Markus Mittendrein Date: Wed, 15 Aug 2018 22:46:40 +0200 Subject: Refactor code into a library and implement basic file management methods --- examples/unc4group.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 examples/unc4group.c (limited to 'examples/unc4group.c') diff --git a/examples/unc4group.c b/examples/unc4group.c new file mode 100644 index 0000000..8d08eb3 --- /dev/null +++ b/examples/unc4group.c @@ -0,0 +1,46 @@ +#include +#include + +#include "cc4group.h" + +int main(int argc, char* argv[]) +{ + if(argc != 3 && argc != 4) + { + fprintf(stderr, "USAGE: %s [group entry] \n", argv[0]); + return EXIT_FAILURE; + } + + CC4Group* group = cc4group.new(); + if(!cc4group.openExisting(group, argv[1])) + { + fprintf(stderr, "ERROR: Can not open group file \"%s\": %s\n", argv[1], cc4group.getErrorMessage(group)); + + cc4group.delete(group); + return EXIT_FAILURE; + } + + bool success; + if(argc == 3) + { + success = cc4group.extractAll(group, argv[2]); + } + else if(argc == 4) + { + success = cc4group.extractSingle(group, argv[2], argv[3]); + } + else + { + fprintf(stderr, "ERROR: Can't get here\n"); + success = false; + } + + if(!success) + { + fprintf(stderr, "ERROR: Extracting the desired file/group: %s\n", cc4group.getErrorMessage(group)); + } + + cc4group.delete(group); + + return success ? EXIT_SUCCESS : EXIT_FAILURE; +} -- cgit v1.2.3-54-g00ecf