| 1 | /* | 
 
 
 
 
 | 2 | * Copyright (c) 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 | #ifndef ZSTD_ERRORS_H_398273423 | 
 
 
 
 
 | 12 | #define ZSTD_ERRORS_H_398273423 | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | #if defined (__cplusplus) | 
 
 
 
 
 | 15 | extern "C" { | 
 
 
 
 
 | 16 | #endif | 
 
 
 
 
 | 17 |  | 
 
 
 
 
 | 18 | /*===== dependency =====*/ | 
 
 
 
 
 | 19 | #include <stddef.h>   /* size_t */ | 
 
 
 
 
 | 20 |  | 
 
 
 
 
 | 21 |  | 
 
 
 
 
 | 22 | /* =====   ZSTDERRORLIB_API : control library symbols visibility   ===== */ | 
 
 
 
 
 | 23 | #ifndef ZSTDERRORLIB_VISIBILITY | 
 
 
 
 
 | 24 | #  if defined(__GNUC__) && (__GNUC__ >= 4) | 
 
 
 
 
 | 25 | #    define ZSTDERRORLIB_VISIBILITY __attribute__ ((visibility ("default"))) | 
 
 
 
 
 | 26 | #  else | 
 
 
 
 
 | 27 | #    define ZSTDERRORLIB_VISIBILITY | 
 
 
 
 
 | 28 | #  endif | 
 
 
 
 
 | 29 | #endif | 
 
 
 
 
 | 30 | #if defined(ZSTD_DLL_EXPORT) && (ZSTD_DLL_EXPORT==1) | 
 
 
 
 
 | 31 | #  define ZSTDERRORLIB_API __declspec(dllexport) ZSTDERRORLIB_VISIBILITY | 
 
 
 
 
 | 32 | #elif defined(ZSTD_DLL_IMPORT) && (ZSTD_DLL_IMPORT==1) | 
 
 
 
 
 | 33 | #  define ZSTDERRORLIB_API __declspec(dllimport) ZSTDERRORLIB_VISIBILITY /* It isn't required but allows to generate better code, saving a function pointer load from the IAT and an indirect jump.*/ | 
 
 
 
 
 | 34 | #else | 
 
 
 
 
 | 35 | #  define ZSTDERRORLIB_API ZSTDERRORLIB_VISIBILITY | 
 
 
 
 
 | 36 | #endif | 
 
 
 
 
 | 37 |  | 
 
 
 
 
 | 38 | /*-********************************************* | 
 
 
 
 
 | 39 | *  Error codes list | 
 
 
 
 
 | 40 | *-********************************************* | 
 
 
 
 
 | 41 | *  Error codes _values_ are pinned down since v1.3.1 only. | 
 
 
 
 
 | 42 | *  Therefore, don't rely on values if you may link to any version < v1.3.1. | 
 
 
 
 
 | 43 | * | 
 
 
 
 
 | 44 | *  Only values < 100 are considered stable. | 
 
 
 
 
 | 45 | * | 
 
 
 
 
 | 46 | *  note 1 : this API shall be used with static linking only. | 
 
 
 
 
 | 47 | *           dynamic linking is not yet officially supported. | 
 
 
 
 
 | 48 | *  note 2 : Prefer relying on the enum than on its value whenever possible | 
 
 
 
 
 | 49 | *           This is the only supported way to use the error list < v1.3.1 | 
 
 
 
 
 | 50 | *  note 3 : ZSTD_isError() is always correct, whatever the library version. | 
 
 
 
 
 | 51 | **********************************************/ | 
 
 
 
 
 | 52 | typedef enum { | 
 
 
 
 
 | 53 | ZSTD_error_no_error = 0, | 
 
 
 
 
 | 54 | ZSTD_error_GENERIC  = 1, | 
 
 
 
 
 | 55 | ZSTD_error_prefix_unknown                = 10, | 
 
 
 
 
 | 56 | ZSTD_error_version_unsupported           = 12, | 
 
 
 
 
 | 57 | ZSTD_error_frameParameter_unsupported    = 14, | 
 
 
 
 
 | 58 | ZSTD_error_frameParameter_windowTooLarge = 16, | 
 
 
 
 
 | 59 | ZSTD_error_corruption_detected = 20, | 
 
 
 
 
 | 60 | ZSTD_error_checksum_wrong      = 22, | 
 
 
 
 
 | 61 | ZSTD_error_dictionary_corrupted      = 30, | 
 
 
 
 
 | 62 | ZSTD_error_dictionary_wrong          = 32, | 
 
 
 
 
 | 63 | ZSTD_error_dictionaryCreation_failed = 34, | 
 
 
 
 
 | 64 | ZSTD_error_parameter_unsupported   = 40, | 
 
 
 
 
 | 65 | ZSTD_error_parameter_outOfBound    = 42, | 
 
 
 
 
 | 66 | ZSTD_error_tableLog_tooLarge       = 44, | 
 
 
 
 
 | 67 | ZSTD_error_maxSymbolValue_tooLarge = 46, | 
 
 
 
 
 | 68 | ZSTD_error_maxSymbolValue_tooSmall = 48, | 
 
 
 
 
 | 69 | ZSTD_error_stage_wrong       = 60, | 
 
 
 
 
 | 70 | ZSTD_error_init_missing      = 62, | 
 
 
 
 
 | 71 | ZSTD_error_memory_allocation = 64, | 
 
 
 
 
 | 72 | ZSTD_error_workSpace_tooSmall= 66, | 
 
 
 
 
 | 73 | ZSTD_error_dstSize_tooSmall = 70, | 
 
 
 
 
 | 74 | ZSTD_error_srcSize_wrong    = 72, | 
 
 
 
 
 | 75 | ZSTD_error_dstBuffer_null   = 74, | 
 
 
 
 
 | 76 | /* following error codes are __NOT STABLE__, they can be removed or changed in future versions */ | 
 
 
 
 
 | 77 | ZSTD_error_frameIndex_tooLarge = 100, | 
 
 
 
 
 | 78 | ZSTD_error_seekableIO          = 102, | 
 
 
 
 
 | 79 | ZSTD_error_dstBuffer_wrong     = 104, | 
 
 
 
 
 | 80 | ZSTD_error_srcBuffer_wrong     = 105, | 
 
 
 
 
 | 81 | ZSTD_error_maxCode = 120  /* never EVER use this value directly, it can change in future versions! Use ZSTD_isError() instead */ | 
 
 
 
 
 | 82 | } ZSTD_ErrorCode; | 
 
 
 
 
 | 83 |  | 
 
 
 
 
 | 84 | /*! ZSTD_getErrorCode() : | 
 
 
 
 
 | 85 | convert a `size_t` function result into a `ZSTD_ErrorCode` enum type, | 
 
 
 
 
 | 86 | which can be used to compare with enum list published above */ | 
 
 
 
 
 | 87 | ZSTDERRORLIB_API ZSTD_ErrorCode ZSTD_getErrorCode(size_t functionResult); | 
 
 
 
 
 | 88 | ZSTDERRORLIB_API const char* ZSTD_getErrorString(ZSTD_ErrorCode code);   /**< Same as ZSTD_getErrorName, but using a `ZSTD_ErrorCode` enum argument */ | 
 
 
 
 
 | 89 |  | 
 
 
 
 
 | 90 |  | 
 
 
 
 
 | 91 | #if defined (__cplusplus) | 
 
 
 
 
 | 92 | } | 
 
 
 
 
 | 93 | #endif | 
 
 
 
 
 | 94 |  | 
 
 
 
 
 | 95 | #endif /* ZSTD_ERRORS_H_398273423 */ |