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 };
00105 typedef enum ldns_enum_status ldns_status;
00106
00107 extern ldns_lookup_table ldns_error_str[];
00108
00115 const char *ldns_get_errorstr_by_id(ldns_status err);
00116
00117 #ifdef __cplusplus
00118 }
00119 #endif
00120
00121 #endif