Check for errors allocating the error strings.
[openssl.git] / crypto / dh / dh_err.c
1 /*
2  * Generated by util/mkerr.pl DO NOT EDIT
3  * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
4  *
5  * Licensed under the OpenSSL license (the "License").  You may not use
6  * this file except in compliance with the License.  You can obtain a copy
7  * in the file LICENSE in the source distribution or at
8  * https://www.openssl.org/source/license.html
9  */
10
11 #include <stdio.h>
12 #include <openssl/err.h>
13 #include <openssl/dh.h>
14
15 /* BEGIN ERROR CODES */
16 #ifndef OPENSSL_NO_ERR
17
18 # define ERR_FUNC(func) ERR_PACK(ERR_LIB_DH,func,0)
19 # define ERR_REASON(reason) ERR_PACK(ERR_LIB_DH,0,reason)
20
21 static ERR_STRING_DATA DH_str_functs[] = {
22     {ERR_FUNC(DH_F_COMPUTE_KEY), "compute_key"},
23     {ERR_FUNC(DH_F_DHPARAMS_PRINT_FP), "DHparams_print_fp"},
24     {ERR_FUNC(DH_F_DH_BUILTIN_GENPARAMS), "dh_builtin_genparams"},
25     {ERR_FUNC(DH_F_DH_CMS_DECRYPT), "dh_cms_decrypt"},
26     {ERR_FUNC(DH_F_DH_CMS_SET_PEERKEY), "dh_cms_set_peerkey"},
27     {ERR_FUNC(DH_F_DH_CMS_SET_SHARED_INFO), "dh_cms_set_shared_info"},
28     {ERR_FUNC(DH_F_DH_METH_DUP), "DH_meth_dup"},
29     {ERR_FUNC(DH_F_DH_METH_NEW), "DH_meth_new"},
30     {ERR_FUNC(DH_F_DH_METH_SET1_NAME), "DH_meth_set1_name"},
31     {ERR_FUNC(DH_F_DH_NEW_METHOD), "DH_new_method"},
32     {ERR_FUNC(DH_F_DH_PARAM_DECODE), "dh_param_decode"},
33     {ERR_FUNC(DH_F_DH_PRIV_DECODE), "dh_priv_decode"},
34     {ERR_FUNC(DH_F_DH_PRIV_ENCODE), "dh_priv_encode"},
35     {ERR_FUNC(DH_F_DH_PUB_DECODE), "dh_pub_decode"},
36     {ERR_FUNC(DH_F_DH_PUB_ENCODE), "dh_pub_encode"},
37     {ERR_FUNC(DH_F_DO_DH_PRINT), "do_dh_print"},
38     {ERR_FUNC(DH_F_GENERATE_KEY), "generate_key"},
39     {ERR_FUNC(DH_F_PKEY_DH_DERIVE), "pkey_dh_derive"},
40     {ERR_FUNC(DH_F_PKEY_DH_KEYGEN), "pkey_dh_keygen"},
41     {0, NULL}
42 };
43
44 static ERR_STRING_DATA DH_str_reasons[] = {
45     {ERR_REASON(DH_R_BAD_GENERATOR), "bad generator"},
46     {ERR_REASON(DH_R_BN_DECODE_ERROR), "bn decode error"},
47     {ERR_REASON(DH_R_BN_ERROR), "bn error"},
48     {ERR_REASON(DH_R_DECODE_ERROR), "decode error"},
49     {ERR_REASON(DH_R_INVALID_PUBKEY), "invalid public key"},
50     {ERR_REASON(DH_R_KDF_PARAMETER_ERROR), "kdf parameter error"},
51     {ERR_REASON(DH_R_KEYS_NOT_SET), "keys not set"},
52     {ERR_REASON(DH_R_MODULUS_TOO_LARGE), "modulus too large"},
53     {ERR_REASON(DH_R_NO_PARAMETERS_SET), "no parameters set"},
54     {ERR_REASON(DH_R_NO_PRIVATE_VALUE), "no private value"},
55     {ERR_REASON(DH_R_PARAMETER_ENCODING_ERROR), "parameter encoding error"},
56     {ERR_REASON(DH_R_PEER_KEY_ERROR), "peer key error"},
57     {ERR_REASON(DH_R_SHARED_INFO_ERROR), "shared info error"},
58     {0, NULL}
59 };
60
61 #endif
62
63 int ERR_load_DH_strings(void)
64 {
65 #ifndef OPENSSL_NO_ERR
66
67     if (ERR_func_error_string(DH_str_functs[0].error) == NULL) {
68         ERR_load_strings(0, DH_str_functs);
69         ERR_load_strings(0, DH_str_reasons);
70     }
71 #endif
72     return 1;
73 }