* tar xzf utvpn-src-unix-v101-7101-public-2010.06.27.tar.gz
[lab.git] / utvpn / utvpn-unix-v101-7101-public / src / Mayaqua / openssl / fips.h
1 /* ====================================================================\r
2  * Copyright (c) 2003 The OpenSSL Project.  All rights reserved.\r
3  *\r
4  * Redistribution and use in source and binary forms, with or without\r
5  * modification, are permitted provided that the following conditions\r
6  * are met:\r
7  *\r
8  * 1. Redistributions of source code must retain the above copyright\r
9  *    notice, this list of conditions and the following disclaimer. \r
10  *\r
11  * 2. Redistributions in binary form must reproduce the above copyright\r
12  *    notice, this list of conditions and the following disclaimer in\r
13  *    the documentation and/or other materials provided with the\r
14  *    distribution.\r
15  *\r
16  * 3. All advertising materials mentioning features or use of this\r
17  *    software must display the following acknowledgment:\r
18  *    "This product includes software developed by the OpenSSL Project\r
19  *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"\r
20  *\r
21  * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to\r
22  *    endorse or promote products derived from this software without\r
23  *    prior written permission. For written permission, please contact\r
24  *    openssl-core@openssl.org.\r
25  *\r
26  * 5. Products derived from this software may not be called "OpenSSL"\r
27  *    nor may "OpenSSL" appear in their names without prior written\r
28  *    permission of the OpenSSL Project.\r
29  *\r
30  * 6. Redistributions of any form whatsoever must retain the following\r
31  *    acknowledgment:\r
32  *    "This product includes software developed by the OpenSSL Project\r
33  *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"\r
34  *\r
35  * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY\r
36  * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r
37  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
38  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR\r
39  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\r
40  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\r
41  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r
42  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r
43  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\r
44  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r
45  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED\r
46  * OF THE POSSIBILITY OF SUCH DAMAGE.\r
47  *\r
48  */\r
49 \r
50 #include <openssl/opensslconf.h>\r
51 \r
52 #ifdef OPENSSL_FIPS\r
53 \r
54 #ifdef  __cplusplus\r
55 extern "C" {\r
56 #endif\r
57 \r
58 /* Note that these are defined in crypto/cryptlib.c so they're\r
59  * available even without -lfips.\r
60  */\r
61 struct dsa_st;\r
62 \r
63 int FIPS_mode_set(int onoff,const char *path);\r
64 void FIPS_allow_md5(int onoff);\r
65 int FIPS_md5_allowed(void);\r
66 int FIPS_selftest_failed(void);\r
67 int FIPS_dsa_check(struct dsa_st *dsa);\r
68 void FIPS_corrupt_sha1(void);\r
69 int FIPS_selftest_sha1(void);\r
70 void FIPS_corrupt_aes(void);\r
71 int FIPS_selftest_aes(void);\r
72 void FIPS_corrupt_des(void);\r
73 int FIPS_selftest_des(void);\r
74 void FIPS_corrupt_rsa(void);\r
75 int FIPS_selftest_rsa(void);\r
76 void FIPS_corrupt_dsa(void);\r
77 int FIPS_selftest_dsa(void);\r
78 \r
79 /* The following lines are auto generated by the script mkerr.pl. Any changes\r
80  * made after this point may be overwritten when the script is next run.\r
81  */\r
82 void ERR_load_FIPS_strings(void);\r
83 \r
84 /* BEGIN ERROR CODES */\r
85 /* The following lines are auto generated by the script mkerr.pl. Any changes\r
86  * made after this point may be overwritten when the script is next run.\r
87  */\r
88 void ERR_load_FIPS_strings(void);\r
89 \r
90 /* Error codes for the FIPS functions. */\r
91 \r
92 /* Function codes. */\r
93 #define FIPS_F_DSA_DO_SIGN                               111\r
94 #define FIPS_F_DSA_DO_VERIFY                             112\r
95 #define FIPS_F_DSA_GENERATE_PARAMETERS                   110\r
96 #define FIPS_F_FIPS_CHECK_DSA                            116\r
97 #define FIPS_F_FIPS_CHECK_EXE                            106\r
98 #define FIPS_F_FIPS_CHECK_RSA                            115\r
99 #define FIPS_F_FIPS_DSA_CHECK                            102\r
100 #define FIPS_F_FIPS_MODE_SET                             105\r
101 #define FIPS_F_FIPS_SELFTEST_AES                         104\r
102 #define FIPS_F_FIPS_SELFTEST_DES                         107\r
103 #define FIPS_F_FIPS_SELFTEST_DSA                         109\r
104 #define FIPS_F_FIPS_SELFTEST_RSA                         108\r
105 #define FIPS_F_FIPS_SELFTEST_SHA1                        103\r
106 #define FIPS_F_HASH_FINAL                                100\r
107 #define FIPS_F_DH_GENERATE_PARAMETERS                    117\r
108 #define FIPS_F_RSA_EAY_PUBLIC_ENCRYPT                    114\r
109 #define FIPS_F_RSA_GENERATE_KEY                          113\r
110 #define FIPS_F_SSLEAY_RAND_BYTES                         101\r
111 \r
112 /* Reason codes. */\r
113 #define FIPS_R_CANNOT_READ_EXE                           103\r
114 #define FIPS_R_CANNOT_READ_EXE_DIGEST                    104\r
115 #define FIPS_R_EXE_DIGEST_DOES_NOT_MATCH                 105\r
116 #define FIPS_R_FIPS_MODE_ALREADY_SET                     102\r
117 #define FIPS_R_FIPS_SELFTEST_FAILED                      106\r
118 #define FIPS_R_NON_FIPS_METHOD                           100\r
119 #define FIPS_R_PAIRWISE_TEST_FAILED                      107\r
120 #define FIPS_R_SELFTEST_FAILED                           101\r
121 \r
122 #ifdef  __cplusplus\r
123 }\r
124 #endif\r
125 #endif\r
126 \r