Fix ERR_R_... problems.
[openssl.git] / crypto / err / err.h
index 2ca6b1b9f937f3481467b82baa96962ab54e57b3..724eac5aaeb56fa7bb22e0be8c61495dfccac3ec 100644 (file)
@@ -116,16 +116,17 @@ typedef struct err_state_st
 #define ERR_LIB_PEM            9
 #define ERR_LIB_DSA            10
 #define ERR_LIB_X509           11
-#define ERR_LIB_METH           12
+/* #define ERR_LIB_METH         12 */
 #define ERR_LIB_ASN1           13
 #define ERR_LIB_CONF           14
 #define ERR_LIB_CRYPTO         15
+#define ERR_LIB_EC             16
 #define ERR_LIB_SSL            20
-#define ERR_LIB_SSL23          21
-#define ERR_LIB_SSL2           22
-#define ERR_LIB_SSL3           23
-#define ERR_LIB_RSAREF         30
-#define ERR_LIB_PROXY          31
+/* #define ERR_LIB_SSL23        21 */
+/* #define ERR_LIB_SSL2         22 */
+/* #define ERR_LIB_SSL3         23 */
+/* #define ERR_LIB_RSAREF       30 */
+/* #define ERR_LIB_PROXY        31 */
 #define ERR_LIB_BIO            32
 #define ERR_LIB_PKCS7          33
 #define ERR_LIB_X509V3         34
@@ -134,7 +135,6 @@ typedef struct err_state_st
 #define ERR_LIB_DSO            37
 #define ERR_LIB_ENGINE         38
 #define ERR_LIB_OCSP            39
-#define ERR_LIB_EC             40
 
 #define ERR_LIB_USER           128
 
@@ -144,21 +144,16 @@ typedef struct err_state_st
 #define DHerr(f,r)   ERR_PUT_error(ERR_LIB_DH,(f),(r),ERR_file_name,__LINE__)
 #define EVPerr(f,r)  ERR_PUT_error(ERR_LIB_EVP,(f),(r),ERR_file_name,__LINE__)
 #define BUFerr(f,r)  ERR_PUT_error(ERR_LIB_BUF,(f),(r),ERR_file_name,__LINE__)
-#define BIOerr(f,r)  ERR_PUT_error(ERR_LIB_BIO,(f),(r),ERR_file_name,__LINE__)
 #define OBJerr(f,r)  ERR_PUT_error(ERR_LIB_OBJ,(f),(r),ERR_file_name,__LINE__)
 #define PEMerr(f,r)  ERR_PUT_error(ERR_LIB_PEM,(f),(r),ERR_file_name,__LINE__)
 #define DSAerr(f,r)  ERR_PUT_error(ERR_LIB_DSA,(f),(r),ERR_file_name,__LINE__)
 #define X509err(f,r) ERR_PUT_error(ERR_LIB_X509,(f),(r),ERR_file_name,__LINE__)
-#define METHerr(f,r) ERR_PUT_error(ERR_LIB_METH,(f),(r),ERR_file_name,__LINE__)
 #define ASN1err(f,r) ERR_PUT_error(ERR_LIB_ASN1,(f),(r),ERR_file_name,__LINE__)
 #define CONFerr(f,r) ERR_PUT_error(ERR_LIB_CONF,(f),(r),ERR_file_name,__LINE__)
 #define CRYPTOerr(f,r) ERR_PUT_error(ERR_LIB_CRYPTO,(f),(r),ERR_file_name,__LINE__)
+#define ECerr(f,r)   ERR_PUT_error(ERR_LIB_EC,(f),(r),ERR_file_name,__LINE__)
 #define SSLerr(f,r)  ERR_PUT_error(ERR_LIB_SSL,(f),(r),ERR_file_name,__LINE__)
-#define SSL23err(f,r) ERR_PUT_error(ERR_LIB_SSL23,(f),(r),ERR_file_name,__LINE__)
-#define SSL2err(f,r) ERR_PUT_error(ERR_LIB_SSL2,(f),(r),ERR_file_name,__LINE__)
-#define SSL3err(f,r) ERR_PUT_error(ERR_LIB_SSL3,(f),(r),ERR_file_name,__LINE__)
-#define RSAREFerr(f,r) ERR_PUT_error(ERR_LIB_RSAREF,(f),(r),ERR_file_name,__LINE__)
-#define PROXYerr(f,r) ERR_PUT_error(ERR_LIB_PROXY,(f),(r),ERR_file_name,__LINE__)
+#define BIOerr(f,r)  ERR_PUT_error(ERR_LIB_BIO,(f),(r),ERR_file_name,__LINE__)
 #define PKCS7err(f,r) ERR_PUT_error(ERR_LIB_PKCS7,(f),(r),ERR_file_name,__LINE__)
 #define X509V3err(f,r) ERR_PUT_error(ERR_LIB_X509V3,(f),(r),ERR_file_name,__LINE__)
 #define PKCS12err(f,r) ERR_PUT_error(ERR_LIB_PKCS12,(f),(r),ERR_file_name,__LINE__)
@@ -166,7 +161,6 @@ typedef struct err_state_st
 #define DSOerr(f,r) ERR_PUT_error(ERR_LIB_DSO,(f),(r),ERR_file_name,__LINE__)
 #define ENGINEerr(f,r) ERR_PUT_error(ERR_LIB_ENGINE,(f),(r),ERR_file_name,__LINE__)
 #define OCSPerr(f,r) ERR_PUT_error(ERR_LIB_OCSP,(f),(r),ERR_file_name,__LINE__)
-#define ECerr(f,r)   ERR_PUT_error(ERR_LIB_EC,(f),(r),ERR_file_name,__LINE__)
 
 /* Borland C seems too stupid to be able to shift and do longs in
  * the pre-processor :-( */
@@ -178,6 +172,7 @@ typedef struct err_state_st
 #define ERR_GET_REASON(l)      (int)((l)&0xfffL)
 #define ERR_FATAL_ERROR(l)     (int)((l)&ERR_R_FATAL)
 
+
 /* OS functions */
 #define SYS_F_FOPEN            1
 #define SYS_F_CONNECT          2
@@ -190,46 +185,49 @@ typedef struct err_state_st
 #define SYS_F_WSASTARTUP       9 /* Winsock stuff */
 #define SYS_F_OPENDIR          10
 
-#define ERR_R_FATAL            32      
+
 /* reasons */
-#define ERR_R_SYS_LIB  ERR_LIB_SYS
-#define ERR_R_BN_LIB   ERR_LIB_BN
-#define ERR_R_RSA_LIB  ERR_LIB_RSA
-#define ERR_R_DSA_LIB  ERR_LIB_DSA
-#define ERR_R_DH_LIB   ERR_LIB_DH
-#define ERR_R_EVP_LIB  ERR_LIB_EVP
-#define ERR_R_BUF_LIB  ERR_LIB_BUF
-#define ERR_R_BIO_LIB  ERR_LIB_BIO
-#define ERR_R_OBJ_LIB  ERR_LIB_OBJ
-#define ERR_R_PEM_LIB  ERR_LIB_PEM
-#define ERR_R_X509_LIB ERR_LIB_X509
-#define ERR_R_METH_LIB ERR_LIB_METH
-#define ERR_R_ASN1_LIB ERR_LIB_ASN1
-#define ERR_R_CONF_LIB ERR_LIB_CONF
-#define ERR_R_CRYPTO_LIB ERR_LIB_CRYPTO
-#define ERR_R_SSL_LIB  ERR_LIB_SSL
-#define ERR_R_SSL23_LIB        ERR_LIB_SSL23
-#define ERR_R_SSL2_LIB ERR_LIB_SSL2
-#define ERR_R_SSL3_LIB ERR_LIB_SSL3
-#define ERR_R_PROXY_LIB        ERR_LIB_PROXY
-#define ERR_R_BIO_LIB  ERR_LIB_BIO
-#define ERR_R_PKCS7_LIB        ERR_LIB_PKCS7
-#define ERR_R_PKCS12_LIB ERR_LIB_PKCS12
-#define ERR_R_DSO_LIB  ERR_LIB_DSO
-#define ERR_R_ENGINE_LIB ERR_LIB_ENGINE
-#define ERR_R_OCSP_LIB  ERR_LIB_OCSP
-#define ERR_R_EC_LIB   ERR_LIB_EC
+#define ERR_R_SYS_LIB  ERR_LIB_SYS       /* 2 */
+#define ERR_R_BN_LIB   ERR_LIB_BN        /* 3 */
+#define ERR_R_RSA_LIB  ERR_LIB_RSA       /* 4 */
+#define ERR_R_DH_LIB   ERR_LIB_DH        /* 5 */
+#define ERR_R_EVP_LIB  ERR_LIB_EVP       /* 6 */
+#define ERR_R_BUF_LIB  ERR_LIB_BUF       /* 7 */
+#define ERR_R_OBJ_LIB  ERR_LIB_OBJ       /* 8 */
+#define ERR_R_PEM_LIB  ERR_LIB_PEM       /* 9 */
+#define ERR_R_DSA_LIB  ERR_LIB_DSA      /* 10 */
+#define ERR_R_X509_LIB ERR_LIB_X509     /* 11 */
+#define ERR_R_ASN1_LIB ERR_LIB_ASN1     /* 13 */
+#define ERR_R_CONF_LIB ERR_LIB_CONF     /* 14 */
+#define ERR_R_CRYPTO_LIB ERR_LIB_CRYPTO  /* 15 */
+#define ERR_R_EC_LIB   ERR_LIB_EC       /* 16 */
+#define ERR_R_SSL_LIB  ERR_LIB_SSL      /* 20 */
+#define ERR_R_BIO_LIB  ERR_LIB_BIO      /* 32 */
+#define ERR_R_PKCS7_LIB        ERR_LIB_PKCS7    /* 33 */
+#define ERR_R_X509V3_LIB ERR_LIB_X509V3  /* 34 */
+#define ERR_R_PKCS12_LIB ERR_LIB_PKCS12  /* 35 */
+#define ERR_R_RAND_LIB ERR_LIB_RAND     /* 36 */
+#define ERR_R_DSO_LIB  ERR_LIB_DSO      /* 37 */
+#define ERR_R_ENGINE_LIB ERR_LIB_ENGINE  /* 38 */
+#define ERR_R_OCSP_LIB  ERR_LIB_OCSP     /* 39 */
+
+#define ERR_R_NESTED_ASN1_ERROR                        58
+#define ERR_R_BAD_ASN1_OBJECT_HEADER           59
+#define ERR_R_BAD_GET_ASN1_OBJECT_CALL         60
+#define ERR_R_EXPECTING_AN_ASN1_SEQUENCE       61
+#define ERR_R_ASN1_LENGTH_MISMATCH             62
+#define ERR_R_MISSING_ASN1_EOS                 63
 
 /* fatal error */
+#define ERR_R_FATAL                            64
 #define        ERR_R_MALLOC_FAILURE                    (1|ERR_R_FATAL)
 #define        ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED       (2|ERR_R_FATAL)
 #define        ERR_R_PASSED_NULL_PARAMETER             (3|ERR_R_FATAL)
-#define ERR_R_NESTED_ASN1_ERROR                        (4)
-#define ERR_R_BAD_ASN1_OBJECT_HEADER           (5)
-#define ERR_R_BAD_GET_ASN1_OBJECT_CALL         (6)
-#define ERR_R_EXPECTING_AN_ASN1_SEQUENCE       (7)
-#define ERR_R_ASN1_LENGTH_MISMATCH             (8)
-#define ERR_R_MISSING_ASN1_EOS                 (9)
+#define        ERR_R_INTERNAL_ERROR                    (4|ERR_R_FATAL)
+
+/* 99 is the maximum possible ERR_R_... code, higher values
+ * are reserved for the individual libraries */
+
 
 typedef struct ERR_string_data_st
        {