From 901435e9ef324b7e639bb9027ad544677b338f00 Mon Sep 17 00:00:00 2001 From: Paul Cruz Date: Mon, 5 Jun 2017 14:45:31 -0700 Subject: [PATCH] setup basic functions for adding --list functionality --- programs/fileio.c | 5 +++++ programs/fileio.h | 1 + programs/zstdcli.c | 17 ++++++++++++++--- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/programs/fileio.c b/programs/fileio.c index 44152b0b..466faf38 100644 --- a/programs/fileio.c +++ b/programs/fileio.c @@ -862,6 +862,11 @@ int FIO_compressFilename(const char* dstFileName, const char* srcFileName, return result; } +int FIO_listFile(const char* infilename){ + DISPLAY("FILE DETECTED: %s\n", infilename); + DISPLAY("working\n"); + return 0; +} int FIO_compressMultipleFilenames(const char** inFileNamesTable, unsigned nbFiles, const char* suffix, diff --git a/programs/fileio.h b/programs/fileio.h index 65da98d7..4ca1a2b3 100644 --- a/programs/fileio.h +++ b/programs/fileio.h @@ -70,6 +70,7 @@ int FIO_compressFilename (const char* outfilename, const char* infilename, const @return : 0 == ok; 1 == pb with src file. */ int FIO_decompressFilename (const char* outfilename, const char* infilename, const char* dictFileName); +int FIO_listFile(const char* infilename); /*-************************************* * Multiple File functions diff --git a/programs/zstdcli.c b/programs/zstdcli.c index 32fef999..be0a447b 100644 --- a/programs/zstdcli.c +++ b/programs/zstdcli.c @@ -117,6 +117,7 @@ static int usage_advanced(const char* programName) DISPLAY( " -v : verbose mode; specify multiple times to increase verbosity\n"); DISPLAY( " -q : suppress warnings; specify twice to suppress errors too\n"); DISPLAY( " -c : force write to standard output, even if it is the console\n"); + DISPLAY( " -l : print information about zstd compressed files.\n"); #ifndef ZSTD_NOCOMPRESS DISPLAY( "--ultra : enable levels beyond %i, up to %i (requires more memory)\n", ZSTDCLI_CLEVEL_MAX, ZSTD_maxCLevel()); #ifdef ZSTD_MULTITHREAD @@ -310,7 +311,7 @@ static unsigned parseCompressionParameters(const char* stringPtr, ZSTD_compressi } -typedef enum { zom_compress, zom_decompress, zom_test, zom_bench, zom_train } zstd_operation_mode; +typedef enum { zom_compress, zom_decompress, zom_test, zom_bench, zom_train, zom_list } zstd_operation_mode; #define CLEAN_RETURN(i) { operationResult = (i); goto _end; } @@ -531,7 +532,7 @@ int main(int argCount, const char* argv[]) argument++; memLimit = readU32FromChar(&argument); break; - + case 'l': operation=zom_list; argument++; break; #ifdef UTIL_HAS_CREATEFILELIST /* recursive */ case 'r': recursive=1; argument++; break; @@ -672,7 +673,17 @@ int main(int argCount, const char* argv[]) } } #endif - + if(operation==zom_list){ + DISPLAY("===========================================\n"); + DISPLAY("Printing information about compressed files\n"); + DISPLAY("===========================================\n"); + unsigned u; + DISPLAY("Number of files listed: %d\n", filenameIdx); + for(u=0; u