Blame nss/lib/ssl/sslerr.h

Packit 40b132
/*
Packit 40b132
 * Enumeration of all SSL-specific error codes.
Packit 40b132
 *
Packit 40b132
 * This Source Code Form is subject to the terms of the Mozilla Public
Packit 40b132
 * License, v. 2.0. If a copy of the MPL was not distributed with this
Packit 40b132
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
Packit 40b132
#ifndef __SSL_ERR_H_
Packit 40b132
#define __SSL_ERR_H_
Packit 40b132
Packit 40b132
Packit 40b132
#define SSL_ERROR_BASE                          (-0x3000)
Packit 40b132
#define SSL_ERROR_LIMIT                         (SSL_ERROR_BASE + 1000)
Packit 40b132
Packit 40b132
#define IS_SSL_ERROR(code) \
Packit 40b132
    (((code) >= SSL_ERROR_BASE) && ((code) < SSL_ERROR_LIMIT))
Packit 40b132
Packit 40b132
#ifndef NO_SECURITY_ERROR_ENUM
Packit 40b132
typedef enum {
Packit 40b132
SSL_ERROR_EXPORT_ONLY_SERVER            = (SSL_ERROR_BASE +  0),
Packit 40b132
SSL_ERROR_US_ONLY_SERVER                = (SSL_ERROR_BASE +  1),
Packit 40b132
SSL_ERROR_NO_CYPHER_OVERLAP             = (SSL_ERROR_BASE +  2),
Packit 40b132
/*
Packit 40b132
 * Received an alert reporting what we did wrong.  (more alerts below)
Packit 40b132
 */
Packit 40b132
SSL_ERROR_NO_CERTIFICATE /*_ALERT */    = (SSL_ERROR_BASE +  3),
Packit 40b132
SSL_ERROR_BAD_CERTIFICATE               = (SSL_ERROR_BASE +  4),
Packit 40b132
SSL_ERROR_UNUSED_5                      = (SSL_ERROR_BASE +  5),
Packit 40b132
                                        /* error 5 is obsolete */
Packit 40b132
SSL_ERROR_BAD_CLIENT                    = (SSL_ERROR_BASE +  6),
Packit 40b132
SSL_ERROR_BAD_SERVER                    = (SSL_ERROR_BASE +  7),
Packit 40b132
SSL_ERROR_UNSUPPORTED_CERTIFICATE_TYPE  = (SSL_ERROR_BASE +  8),
Packit 40b132
SSL_ERROR_UNSUPPORTED_VERSION           = (SSL_ERROR_BASE +  9),
Packit 40b132
SSL_ERROR_UNUSED_10                     = (SSL_ERROR_BASE + 10),
Packit 40b132
                                        /* error 10 is obsolete */
Packit 40b132
SSL_ERROR_WRONG_CERTIFICATE             = (SSL_ERROR_BASE + 11),
Packit 40b132
SSL_ERROR_BAD_CERT_DOMAIN               = (SSL_ERROR_BASE + 12),
Packit 40b132
SSL_ERROR_POST_WARNING                  = (SSL_ERROR_BASE + 13),
Packit 40b132
SSL_ERROR_SSL2_DISABLED                 = (SSL_ERROR_BASE + 14),
Packit 40b132
SSL_ERROR_BAD_MAC_READ                  = (SSL_ERROR_BASE + 15),
Packit 40b132
/*
Packit 40b132
 * Received an alert reporting what we did wrong.
Packit 40b132
 * (two more alerts above, and many more below)
Packit 40b132
 */
Packit 40b132
SSL_ERROR_BAD_MAC_ALERT                 = (SSL_ERROR_BASE + 16),
Packit 40b132
SSL_ERROR_BAD_CERT_ALERT                = (SSL_ERROR_BASE + 17),
Packit 40b132
SSL_ERROR_REVOKED_CERT_ALERT            = (SSL_ERROR_BASE + 18),
Packit 40b132
SSL_ERROR_EXPIRED_CERT_ALERT            = (SSL_ERROR_BASE + 19),
Packit 40b132
Packit 40b132
SSL_ERROR_SSL_DISABLED                  = (SSL_ERROR_BASE + 20),
Packit 40b132
SSL_ERROR_FORTEZZA_PQG                  = (SSL_ERROR_BASE + 21),
Packit 40b132
SSL_ERROR_UNKNOWN_CIPHER_SUITE          = (SSL_ERROR_BASE + 22),
Packit 40b132
SSL_ERROR_NO_CIPHERS_SUPPORTED          = (SSL_ERROR_BASE + 23),
Packit 40b132
SSL_ERROR_BAD_BLOCK_PADDING             = (SSL_ERROR_BASE + 24),
Packit 40b132
SSL_ERROR_RX_RECORD_TOO_LONG            = (SSL_ERROR_BASE + 25),
Packit 40b132
SSL_ERROR_TX_RECORD_TOO_LONG            = (SSL_ERROR_BASE + 26),
Packit 40b132
/*
Packit 40b132
 * Received a malformed (too long or short) SSL handshake.
Packit 40b132
 */
Packit 40b132
SSL_ERROR_RX_MALFORMED_HELLO_REQUEST    = (SSL_ERROR_BASE + 27),
Packit 40b132
SSL_ERROR_RX_MALFORMED_CLIENT_HELLO     = (SSL_ERROR_BASE + 28),
Packit 40b132
SSL_ERROR_RX_MALFORMED_SERVER_HELLO     = (SSL_ERROR_BASE + 29),
Packit 40b132
SSL_ERROR_RX_MALFORMED_CERTIFICATE      = (SSL_ERROR_BASE + 30),
Packit 40b132
SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH  = (SSL_ERROR_BASE + 31),
Packit 40b132
SSL_ERROR_RX_MALFORMED_CERT_REQUEST     = (SSL_ERROR_BASE + 32),
Packit 40b132
SSL_ERROR_RX_MALFORMED_HELLO_DONE       = (SSL_ERROR_BASE + 33),
Packit 40b132
SSL_ERROR_RX_MALFORMED_CERT_VERIFY      = (SSL_ERROR_BASE + 34),
Packit 40b132
SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH  = (SSL_ERROR_BASE + 35),
Packit 40b132
SSL_ERROR_RX_MALFORMED_FINISHED         = (SSL_ERROR_BASE + 36),
Packit 40b132
/*
Packit 40b132
 * Received a malformed (too long or short) SSL record.
Packit 40b132
 */
Packit 40b132
SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER    = (SSL_ERROR_BASE + 37),
Packit 40b132
SSL_ERROR_RX_MALFORMED_ALERT            = (SSL_ERROR_BASE + 38),
Packit 40b132
SSL_ERROR_RX_MALFORMED_HANDSHAKE        = (SSL_ERROR_BASE + 39),
Packit 40b132
SSL_ERROR_RX_MALFORMED_APPLICATION_DATA = (SSL_ERROR_BASE + 40),
Packit 40b132
/*
Packit 40b132
 * Received an SSL handshake that was inappropriate for the state we're in.
Packit 40b132
 * E.g. Server received message from server, or wrong state in state machine.
Packit 40b132
 */
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST   = (SSL_ERROR_BASE + 41),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO    = (SSL_ERROR_BASE + 42),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO    = (SSL_ERROR_BASE + 43),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CERTIFICATE     = (SSL_ERROR_BASE + 44),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH = (SSL_ERROR_BASE + 45),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST    = (SSL_ERROR_BASE + 46),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_HELLO_DONE      = (SSL_ERROR_BASE + 47),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY     = (SSL_ERROR_BASE + 48),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH = (SSL_ERROR_BASE + 49),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_FINISHED        = (SSL_ERROR_BASE + 50),
Packit 40b132
/*
Packit 40b132
 * Received an SSL record that was inappropriate for the state we're in.
Packit 40b132
 */
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER   = (SSL_ERROR_BASE + 51),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_ALERT           = (SSL_ERROR_BASE + 52),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_HANDSHAKE       = (SSL_ERROR_BASE + 53),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA = (SSL_ERROR_BASE + 54),
Packit 40b132
/*
Packit 40b132
 * Received record/message with unknown discriminant.
Packit 40b132
 */
Packit 40b132
SSL_ERROR_RX_UNKNOWN_RECORD_TYPE        = (SSL_ERROR_BASE + 55),
Packit 40b132
SSL_ERROR_RX_UNKNOWN_HANDSHAKE          = (SSL_ERROR_BASE + 56),
Packit 40b132
SSL_ERROR_RX_UNKNOWN_ALERT              = (SSL_ERROR_BASE + 57),
Packit 40b132
/*
Packit 40b132
 * Received an alert reporting what we did wrong.  (more alerts above)
Packit 40b132
 */
Packit 40b132
SSL_ERROR_CLOSE_NOTIFY_ALERT            = (SSL_ERROR_BASE + 58),
Packit 40b132
SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT    = (SSL_ERROR_BASE + 59),
Packit 40b132
SSL_ERROR_DECOMPRESSION_FAILURE_ALERT   = (SSL_ERROR_BASE + 60),
Packit 40b132
SSL_ERROR_HANDSHAKE_FAILURE_ALERT       = (SSL_ERROR_BASE + 61),
Packit 40b132
SSL_ERROR_ILLEGAL_PARAMETER_ALERT       = (SSL_ERROR_BASE + 62),
Packit 40b132
SSL_ERROR_UNSUPPORTED_CERT_ALERT        = (SSL_ERROR_BASE + 63),
Packit 40b132
SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT     = (SSL_ERROR_BASE + 64),
Packit 40b132
Packit 40b132
SSL_ERROR_GENERATE_RANDOM_FAILURE       = (SSL_ERROR_BASE + 65),
Packit 40b132
SSL_ERROR_SIGN_HASHES_FAILURE           = (SSL_ERROR_BASE + 66),
Packit 40b132
SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE    = (SSL_ERROR_BASE + 67),
Packit 40b132
SSL_ERROR_SERVER_KEY_EXCHANGE_FAILURE   = (SSL_ERROR_BASE + 68),
Packit 40b132
SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE   = (SSL_ERROR_BASE + 69),
Packit 40b132
Packit 40b132
SSL_ERROR_ENCRYPTION_FAILURE            = (SSL_ERROR_BASE + 70),
Packit 40b132
SSL_ERROR_DECRYPTION_FAILURE            = (SSL_ERROR_BASE + 71), /* don't use */
Packit 40b132
SSL_ERROR_SOCKET_WRITE_FAILURE          = (SSL_ERROR_BASE + 72),
Packit 40b132
Packit 40b132
SSL_ERROR_MD5_DIGEST_FAILURE            = (SSL_ERROR_BASE + 73),
Packit 40b132
SSL_ERROR_SHA_DIGEST_FAILURE            = (SSL_ERROR_BASE + 74),
Packit 40b132
SSL_ERROR_MAC_COMPUTATION_FAILURE       = (SSL_ERROR_BASE + 75),
Packit 40b132
SSL_ERROR_SYM_KEY_CONTEXT_FAILURE       = (SSL_ERROR_BASE + 76),
Packit 40b132
SSL_ERROR_SYM_KEY_UNWRAP_FAILURE        = (SSL_ERROR_BASE + 77),
Packit 40b132
SSL_ERROR_PUB_KEY_SIZE_LIMIT_EXCEEDED   = (SSL_ERROR_BASE + 78),
Packit 40b132
SSL_ERROR_IV_PARAM_FAILURE              = (SSL_ERROR_BASE + 79),
Packit 40b132
SSL_ERROR_INIT_CIPHER_SUITE_FAILURE     = (SSL_ERROR_BASE + 80),
Packit 40b132
SSL_ERROR_SESSION_KEY_GEN_FAILURE       = (SSL_ERROR_BASE + 81),
Packit 40b132
SSL_ERROR_NO_SERVER_KEY_FOR_ALG         = (SSL_ERROR_BASE + 82),
Packit 40b132
SSL_ERROR_TOKEN_INSERTION_REMOVAL       = (SSL_ERROR_BASE + 83),
Packit 40b132
SSL_ERROR_TOKEN_SLOT_NOT_FOUND          = (SSL_ERROR_BASE + 84),
Packit 40b132
SSL_ERROR_NO_COMPRESSION_OVERLAP        = (SSL_ERROR_BASE + 85),
Packit 40b132
SSL_ERROR_HANDSHAKE_NOT_COMPLETED       = (SSL_ERROR_BASE + 86),
Packit 40b132
SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE      = (SSL_ERROR_BASE + 87),
Packit 40b132
SSL_ERROR_CERT_KEA_MISMATCH             = (SSL_ERROR_BASE + 88),
Packit 40b132
/* SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA became obsolete in NSS 3.14. */
Packit 40b132
SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA      = (SSL_ERROR_BASE + 89),
Packit 40b132
SSL_ERROR_SESSION_NOT_FOUND             = (SSL_ERROR_BASE + 90),
Packit 40b132
Packit 40b132
SSL_ERROR_DECRYPTION_FAILED_ALERT       = (SSL_ERROR_BASE + 91),
Packit 40b132
SSL_ERROR_RECORD_OVERFLOW_ALERT         = (SSL_ERROR_BASE + 92),
Packit 40b132
SSL_ERROR_UNKNOWN_CA_ALERT              = (SSL_ERROR_BASE + 93),
Packit 40b132
SSL_ERROR_ACCESS_DENIED_ALERT           = (SSL_ERROR_BASE + 94),
Packit 40b132
SSL_ERROR_DECODE_ERROR_ALERT            = (SSL_ERROR_BASE + 95),
Packit 40b132
SSL_ERROR_DECRYPT_ERROR_ALERT           = (SSL_ERROR_BASE + 96),
Packit 40b132
SSL_ERROR_EXPORT_RESTRICTION_ALERT      = (SSL_ERROR_BASE + 97),
Packit 40b132
SSL_ERROR_PROTOCOL_VERSION_ALERT        = (SSL_ERROR_BASE + 98),
Packit 40b132
SSL_ERROR_INSUFFICIENT_SECURITY_ALERT   = (SSL_ERROR_BASE + 99),
Packit 40b132
SSL_ERROR_INTERNAL_ERROR_ALERT          = (SSL_ERROR_BASE + 100),
Packit 40b132
SSL_ERROR_USER_CANCELED_ALERT           = (SSL_ERROR_BASE + 101),
Packit 40b132
SSL_ERROR_NO_RENEGOTIATION_ALERT        = (SSL_ERROR_BASE + 102),
Packit 40b132
Packit 40b132
SSL_ERROR_SERVER_CACHE_NOT_CONFIGURED   = (SSL_ERROR_BASE + 103),
Packit 40b132
Packit 40b132
SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT   = (SSL_ERROR_BASE + 104),
Packit 40b132
SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT = (SSL_ERROR_BASE + 105),
Packit 40b132
SSL_ERROR_UNRECOGNIZED_NAME_ALERT       = (SSL_ERROR_BASE + 106),
Packit 40b132
SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT = (SSL_ERROR_BASE + 107),
Packit 40b132
SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT     = (SSL_ERROR_BASE + 108),
Packit 40b132
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_NEW_SESSION_TICKET = (SSL_ERROR_BASE + 109),
Packit 40b132
SSL_ERROR_RX_MALFORMED_NEW_SESSION_TICKET = (SSL_ERROR_BASE + 110),
Packit 40b132
Packit 40b132
SSL_ERROR_DECOMPRESSION_FAILURE         = (SSL_ERROR_BASE + 111),
Packit 40b132
SSL_ERROR_RENEGOTIATION_NOT_ALLOWED     = (SSL_ERROR_BASE + 112),
Packit 40b132
SSL_ERROR_UNSAFE_NEGOTIATION            = (SSL_ERROR_BASE + 113),
Packit 40b132
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_UNCOMPRESSED_RECORD = (SSL_ERROR_BASE + 114),
Packit 40b132
Packit 40b132
SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY  = (SSL_ERROR_BASE + 115),
Packit 40b132
Packit 40b132
SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID    = (SSL_ERROR_BASE + 116),
Packit 40b132
Packit 40b132
SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SSL2 = (SSL_ERROR_BASE + 117),
Packit 40b132
SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SERVERS = (SSL_ERROR_BASE + 118),
Packit 40b132
SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_CLIENTS = (SSL_ERROR_BASE + 119),
Packit 40b132
Packit 40b132
SSL_ERROR_INVALID_VERSION_RANGE         = (SSL_ERROR_BASE + 120),
Packit 40b132
SSL_ERROR_CIPHER_DISALLOWED_FOR_VERSION = (SSL_ERROR_BASE + 121),
Packit 40b132
Packit 40b132
SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST = (SSL_ERROR_BASE + 122),
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST = (SSL_ERROR_BASE + 123),
Packit 40b132
Packit 40b132
SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_VERSION = (SSL_ERROR_BASE + 124),
Packit 40b132
Packit 40b132
SSL_ERROR_RX_UNEXPECTED_CERT_STATUS     = (SSL_ERROR_BASE + 125),
Packit 40b132
Packit 40b132
SSL_ERROR_UNSUPPORTED_HASH_ALGORITHM    = (SSL_ERROR_BASE + 126),
Packit 40b132
SSL_ERROR_DIGEST_FAILURE                = (SSL_ERROR_BASE + 127),
Packit 40b132
SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM = (SSL_ERROR_BASE + 128),
Packit 40b132
Packit 40b132
SSL_ERROR_NEXT_PROTOCOL_NO_CALLBACK     = (SSL_ERROR_BASE + 129),
Packit 40b132
SSL_ERROR_NEXT_PROTOCOL_NO_PROTOCOL     = (SSL_ERROR_BASE + 130),
Packit 40b132
Packit 40b132
SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT  = (SSL_ERROR_BASE + 131),
Packit 40b132
Packit 40b132
SSL_ERROR_WEAK_SERVER_CERT_KEY          = (SSL_ERROR_BASE + 132),
Packit 40b132
Packit 40b132
SSL_ERROR_END_OF_LIST   /* let the c compiler determine the value of this. */
Packit 40b132
} SSLErrorCodes;
Packit 40b132
#endif /* NO_SECURITY_ERROR_ENUM */
Packit 40b132
Packit 40b132
#endif /* __SSL_ERR_H_ */