00001
00016 #ifndef LDNS_ERROR_H
00017 #define LDNS_ERROR_H
00018
00019 #include <ldns/util.h>
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00025 enum ldns_enum_status {
00026 LDNS_STATUS_OK,
00027 LDNS_STATUS_EMPTY_LABEL,
00028 LDNS_STATUS_LABEL_OVERFLOW,
00029 LDNS_STATUS_DOMAINNAME_OVERFLOW,
00030 LDNS_STATUS_DOMAINNAME_UNDERFLOW,
00031 LDNS_STATUS_DDD_OVERFLOW,
00032 LDNS_STATUS_PACKET_OVERFLOW,
00033 LDNS_STATUS_INVALID_POINTER,
00034 LDNS_STATUS_MEM_ERR,
00035 LDNS_STATUS_INTERNAL_ERR,
00036 LDNS_STATUS_SSL_ERR,
00037 LDNS_STATUS_ERR,
00038 LDNS_STATUS_INVALID_INT,
00039 LDNS_STATUS_INVALID_IP4,
00040 LDNS_STATUS_INVALID_IP6,
00041 LDNS_STATUS_INVALID_STR,
00042 LDNS_STATUS_INVALID_B32_EXT,
00043 LDNS_STATUS_INVALID_B64,
00044 LDNS_STATUS_INVALID_HEX,
00045 LDNS_STATUS_INVALID_TIME,
00046 LDNS_STATUS_NETWORK_ERR,
00047 LDNS_STATUS_ADDRESS_ERR,
00048 LDNS_STATUS_FILE_ERR,
00049 LDNS_STATUS_UNKNOWN_INET,
00050 LDNS_STATUS_NOT_IMPL,
00051 LDNS_STATUS_NULL,
00052 LDNS_STATUS_CRYPTO_UNKNOWN_ALGO,
00053 LDNS_STATUS_CRYPTO_ALGO_NOT_IMPL,
00054 LDNS_STATUS_CRYPTO_NO_RRSIG,
00055 LDNS_STATUS_CRYPTO_NO_DNSKEY,
00056 LDNS_STATUS_CRYPTO_NO_TRUSTED_DNSKEY,
00057 LDNS_STATUS_CRYPTO_NO_DS,
00058 LDNS_STATUS_CRYPTO_NO_TRUSTED_DS,
00059 LDNS_STATUS_CRYPTO_NO_MATCHING_KEYTAG_DNSKEY,
00060 LDNS_STATUS_CRYPTO_VALIDATED,
00061 LDNS_STATUS_CRYPTO_BOGUS,
00062 LDNS_STATUS_CRYPTO_SIG_EXPIRED,
00063 LDNS_STATUS_CRYPTO_SIG_NOT_INCEPTED,
00064 LDNS_STATUS_CRYPTO_TSIG_BOGUS,
00065 LDNS_STATUS_CRYPTO_TSIG_ERR,
00066 LDNS_STATUS_CRYPTO_EXPIRATION_BEFORE_INCEPTION,
00067 LDNS_STATUS_CRYPTO_TYPE_COVERED_ERR,
00068 LDNS_STATUS_ENGINE_KEY_NOT_LOADED,
00069 LDNS_STATUS_NSEC3_ERR,
00070 LDNS_STATUS_RES_NO_NS,
00071 LDNS_STATUS_RES_QUERY,
00072 LDNS_STATUS_WIRE_INCOMPLETE_HEADER,
00073 LDNS_STATUS_WIRE_INCOMPLETE_QUESTION,
00074 LDNS_STATUS_WIRE_INCOMPLETE_ANSWER,
00075 LDNS_STATUS_WIRE_INCOMPLETE_AUTHORITY,
00076 LDNS_STATUS_WIRE_INCOMPLETE_ADDITIONAL,
00077 LDNS_STATUS_NO_DATA,
00078 LDNS_STATUS_CERT_BAD_ALGORITHM,
00079 LDNS_STATUS_SYNTAX_TYPE_ERR,
00080 LDNS_STATUS_SYNTAX_CLASS_ERR,
00081 LDNS_STATUS_SYNTAX_TTL_ERR,
00082 LDNS_STATUS_SYNTAX_INCLUDE_ERR_NOTIMPL,
00083 LDNS_STATUS_SYNTAX_RDATA_ERR,
00084 LDNS_STATUS_SYNTAX_DNAME_ERR,
00085 LDNS_STATUS_SYNTAX_VERSION_ERR,
00086 LDNS_STATUS_SYNTAX_ALG_ERR,
00087 LDNS_STATUS_SYNTAX_KEYWORD_ERR,
00088 LDNS_STATUS_SYNTAX_TTL,
00089 LDNS_STATUS_SYNTAX_ORIGIN,
00090 LDNS_STATUS_SYNTAX_INCLUDE,
00091 LDNS_STATUS_SYNTAX_EMPTY,
00092 LDNS_STATUS_SYNTAX_ITERATIONS_OVERFLOW,
00093 LDNS_STATUS_SYNTAX_MISSING_VALUE_ERR,
00094 LDNS_STATUS_SYNTAX_INTEGER_OVERFLOW,
00095 LDNS_STATUS_SYNTAX_BAD_ESCAPE,
00096 LDNS_STATUS_SOCKET_ERROR,
00097 LDNS_STATUS_SYNTAX_ERR,
00098 LDNS_STATUS_DNSSEC_EXISTENCE_DENIED,
00099 LDNS_STATUS_DNSSEC_NSEC_RR_NOT_COVERED,
00100 LDNS_STATUS_DNSSEC_NSEC_WILDCARD_NOT_COVERED,
00101 LDNS_STATUS_DNSSEC_NSEC3_ORIGINAL_NOT_FOUND,
00102 LDNS_STATUS_MISSING_RDATA_FIELDS_RRSIG,
00103 LDNS_STATUS_MISSING_RDATA_FIELDS_KEY,
00104 LDNS_STATUS_CRYPTO_SIG_EXPIRED_WITHIN_MARGIN,
00105 LDNS_STATUS_CRYPTO_SIG_NOT_INCEPTED_WITHIN_MARGIN,
00106 LDNS_STATUS_DANE_STATUS_MESSAGES,
00107 LDNS_STATUS_DANE_UNKNOWN_CERTIFICATE_USAGE,
00108 LDNS_STATUS_DANE_UNKNOWN_SELECTOR,
00109 LDNS_STATUS_DANE_UNKNOWN_MATCHING_TYPE,
00110 LDNS_STATUS_DANE_UNKNOWN_PROTOCOL,
00111 LDNS_STATUS_DANE_UNKNOWN_TRANSPORT,
00112 LDNS_STATUS_DANE_MISSING_EXTRA_CERTS,
00113 LDNS_STATUS_DANE_EXTRA_CERTS_NOT_USED,
00114 LDNS_STATUS_DANE_OFFSET_OUT_OF_RANGE,
00115 LDNS_STATUS_DANE_INSECURE,
00116 LDNS_STATUS_DANE_BOGUS,
00117 LDNS_STATUS_DANE_TLSA_DID_NOT_MATCH,
00118 LDNS_STATUS_DANE_NON_CA_CERTIFICATE,
00119 LDNS_STATUS_DANE_PKIX_DID_NOT_VALIDATE,
00120 LDNS_STATUS_DANE_PKIX_NO_SELF_SIGNED_TRUST_ANCHOR
00121 };
00122 typedef enum ldns_enum_status ldns_status;
00123
00124 extern ldns_lookup_table ldns_error_str[];
00125
00132 const char *ldns_get_errorstr_by_id(ldns_status err);
00133
00134 #ifdef __cplusplus
00135 }
00136 #endif
00137
00138 #endif