make update
[openssl.git] / crypto / ecdh / ech_err.c
index 76fbe38387b0732bc2246f9311d2b90e62c042bd..6f4b0c99536340a30e21230810204cac0519febd 100644 (file)
@@ -1,6 +1,6 @@
 /* crypto/ecdh/ech_err.c */
 /* ====================================================================
- * Copyright (c) 1999-2002 The OpenSSL Project.  All rights reserved.
+ * Copyright (c) 1999-2006 The OpenSSL Project.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
 
 /* BEGIN ERROR CODES */
 #ifndef OPENSSL_NO_ERR
+
+#define ERR_FUNC(func) ERR_PACK(ERR_LIB_ECDH,func,0)
+#define ERR_REASON(reason) ERR_PACK(ERR_LIB_ECDH,0,reason)
+
 static ERR_STRING_DATA ECDH_str_functs[]=
        {
-{ERR_PACK(0,ECDH_F_ECDH_COMPUTE_KEY,0),        "ECDH_compute_key"},
-{ERR_PACK(0,ECDH_F_ECDH_DATA_NEW,0),   "ECDH_DATA_new"},
+{ERR_FUNC(ECDH_F_ECDH_COMPUTE_KEY),    "ECDH_compute_key"},
+{ERR_FUNC(ECDH_F_ECDH_DATA_NEW_METHOD),        "ECDH_DATA_new_method"},
 {0,NULL}
        };
 
 static ERR_STRING_DATA ECDH_str_reasons[]=
        {
-{ECDH_R_KDF_FAILED                       ,"KDF failed"},
-{ECDH_R_NO_PRIVATE_VALUE                 ,"no private value"},
-{ECDH_R_POINT_ARITHMETIC_FAILURE         ,"point arithmetic failure"},
+{ERR_REASON(ECDH_R_KDF_FAILED)           ,"KDF failed"},
+{ERR_REASON(ECDH_R_NO_PRIVATE_VALUE)     ,"no private value"},
+{ERR_REASON(ECDH_R_POINT_ARITHMETIC_FAILURE),"point arithmetic failure"},
 {0,NULL}
        };
 
@@ -83,15 +87,12 @@ static ERR_STRING_DATA ECDH_str_reasons[]=
 
 void ERR_load_ECDH_strings(void)
        {
-       static int init=1;
-
-       if (init)
-               {
-               init=0;
 #ifndef OPENSSL_NO_ERR
-               ERR_load_strings(ERR_LIB_ECDH,ECDH_str_functs);
-               ERR_load_strings(ERR_LIB_ECDH,ECDH_str_reasons);
-#endif
 
+       if (ERR_func_error_string(ECDH_str_functs[0].error) == NULL)
+               {
+               ERR_load_strings(0,ECDH_str_functs);
+               ERR_load_strings(0,ECDH_str_reasons);
                }
+#endif
        }