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,234 @@
1
+ /* opensslconf.h */
2
+ /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
3
+
4
+ /* OpenSSL was configured with the following options: */
5
+ #ifndef OPENSSL_DOING_MAKEDEPEND
6
+
7
+
8
+ #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
9
+ # define OPENSSL_NO_EC_NISTP_64_GCC_128
10
+ #endif
11
+ #ifndef OPENSSL_NO_GMP
12
+ # define OPENSSL_NO_GMP
13
+ #endif
14
+ #ifndef OPENSSL_NO_JPAKE
15
+ # define OPENSSL_NO_JPAKE
16
+ #endif
17
+ #ifndef OPENSSL_NO_KRB5
18
+ # define OPENSSL_NO_KRB5
19
+ #endif
20
+ #ifndef OPENSSL_NO_MD2
21
+ # define OPENSSL_NO_MD2
22
+ #endif
23
+ #ifndef OPENSSL_NO_RC5
24
+ # define OPENSSL_NO_RC5
25
+ #endif
26
+ #ifndef OPENSSL_NO_RFC3779
27
+ # define OPENSSL_NO_RFC3779
28
+ #endif
29
+ #ifndef OPENSSL_NO_SCTP
30
+ # define OPENSSL_NO_SCTP
31
+ #endif
32
+ #ifndef OPENSSL_NO_STORE
33
+ # define OPENSSL_NO_STORE
34
+ #endif
35
+
36
+ #endif /* OPENSSL_DOING_MAKEDEPEND */
37
+
38
+ #ifndef OPENSSL_THREADS
39
+ # define OPENSSL_THREADS
40
+ #endif
41
+ #ifndef OPENSSL_NO_STATIC_ENGINE
42
+ # define OPENSSL_NO_STATIC_ENGINE
43
+ #endif
44
+
45
+ /* The OPENSSL_NO_* macros are also defined as NO_* if the application
46
+ asks for it. This is a transient feature that is provided for those
47
+ who haven't had the time to do the appropriate changes in their
48
+ applications. */
49
+ #ifdef OPENSSL_ALGORITHM_DEFINES
50
+ # if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
51
+ # define NO_EC_NISTP_64_GCC_128
52
+ # endif
53
+ # if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
54
+ # define NO_GMP
55
+ # endif
56
+ # if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
57
+ # define NO_JPAKE
58
+ # endif
59
+ # if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
60
+ # define NO_KRB5
61
+ # endif
62
+ # if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
63
+ # define NO_MD2
64
+ # endif
65
+ # if defined(OPENSSL_NO_RC5) && !defined(NO_RC5)
66
+ # define NO_RC5
67
+ # endif
68
+ # if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779)
69
+ # define NO_RFC3779
70
+ # endif
71
+ # if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
72
+ # define NO_SCTP
73
+ # endif
74
+ # if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
75
+ # define NO_STORE
76
+ # endif
77
+ #endif
78
+
79
+ #define OPENSSL_CPUID_OBJ
80
+
81
+ /* crypto/opensslconf.h.in */
82
+
83
+ /* Generate 80386 code? */
84
+ #undef I386_ONLY
85
+
86
+ #if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
87
+ #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
88
+ #define ENGINESDIR "/app/vendor/openssl/lib/engines"
89
+ #define OPENSSLDIR "/app/vendor/openssl/ssl"
90
+ #endif
91
+ #endif
92
+
93
+ #undef OPENSSL_UNISTD
94
+ #define OPENSSL_UNISTD <unistd.h>
95
+
96
+ #undef OPENSSL_EXPORT_VAR_AS_FUNCTION
97
+
98
+ #if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
99
+ #define IDEA_INT unsigned int
100
+ #endif
101
+
102
+ #if defined(HEADER_MD2_H) && !defined(MD2_INT)
103
+ #define MD2_INT unsigned int
104
+ #endif
105
+
106
+ #if defined(HEADER_RC2_H) && !defined(RC2_INT)
107
+ /* I need to put in a mod for the alpha - eay */
108
+ #define RC2_INT unsigned int
109
+ #endif
110
+
111
+ #if defined(HEADER_RC4_H)
112
+ #if !defined(RC4_INT)
113
+ /* using int types make the structure larger but make the code faster
114
+ * on most boxes I have tested - up to %20 faster. */
115
+ /*
116
+ * I don't know what does "most" mean, but declaring "int" is a must on:
117
+ * - Intel P6 because partial register stalls are very expensive;
118
+ * - elder Alpha because it lacks byte load/store instructions;
119
+ */
120
+ #define RC4_INT unsigned int
121
+ #endif
122
+ #if !defined(RC4_CHUNK)
123
+ /*
124
+ * This enables code handling data aligned at natural CPU word
125
+ * boundary. See crypto/rc4/rc4_enc.c for further details.
126
+ */
127
+ #define RC4_CHUNK unsigned long
128
+ #endif
129
+ #endif
130
+
131
+ #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
132
+ /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
133
+ * %20 speed up (longs are 8 bytes, int's are 4). */
134
+ #ifndef DES_LONG
135
+ #define DES_LONG unsigned int
136
+ #endif
137
+ #endif
138
+
139
+ #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
140
+ #define CONFIG_HEADER_BN_H
141
+ #undef BN_LLONG
142
+
143
+ /* Should we define BN_DIV2W here? */
144
+
145
+ /* Only one for the following should be defined */
146
+ #define SIXTY_FOUR_BIT_LONG
147
+ #undef SIXTY_FOUR_BIT
148
+ #undef THIRTY_TWO_BIT
149
+ #endif
150
+
151
+ #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
152
+ #define CONFIG_HEADER_RC4_LOCL_H
153
+ /* if this is defined data[i] is used instead of *data, this is a %20
154
+ * speedup on x86 */
155
+ #undef RC4_INDEX
156
+ #endif
157
+
158
+ #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
159
+ #define CONFIG_HEADER_BF_LOCL_H
160
+ #undef BF_PTR
161
+ #endif /* HEADER_BF_LOCL_H */
162
+
163
+ #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
164
+ #define CONFIG_HEADER_DES_LOCL_H
165
+ #ifndef DES_DEFAULT_OPTIONS
166
+ /* the following is tweaked from a config script, that is why it is a
167
+ * protected undef/define */
168
+ #ifndef DES_PTR
169
+ #undef DES_PTR
170
+ #endif
171
+
172
+ /* This helps C compiler generate the correct code for multiple functional
173
+ * units. It reduces register dependancies at the expense of 2 more
174
+ * registers */
175
+ #ifndef DES_RISC1
176
+ #undef DES_RISC1
177
+ #endif
178
+
179
+ #ifndef DES_RISC2
180
+ #undef DES_RISC2
181
+ #endif
182
+
183
+ #if defined(DES_RISC1) && defined(DES_RISC2)
184
+ YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
185
+ #endif
186
+
187
+ /* Unroll the inner loop, this sometimes helps, sometimes hinders.
188
+ * Very mucy CPU dependant */
189
+ #ifndef DES_UNROLL
190
+ #define DES_UNROLL
191
+ #endif
192
+
193
+ /* These default values were supplied by
194
+ * Peter Gutman <pgut001@cs.auckland.ac.nz>
195
+ * They are only used if nothing else has been defined */
196
+ #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
197
+ /* Special defines which change the way the code is built depending on the
198
+ CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
199
+ even newer MIPS CPU's, but at the moment one size fits all for
200
+ optimization options. Older Sparc's work better with only UNROLL, but
201
+ there's no way to tell at compile time what it is you're running on */
202
+
203
+ #if defined( sun ) /* Newer Sparc's */
204
+ # define DES_PTR
205
+ # define DES_RISC1
206
+ # define DES_UNROLL
207
+ #elif defined( __ultrix ) /* Older MIPS */
208
+ # define DES_PTR
209
+ # define DES_RISC2
210
+ # define DES_UNROLL
211
+ #elif defined( __osf1__ ) /* Alpha */
212
+ # define DES_PTR
213
+ # define DES_RISC2
214
+ #elif defined ( _AIX ) /* RS6000 */
215
+ /* Unknown */
216
+ #elif defined( __hpux ) /* HP-PA */
217
+ /* Unknown */
218
+ #elif defined( __aux ) /* 68K */
219
+ /* Unknown */
220
+ #elif defined( __dgux ) /* 88K (but P6 in latest boxes) */
221
+ # define DES_UNROLL
222
+ #elif defined( __sgi ) /* Newer MIPS */
223
+ # define DES_PTR
224
+ # define DES_RISC2
225
+ # define DES_UNROLL
226
+ #elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */
227
+ # define DES_PTR
228
+ # define DES_RISC1
229
+ # define DES_UNROLL
230
+ #endif /* Systems-specific speed defines */
231
+ #endif
232
+
233
+ #endif /* DES_DEFAULT_OPTIONS */
234
+ #endif /* HEADER_DES_LOCL_H */
@@ -0,0 +1,89 @@
1
+ #ifndef HEADER_OPENSSLV_H
2
+ #define HEADER_OPENSSLV_H
3
+
4
+ /* Numeric release version identifier:
5
+ * MNNFFPPS: major minor fix patch status
6
+ * The status nibble has one of the values 0 for development, 1 to e for betas
7
+ * 1 to 14, and f for release. The patch level is exactly that.
8
+ * For example:
9
+ * 0.9.3-dev 0x00903000
10
+ * 0.9.3-beta1 0x00903001
11
+ * 0.9.3-beta2-dev 0x00903002
12
+ * 0.9.3-beta2 0x00903002 (same as ...beta2-dev)
13
+ * 0.9.3 0x0090300f
14
+ * 0.9.3a 0x0090301f
15
+ * 0.9.4 0x0090400f
16
+ * 1.2.3z 0x102031af
17
+ *
18
+ * For continuity reasons (because 0.9.5 is already out, and is coded
19
+ * 0x00905100), between 0.9.5 and 0.9.6 the coding of the patch level
20
+ * part is slightly different, by setting the highest bit. This means
21
+ * that 0.9.5a looks like this: 0x0090581f. At 0.9.6, we can start
22
+ * with 0x0090600S...
23
+ *
24
+ * (Prior to 0.9.3-dev a different scheme was used: 0.9.2b is 0x0922.)
25
+ * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
26
+ * major minor fix final patch/beta)
27
+ */
28
+ #define OPENSSL_VERSION_NUMBER 0x1000105fL
29
+ #ifdef OPENSSL_FIPS
30
+ #define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1e-fips 11 Feb 2013"
31
+ #else
32
+ #define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1e 11 Feb 2013"
33
+ #endif
34
+ #define OPENSSL_VERSION_PTEXT " part of " OPENSSL_VERSION_TEXT
35
+
36
+
37
+ /* The macros below are to be used for shared library (.so, .dll, ...)
38
+ * versioning. That kind of versioning works a bit differently between
39
+ * operating systems. The most usual scheme is to set a major and a minor
40
+ * number, and have the runtime loader check that the major number is equal
41
+ * to what it was at application link time, while the minor number has to
42
+ * be greater or equal to what it was at application link time. With this
43
+ * scheme, the version number is usually part of the file name, like this:
44
+ *
45
+ * libcrypto.so.0.9
46
+ *
47
+ * Some unixen also make a softlink with the major verson number only:
48
+ *
49
+ * libcrypto.so.0
50
+ *
51
+ * On Tru64 and IRIX 6.x it works a little bit differently. There, the
52
+ * shared library version is stored in the file, and is actually a series
53
+ * of versions, separated by colons. The rightmost version present in the
54
+ * library when linking an application is stored in the application to be
55
+ * matched at run time. When the application is run, a check is done to
56
+ * see if the library version stored in the application matches any of the
57
+ * versions in the version string of the library itself.
58
+ * This version string can be constructed in any way, depending on what
59
+ * kind of matching is desired. However, to implement the same scheme as
60
+ * the one used in the other unixen, all compatible versions, from lowest
61
+ * to highest, should be part of the string. Consecutive builds would
62
+ * give the following versions strings:
63
+ *
64
+ * 3.0
65
+ * 3.0:3.1
66
+ * 3.0:3.1:3.2
67
+ * 4.0
68
+ * 4.0:4.1
69
+ *
70
+ * Notice how version 4 is completely incompatible with version, and
71
+ * therefore give the breach you can see.
72
+ *
73
+ * There may be other schemes as well that I haven't yet discovered.
74
+ *
75
+ * So, here's the way it works here: first of all, the library version
76
+ * number doesn't need at all to match the overall OpenSSL version.
77
+ * However, it's nice and more understandable if it actually does.
78
+ * The current library version is stored in the macro SHLIB_VERSION_NUMBER,
79
+ * which is just a piece of text in the format "M.m.e" (Major, minor, edit).
80
+ * For the sake of Tru64, IRIX, and any other OS that behaves in similar ways,
81
+ * we need to keep a history of version numbers, which is done in the
82
+ * macro SHLIB_VERSION_HISTORY. The numbers are separated by colons and
83
+ * should only keep the versions that are binary compatible with the current.
84
+ */
85
+ #define SHLIB_VERSION_HISTORY ""
86
+ #define SHLIB_VERSION_NUMBER "1.0.0"
87
+
88
+
89
+ #endif /* HEADER_OPENSSLV_H */
@@ -0,0 +1,202 @@
1
+ /* ====================================================================
2
+ * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved.
3
+ *
4
+ * Redistribution and use in source and binary forms, with or without
5
+ * modification, are permitted provided that the following conditions
6
+ * are met:
7
+ *
8
+ * 1. Redistributions of source code must retain the above copyright
9
+ * notice, this list of conditions and the following disclaimer.
10
+ *
11
+ * 2. Redistributions in binary form must reproduce the above copyright
12
+ * notice, this list of conditions and the following disclaimer in
13
+ * the documentation and/or other materials provided with the
14
+ * distribution.
15
+ *
16
+ * 3. All advertising materials mentioning features or use of this
17
+ * software must display the following acknowledgment:
18
+ * "This product includes software developed by the OpenSSL Project
19
+ * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
20
+ *
21
+ * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
22
+ * endorse or promote products derived from this software without
23
+ * prior written permission. For written permission, please contact
24
+ * openssl-core@openssl.org.
25
+ *
26
+ * 5. Products derived from this software may not be called "OpenSSL"
27
+ * nor may "OpenSSL" appear in their names without prior written
28
+ * permission of the OpenSSL Project.
29
+ *
30
+ * 6. Redistributions of any form whatsoever must retain the following
31
+ * acknowledgment:
32
+ * "This product includes software developed by the OpenSSL Project
33
+ * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
34
+ *
35
+ * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
36
+ * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
37
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
38
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
39
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
41
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
42
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
43
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
44
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
45
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
46
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
47
+ * ====================================================================
48
+ *
49
+ * This product includes cryptographic software written by Eric Young
50
+ * (eay@cryptsoft.com). This product includes software written by Tim
51
+ * Hudson (tjh@cryptsoft.com).
52
+ *
53
+ */
54
+
55
+ #ifndef HEADER_OPENSSL_TYPES_H
56
+ #define HEADER_OPENSSL_TYPES_H
57
+
58
+ #include <openssl/e_os2.h>
59
+
60
+ #ifdef NO_ASN1_TYPEDEFS
61
+ #define ASN1_INTEGER ASN1_STRING
62
+ #define ASN1_ENUMERATED ASN1_STRING
63
+ #define ASN1_BIT_STRING ASN1_STRING
64
+ #define ASN1_OCTET_STRING ASN1_STRING
65
+ #define ASN1_PRINTABLESTRING ASN1_STRING
66
+ #define ASN1_T61STRING ASN1_STRING
67
+ #define ASN1_IA5STRING ASN1_STRING
68
+ #define ASN1_UTCTIME ASN1_STRING
69
+ #define ASN1_GENERALIZEDTIME ASN1_STRING
70
+ #define ASN1_TIME ASN1_STRING
71
+ #define ASN1_GENERALSTRING ASN1_STRING
72
+ #define ASN1_UNIVERSALSTRING ASN1_STRING
73
+ #define ASN1_BMPSTRING ASN1_STRING
74
+ #define ASN1_VISIBLESTRING ASN1_STRING
75
+ #define ASN1_UTF8STRING ASN1_STRING
76
+ #define ASN1_BOOLEAN int
77
+ #define ASN1_NULL int
78
+ #else
79
+ typedef struct asn1_string_st ASN1_INTEGER;
80
+ typedef struct asn1_string_st ASN1_ENUMERATED;
81
+ typedef struct asn1_string_st ASN1_BIT_STRING;
82
+ typedef struct asn1_string_st ASN1_OCTET_STRING;
83
+ typedef struct asn1_string_st ASN1_PRINTABLESTRING;
84
+ typedef struct asn1_string_st ASN1_T61STRING;
85
+ typedef struct asn1_string_st ASN1_IA5STRING;
86
+ typedef struct asn1_string_st ASN1_GENERALSTRING;
87
+ typedef struct asn1_string_st ASN1_UNIVERSALSTRING;
88
+ typedef struct asn1_string_st ASN1_BMPSTRING;
89
+ typedef struct asn1_string_st ASN1_UTCTIME;
90
+ typedef struct asn1_string_st ASN1_TIME;
91
+ typedef struct asn1_string_st ASN1_GENERALIZEDTIME;
92
+ typedef struct asn1_string_st ASN1_VISIBLESTRING;
93
+ typedef struct asn1_string_st ASN1_UTF8STRING;
94
+ typedef struct asn1_string_st ASN1_STRING;
95
+ typedef int ASN1_BOOLEAN;
96
+ typedef int ASN1_NULL;
97
+ #endif
98
+
99
+ typedef struct ASN1_ITEM_st ASN1_ITEM;
100
+ typedef struct asn1_pctx_st ASN1_PCTX;
101
+
102
+ #ifdef OPENSSL_SYS_WIN32
103
+ #undef X509_NAME
104
+ #undef X509_EXTENSIONS
105
+ #undef X509_CERT_PAIR
106
+ #undef PKCS7_ISSUER_AND_SERIAL
107
+ #undef OCSP_REQUEST
108
+ #undef OCSP_RESPONSE
109
+ #endif
110
+
111
+ #ifdef BIGNUM
112
+ #undef BIGNUM
113
+ #endif
114
+ typedef struct bignum_st BIGNUM;
115
+ typedef struct bignum_ctx BN_CTX;
116
+ typedef struct bn_blinding_st BN_BLINDING;
117
+ typedef struct bn_mont_ctx_st BN_MONT_CTX;
118
+ typedef struct bn_recp_ctx_st BN_RECP_CTX;
119
+ typedef struct bn_gencb_st BN_GENCB;
120
+
121
+ typedef struct buf_mem_st BUF_MEM;
122
+
123
+ typedef struct evp_cipher_st EVP_CIPHER;
124
+ typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
125
+ typedef struct env_md_st EVP_MD;
126
+ typedef struct env_md_ctx_st EVP_MD_CTX;
127
+ typedef struct evp_pkey_st EVP_PKEY;
128
+
129
+ typedef struct evp_pkey_asn1_method_st EVP_PKEY_ASN1_METHOD;
130
+
131
+ typedef struct evp_pkey_method_st EVP_PKEY_METHOD;
132
+ typedef struct evp_pkey_ctx_st EVP_PKEY_CTX;
133
+
134
+ typedef struct dh_st DH;
135
+ typedef struct dh_method DH_METHOD;
136
+
137
+ typedef struct dsa_st DSA;
138
+ typedef struct dsa_method DSA_METHOD;
139
+
140
+ typedef struct rsa_st RSA;
141
+ typedef struct rsa_meth_st RSA_METHOD;
142
+
143
+ typedef struct rand_meth_st RAND_METHOD;
144
+
145
+ typedef struct ecdh_method ECDH_METHOD;
146
+ typedef struct ecdsa_method ECDSA_METHOD;
147
+
148
+ typedef struct x509_st X509;
149
+ typedef struct X509_algor_st X509_ALGOR;
150
+ typedef struct X509_crl_st X509_CRL;
151
+ typedef struct x509_crl_method_st X509_CRL_METHOD;
152
+ typedef struct x509_revoked_st X509_REVOKED;
153
+ typedef struct X509_name_st X509_NAME;
154
+ typedef struct X509_pubkey_st X509_PUBKEY;
155
+ typedef struct x509_store_st X509_STORE;
156
+ typedef struct x509_store_ctx_st X509_STORE_CTX;
157
+
158
+ typedef struct pkcs8_priv_key_info_st PKCS8_PRIV_KEY_INFO;
159
+
160
+ typedef struct v3_ext_ctx X509V3_CTX;
161
+ typedef struct conf_st CONF;
162
+
163
+ typedef struct store_st STORE;
164
+ typedef struct store_method_st STORE_METHOD;
165
+
166
+ typedef struct ui_st UI;
167
+ typedef struct ui_method_st UI_METHOD;
168
+
169
+ typedef struct st_ERR_FNS ERR_FNS;
170
+
171
+ typedef struct engine_st ENGINE;
172
+ typedef struct ssl_st SSL;
173
+ typedef struct ssl_ctx_st SSL_CTX;
174
+
175
+ typedef struct X509_POLICY_NODE_st X509_POLICY_NODE;
176
+ typedef struct X509_POLICY_LEVEL_st X509_POLICY_LEVEL;
177
+ typedef struct X509_POLICY_TREE_st X509_POLICY_TREE;
178
+ typedef struct X509_POLICY_CACHE_st X509_POLICY_CACHE;
179
+
180
+ typedef struct AUTHORITY_KEYID_st AUTHORITY_KEYID;
181
+ typedef struct DIST_POINT_st DIST_POINT;
182
+ typedef struct ISSUING_DIST_POINT_st ISSUING_DIST_POINT;
183
+ typedef struct NAME_CONSTRAINTS_st NAME_CONSTRAINTS;
184
+
185
+ /* If placed in pkcs12.h, we end up with a circular depency with pkcs7.h */
186
+ #define DECLARE_PKCS12_STACK_OF(type) /* Nothing */
187
+ #define IMPLEMENT_PKCS12_STACK_OF(type) /* Nothing */
188
+
189
+ typedef struct crypto_ex_data_st CRYPTO_EX_DATA;
190
+ /* Callback types for crypto.h */
191
+ typedef int CRYPTO_EX_new(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
192
+ int idx, long argl, void *argp);
193
+ typedef void CRYPTO_EX_free(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
194
+ int idx, long argl, void *argp);
195
+ typedef int CRYPTO_EX_dup(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d,
196
+ int idx, long argl, void *argp);
197
+
198
+ typedef struct ocsp_req_ctx_st OCSP_REQ_CTX;
199
+ typedef struct ocsp_response_st OCSP_RESPONSE;
200
+ typedef struct ocsp_responder_id_st OCSP_RESPID;
201
+
202
+ #endif /* def HEADER_OPENSSL_TYPES_H */