openssl_rsa_pss_verify 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/.gitignore +5 -0
  2. data/.rspec +2 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +4 -0
  6. data/Gemfile.lock +35 -0
  7. data/README +1 -0
  8. data/Rakefile +4 -0
  9. data/ext/openssl_rsa_pss_verify/extconf.rb +15 -0
  10. data/ext/openssl_rsa_pss_verify/openssl_rsa_pss_verify_ext.c +56 -0
  11. data/lib/openssl_rsa_pss_verify/version.rb +3 -0
  12. data/lib/openssl_rsa_pss_verify.rb +2 -0
  13. data/openssl_rsa_pss_verify.gemspec +26 -0
  14. data/tasks/compile.rake +12 -0
  15. data/tasks/rspec.rake +12 -0
  16. data/vendor/openssl/include/openssl/aes.h +147 -0
  17. data/vendor/openssl/include/openssl/asn1.h +1404 -0
  18. data/vendor/openssl/include/openssl/asn1_mac.h +578 -0
  19. data/vendor/openssl/include/openssl/asn1t.h +960 -0
  20. data/vendor/openssl/include/openssl/bio.h +847 -0
  21. data/vendor/openssl/include/openssl/blowfish.h +129 -0
  22. data/vendor/openssl/include/openssl/bn.h +891 -0
  23. data/vendor/openssl/include/openssl/buffer.h +119 -0
  24. data/vendor/openssl/include/openssl/camellia.h +130 -0
  25. data/vendor/openssl/include/openssl/cast.h +107 -0
  26. data/vendor/openssl/include/openssl/cmac.h +82 -0
  27. data/vendor/openssl/include/openssl/cms.h +501 -0
  28. data/vendor/openssl/include/openssl/comp.h +80 -0
  29. data/vendor/openssl/include/openssl/conf.h +263 -0
  30. data/vendor/openssl/include/openssl/conf_api.h +89 -0
  31. data/vendor/openssl/include/openssl/crypto.h +611 -0
  32. data/vendor/openssl/include/openssl/des.h +248 -0
  33. data/vendor/openssl/include/openssl/des_old.h +446 -0
  34. data/vendor/openssl/include/openssl/dh.h +280 -0
  35. data/vendor/openssl/include/openssl/dsa.h +327 -0
  36. data/vendor/openssl/include/openssl/dso.h +409 -0
  37. data/vendor/openssl/include/openssl/dtls1.h +287 -0
  38. data/vendor/openssl/include/openssl/e_os2.h +315 -0
  39. data/vendor/openssl/include/openssl/ebcdic.h +19 -0
  40. data/vendor/openssl/include/openssl/ec.h +1167 -0
  41. data/vendor/openssl/include/openssl/ecdh.h +125 -0
  42. data/vendor/openssl/include/openssl/ecdsa.h +260 -0
  43. data/vendor/openssl/include/openssl/engine.h +842 -0
  44. data/vendor/openssl/include/openssl/err.h +386 -0
  45. data/vendor/openssl/include/openssl/evp.h +1409 -0
  46. data/vendor/openssl/include/openssl/hmac.h +110 -0
  47. data/vendor/openssl/include/openssl/idea.h +103 -0
  48. data/vendor/openssl/include/openssl/krb5_asn.h +256 -0
  49. data/vendor/openssl/include/openssl/kssl.h +183 -0
  50. data/vendor/openssl/include/openssl/lhash.h +241 -0
  51. data/vendor/openssl/include/openssl/md4.h +120 -0
  52. data/vendor/openssl/include/openssl/md5.h +120 -0
  53. data/vendor/openssl/include/openssl/mdc2.h +98 -0
  54. data/vendor/openssl/include/openssl/modes.h +135 -0
  55. data/vendor/openssl/include/openssl/obj_mac.h +4032 -0
  56. data/vendor/openssl/include/openssl/objects.h +1138 -0
  57. data/vendor/openssl/include/openssl/ocsp.h +623 -0
  58. data/vendor/openssl/include/openssl/opensslconf.h +234 -0
  59. data/vendor/openssl/include/openssl/opensslv.h +89 -0
  60. data/vendor/openssl/include/openssl/ossl_typ.h +202 -0
  61. data/vendor/openssl/include/openssl/pem.h +641 -0
  62. data/vendor/openssl/include/openssl/pem2.h +70 -0
  63. data/vendor/openssl/include/openssl/pkcs12.h +331 -0
  64. data/vendor/openssl/include/openssl/pkcs7.h +499 -0
  65. data/vendor/openssl/include/openssl/pqueue.h +94 -0
  66. data/vendor/openssl/include/openssl/rand.h +149 -0
  67. data/vendor/openssl/include/openssl/rc2.h +103 -0
  68. data/vendor/openssl/include/openssl/rc4.h +90 -0
  69. data/vendor/openssl/include/openssl/ripemd.h +107 -0
  70. data/vendor/openssl/include/openssl/rsa.h +582 -0
  71. data/vendor/openssl/include/openssl/safestack.h +2663 -0
  72. data/vendor/openssl/include/openssl/seed.h +139 -0
  73. data/vendor/openssl/include/openssl/sha.h +214 -0
  74. data/vendor/openssl/include/openssl/srp.h +172 -0
  75. data/vendor/openssl/include/openssl/srtp.h +145 -0
  76. data/vendor/openssl/include/openssl/ssl.h +2579 -0
  77. data/vendor/openssl/include/openssl/ssl2.h +272 -0
  78. data/vendor/openssl/include/openssl/ssl23.h +83 -0
  79. data/vendor/openssl/include/openssl/ssl3.h +684 -0
  80. data/vendor/openssl/include/openssl/stack.h +108 -0
  81. data/vendor/openssl/include/openssl/symhacks.h +475 -0
  82. data/vendor/openssl/include/openssl/tls1.h +735 -0
  83. data/vendor/openssl/include/openssl/ts.h +858 -0
  84. data/vendor/openssl/include/openssl/txt_db.h +112 -0
  85. data/vendor/openssl/include/openssl/ui.h +383 -0
  86. data/vendor/openssl/include/openssl/ui_compat.h +83 -0
  87. data/vendor/openssl/include/openssl/whrlpool.h +41 -0
  88. data/vendor/openssl/include/openssl/x509.h +1297 -0
  89. data/vendor/openssl/include/openssl/x509_vfy.h +567 -0
  90. data/vendor/openssl/include/openssl/x509v3.h +1007 -0
  91. data/vendor/openssl/lib/engines/lib4758cca.so +0 -0
  92. data/vendor/openssl/lib/engines/libaep.so +0 -0
  93. data/vendor/openssl/lib/engines/libatalla.so +0 -0
  94. data/vendor/openssl/lib/engines/libcapi.so +0 -0
  95. data/vendor/openssl/lib/engines/libchil.so +0 -0
  96. data/vendor/openssl/lib/engines/libcswift.so +0 -0
  97. data/vendor/openssl/lib/engines/libgmp.so +0 -0
  98. data/vendor/openssl/lib/engines/libgost.so +0 -0
  99. data/vendor/openssl/lib/engines/libnuron.so +0 -0
  100. data/vendor/openssl/lib/engines/libpadlock.so +0 -0
  101. data/vendor/openssl/lib/engines/libsureware.so +0 -0
  102. data/vendor/openssl/lib/engines/libubsec.so +0 -0
  103. data/vendor/openssl/lib/libcrypto.a +0 -0
  104. data/vendor/openssl/lib/libcrypto.so +0 -0
  105. data/vendor/openssl/lib/libcrypto.so.1.0.0 +0 -0
  106. data/vendor/openssl/lib/libssl.a +0 -0
  107. data/vendor/openssl/lib/libssl.so +0 -0
  108. data/vendor/openssl/lib/libssl.so.1.0.0 +0 -0
  109. data/vendor/openssl/lib/pkgconfig/libcrypto.pc +12 -0
  110. data/vendor/openssl/lib/pkgconfig/libssl.pc +12 -0
  111. data/vendor/openssl/lib/pkgconfig/openssl.pc +12 -0
  112. metadata +208 -0
@@ -0,0 +1,263 @@
1
+ /* crypto/conf/conf.h */
2
+ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3
+ * All rights reserved.
4
+ *
5
+ * This package is an SSL implementation written
6
+ * by Eric Young (eay@cryptsoft.com).
7
+ * The implementation was written so as to conform with Netscapes SSL.
8
+ *
9
+ * This library is free for commercial and non-commercial use as long as
10
+ * the following conditions are aheared to. The following conditions
11
+ * apply to all code found in this distribution, be it the RC4, RSA,
12
+ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
13
+ * included with this distribution is covered by the same copyright terms
14
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
15
+ *
16
+ * Copyright remains Eric Young's, and as such any Copyright notices in
17
+ * the code are not to be removed.
18
+ * If this package is used in a product, Eric Young should be given attribution
19
+ * as the author of the parts of the library used.
20
+ * This can be in the form of a textual message at program startup or
21
+ * in documentation (online or textual) provided with the package.
22
+ *
23
+ * Redistribution and use in source and binary forms, with or without
24
+ * modification, are permitted provided that the following conditions
25
+ * are met:
26
+ * 1. Redistributions of source code must retain the copyright
27
+ * notice, this list of conditions and the following disclaimer.
28
+ * 2. Redistributions in binary form must reproduce the above copyright
29
+ * notice, this list of conditions and the following disclaimer in the
30
+ * documentation and/or other materials provided with the distribution.
31
+ * 3. All advertising materials mentioning features or use of this software
32
+ * must display the following acknowledgement:
33
+ * "This product includes cryptographic software written by
34
+ * Eric Young (eay@cryptsoft.com)"
35
+ * The word 'cryptographic' can be left out if the rouines from the library
36
+ * being used are not cryptographic related :-).
37
+ * 4. If you include any Windows specific code (or a derivative thereof) from
38
+ * the apps directory (application code) you must include an acknowledgement:
39
+ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
40
+ *
41
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
42
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
43
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
44
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
45
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
46
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
47
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51
+ * SUCH DAMAGE.
52
+ *
53
+ * The licence and distribution terms for any publically available version or
54
+ * derivative of this code cannot be changed. i.e. this code cannot simply be
55
+ * copied and put under another distribution licence
56
+ * [including the GNU Public Licence.]
57
+ */
58
+
59
+ #ifndef HEADER_CONF_H
60
+ #define HEADER_CONF_H
61
+
62
+ #include <openssl/bio.h>
63
+ #include <openssl/lhash.h>
64
+ #include <openssl/stack.h>
65
+ #include <openssl/safestack.h>
66
+ #include <openssl/e_os2.h>
67
+
68
+ #include <openssl/ossl_typ.h>
69
+
70
+ #ifdef __cplusplus
71
+ extern "C" {
72
+ #endif
73
+
74
+ typedef struct
75
+ {
76
+ char *section;
77
+ char *name;
78
+ char *value;
79
+ } CONF_VALUE;
80
+
81
+ DECLARE_STACK_OF(CONF_VALUE)
82
+ DECLARE_LHASH_OF(CONF_VALUE);
83
+
84
+ struct conf_st;
85
+ struct conf_method_st;
86
+ typedef struct conf_method_st CONF_METHOD;
87
+
88
+ struct conf_method_st
89
+ {
90
+ const char *name;
91
+ CONF *(*create)(CONF_METHOD *meth);
92
+ int (*init)(CONF *conf);
93
+ int (*destroy)(CONF *conf);
94
+ int (*destroy_data)(CONF *conf);
95
+ int (*load_bio)(CONF *conf, BIO *bp, long *eline);
96
+ int (*dump)(const CONF *conf, BIO *bp);
97
+ int (*is_number)(const CONF *conf, char c);
98
+ int (*to_int)(const CONF *conf, char c);
99
+ int (*load)(CONF *conf, const char *name, long *eline);
100
+ };
101
+
102
+ /* Module definitions */
103
+
104
+ typedef struct conf_imodule_st CONF_IMODULE;
105
+ typedef struct conf_module_st CONF_MODULE;
106
+
107
+ DECLARE_STACK_OF(CONF_MODULE)
108
+ DECLARE_STACK_OF(CONF_IMODULE)
109
+
110
+ /* DSO module function typedefs */
111
+ typedef int conf_init_func(CONF_IMODULE *md, const CONF *cnf);
112
+ typedef void conf_finish_func(CONF_IMODULE *md);
113
+
114
+ #define CONF_MFLAGS_IGNORE_ERRORS 0x1
115
+ #define CONF_MFLAGS_IGNORE_RETURN_CODES 0x2
116
+ #define CONF_MFLAGS_SILENT 0x4
117
+ #define CONF_MFLAGS_NO_DSO 0x8
118
+ #define CONF_MFLAGS_IGNORE_MISSING_FILE 0x10
119
+ #define CONF_MFLAGS_DEFAULT_SECTION 0x20
120
+
121
+ int CONF_set_default_method(CONF_METHOD *meth);
122
+ void CONF_set_nconf(CONF *conf,LHASH_OF(CONF_VALUE) *hash);
123
+ LHASH_OF(CONF_VALUE) *CONF_load(LHASH_OF(CONF_VALUE) *conf,const char *file,
124
+ long *eline);
125
+ #ifndef OPENSSL_NO_FP_API
126
+ LHASH_OF(CONF_VALUE) *CONF_load_fp(LHASH_OF(CONF_VALUE) *conf, FILE *fp,
127
+ long *eline);
128
+ #endif
129
+ LHASH_OF(CONF_VALUE) *CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp,long *eline);
130
+ STACK_OF(CONF_VALUE) *CONF_get_section(LHASH_OF(CONF_VALUE) *conf,
131
+ const char *section);
132
+ char *CONF_get_string(LHASH_OF(CONF_VALUE) *conf,const char *group,
133
+ const char *name);
134
+ long CONF_get_number(LHASH_OF(CONF_VALUE) *conf,const char *group,
135
+ const char *name);
136
+ void CONF_free(LHASH_OF(CONF_VALUE) *conf);
137
+ int CONF_dump_fp(LHASH_OF(CONF_VALUE) *conf, FILE *out);
138
+ int CONF_dump_bio(LHASH_OF(CONF_VALUE) *conf, BIO *out);
139
+
140
+ void OPENSSL_config(const char *config_name);
141
+ void OPENSSL_no_config(void);
142
+
143
+ /* New conf code. The semantics are different from the functions above.
144
+ If that wasn't the case, the above functions would have been replaced */
145
+
146
+ struct conf_st
147
+ {
148
+ CONF_METHOD *meth;
149
+ void *meth_data;
150
+ LHASH_OF(CONF_VALUE) *data;
151
+ };
152
+
153
+ CONF *NCONF_new(CONF_METHOD *meth);
154
+ CONF_METHOD *NCONF_default(void);
155
+ CONF_METHOD *NCONF_WIN32(void);
156
+ #if 0 /* Just to give you an idea of what I have in mind */
157
+ CONF_METHOD *NCONF_XML(void);
158
+ #endif
159
+ void NCONF_free(CONF *conf);
160
+ void NCONF_free_data(CONF *conf);
161
+
162
+ int NCONF_load(CONF *conf,const char *file,long *eline);
163
+ #ifndef OPENSSL_NO_FP_API
164
+ int NCONF_load_fp(CONF *conf, FILE *fp,long *eline);
165
+ #endif
166
+ int NCONF_load_bio(CONF *conf, BIO *bp,long *eline);
167
+ STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf,const char *section);
168
+ char *NCONF_get_string(const CONF *conf,const char *group,const char *name);
169
+ int NCONF_get_number_e(const CONF *conf,const char *group,const char *name,
170
+ long *result);
171
+ int NCONF_dump_fp(const CONF *conf, FILE *out);
172
+ int NCONF_dump_bio(const CONF *conf, BIO *out);
173
+
174
+ #if 0 /* The following function has no error checking,
175
+ and should therefore be avoided */
176
+ long NCONF_get_number(CONF *conf,char *group,char *name);
177
+ #else
178
+ #define NCONF_get_number(c,g,n,r) NCONF_get_number_e(c,g,n,r)
179
+ #endif
180
+
181
+ /* Module functions */
182
+
183
+ int CONF_modules_load(const CONF *cnf, const char *appname,
184
+ unsigned long flags);
185
+ int CONF_modules_load_file(const char *filename, const char *appname,
186
+ unsigned long flags);
187
+ void CONF_modules_unload(int all);
188
+ void CONF_modules_finish(void);
189
+ void CONF_modules_free(void);
190
+ int CONF_module_add(const char *name, conf_init_func *ifunc,
191
+ conf_finish_func *ffunc);
192
+
193
+ const char *CONF_imodule_get_name(const CONF_IMODULE *md);
194
+ const char *CONF_imodule_get_value(const CONF_IMODULE *md);
195
+ void *CONF_imodule_get_usr_data(const CONF_IMODULE *md);
196
+ void CONF_imodule_set_usr_data(CONF_IMODULE *md, void *usr_data);
197
+ CONF_MODULE *CONF_imodule_get_module(const CONF_IMODULE *md);
198
+ unsigned long CONF_imodule_get_flags(const CONF_IMODULE *md);
199
+ void CONF_imodule_set_flags(CONF_IMODULE *md, unsigned long flags);
200
+ void *CONF_module_get_usr_data(CONF_MODULE *pmod);
201
+ void CONF_module_set_usr_data(CONF_MODULE *pmod, void *usr_data);
202
+
203
+ char *CONF_get1_default_config_file(void);
204
+
205
+ int CONF_parse_list(const char *list, int sep, int nospc,
206
+ int (*list_cb)(const char *elem, int len, void *usr), void *arg);
207
+
208
+ void OPENSSL_load_builtin_modules(void);
209
+
210
+ /* BEGIN ERROR CODES */
211
+ /* The following lines are auto generated by the script mkerr.pl. Any changes
212
+ * made after this point may be overwritten when the script is next run.
213
+ */
214
+ void ERR_load_CONF_strings(void);
215
+
216
+ /* Error codes for the CONF functions. */
217
+
218
+ /* Function codes. */
219
+ #define CONF_F_CONF_DUMP_FP 104
220
+ #define CONF_F_CONF_LOAD 100
221
+ #define CONF_F_CONF_LOAD_BIO 102
222
+ #define CONF_F_CONF_LOAD_FP 103
223
+ #define CONF_F_CONF_MODULES_LOAD 116
224
+ #define CONF_F_CONF_PARSE_LIST 119
225
+ #define CONF_F_DEF_LOAD 120
226
+ #define CONF_F_DEF_LOAD_BIO 121
227
+ #define CONF_F_MODULE_INIT 115
228
+ #define CONF_F_MODULE_LOAD_DSO 117
229
+ #define CONF_F_MODULE_RUN 118
230
+ #define CONF_F_NCONF_DUMP_BIO 105
231
+ #define CONF_F_NCONF_DUMP_FP 106
232
+ #define CONF_F_NCONF_GET_NUMBER 107
233
+ #define CONF_F_NCONF_GET_NUMBER_E 112
234
+ #define CONF_F_NCONF_GET_SECTION 108
235
+ #define CONF_F_NCONF_GET_STRING 109
236
+ #define CONF_F_NCONF_LOAD 113
237
+ #define CONF_F_NCONF_LOAD_BIO 110
238
+ #define CONF_F_NCONF_LOAD_FP 114
239
+ #define CONF_F_NCONF_NEW 111
240
+ #define CONF_F_STR_COPY 101
241
+
242
+ /* Reason codes. */
243
+ #define CONF_R_ERROR_LOADING_DSO 110
244
+ #define CONF_R_LIST_CANNOT_BE_NULL 115
245
+ #define CONF_R_MISSING_CLOSE_SQUARE_BRACKET 100
246
+ #define CONF_R_MISSING_EQUAL_SIGN 101
247
+ #define CONF_R_MISSING_FINISH_FUNCTION 111
248
+ #define CONF_R_MISSING_INIT_FUNCTION 112
249
+ #define CONF_R_MODULE_INITIALIZATION_ERROR 109
250
+ #define CONF_R_NO_CLOSE_BRACE 102
251
+ #define CONF_R_NO_CONF 105
252
+ #define CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE 106
253
+ #define CONF_R_NO_SECTION 107
254
+ #define CONF_R_NO_SUCH_FILE 114
255
+ #define CONF_R_NO_VALUE 108
256
+ #define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103
257
+ #define CONF_R_UNKNOWN_MODULE_NAME 113
258
+ #define CONF_R_VARIABLE_HAS_NO_VALUE 104
259
+
260
+ #ifdef __cplusplus
261
+ }
262
+ #endif
263
+ #endif
@@ -0,0 +1,89 @@
1
+ /* conf_api.h */
2
+ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3
+ * All rights reserved.
4
+ *
5
+ * This package is an SSL implementation written
6
+ * by Eric Young (eay@cryptsoft.com).
7
+ * The implementation was written so as to conform with Netscapes SSL.
8
+ *
9
+ * This library is free for commercial and non-commercial use as long as
10
+ * the following conditions are aheared to. The following conditions
11
+ * apply to all code found in this distribution, be it the RC4, RSA,
12
+ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
13
+ * included with this distribution is covered by the same copyright terms
14
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
15
+ *
16
+ * Copyright remains Eric Young's, and as such any Copyright notices in
17
+ * the code are not to be removed.
18
+ * If this package is used in a product, Eric Young should be given attribution
19
+ * as the author of the parts of the library used.
20
+ * This can be in the form of a textual message at program startup or
21
+ * in documentation (online or textual) provided with the package.
22
+ *
23
+ * Redistribution and use in source and binary forms, with or without
24
+ * modification, are permitted provided that the following conditions
25
+ * are met:
26
+ * 1. Redistributions of source code must retain the copyright
27
+ * notice, this list of conditions and the following disclaimer.
28
+ * 2. Redistributions in binary form must reproduce the above copyright
29
+ * notice, this list of conditions and the following disclaimer in the
30
+ * documentation and/or other materials provided with the distribution.
31
+ * 3. All advertising materials mentioning features or use of this software
32
+ * must display the following acknowledgement:
33
+ * "This product includes cryptographic software written by
34
+ * Eric Young (eay@cryptsoft.com)"
35
+ * The word 'cryptographic' can be left out if the rouines from the library
36
+ * being used are not cryptographic related :-).
37
+ * 4. If you include any Windows specific code (or a derivative thereof) from
38
+ * the apps directory (application code) you must include an acknowledgement:
39
+ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
40
+ *
41
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
42
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
43
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
44
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
45
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
46
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
47
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51
+ * SUCH DAMAGE.
52
+ *
53
+ * The licence and distribution terms for any publically available version or
54
+ * derivative of this code cannot be changed. i.e. this code cannot simply be
55
+ * copied and put under another distribution licence
56
+ * [including the GNU Public Licence.]
57
+ */
58
+
59
+ #ifndef HEADER_CONF_API_H
60
+ #define HEADER_CONF_API_H
61
+
62
+ #include <openssl/lhash.h>
63
+ #include <openssl/conf.h>
64
+
65
+ #ifdef __cplusplus
66
+ extern "C" {
67
+ #endif
68
+
69
+ /* Up until OpenSSL 0.9.5a, this was new_section */
70
+ CONF_VALUE *_CONF_new_section(CONF *conf, const char *section);
71
+ /* Up until OpenSSL 0.9.5a, this was get_section */
72
+ CONF_VALUE *_CONF_get_section(const CONF *conf, const char *section);
73
+ /* Up until OpenSSL 0.9.5a, this was CONF_get_section */
74
+ STACK_OF(CONF_VALUE) *_CONF_get_section_values(const CONF *conf,
75
+ const char *section);
76
+
77
+ int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value);
78
+ char *_CONF_get_string(const CONF *conf, const char *section,
79
+ const char *name);
80
+ long _CONF_get_number(const CONF *conf, const char *section, const char *name);
81
+
82
+ int _CONF_new_data(CONF *conf);
83
+ void _CONF_free_data(CONF *conf);
84
+
85
+ #ifdef __cplusplus
86
+ }
87
+ #endif
88
+ #endif
89
+