| 1 | /* |
| 2 | * Copyright (c) 2016-present, Yann Collet, Facebook, Inc. |
| 3 | * All rights reserved. |
| 4 | * |
| 5 | * This source code is licensed under both the BSD-style license (found in the |
| 6 | * LICENSE file in the root directory of this source tree) and the GPLv2 (found |
| 7 | * in the COPYING file in the root directory of this source tree). |
| 8 | * You may select, at your option, one of the above-listed licenses. |
| 9 | */ |
| 10 | |
| 11 | /* The purpose of this file is to have a single list of error strings embedded in binary */ |
| 12 | |
| 13 | #include "error_private.h" |
| 14 | |
| 15 | const char* ERR_getErrorString(ERR_enum code) |
| 16 | { |
| 17 | static const char* const notErrorCode = "Unspecified error code" ; |
| 18 | switch( code ) |
| 19 | { |
| 20 | case PREFIX(no_error): return "No error detected" ; |
| 21 | case PREFIX(GENERIC): return "Error (generic)" ; |
| 22 | case PREFIX(prefix_unknown): return "Unknown frame descriptor" ; |
| 23 | case PREFIX(version_unsupported): return "Version not supported" ; |
| 24 | case PREFIX(frameParameter_unsupported): return "Unsupported frame parameter" ; |
| 25 | case PREFIX(frameParameter_windowTooLarge): return "Frame requires too much memory for decoding" ; |
| 26 | case PREFIX(corruption_detected): return "Corrupted block detected" ; |
| 27 | case PREFIX(checksum_wrong): return "Restored data doesn't match checksum" ; |
| 28 | case PREFIX(parameter_unsupported): return "Unsupported parameter" ; |
| 29 | case PREFIX(parameter_outOfBound): return "Parameter is out of bound" ; |
| 30 | case PREFIX(init_missing): return "Context should be init first" ; |
| 31 | case PREFIX(memory_allocation): return "Allocation error : not enough memory" ; |
| 32 | case PREFIX(workSpace_tooSmall): return "workSpace buffer is not large enough" ; |
| 33 | case PREFIX(stage_wrong): return "Operation not authorized at current processing stage" ; |
| 34 | case PREFIX(tableLog_tooLarge): return "tableLog requires too much memory : unsupported" ; |
| 35 | case PREFIX(maxSymbolValue_tooLarge): return "Unsupported max Symbol Value : too large" ; |
| 36 | case PREFIX(maxSymbolValue_tooSmall): return "Specified maxSymbolValue is too small" ; |
| 37 | case PREFIX(dictionary_corrupted): return "Dictionary is corrupted" ; |
| 38 | case PREFIX(dictionary_wrong): return "Dictionary mismatch" ; |
| 39 | case PREFIX(dictionaryCreation_failed): return "Cannot create Dictionary from provided samples" ; |
| 40 | case PREFIX(dstSize_tooSmall): return "Destination buffer is too small" ; |
| 41 | case PREFIX(srcSize_wrong): return "Src size is incorrect" ; |
| 42 | /* following error codes are not stable and may be removed or changed in a future version */ |
| 43 | case PREFIX(frameIndex_tooLarge): return "Frame index is too large" ; |
| 44 | case PREFIX(seekableIO): return "An I/O error occurred when reading/seeking" ; |
| 45 | case PREFIX(maxCode): |
| 46 | default: return notErrorCode; |
| 47 | } |
| 48 | } |
| 49 | |