The error codes used throughout the library are described below. The
return code GNUTLS_E_SUCCESS indicate successful operation, and
is guaranteed to have the value 0, so you can use it in logical
expressions.
| 0 | GNUTLS_E_SUCCESS | Success. |
| -3 | GNUTLS_E_UNKNOWN_COMPRESSION_ALGORITHM | Could not negotiate a supported compression method. |
| -6 | GNUTLS_E_UNKNOWN_CIPHER_TYPE | The cipher type is unsupported. |
| -7 | GNUTLS_E_LARGE_PACKET | A large TLS record packet was received. |
| -8 | GNUTLS_E_UNSUPPORTED_VERSION_PACKET | A record packet with illegal version was received. |
| -9 | GNUTLS_E_UNEXPECTED_PACKET_LENGTH | A TLS packet with unexpected length was received. |
| -10 | GNUTLS_E_INVALID_SESSION | The specified session has been invalidated for some reason. |
| -12 | GNUTLS_E_FATAL_ALERT_RECEIVED | A TLS fatal alert has been received. |
| -15 | GNUTLS_E_UNEXPECTED_PACKET | An unexpected TLS packet was received. |
| -16 | GNUTLS_E_WARNING_ALERT_RECEIVED | A TLS warning alert has been received. |
| -18 | GNUTLS_E_ERROR_IN_FINISHED_PACKET | An error was encountered at the TLS Finished packet calculation. |
| -19 | GNUTLS_E_UNEXPECTED_HANDSHAKE_PACKET | An unexpected TLS handshake packet was received. |
| -21 | GNUTLS_E_UNKNOWN_CIPHER_SUITE | Could not negotiate a supported cipher suite. |
| -22 | GNUTLS_E_UNWANTED_ALGORITHM | An algorithm that is not enabled was negotiated. |
| -23 | GNUTLS_E_MPI_SCAN_FAILED | The scanning of a large integer has failed. |
| -24 | GNUTLS_E_DECRYPTION_FAILED | Decryption has failed. |
| -25 | GNUTLS_E_MEMORY_ERROR | Internal error in memory allocation. |
| -26 | GNUTLS_E_DECOMPRESSION_FAILED | Decompression of the TLS record packet has failed. |
| -27 | GNUTLS_E_COMPRESSION_FAILED | Compression of the TLS record packet has failed. |
| -28 | GNUTLS_E_AGAIN | Resource temporarily unavailable, try again. |
| -29 | GNUTLS_E_EXPIRED | The requested session has expired. |
| -30 | GNUTLS_E_DB_ERROR | Error in Database backend. |
| -31 | GNUTLS_E_SRP_PWD_ERROR | Error in password file. |
| -32 | GNUTLS_E_INSUFFICIENT_CREDENTIALS | Insufficient credentials for that request. |
| -33 | GNUTLS_E_HASH_FAILED | Hashing has failed. |
| -34 | GNUTLS_E_BASE64_DECODING_ERROR | Base64 decoding error. |
| -35 | GNUTLS_E_MPI_PRINT_FAILED | Could not export a large integer. |
| -37 | GNUTLS_E_REHANDSHAKE | Rehandshake was requested by the peer. |
| -38 | GNUTLS_E_GOT_APPLICATION_DATA | TLS Application data were received, while expecting handshake data. |
| -39 | GNUTLS_E_RECORD_LIMIT_REACHED | The upper limit of record packet sequence numbers has been reached. Wow! |
| -40 | GNUTLS_E_ENCRYPTION_FAILED | Encryption has failed. |
| -43 | GNUTLS_E_CERTIFICATE_ERROR | Error in the certificate. |
| -44 | GNUTLS_E_PK_ENCRYPTION_FAILED | Public key encryption has failed. |
| -45 | GNUTLS_E_PK_DECRYPTION_FAILED | Public key decryption has failed. |
| -46 | GNUTLS_E_PK_SIGN_FAILED | Public key signing has failed. |
| -47 | GNUTLS_E_X509_UNSUPPORTED_CRITICAL_EXTENSION | Unsupported critical extension in X.509 certificate. |
| -48 | GNUTLS_E_KEY_USAGE_VIOLATION | Key usage violation in certificate has been detected. |
| -49 | GNUTLS_E_NO_CERTIFICATE_FOUND | No certificate was found. |
| -50 | GNUTLS_E_INVALID_REQUEST | The request is invalid. |
| -51 | GNUTLS_E_SHORT_MEMORY_BUFFER | The given memory buffer is too short to hold parameters. |
| -52 | GNUTLS_E_INTERRUPTED | Function was interrupted. |
| -53 | GNUTLS_E_PUSH_ERROR | Error in the push function. |
| -54 | GNUTLS_E_PULL_ERROR | Error in the pull function. |
| -55 | GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER | An illegal parameter has been received. |
| -56 | GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE | The requested data were not available. |
| -57 | GNUTLS_E_PKCS1_WRONG_PAD | Wrong padding in PKCS1 packet. |
| -58 | GNUTLS_E_RECEIVED_ILLEGAL_EXTENSION | An illegal TLS extension was received. |
| -59 | GNUTLS_E_INTERNAL_ERROR | GnuTLS internal error. |
| -60 | GNUTLS_E_CERTIFICATE_KEY_MISMATCH | The certificate and the given key do not match. |
| -61 | GNUTLS_E_UNSUPPORTED_CERTIFICATE_TYPE | The certificate type is not supported. |
| -62 | GNUTLS_E_X509_UNKNOWN_SAN | Unknown Subject Alternative name in X.509 certificate. |
| -63 | GNUTLS_E_DH_PRIME_UNACCEPTABLE | The Diffie-Hellman prime sent by the server is not acceptable (not long enough). |
| -64 | GNUTLS_E_FILE_ERROR | Error while reading file. |
| -67 | GNUTLS_E_ASN1_ELEMENT_NOT_FOUND | ASN1 parser: Element was not found. |
| -68 | GNUTLS_E_ASN1_IDENTIFIER_NOT_FOUND | ASN1 parser: Identifier was not found |
| -69 | GNUTLS_E_ASN1_DER_ERROR | ASN1 parser: Error in DER parsing. |
| -70 | GNUTLS_E_ASN1_VALUE_NOT_FOUND | ASN1 parser: Value was not found. |
| -71 | GNUTLS_E_ASN1_GENERIC_ERROR | ASN1 parser: Generic parsing error. |
| -72 | GNUTLS_E_ASN1_VALUE_NOT_VALID | ASN1 parser: Value is not valid. |
| -73 | GNUTLS_E_ASN1_TAG_ERROR | ASN1 parser: Error in TAG. |
| -74 | GNUTLS_E_ASN1_TAG_IMPLICIT | ASN1 parser: error in implicit tag |
| -75 | GNUTLS_E_ASN1_TYPE_ANY_ERROR | ASN1 parser: Error in type ’ANY’. |
| -76 | GNUTLS_E_ASN1_SYNTAX_ERROR | ASN1 parser: Syntax error. |
| -77 | GNUTLS_E_ASN1_DER_OVERFLOW | ASN1 parser: Overflow in DER parsing. |
| -78 | GNUTLS_E_TOO_MANY_EMPTY_PACKETS | Too many empty record packets have been received. |
| -79 | GNUTLS_E_OPENPGP_UID_REVOKED | The OpenPGP User ID is revoked. |
| -80 | GNUTLS_E_UNKNOWN_PK_ALGORITHM | An unknown public key algorithm was encountered. |
| -81 | GNUTLS_E_TOO_MANY_HANDSHAKE_PACKETS | Too many handshake packets have been received. |
| -84 | GNUTLS_E_NO_TEMPORARY_RSA_PARAMS | No temporary RSA parameters were found. |
| -86 | GNUTLS_E_NO_COMPRESSION_ALGORITHMS | No supported compression algorithms have been found. |
| -87 | GNUTLS_E_NO_CIPHER_SUITES | No supported cipher suites have been found. |
| -88 | GNUTLS_E_OPENPGP_GETKEY_FAILED | Could not get OpenPGP key. |
| -89 | GNUTLS_E_PK_SIG_VERIFY_FAILED | Public key signature verification has failed. |
| -90 | GNUTLS_E_ILLEGAL_SRP_USERNAME | The SRP username supplied is illegal. |
| -91 | GNUTLS_E_SRP_PWD_PARSING_ERROR | Parsing error in password file. |
| -93 | GNUTLS_E_NO_TEMPORARY_DH_PARAMS | No temporary DH parameters were found. |
| -94 | GNUTLS_E_OPENPGP_FINGERPRINT_UNSUPPORTED | The OpenPGP fingerprint is not supported. |
| -95 | GNUTLS_E_X509_UNSUPPORTED_ATTRIBUTE | The certificate has unsupported attributes. |
| -96 | GNUTLS_E_UNKNOWN_HASH_ALGORITHM | The hash algorithm is unknown. |
| -97 | GNUTLS_E_UNKNOWN_PKCS_CONTENT_TYPE | The PKCS structure’s content type is unknown. |
| -98 | GNUTLS_E_UNKNOWN_PKCS_BAG_TYPE | The PKCS structure’s bag type is unknown. |
| -99 | GNUTLS_E_INVALID_PASSWORD | The given password contains invalid characters. |
| -100 | GNUTLS_E_MAC_VERIFY_FAILED | The Message Authentication Code verification failed. |
| -101 | GNUTLS_E_CONSTRAINT_ERROR | Some constraint limits were reached. |
| -102 | GNUTLS_E_WARNING_IA_IPHF_RECEIVED | Received a TLS/IA Intermediate Phase Finished message |
| -103 | GNUTLS_E_WARNING_IA_FPHF_RECEIVED | Received a TLS/IA Final Phase Finished message |
| -104 | GNUTLS_E_IA_VERIFY_FAILED | Verifying TLS/IA phase checksum failed |
| -105 | GNUTLS_E_UNKNOWN_ALGORITHM | The specified algorithm or protocol is unknown. |
| -106 | GNUTLS_E_UNSUPPORTED_SIGNATURE_ALGORITHM | The signature algorithm is not supported. |
| -107 | GNUTLS_E_SAFE_RENEGOTIATION_FAILED | Safe renegotiation failed. |
| -108 | GNUTLS_E_UNSAFE_RENEGOTIATION_DENIED | Unsafe renegotiation denied. |
| -109 | GNUTLS_E_UNKNOWN_SRP_USERNAME | The SRP username supplied is unknown. |
| -110 | GNUTLS_E_PREMATURE_TERMINATION | The TLS connection was non-properly terminated. |
| -201 | GNUTLS_E_BASE64_ENCODING_ERROR | Base64 encoding error. |
| -202 | GNUTLS_E_INCOMPATIBLE_GCRYPT_LIBRARY | The crypto library version is too old. |
| -203 | GNUTLS_E_INCOMPATIBLE_LIBTASN1_LIBRARY | The tasn1 library version is too old. |
| -204 | GNUTLS_E_OPENPGP_KEYRING_ERROR | Error loading the keyring. |
| -205 | GNUTLS_E_X509_UNSUPPORTED_OID | The OID is not supported. |
| -206 | GNUTLS_E_RANDOM_FAILED | Failed to acquire random data. |
| -207 | GNUTLS_E_BASE64_UNEXPECTED_HEADER_ERROR | Base64 unexpected header error. |
| -208 | GNUTLS_E_OPENPGP_SUBKEY_ERROR | Could not find OpenPGP subkey. |
| -209 | GNUTLS_E_CRYPTO_ALREADY_REGISTERED | There is already a crypto algorithm with lower priority. |
| -210 | GNUTLS_E_HANDSHAKE_TOO_LARGE | The handshake data size is too large. |
| -211 | GNUTLS_E_CRYPTODEV_IOCTL_ERROR | Error interfacing with /dev/crypto |
| -212 | GNUTLS_E_CRYPTODEV_DEVICE_ERROR | Error opening /dev/crypto |
| -213 | GNUTLS_E_CHANNEL_BINDING_NOT_AVAILABLE | Channel binding data not available |
| -214 | GNUTLS_E_BAD_COOKIE | The cookie was bad. |
| -215 | GNUTLS_E_OPENPGP_PREFERRED_KEY_ERROR | The OpenPGP key has not a preferred key set. |
| -216 | GNUTLS_E_INCOMPAT_DSA_KEY_WITH_TLS_PROTOCOL | The given DSA key is incompatible with the selected TLS protocol. |
| -300 | GNUTLS_E_PKCS11_ERROR | PKCS #11 error. |
| -301 | GNUTLS_E_PKCS11_LOAD_ERROR | PKCS #11 initialization error. |
| -302 | GNUTLS_E_PARSING_ERROR | Error in parsing. |
| -303 | GNUTLS_E_PKCS11_PIN_ERROR | PKCS #11 error in PIN. |
| -305 | GNUTLS_E_PKCS11_SLOT_ERROR | PKCS #11 error in slot |
| -306 | GNUTLS_E_LOCKING_ERROR | Thread locking error |
| -307 | GNUTLS_E_PKCS11_ATTRIBUTE_ERROR | PKCS #11 error in attribute |
| -308 | GNUTLS_E_PKCS11_DEVICE_ERROR | PKCS #11 error in device |
| -309 | GNUTLS_E_PKCS11_DATA_ERROR | PKCS #11 error in data |
| -310 | GNUTLS_E_PKCS11_UNSUPPORTED_FEATURE_ERROR | PKCS #11 unsupported feature |
| -311 | GNUTLS_E_PKCS11_KEY_ERROR | PKCS #11 error in key |
| -312 | GNUTLS_E_PKCS11_PIN_EXPIRED | PKCS #11 PIN expired |
| -313 | GNUTLS_E_PKCS11_PIN_LOCKED | PKCS #11 PIN locked |
| -314 | GNUTLS_E_PKCS11_SESSION_ERROR | PKCS #11 error in session |
| -315 | GNUTLS_E_PKCS11_SIGNATURE_ERROR | PKCS #11 error in signature |
| -316 | GNUTLS_E_PKCS11_TOKEN_ERROR | PKCS #11 error in token |
| -317 | GNUTLS_E_PKCS11_USER_ERROR | PKCS #11 user error |
| -318 | GNUTLS_E_CRYPTO_INIT_FAILED | The initialization of crypto backend has failed. |
| -319 | GNUTLS_E_TIMEDOUT | The operation timed out |
| -320 | GNUTLS_E_USER_ERROR | The operation was cancelled due to user error |
| -321 | GNUTLS_E_ECC_NO_SUPPORTED_CURVES | No supported ECC curves were found |
| -322 | GNUTLS_E_ECC_UNSUPPORTED_CURVE | The curve is unsupported |
| -323 | GNUTLS_E_PKCS11_REQUESTED_OBJECT_NOT_AVAILBLE | The requested PKCS #11 object is not available |
| -324 | GNUTLS_E_CERTIFICATE_LIST_UNSORTED | The provided X.509 certificate list is not sorted (in subject to issuer order) |
| -325 | GNUTLS_E_ILLEGAL_PARAMETER | An illegal parameter was found. |
| -326 | GNUTLS_E_NO_PRIORITIES_WERE_SET | No or insufficient priorities were set. |
| -327 | GNUTLS_E_X509_UNSUPPORTED_EXTENSION | Unsupported extension in X.509 certificate. |
| -328 | GNUTLS_E_SESSION_EOF | Peer has terminated the connection |