0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include "error_private.h"
0014
0015 const char* ERR_getErrorString(ERR_enum code)
0016 {
0017 #ifdef ZSTD_STRIP_ERROR_STRINGS
0018 (void)code;
0019 return "Error strings stripped";
0020 #else
0021 static const char* const notErrorCode = "Unspecified error code";
0022 switch( code )
0023 {
0024 case PREFIX(no_error): return "No error detected";
0025 case PREFIX(GENERIC): return "Error (generic)";
0026 case PREFIX(prefix_unknown): return "Unknown frame descriptor";
0027 case PREFIX(version_unsupported): return "Version not supported";
0028 case PREFIX(frameParameter_unsupported): return "Unsupported frame parameter";
0029 case PREFIX(frameParameter_windowTooLarge): return "Frame requires too much memory for decoding";
0030 case PREFIX(corruption_detected): return "Corrupted block detected";
0031 case PREFIX(checksum_wrong): return "Restored data doesn't match checksum";
0032 case PREFIX(parameter_unsupported): return "Unsupported parameter";
0033 case PREFIX(parameter_outOfBound): return "Parameter is out of bound";
0034 case PREFIX(init_missing): return "Context should be init first";
0035 case PREFIX(memory_allocation): return "Allocation error : not enough memory";
0036 case PREFIX(workSpace_tooSmall): return "workSpace buffer is not large enough";
0037 case PREFIX(stage_wrong): return "Operation not authorized at current processing stage";
0038 case PREFIX(tableLog_tooLarge): return "tableLog requires too much memory : unsupported";
0039 case PREFIX(maxSymbolValue_tooLarge): return "Unsupported max Symbol Value : too large";
0040 case PREFIX(maxSymbolValue_tooSmall): return "Specified maxSymbolValue is too small";
0041 case PREFIX(dictionary_corrupted): return "Dictionary is corrupted";
0042 case PREFIX(dictionary_wrong): return "Dictionary mismatch";
0043 case PREFIX(dictionaryCreation_failed): return "Cannot create Dictionary from provided samples";
0044 case PREFIX(dstSize_tooSmall): return "Destination buffer is too small";
0045 case PREFIX(srcSize_wrong): return "Src size is incorrect";
0046 case PREFIX(dstBuffer_null): return "Operation on NULL destination buffer";
0047
0048 case PREFIX(frameIndex_tooLarge): return "Frame index is too large";
0049 case PREFIX(seekableIO): return "An I/O error occurred when reading/seeking";
0050 case PREFIX(dstBuffer_wrong): return "Destination buffer is wrong";
0051 case PREFIX(srcBuffer_wrong): return "Source buffer is wrong";
0052 case PREFIX(maxCode):
0053 default: return notErrorCode;
0054 }
0055 #endif
0056 }