/*
 * Generated by util/mkerr.pl DO NOT EDIT
 * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
 *
 * Licensed under the Apache License 2.0 (the "License").  You may not use
 * this file except in compliance with the License.  You can obtain a copy
 * in the file LICENSE in the source distribution or at
 * https://www.openssl.org/source/license.html
 */

#ifndef OPENSSL_PROVERR_H
# define OPENSSL_PROVERR_H

# include <openssl/opensslconf.h>
# include <openssl/symhacks.h>


# ifdef  __cplusplus
extern "C"
# endif
int ERR_load_PROV_strings(void);

/*
 * PROV function codes.
 */
# ifndef OPENSSL_NO_DEPRECATED_3_0
#  define PROV_F_AESNI_INIT_KEY                            0
#  define PROV_F_AES_BLOCK_FINAL                           0
#  define PROV_F_AES_BLOCK_UPDATE                          0
#  define PROV_F_AES_CIPHER                                0
#  define PROV_F_AES_DINIT                                 0
#  define PROV_F_AES_DUPCTX                                0
#  define PROV_F_AES_EINIT                                 0
#  define PROV_F_AES_GET_CTX_PARAMS                        0
#  define PROV_F_AES_INIT_KEY                              0
#  define PROV_F_AES_SET_CTX_PARAMS                        0
#  define PROV_F_AES_STREAM_UPDATE                         0
#  define PROV_F_AES_T4_INIT_KEY                           0
#  define PROV_F_BLAKE2_MAC_INIT                           0
#  define PROV_F_BLAKE2_MAC_SET_PARAMS                     0
#  define PROV_F_GMAC_SET_PARAMS                           0
#  define PROV_F_KMAC_SET_PARAMS                           0
#  define PROV_F_POLY1305_SET_PARAMS                       0
#  define PROV_F_PROV_AES_KEY_GENERIC_INIT                 0
#  define PROV_F_TRAILINGDATA                              0
#  define PROV_F_UNPADBLOCK                                0
# endif

/*
 * PROV reason codes.
 */
# define PROV_R_AES_KEY_SETUP_FAILED                      101
# define PROV_R_BAD_DECRYPT                               100
# define PROV_R_BAD_ENCODING                              141
# define PROV_R_BAD_LENGTH                                142
# define PROV_R_BAD_TLS_CLIENT_VERSION                    161
# define PROV_R_BN_ERROR                                  160
# define PROV_R_BOTH_MODE_AND_MODE_INT                    127
# define PROV_R_CIPHER_OPERATION_FAILED                   102
# define PROV_R_FAILED_TO_DECRYPT                         162
# define PROV_R_FAILED_TO_GENERATE_KEY                    121
# define PROV_R_FAILED_TO_GET_PARAMETER                   103
# define PROV_R_FAILED_TO_SET_PARAMETER                   104
# define PROV_R_INAVLID_UKM_LENGTH                        146
# define PROV_R_INVALID_AAD                               108
# define PROV_R_INVALID_CONSTANT_LENGTH                   157
# define PROV_R_INVALID_CUSTOM_LENGTH                     111
# define PROV_R_INVALID_DATA                              115
# define PROV_R_INVALID_DIGEST                            122
# define PROV_R_INVALID_ITERATION_COUNT                   123
# define PROV_R_INVALID_IVLEN                             116
# define PROV_R_INVALID_IV_LENGTH                         109
# define PROV_R_INVALID_KEY                               158
# define PROV_R_INVALID_KEYLEN                            117
# define PROV_R_INVALID_KEY_LEN                           124
# define PROV_R_INVALID_KEY_LENGTH                        105
# define PROV_R_INVALID_MAC                               151
# define PROV_R_INVALID_MODE                              125
# define PROV_R_INVALID_MODE_INT                          126
# define PROV_R_INVALID_SALT_LENGTH                       112
# define PROV_R_INVALID_SEED_LENGTH                       154
# define PROV_R_INVALID_TAG                               110
# define PROV_R_INVALID_TAGLEN                            118
# define PROV_R_MISSING_CEK_ALG                           144
# define PROV_R_MISSING_CIPHER                            155
# define PROV_R_MISSING_CONSTANT                          156
# define PROV_R_MISSING_KEY                               128
# define PROV_R_MISSING_MAC                               150
# define PROV_R_MISSING_MESSAGE_DIGEST                    129
# define PROV_R_MISSING_PASS                              130
# define PROV_R_MISSING_SALT                              131
# define PROV_R_MISSING_SECRET                            132
# define PROV_R_MISSING_SEED                              140
# define PROV_R_MISSING_SESSION_ID                        133
# define PROV_R_MISSING_TYPE                              134
# define PROV_R_MISSING_XCGHASH                           135
# define PROV_R_NOT_SUPPORTED                             136
# define PROV_R_NOT_XOF_OR_INVALID_LENGTH                 113
# define PROV_R_NO_KEY_SET                                114
# define PROV_R_OUTPUT_BUFFER_TOO_SMALL                   106
# define PROV_R_READ_KEY                                  159
# define PROV_R_TAG_NOTSET                                119
# define PROV_R_TAG_NOT_NEEDED                            120
# define PROV_R_UNABLE_TO_LOAD_SHA1                       143
# define PROV_R_UNABLE_TO_LOAD_SHA256                     147
# define PROV_R_UNSUPPORTED_CEK_ALG                       145
# define PROV_R_UNSUPPORTED_KEY_SIZE                      153
# define PROV_R_UNSUPPORTED_MAC_TYPE                      137
# define PROV_R_UNSUPPORTED_NUMBER_OF_ROUNDS              152
# define PROV_R_VALUE_ERROR                               138
# define PROV_R_WRONG_FINAL_BLOCK_LENGTH                  107
# define PROV_R_WRONG_OUTPUT_BUFFER_SIZE                  139
# define PROV_R_XTS_DATA_UNIT_IS_TOO_LARGE                148
# define PROV_R_XTS_DUPLICATED_KEYS                       149

#endif
