Add -show_chain option to print out verified chain.
[openssl.git] / crypto / buffer / buf_err.c
index 73702f0f102df9d3add0ac465147948e03e06583..8f1de6192be49023708c10170c63b91aa3202754 100644 (file)
@@ -1,6 +1,6 @@
 /* crypto/buffer/buf_err.c */
 /* ====================================================================
- * Copyright (c) 1999-2003 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_BUF,func,0)
+#define ERR_REASON(reason) ERR_PACK(ERR_LIB_BUF,0,reason)
+
 static ERR_STRING_DATA BUF_str_functs[]=
        {
-{ERR_PACK(0,BUF_F_BUF_MEMDUP,0),       "BUF_memdup"},
-{ERR_PACK(0,BUF_F_BUF_MEM_GROW,0),     "BUF_MEM_grow"},
-{ERR_PACK(0,BUF_F_BUF_MEM_NEW,0),      "BUF_MEM_new"},
-{ERR_PACK(0,BUF_F_BUF_STRDUP,0),       "BUF_strdup"},
-{ERR_PACK(0,BUF_F_BUF_STRNDUP,0),      "BUF_strndup"},
+{ERR_FUNC(BUF_F_BUF_MEMDUP),   "BUF_memdup"},
+{ERR_FUNC(BUF_F_BUF_MEM_GROW), "BUF_MEM_grow"},
+{ERR_FUNC(BUF_F_BUF_MEM_GROW_CLEAN),   "BUF_MEM_grow_clean"},
+{ERR_FUNC(BUF_F_BUF_MEM_NEW),  "BUF_MEM_new"},
+{ERR_FUNC(BUF_F_BUF_STRDUP),   "BUF_strdup"},
+{ERR_FUNC(BUF_F_BUF_STRNDUP),  "BUF_strndup"},
 {0,NULL}
        };
 
@@ -83,15 +88,12 @@ static ERR_STRING_DATA BUF_str_reasons[]=
 
 void ERR_load_BUF_strings(void)
        {
-       static int init=1;
-
-       if (init)
-               {
-               init=0;
 #ifndef OPENSSL_NO_ERR
-               ERR_load_strings(ERR_LIB_BUF,BUF_str_functs);
-               ERR_load_strings(ERR_LIB_BUF,BUF_str_reasons);
-#endif
 
+       if (ERR_func_error_string(BUF_str_functs[0].error) == NULL)
+               {
+               ERR_load_strings(0,BUF_str_functs);
+               ERR_load_strings(0,BUF_str_reasons);
                }
+#endif
        }