Compare commits
501 Commits
OpenSSL-fi
...
OpenSSL_0_
Author | SHA1 | Date | |
---|---|---|---|
![]() |
6287fa5396 | ||
![]() |
a00c3c4019 | ||
![]() |
f4677b7960 | ||
![]() |
92308905dd | ||
![]() |
6f32fc5c4e | ||
![]() |
e607e731eb | ||
![]() |
f17c45611e | ||
![]() |
1ff7b6492b | ||
![]() |
20900d6801 | ||
![]() |
4b253d904d | ||
![]() |
a51c8c64e0 | ||
![]() |
c153422388 | ||
![]() |
7f065cfdbd | ||
![]() |
667fbc0847 | ||
![]() |
6ba7bd5697 | ||
![]() |
2cad035c01 | ||
![]() |
2a76c68842 | ||
![]() |
1b00f4bc37 | ||
![]() |
be62eb6d93 | ||
![]() |
5f3878f1e3 | ||
![]() |
a523e997d3 | ||
![]() |
fe43caa4a4 | ||
![]() |
792e614144 | ||
![]() |
ce2b87d88a | ||
![]() |
f092a073a7 | ||
![]() |
6fa4cd7136 | ||
![]() |
505ed2b076 | ||
![]() |
cef3e62d2b | ||
![]() |
40ea9ff9e8 | ||
![]() |
a97a6b03bc | ||
![]() |
516f76fd2c | ||
![]() |
5a02ac6e5b | ||
![]() |
14d4074ee1 | ||
![]() |
d9f16c405c | ||
![]() |
bfc6482a7a | ||
![]() |
5aa032033e | ||
![]() |
2d59f9938f | ||
![]() |
c0ce8fe755 | ||
![]() |
55eff40084 | ||
![]() |
e5a251843d | ||
![]() |
fe46b0de29 | ||
![]() |
a581439bb1 | ||
![]() |
a43337e8c4 | ||
![]() |
33c51ec143 | ||
![]() |
448da15fbf | ||
![]() |
a1bb2d6c2f | ||
![]() |
81dde5e8fe | ||
![]() |
b84e441861 | ||
![]() |
08e012bbec | ||
![]() |
b46acc392b | ||
![]() |
28af6367b8 | ||
![]() |
2c17b493b1 | ||
![]() |
ea725a66c9 | ||
![]() |
1532493dab | ||
![]() |
3795297af8 | ||
![]() |
33fd33d423 | ||
![]() |
4e98f8863f | ||
![]() |
582ef3dbdb | ||
![]() |
6a933782fa | ||
![]() |
d1c2778e93 | ||
![]() |
8d64abacc6 | ||
![]() |
9af6802943 | ||
![]() |
c10f53a897 | ||
![]() |
2124e869a8 | ||
![]() |
3b668eedda | ||
![]() |
7471431322 | ||
![]() |
1542de4eed | ||
![]() |
b6c2bffbdf | ||
![]() |
ff09931e22 | ||
![]() |
155c70b882 | ||
![]() |
7c49452973 | ||
![]() |
312539ae9f | ||
![]() |
cc40dcce58 | ||
![]() |
5790921aea | ||
![]() |
df84c11407 | ||
![]() |
b76306c983 | ||
![]() |
cdffc716c9 | ||
![]() |
5dffc13f55 | ||
![]() |
a5873a8d3d | ||
![]() |
4db3e88459 | ||
![]() |
ab073bad4f | ||
![]() |
cfe04f607d | ||
![]() |
c0e9f540e0 | ||
![]() |
7c97aacbe8 | ||
![]() |
36b8f87566 | ||
![]() |
d875413a0b | ||
![]() |
155ad6d219 | ||
![]() |
138f20433e | ||
![]() |
7747c67861 | ||
![]() |
237a6f06b6 | ||
![]() |
fe99beb82a | ||
![]() |
736a77f275 | ||
![]() |
94539213a1 | ||
![]() |
c5c4246319 | ||
![]() |
2e6d8a8991 | ||
![]() |
e852835da6 | ||
![]() |
d245c32529 | ||
![]() |
964d58bcb0 | ||
![]() |
52702f6f92 | ||
![]() |
05794d983f | ||
![]() |
364f36f851 | ||
![]() |
9b809d6278 | ||
![]() |
bbefea3387 | ||
![]() |
d83dde6180 | ||
![]() |
63e1319d0f | ||
![]() |
8067d34b3a | ||
![]() |
e3f2860e73 | ||
![]() |
92eb44d238 | ||
![]() |
f4179bead4 | ||
![]() |
fced277486 | ||
![]() |
3d1be455ce | ||
![]() |
dee4d129cb | ||
![]() |
0067bd77a8 | ||
![]() |
d98904e5a7 | ||
![]() |
96a259e81e | ||
![]() |
59f3477b82 | ||
![]() |
f947b818bf | ||
![]() |
3fa1a444ce | ||
![]() |
a2dc9b6be2 | ||
![]() |
16349eeceb | ||
![]() |
aecf1c1f96 | ||
![]() |
4ea574fdf3 | ||
![]() |
cf8115deb0 | ||
![]() |
d25cbda074 | ||
![]() |
5d582fd516 | ||
![]() |
8ec86dcf04 | ||
![]() |
6d3b70c8da | ||
![]() |
0a4fda742b | ||
![]() |
3745e57bf9 | ||
![]() |
b7e7aa00de | ||
![]() |
1098fd48ce | ||
![]() |
393906d9be | ||
![]() |
446881468c | ||
![]() |
cfb95ba9f6 | ||
![]() |
c198c26226 | ||
![]() |
54d6ddba69 | ||
![]() |
1af12ff1d1 | ||
![]() |
bd72b8eca6 | ||
![]() |
200d00c854 | ||
![]() |
669b912dea | ||
![]() |
36a4a67b2b | ||
![]() |
3413424f01 | ||
![]() |
80fc840d89 | ||
![]() |
6455100f7a | ||
![]() |
b7c8b4fc95 | ||
![]() |
f58d0f70b6 | ||
![]() |
8f59c61d1d | ||
![]() |
fd43ae3fe4 | ||
![]() |
cdd0f3b328 | ||
![]() |
f9f6f0e9f0 | ||
![]() |
405f382144 | ||
![]() |
a750273546 | ||
![]() |
ddc5f6f328 | ||
![]() |
4231b356aa | ||
![]() |
df1f7b4b02 | ||
![]() |
0b7545b239 | ||
![]() |
3a72137211 | ||
![]() |
e5d289cc03 | ||
![]() |
0ff3766b0e | ||
![]() |
3562202306 | ||
![]() |
2bf4b96aef | ||
![]() |
811e08a2c5 | ||
![]() |
dd6e90465d | ||
![]() |
a86c626802 | ||
![]() |
705c3dec2c | ||
![]() |
4afcee8b4b | ||
![]() |
9627017f9c | ||
![]() |
e0f6c15418 | ||
![]() |
ecc20b75f8 | ||
![]() |
540e455e3a | ||
![]() |
14748adb09 | ||
![]() |
ff2ab9e6bb | ||
![]() |
cc5cc3bb8f | ||
![]() |
1f3206216b | ||
![]() |
f113bb9f4e | ||
![]() |
4681147bb3 | ||
![]() |
52c3f232e4 | ||
![]() |
3dc466424e | ||
![]() |
353415cc81 | ||
![]() |
1a12ce8ea5 | ||
![]() |
0278e15fa3 | ||
![]() |
f01f085cb9 | ||
![]() |
bca68e90cc | ||
![]() |
a3f67ec18d | ||
![]() |
56ef1cbc40 | ||
![]() |
a1411093f0 | ||
![]() |
f35f7d9fbb | ||
![]() |
dfbf646ac4 | ||
![]() |
591371566e | ||
![]() |
5799b72178 | ||
![]() |
1cfe6842d5 | ||
![]() |
f4c98a6a3d | ||
![]() |
4aefb1dd98 | ||
![]() |
aa03989791 | ||
![]() |
a865b2c320 | ||
![]() |
694ce314a8 | ||
![]() |
94299a36a6 | ||
![]() |
3aaeb5c1e5 | ||
![]() |
80ec6cc806 | ||
![]() |
3d83320279 | ||
![]() |
4ab252d198 | ||
![]() |
058ffd7623 | ||
![]() |
0330a13aea | ||
![]() |
467325b81d | ||
![]() |
00f716bbe6 | ||
![]() |
2f2f032497 | ||
![]() |
feb200bbb3 | ||
![]() |
3894667036 | ||
![]() |
203ac694e3 | ||
![]() |
bb592c75e7 | ||
![]() |
777d717c40 | ||
![]() |
143d84590f | ||
![]() |
a29669d78d | ||
![]() |
e5be1e1696 | ||
![]() |
9e47c34729 | ||
![]() |
cb896f8923 | ||
![]() |
cec9bce126 | ||
![]() |
3f79793b7e | ||
![]() |
0d01d8a735 | ||
![]() |
2c0fa03dc6 | ||
![]() |
d3b3a6d389 | ||
![]() |
fc260b09a1 | ||
![]() |
b3c79a8a27 | ||
![]() |
f0ecefc0c0 | ||
![]() |
b0118409a9 | ||
![]() |
5f23288692 | ||
![]() |
45c58c7d10 | ||
![]() |
112591be76 | ||
![]() |
1b8daa3693 | ||
![]() |
1cdbc755ee | ||
![]() |
aa9c7e4b8c | ||
![]() |
6be69a168f | ||
![]() |
eaf76feeb6 | ||
![]() |
03e79ed05e | ||
![]() |
56bef2df4f | ||
![]() |
10d3886c51 | ||
![]() |
f1c0cf5b70 | ||
![]() |
2a7ac69ee4 | ||
![]() |
d13ea8e184 | ||
![]() |
1820b04bb2 | ||
![]() |
439b7ef463 | ||
![]() |
a25fb95bd6 | ||
![]() |
6168067160 | ||
![]() |
c3031a4610 | ||
![]() |
1099a94063 | ||
![]() |
812d8a176c | ||
![]() |
db533c96e3 | ||
![]() |
8831eb7624 | ||
![]() |
3c8f315021 | ||
![]() |
0f2e636602 | ||
![]() |
98bd148b1a | ||
![]() |
292248b8c2 | ||
![]() |
d3eef3e5af | ||
![]() |
c5fbf8c1ba | ||
![]() |
1ed2d8f512 | ||
![]() |
d140890259 | ||
![]() |
eb492df2bb | ||
![]() |
2c16e78400 | ||
![]() |
bf2b87aea3 | ||
![]() |
1dff425999 | ||
![]() |
501af5ba89 | ||
![]() |
31d6e7b7ba | ||
![]() |
b983322bfb | ||
![]() |
339654e163 | ||
![]() |
5ca48cc853 | ||
![]() |
79996e3335 | ||
![]() |
173acc185c | ||
![]() |
a985ecdd17 | ||
![]() |
fb4c24b6e7 | ||
![]() |
1366f6b9bd | ||
![]() |
e13546f739 | ||
![]() |
d6c813daff | ||
![]() |
e3818a4c4b | ||
![]() |
415fe2abe9 | ||
![]() |
5bbdaaf4b7 | ||
![]() |
bf1f1a5759 | ||
![]() |
8e42429c9d | ||
![]() |
c43c2285f6 | ||
![]() |
94b2c29f9d | ||
![]() |
090f931a35 | ||
![]() |
6b8be6da76 | ||
![]() |
7ec2d392e7 | ||
![]() |
e88f66bb49 | ||
![]() |
28a2759ab8 | ||
![]() |
3edad44d6e | ||
![]() |
9e7459fc5d | ||
![]() |
b98f5ef42b | ||
![]() |
a6d4f79f24 | ||
![]() |
efcb7a75fc | ||
![]() |
30aa23fea2 | ||
![]() |
c9e045041e | ||
![]() |
fd6fa9c0b2 | ||
![]() |
9f70d09275 | ||
![]() |
3fb0f01001 | ||
![]() |
216ac24bd3 | ||
![]() |
2035af2091 | ||
![]() |
19398a175a | ||
![]() |
fa369ddbe7 | ||
![]() |
294ba3c282 | ||
![]() |
2923e91a98 | ||
![]() |
7c52b7706f | ||
![]() |
ddec587581 | ||
![]() |
4f466f8e81 | ||
![]() |
1502cda142 | ||
![]() |
ce2b5d7574 | ||
![]() |
f1c65db80b | ||
![]() |
496970b233 | ||
![]() |
3b0e61a812 | ||
![]() |
e84b0d709b | ||
![]() |
16241f0ea4 | ||
![]() |
518af4e3ae | ||
![]() |
fe01f90a1c | ||
![]() |
99a376df16 | ||
![]() |
831ffcb705 | ||
![]() |
5f297c4504 | ||
![]() |
d7623ff9f3 | ||
![]() |
df9b5405e8 | ||
![]() |
180eb5b3c2 | ||
![]() |
af7d49aaff | ||
![]() |
187b655bc2 | ||
![]() |
8612cb9239 | ||
![]() |
b2f3fafa6a | ||
![]() |
483dab147d | ||
![]() |
f39b8e697c | ||
![]() |
7d610299c9 | ||
![]() |
25550b2dd4 | ||
![]() |
5c676c47cd | ||
![]() |
e77f9d5e78 | ||
![]() |
9c04747623 | ||
![]() |
e66deb6817 | ||
![]() |
cc9a645a02 | ||
![]() |
18fb9d807e | ||
![]() |
a1cc568288 | ||
![]() |
2ea3cd8abc | ||
![]() |
095db72024 | ||
![]() |
11eb172b6e | ||
![]() |
4b60f4b175 | ||
![]() |
0794f3a798 | ||
![]() |
2b8e7b5061 | ||
![]() |
6f57311da0 | ||
![]() |
98b09d3949 | ||
![]() |
231a737a82 | ||
![]() |
236860735e | ||
![]() |
ac1ef7ec72 | ||
![]() |
5f761514e1 | ||
![]() |
32f1f622f6 | ||
![]() |
5f95651316 | ||
![]() |
ccac657556 | ||
![]() |
a9c23ea079 | ||
![]() |
33ffe2a7f7 | ||
![]() |
7c717aafc6 | ||
![]() |
225aeb171e | ||
![]() |
ffe181c366 | ||
![]() |
fd4e79a9ed | ||
![]() |
299e174d2d | ||
![]() |
ce62fc6eae | ||
![]() |
43490dfb89 | ||
![]() |
a523276786 | ||
![]() |
074471ab0c | ||
![]() |
d761421e1d | ||
![]() |
2339c5d722 | ||
![]() |
dd00266757 | ||
![]() |
bb99ce5f80 | ||
![]() |
49f42ec0f6 | ||
![]() |
91d509f0d9 | ||
![]() |
d5e858c55f | ||
![]() |
fb8fcce2ac | ||
![]() |
d4736ae701 | ||
![]() |
3e1158522a | ||
![]() |
57191f86d9 | ||
![]() |
0a89c575de | ||
![]() |
4c860910df | ||
![]() |
0fc3d51b7d | ||
![]() |
c4b0d7879e | ||
![]() |
aab1ec3f36 | ||
![]() |
fbfa11fb29 | ||
![]() |
284498fcef | ||
![]() |
07d9808496 | ||
![]() |
4ab0088bfe | ||
![]() |
3bd1690bfb | ||
![]() |
29f4b05954 | ||
![]() |
48ca0c99b2 | ||
![]() |
015052cf7b | ||
![]() |
9ce3ee47ba | ||
![]() |
2e3fd54337 | ||
![]() |
625782f7ee | ||
![]() |
1c90899eef | ||
![]() |
4f2b7d48b1 | ||
![]() |
458c3900e1 | ||
![]() |
ba75b4e750 | ||
![]() |
ab011d51be | ||
![]() |
898d9b1a87 | ||
![]() |
4f9a9d2b79 | ||
![]() |
346f2f93e1 | ||
![]() |
25b0e072dd | ||
![]() |
dc13c882fb | ||
![]() |
12a52467c8 | ||
![]() |
22e6c73dcc | ||
![]() |
53b9696f3f | ||
![]() |
7e4fe4662b | ||
![]() |
18fd413f37 | ||
![]() |
80ed5f84de | ||
![]() |
b48111df7c | ||
![]() |
73e3edd70d | ||
![]() |
d4cfbdf2c0 | ||
![]() |
294f03a812 | ||
![]() |
272f9f3d27 | ||
![]() |
927a28ba3b | ||
![]() |
a938c4284e | ||
![]() |
7a44a0cee7 | ||
![]() |
82430309ac | ||
![]() |
c2079de880 | ||
![]() |
967ead7269 | ||
![]() |
c9255df519 | ||
![]() |
27c824a1c9 | ||
![]() |
5b96d1ccf9 | ||
![]() |
29c0866b38 | ||
![]() |
0214ea0dfe | ||
![]() |
80355002a1 | ||
![]() |
0e36825228 | ||
![]() |
95a8f1469f | ||
![]() |
afdbadc704 | ||
![]() |
004cc26abf | ||
![]() |
35a924c576 | ||
![]() |
99279ac97a | ||
![]() |
87605ca1e2 | ||
![]() |
7cc586f117 | ||
![]() |
c263a6092c | ||
![]() |
f92fd85400 | ||
![]() |
e71520ddd6 | ||
![]() |
275f34b5d2 | ||
![]() |
50fbb6ed36 | ||
![]() |
34fdacbd35 | ||
![]() |
77f2d20dbc | ||
![]() |
0dbfbf26cb | ||
![]() |
2863a6878f | ||
![]() |
ae46e91e4d | ||
![]() |
865a90eb4f | ||
![]() |
0269c4507c | ||
![]() |
a5d3574984 | ||
![]() |
1040deb0c5 | ||
![]() |
05ea800faf | ||
![]() |
341f87862c | ||
![]() |
f805d30769 | ||
![]() |
4fb9472cc2 | ||
![]() |
a8098740c6 | ||
![]() |
e3af0d041e | ||
![]() |
28cfda9f30 | ||
![]() |
a313e23fff | ||
![]() |
4d2a292e8a | ||
![]() |
5a84b7fc2d | ||
![]() |
d8e660a6dc | ||
![]() |
761f3b403b | ||
![]() |
4570d29404 | ||
![]() |
14346b3456 | ||
![]() |
769f58aaaa | ||
![]() |
a166e96d16 | ||
![]() |
8dd8ce1dc3 | ||
![]() |
4c5979a107 | ||
![]() |
649ab2dcfa | ||
![]() |
71fc9b37ae | ||
![]() |
283aedf498 | ||
![]() |
1a56614af2 | ||
![]() |
693c33e407 | ||
![]() |
d9a9aa027d | ||
![]() |
b22250bb67 | ||
![]() |
d446120527 | ||
![]() |
bb9d68489c | ||
![]() |
affaea59fe | ||
![]() |
81fc4c93ef | ||
![]() |
8957121c14 | ||
![]() |
50241bc84e | ||
![]() |
e7f077f1ba | ||
![]() |
c3b82c7610 | ||
![]() |
2c12e7f6f5 | ||
![]() |
8db10d9ac4 | ||
![]() |
c3cc4662af | ||
![]() |
22892f9803 | ||
![]() |
27eb115fb6 | ||
![]() |
51a596ef4f | ||
![]() |
97de8bd1e0 | ||
![]() |
1cb7e5be5b | ||
![]() |
84dd04e761 | ||
![]() |
2ac061e487 | ||
![]() |
7cdb81582c | ||
![]() |
8f33b40302 | ||
![]() |
e600614ef5 | ||
![]() |
02581dea1f | ||
![]() |
40ad08bcc2 | ||
![]() |
9c4456a13f | ||
![]() |
f4d0392faa | ||
![]() |
45ba6cfe03 | ||
![]() |
4f23a0c797 | ||
![]() |
f6c32bbf2b | ||
![]() |
d040c951f0 | ||
![]() |
69abfb0e33 | ||
![]() |
9a1daf8482 | ||
![]() |
9de6dc3af3 | ||
![]() |
248834dcaa | ||
![]() |
11a7da7c9f | ||
![]() |
9fea0b9937 |
@@ -11,8 +11,10 @@ maketest.log
|
||||
cctest
|
||||
cctest.c
|
||||
cctest.a
|
||||
libcrypto.so.*
|
||||
libssl.so.*
|
||||
*.flc
|
||||
semantic.cache
|
||||
Makefile
|
||||
*.so*
|
||||
*.dll*
|
||||
*.sl*
|
||||
*.dylib*
|
||||
|
188
CHANGES
188
CHANGES
@@ -2,7 +2,49 @@
|
||||
OpenSSL CHANGES
|
||||
_______________
|
||||
|
||||
Changes between 0.9.8h and 0.9.8i [xx XXX xxxx]
|
||||
Changes between 0.9.8i and 0.9.8j [07 Jan 2009]
|
||||
|
||||
*) Properly check EVP_VerifyFinal() and similar return values
|
||||
(CVE-2008-5077).
|
||||
[Ben Laurie, Bodo Moeller, Google Security Team]
|
||||
|
||||
*) Properly check EVP_VerifyFinal() and similar return values
|
||||
(CVE-2008-5077).
|
||||
[Ben Laurie, Bodo Moeller, Google Security Team]
|
||||
|
||||
*) Enable TLS extensions by default.
|
||||
[Ben Laurie]
|
||||
|
||||
*) Allow the CHIL engine to be loaded, whether the application is
|
||||
multithreaded or not. (This does not release the developer from the
|
||||
obligation to set up the dynamic locking callbacks.)
|
||||
[Sander Temme <sander@temme.net>]
|
||||
|
||||
*) Use correct exit code if there is an error in dgst command.
|
||||
[Steve Henson; problem pointed out by Roland Dirlewanger]
|
||||
|
||||
*) Tweak Configure so that you need to say "experimental-jpake" to enable
|
||||
JPAKE, and need to use -DOPENSSL_EXPERIMENTAL_JPAKE in applications.
|
||||
[Bodo Moeller]
|
||||
|
||||
*) Add experimental JPAKE support, including demo authentication in
|
||||
s_client and s_server.
|
||||
[Ben Laurie]
|
||||
|
||||
*) Set the comparison function in v3_addr_canonize().
|
||||
[Rob Austein <sra@hactrn.net>]
|
||||
|
||||
*) Add support for XMPP STARTTLS in s_client.
|
||||
[Philip Paeps <philip@freebsd.org>]
|
||||
|
||||
*) Change the server-side SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG behavior
|
||||
to ensure that even with this option, only ciphersuites in the
|
||||
server's preference list will be accepted. (Note that the option
|
||||
applies only when resuming a session, so the earlier behavior was
|
||||
just about the algorithm choice for symmetric cryptography.)
|
||||
[Bodo Moeller]
|
||||
|
||||
Changes between 0.9.8h and 0.9.8i [15 Sep 2008]
|
||||
|
||||
*) Fix a state transitition in s3_srvr.c and d1_srvr.c
|
||||
(was using SSL3_ST_CW_CLNT_HELLO_B, should be ..._ST_SW_SRVR_...).
|
||||
@@ -34,6 +76,10 @@
|
||||
|
||||
[Neel Mehta, Bodo Moeller]
|
||||
|
||||
*) Allow engines to be "soft loaded" - i.e. optionally don't die if
|
||||
the load fails. Useful for distros.
|
||||
[Ben Laurie and the FreeBSD team]
|
||||
|
||||
*) Add support for Local Machine Keyset attribute in PKCS#12 files.
|
||||
[Steve Henson]
|
||||
|
||||
@@ -52,9 +98,11 @@
|
||||
This work was sponsored by Logica.
|
||||
[Steve Henson]
|
||||
|
||||
*) Allow engines to be "soft loaded" - i.e. optionally don't die if
|
||||
the load fails. Useful for distros.
|
||||
[Ben Laurie and the FreeBSD team]
|
||||
*) Fix bug in X509_ATTRIBUTE creation: dont set attribute using
|
||||
ASN1_TYPE_set1 if MBSTRING flag set. This bug would crash certain
|
||||
attribute creation routines such as certifcate requests and PKCS#12
|
||||
files.
|
||||
[Steve Henson]
|
||||
|
||||
Changes between 0.9.8g and 0.9.8h [28 May 2008]
|
||||
|
||||
@@ -192,138 +240,6 @@
|
||||
to s_client and s_server.
|
||||
[Steve Henson]
|
||||
|
||||
Changes between 0.9.8g and 0.9.8h-fips [xx XXX xxxx]
|
||||
|
||||
*) Add flag EVP_CIPH_FLAG_LENGTH_BITS to indicate that input buffer length
|
||||
is in bits not bytes. The Monte Carlo FIPS140-2 CFB1 tests require this.
|
||||
[Steve Henson]
|
||||
|
||||
*) Add option --with-fipslibdir to specify location of fipscanister.lib
|
||||
and friends. When combined with fips build option fipscanister.lib is
|
||||
not built but linked from the supplied directory. Always link fips
|
||||
utilities against fiscanister.lib only except in fipsdso builds.
|
||||
[Steve Henson]
|
||||
|
||||
*) Add SSE2 instruction support to WIN32 build. These will be compiled
|
||||
by default and used if an appopriate CPU is detected. Some older versions
|
||||
of NASM or MASM which don't support SSE2 will need to be updated.
|
||||
[Steve Henson]
|
||||
|
||||
*) Tolerate DigestInfo structure with absent parameters in FIPS mode
|
||||
(as required by several standards).
|
||||
[Steve Henson]
|
||||
|
||||
*) Enhance mkfipsscr.pl to cope with different directory layouts. It now
|
||||
relies on the filename and makes no assumptions about the pathname.
|
||||
In the case of PSS it scans the file to determine the salt length.
|
||||
Paths can be filtered. Also reports duplicate and missing files.
|
||||
[Steve Henson]
|
||||
|
||||
*) Updates to WIN32 build system. Make use of AES assembly language routines.
|
||||
Use assembly language routines in FIPS compilation.
|
||||
[Steve Henson]
|
||||
|
||||
*) Use standard implementations of SHAx, DES, AES under crypto/ in FIPS
|
||||
mode to avoid having to maintain two versions. This will also make use
|
||||
of appropriate assembly language optimizations.
|
||||
[Steve Henson]
|
||||
|
||||
*) Check for selftest status in all crypto operations and exit with a
|
||||
fatal error if selftest failed.
|
||||
[Steve Henson]
|
||||
|
||||
*) New flag in EVP_CIPHER: EVP_CIPH_FLAG_DEFAULT_ASN1. This will
|
||||
automatically use EVP_CIPHER_{get,set}_asn1_iv and avoid the
|
||||
need for any ASN1 dependencies in FIPS library. Move AES and 3DES
|
||||
cipher definitions to fips library and modify AES and 3DES algorithm
|
||||
tests and self tests to use EVP.
|
||||
[Steve Henson]
|
||||
|
||||
*) Move EVP cipher code into enc_min.c to support a minimal implementation
|
||||
for use by FIPS applications.
|
||||
[Steve Henson]
|
||||
|
||||
*) Add algorithm config module. Currently just handles setting FIPS mode.
|
||||
[Steve Henson]
|
||||
|
||||
*) Rewrite self tests and pairwise tests to use EVP. Add more extensive
|
||||
self tests for RSA in all digests and modes.
|
||||
[Steve Henson]
|
||||
|
||||
*) New flags RSA_FIPS_METHOD and DSA_FIPS_METHOD to indicate a method is
|
||||
allowed in FIPS mode. Disable direct low level RSA and DSA signature
|
||||
operations in FIPS mode so all operations have to be made via EVP.
|
||||
[Steve Henson]
|
||||
|
||||
*) New flag EVP_MD_FLAG_SVCTX which passes EVP_MD_CTX and key to underlying
|
||||
sign/verify method. This permits the method to perform finalization
|
||||
and signing itself and have access to the EVP_MD_CTX structure in case
|
||||
additional parameters are needed. Modify fips_{dsa,rsa}_{sign,verify}
|
||||
to use EVP_MD_FLAG_SVCTX and support PSS and X9.31 RSA modes.
|
||||
Modify RSA algorithm test programs to use new parameters.
|
||||
[Steve Henson]
|
||||
|
||||
*) Add small standalone ASN1 encoder/decoder to handle DSA signature format.
|
||||
Modify test, algorithm test and selftest routines to use EVP for DSA.
|
||||
Move FIPS implementation of EVP_sha*() and EVP_dss1() under fips-1.0.
|
||||
[Steve Henson]
|
||||
|
||||
*) Modify VC++ build system to rename .text and .rdata segments in
|
||||
FIPS sources to .fipst${a,b,c}, and $fipsr${a,b,c} and place them
|
||||
in a static library fipscanister.lib using a perl script. These are
|
||||
then combined by the VC++ linker into a single segment in suffix
|
||||
order but without the suffix (i.e. .fipstx, .fipsrd and .fipsda).
|
||||
This serves the same purpose as fipscanister.o on other platforms
|
||||
but has the advantage that it can be created using only standard VC++
|
||||
utilities.
|
||||
[Steve Henson and Andy Polyakov]
|
||||
|
||||
*) Modify WIN32 build system to forward references functions implemented
|
||||
in FIPS DLL.
|
||||
[Steve Henson]
|
||||
|
||||
*) Move error library so that all lhash dependencies are in a separate
|
||||
file. Include a simplified ERR_get_state() function for stand alone
|
||||
FIPS applications. Include a initialization function OPENSSL_init()
|
||||
to set all callbacks, automatically call OPENSSL_init() once when
|
||||
a cipher or digest is added. This should mean that almost all applications
|
||||
set the callbacks automatically. Exceptional cases can call OPENSSL_init()
|
||||
manually like this:
|
||||
|
||||
#ifdef OPENSSL_HAVE_INIT
|
||||
OPENSSL_init();
|
||||
#endif
|
||||
before starting any threads.
|
||||
[Steve Henson]
|
||||
|
||||
*) Collect common functions into header file "fips_utl.h".
|
||||
[Steve Henson]
|
||||
|
||||
*) Only enable dynamic lock functionality in CRYPTO_lock() when it is really
|
||||
needed. Move some lock functionality into new file dyn_lck.c .
|
||||
This further reduces FIPS dependencies allowing the complete removal
|
||||
of STACK and OBJ_bsearch().
|
||||
[Steve Henson]
|
||||
|
||||
*) Reduce FIPS test program dependencies by providing stand alone
|
||||
versions of some existing functions in libcrypto. Avoid use
|
||||
of BIOs by converting to system stdio. Move some functions in FIPS
|
||||
files: e.g. all use of BIO_printf().
|
||||
[Steve Henson]
|
||||
|
||||
*) Modify build of libcrypto in FIPS mode by using a perl
|
||||
script "arx.pl" which calls the archiver specifically
|
||||
excluding any FIPS dependencies in libcrypto.
|
||||
[Steve Henson]
|
||||
|
||||
*) Port OpenSSL 0.9.7 FIPS code to 0.9.8. Convert to new
|
||||
Makefile form. Update Configure. Convert and update
|
||||
FIPS source files. Update libcrypto, libssl and apps
|
||||
with additional functionality from 0.9.7 FIPS code.
|
||||
Update Windows build system.
|
||||
[Steve Henson]
|
||||
|
||||
|
||||
Changes between 0.9.8f and 0.9.8g [19 Oct 2007]
|
||||
|
||||
*) Fix various bugs:
|
||||
|
@@ -1,163 +0,0 @@
|
||||
This file, together with ChangeLog.0_9_7-stable_not-in-head_FIPS,
|
||||
provides a collection of those CVS change log entries for the
|
||||
0.9.7 branch (OpenSSL_0_9_7-stable) that do not appear similarly in
|
||||
0.9.8-dev (CVS head).
|
||||
|
||||
ChangeLog.0_9_7-stable_not-in-head_FIPS - "FIPS" related changes
|
||||
ChangeLog.0_9_7-stable_not-in-head - everything else
|
||||
|
||||
Some obvious false positives have been eliminated: e.g., we do not
|
||||
care about a simple "make update"; and we don't care about changes
|
||||
identified to the 0.9.7 branch that were explicitly identified as
|
||||
backports from head.
|
||||
|
||||
Eliminating all other entries (and finally this file and its
|
||||
compantion), either as false positives or as things that should go
|
||||
into 0.9.8, remains to be done. Any additional changes to 0.9.7 that
|
||||
are not immediately put into 0.9.8, but belong there as well, should
|
||||
be added to the end of this file.
|
||||
|
||||
|
||||
2002-11-04 17:33 levitte
|
||||
|
||||
Changed:
|
||||
Configure (1.314.2.38), "Exp", lines: +4 -2
|
||||
|
||||
Return my normal debug targets to something not so extreme, and
|
||||
make the extreme ones special (or 'extreme', if you will :-)).
|
||||
|
||||
2002-12-16 19:17 appro
|
||||
|
||||
Changed:
|
||||
crypto/bn/bn_lcl.h (1.23.2.3), "Exp", lines: +3 -0
|
||||
crypto/bn/bn_mul.c (1.28.2.4), "Exp", lines: +84 -445
|
||||
|
||||
This is rollback to 0.9.6h bn_mul.c to address problem reported in
|
||||
RT#272.
|
||||
|
||||
2003-07-27 15:46 ben
|
||||
|
||||
Changed:
|
||||
crypto/aes/aes.h (1.1.2.5), "Exp", lines: +3 -0
|
||||
crypto/aes/aes_cfb.c (1.1.2.4), "Exp", lines: +57 -0
|
||||
|
||||
Add untested CFB-r mode. Will be tested soon.
|
||||
|
||||
2003-07-28 17:07 ben
|
||||
|
||||
Changed:
|
||||
Makefile.org (1.154.2.69), "Exp", lines: +5 -1
|
||||
crypto/aes/aes.h (1.1.2.6), "Exp", lines: +3 -0
|
||||
crypto/aes/aes_cfb.c (1.1.2.5), "Exp", lines: +19 -0
|
||||
crypto/dsa/Makefile.ssl (1.49.2.6), "Exp", lines: +3 -2
|
||||
crypto/err/Makefile.ssl (1.48.2.4), "Exp", lines: +17 -16
|
||||
crypto/evp/e_aes.c (1.6.2.5), "Exp", lines: +8 -0
|
||||
crypto/evp/e_des.c (1.5.2.2), "Exp", lines: +1 -1
|
||||
crypto/evp/e_des3.c (1.8.2.3), "Exp", lines: +2 -2
|
||||
crypto/evp/evp.h (1.86.2.11), "Exp", lines: +28 -11
|
||||
crypto/evp/evp_locl.h (1.7.2.3), "Exp", lines: +2 -2
|
||||
crypto/objects/obj_dat.h (1.49.2.13), "Exp", lines: +10 -5
|
||||
crypto/objects/obj_mac.h (1.19.2.13), "Exp", lines: +5 -0
|
||||
crypto/objects/obj_mac.num (1.15.2.9), "Exp", lines: +1 -0
|
||||
crypto/objects/objects.txt (1.20.2.14), "Exp", lines: +4 -0
|
||||
fips/Makefile.ssl (1.1.2.3), "Exp", lines: +7 -0
|
||||
fips/aes/Makefile.ssl (1.1.2.2), "Exp", lines: +23 -1
|
||||
fips/aes/fips_aesavs.c (1.1.2.3), "Exp", lines: +9 -1
|
||||
test/Makefile.ssl (1.84.2.30), "Exp", lines: +101 -43
|
||||
|
||||
Add support for partial CFB modes, make tests work, update
|
||||
dependencies.
|
||||
|
||||
2003-07-29 12:56 ben
|
||||
|
||||
Changed:
|
||||
crypto/aes/aes_cfb.c (1.1.2.6), "Exp", lines: +9 -6
|
||||
crypto/evp/c_allc.c (1.8.2.3), "Exp", lines: +1 -0
|
||||
crypto/evp/evp_test.c (1.14.2.11), "Exp", lines: +17 -8
|
||||
crypto/evp/evptests.txt (1.9.2.2), "Exp", lines: +48 -1
|
||||
|
||||
Working CFB1 and test vectors.
|
||||
|
||||
2003-07-29 15:24 ben
|
||||
|
||||
Changed:
|
||||
crypto/evp/e_aes.c (1.6.2.6), "Exp", lines: +14 -0
|
||||
crypto/objects/obj_dat.h (1.49.2.14), "Exp", lines: +15 -5
|
||||
crypto/objects/obj_mac.h (1.19.2.14), "Exp", lines: +10 -0
|
||||
crypto/objects/obj_mac.num (1.15.2.10), "Exp", lines: +2 -0
|
||||
crypto/objects/objects.txt (1.20.2.15), "Exp", lines: +2 -0
|
||||
fips/aes/Makefile.ssl (1.1.2.3), "Exp", lines: +1 -1
|
||||
fips/aes/fips_aesavs.c (1.1.2.4), "Exp", lines: +34 -19
|
||||
|
||||
The rest of the keysizes for CFB1, working AES AVS test for CFB1.
|
||||
|
||||
2003-07-29 19:05 ben
|
||||
|
||||
Changed:
|
||||
crypto/aes/aes.h (1.1.2.7), "Exp", lines: +3 -0
|
||||
crypto/aes/aes_cfb.c (1.1.2.7), "Exp", lines: +14 -0
|
||||
crypto/evp/c_allc.c (1.8.2.4), "Exp", lines: +1 -0
|
||||
crypto/evp/e_aes.c (1.6.2.7), "Exp", lines: +4 -9
|
||||
crypto/evp/evptests.txt (1.9.2.3), "Exp", lines: +48 -0
|
||||
crypto/objects/obj_dat.h (1.49.2.15), "Exp", lines: +20 -5
|
||||
crypto/objects/obj_mac.h (1.19.2.15), "Exp", lines: +15 -0
|
||||
crypto/objects/obj_mac.num (1.15.2.11), "Exp", lines: +3 -0
|
||||
crypto/objects/objects.txt (1.20.2.16), "Exp", lines: +3 -0
|
||||
fips/aes/fips_aesavs.c (1.1.2.7), "Exp", lines: +11 -0
|
||||
|
||||
AES CFB8.
|
||||
|
||||
2003-07-30 20:30 ben
|
||||
|
||||
Changed:
|
||||
Makefile.org (1.154.2.70), "Exp", lines: +16 -5
|
||||
crypto/des/cfb_enc.c (1.7.2.1), "Exp", lines: +2 -1
|
||||
crypto/des/des_enc.c (1.11.2.2), "Exp", lines: +4 -0
|
||||
crypto/evp/e_aes.c (1.6.2.8), "Exp", lines: +7 -14
|
||||
crypto/evp/e_des.c (1.5.2.3), "Exp", lines: +37 -1
|
||||
crypto/evp/evp.h (1.86.2.12), "Exp", lines: +6 -0
|
||||
crypto/evp/evp_locl.h (1.7.2.4), "Exp", lines: +9 -0
|
||||
crypto/objects/obj_dat.h (1.49.2.16), "Exp", lines: +48 -23
|
||||
crypto/objects/obj_mac.h (1.19.2.16), "Exp", lines: +31 -6
|
||||
crypto/objects/obj_mac.num (1.15.2.12), "Exp", lines: +5 -0
|
||||
crypto/objects/objects.txt (1.20.2.17), "Exp", lines: +12 -6
|
||||
fips/Makefile.ssl (1.1.2.4), "Exp", lines: +8 -1
|
||||
fips/fips_make_sha1 (1.1.2.3), "Exp", lines: +3 -0
|
||||
fips/aes/Makefile.ssl (1.1.2.4), "Exp", lines: +1 -1
|
||||
fips/des/.cvsignore (1.1.2.1), "Exp", lines: +3 -0
|
||||
fips/des/Makefile.ssl (1.1.2.1), "Exp", lines: +96 -0
|
||||
fips/des/fingerprint.sha1 (1.1.2.1), "Exp", lines: +2 -0
|
||||
fips/des/fips_des_enc.c (1.1.2.1), "Exp", lines: +288 -0
|
||||
fips/des/fips_des_locl.h (1.1.2.1), "Exp", lines: +428 -0
|
||||
fips/des/fips_desmovs.c (1.1.2.1), "Exp", lines: +659 -0
|
||||
|
||||
Whoops, forgot FIPS DES, also add EVPs for DES CFB1 and 8.
|
||||
|
||||
2003-08-01 12:25 ben
|
||||
|
||||
Changed:
|
||||
crypto/des/cfb_enc.c (1.7.2.2), "Exp", lines: +45 -36
|
||||
crypto/evp/c_allc.c (1.8.2.5), "Exp", lines: +2 -0
|
||||
crypto/evp/e_des.c (1.5.2.4), "Exp", lines: +8 -3
|
||||
crypto/evp/evptests.txt (1.9.2.4), "Exp", lines: +6 -0
|
||||
|
||||
Fix DES CFB-r.
|
||||
|
||||
2003-08-01 12:31 ben
|
||||
|
||||
Changed:
|
||||
crypto/evp/evptests.txt (1.9.2.5), "Exp", lines: +4 -0
|
||||
|
||||
DES CFB8 test.
|
||||
|
||||
2005-04-19 16:21 appro
|
||||
|
||||
Changed:
|
||||
Configure (1.314.2.117), "Exp", lines: +24 -21
|
||||
Makefile.org (1.154.2.100), "Exp", lines: +1 -11
|
||||
TABLE (1.99.2.52), "Exp", lines: +20 -20
|
||||
apps/Makefile (1.1.4.15), "Exp", lines: +1 -1
|
||||
test/Makefile (1.1.4.12), "Exp", lines: +1 -1
|
||||
|
||||
Enable shared link on HP-UX.
|
||||
|
File diff suppressed because it is too large
Load Diff
210
Configure
210
Configure
@@ -12,7 +12,7 @@ print STDERR "Warning: perl module strict not found.\n" if ($@);
|
||||
|
||||
# see INSTALL for instructions.
|
||||
|
||||
my $usage="Usage: Configure [no-<cipher> ...] [enable-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [no-hw-xxx|no-hw] [[no-]threads] [[no-]shared] [[no-]zlib|zlib-dynamic] [no-asm] [no-dso] [no-krb5] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] [--with-xxx[=vvv]] [--test-sanity] os/compiler[:flags]\n";
|
||||
my $usage="Usage: Configure [no-<cipher> ...] [enable-<cipher> ...] [experimental-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [no-hw-xxx|no-hw] [[no-]threads] [[no-]shared] [[no-]zlib|zlib-dynamic] [enable-montasm] [no-asm] [no-dso] [no-krb5] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] [--with-xxx[=vvv]] [--test-sanity] os/compiler[:flags]\n";
|
||||
|
||||
# Options:
|
||||
#
|
||||
@@ -56,6 +56,8 @@ my $usage="Usage: Configure [no-<cipher> ...] [enable-<cipher> ...] [-Dxxx] [-lx
|
||||
# [no-]zlib [don't] compile support for zlib compression.
|
||||
# zlib-dynamic Like "zlib", but the zlib library is expected to be a shared
|
||||
# library and will be loaded in run-time by the OpenSSL library.
|
||||
# enable-montasm 0.9.8 branch only: enable Montgomery x86 assembler backport
|
||||
# from 0.9.9
|
||||
# 386 generate 80386 code
|
||||
# no-sse2 disables IA-32 SSE2 code, above option implies no-sse2
|
||||
# no-<cipher> build without specified algorithm (rsa, idea, rc5, ...)
|
||||
@@ -116,17 +118,15 @@ my $tlib="-lnsl -lsocket";
|
||||
my $bits1="THIRTY_TWO_BIT ";
|
||||
my $bits2="SIXTY_FOUR_BIT ";
|
||||
|
||||
my $x86_elf_asm="x86cpuid-elf.o:bn86-elf.o co86-elf.o mo86-elf.o:dx86-elf.o yx86-elf.o:ax86-elf.o:bx86-elf.o:mx86-elf.o:sx86-elf.o s512sse2-elf.o:cx86-elf.o:rx86-elf.o rc4_skey.o:rm86-elf.o:r586-elf.o";
|
||||
my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o mo86-cof.o:dx86-cof.o yx86-cof.o:ax86-cof.o:bx86-cof.o:mx86-cof.o:sx86-cof.o s512sse2-cof.o:cx86-cof.o:rx86-cof.o rc4_skey.o:rm86-cof.o:r586-cof.o";
|
||||
my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o mo86-out.o:dx86-out.o yx86-out.o:ax86-out.o:bx86-out.o:mx86-out.o:sx86-out.o s512sse2-out.o:cx86-out.o:rx86-out.o rc4_skey.o:rm86-out.o:r586-out.o";
|
||||
my $x86_elf_asm="x86cpuid-elf.o:bn86-elf.o co86-elf.o MAYBE-MO86-elf.o:dx86-elf.o yx86-elf.o:ax86-elf.o:bx86-elf.o:mx86-elf.o:sx86-elf.o s512sse2-elf.o:cx86-elf.o:rx86-elf.o rc4_skey.o:rm86-elf.o:r586-elf.o";
|
||||
my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o MAYBE-MO86-cof.o:dx86-cof.o yx86-cof.o:ax86-cof.o:bx86-cof.o:mx86-cof.o:sx86-cof.o s512sse2-cof.o:cx86-cof.o:rx86-cof.o rc4_skey.o:rm86-cof.o:r586-cof.o";
|
||||
my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o MAYBE-MO86-out.o:dx86-out.o yx86-out.o:ax86-out.o:bx86-out.o:mx86-out.o:sx86-out.o s512sse2-out.o:cx86-out.o:rx86-out.o rc4_skey.o:rm86-out.o:r586-out.o";
|
||||
|
||||
my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o::";
|
||||
my $ia64_asm=":bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o::";
|
||||
|
||||
my $no_asm="::::::::::";
|
||||
|
||||
my $ia64_asm=":bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o::";
|
||||
my $s390x_asm=$no_asm;
|
||||
|
||||
# As for $BSDthreads. Idea is to maintain "collective" set of flags,
|
||||
# which would cover all BSD flavors. -pthread applies to them all,
|
||||
# but is treated differently. OpenBSD expands is as -D_POSIX_THREAD
|
||||
@@ -157,12 +157,13 @@ my %table=(
|
||||
"debug-ben-debug", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown)::::::",
|
||||
"debug-ben-strict", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe::(unknown)::::::",
|
||||
"debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
|
||||
"debug-bodo", "gcc:-DL_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBIO_PAIR_DEBUG -DPEDANTIC -g -march=i486 -pedantic -Wshadow -Wall::-D_REENTRANT:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
|
||||
"debug-bodo", "gcc:-DL_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBIO_PAIR_DEBUG -DPEDANTIC -g -march=i486 -pedantic -Wshadow -Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -Wundef -Wconversion -pipe::-D_REENTRANT:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
|
||||
"debug-ulf", "gcc:-DTERMIOS -DL_ENDIAN -march=i486 -Wall -DBN_DEBUG -DBN_DEBUG_RAND -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DOPENSSL_NO_ASM -g -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations:::CYGWIN32:::${no_asm}:win32:cygwin-shared:::.dll",
|
||||
"debug-steve64", "gcc:-m64 -DL_ENDIAN -DTERMIO -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -DOPENSSL_NO_DEPRECATED -g -pedantic -Wall -Werror -Wno-long-long -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-steve64", "gcc:-m64 -DL_ENDIAN -DTERMIO -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -DOPENSSL_NO_DEPRECATED -g -pedantic -Wall -Werror -Wno-long-long -Wsign-compare -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-steve32", "gcc:-m32 -DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -DOPENSSL_NO_DEPRECATED -g -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC:-m32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -m32 -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared",
|
||||
"debug-steve-opt", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O3 -m32 -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared",
|
||||
"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -m32 -g -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared",
|
||||
"debug-steve-opt", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -m32 -O3 -g -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared",
|
||||
"debug-steve-linux-pseudo64", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DOPENSSL_NO_ASM -g -mcpu=i486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::-rdynamic -ldl:SIXTY_FOUR_BIT:${no_asm}:dlfcn:linux-shared",
|
||||
"debug-levitte-linux-elf","gcc:-DLEVITTE_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_DEBUG_RAND -DCRYPTO_MDEBUG -DENGINE_CONF_DEBUG -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -DPEDANTIC -ggdb -g3 -mcpu=i486 -pedantic -ansi -Wall -Wshadow -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -Wundef -Wconversion -pipe::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-levitte-linux-noasm","gcc:-DLEVITTE_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_DEBUG_RAND -DCRYPTO_MDEBUG -DENGINE_CONF_DEBUG -DOPENSSL_NO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -DPEDANTIC -ggdb -g3 -mcpu=i486 -pedantic -ansi -Wall -Wshadow -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -Wundef -Wconversion -pipe::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-levitte-linux-elf-extreme","gcc:-DLEVITTE_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_DEBUG_RAND -DCRYPTO_MDEBUG -DENGINE_CONF_DEBUG -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -DPEDANTIC -ggdb -g3 -mcpu=i486 -pedantic -ansi -Wall -W -Wundef -Wshadow -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -Wundef -Wconversion -pipe::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
@@ -205,25 +206,25 @@ my %table=(
|
||||
|
||||
#### SPARC Solaris with GNU C setups
|
||||
"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# -m32 should be safe to add as long as driver recognizes -mcpu=ultrasparc
|
||||
"solaris-sparcv9-gcc","gcc:-m32 -mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris64-sparcv9-gcc","gcc:-m64 -mcpu=ultrasparc -O3 -Wall -DB_ENDIAN::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-m64 -shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv9-gcc","gcc:-m32 -mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris64-sparcv9-gcc","gcc:-m64 -mcpu=ultrasparc -O3 -Wall -DB_ENDIAN::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-fPIC:-m64 -shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
####
|
||||
"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -O -g -mcpu=ultrasparc -pedantic -ansi -Wall -Wshadow -Wno-long-long -D__EXTENSIONS__ -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o::::::::::dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -O -g -mcpu=ultrasparc -pedantic -ansi -Wall -Wshadow -Wno-long-long -D__EXTENSIONS__ -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
#### SPARC Solaris with Sun C setups
|
||||
# SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2.
|
||||
# SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
|
||||
# SC5.0 note: Compiler common patch 107357-01 or later is required!
|
||||
"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-xarch=v9 -G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):/usr/ccs/bin/ar rs",
|
||||
"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:solaris-shared:-KPIC:-xarch=v9 -G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):/usr/ccs/bin/ar rs",
|
||||
####
|
||||
"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${no_asm}:dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::sparcv8.o::::::::::dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR::sparcv8plus.o::::::::::dlfcn:solaris-shared:-KPIC:-G -dy -z text:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
#### SunOS configs, assuming sparc for the gcc one.
|
||||
#"sunos-cc", "cc:-O4 -DNOPROTO -DNOCONST::(unknown):SUNOS::DES_UNROLL:${no_asm}::",
|
||||
@@ -236,11 +237,11 @@ my %table=(
|
||||
#### IRIX 6.x configs
|
||||
# Only N32 and N64 ABIs are supported. If you need O32 ABI build, invoke
|
||||
# './Configure irix-cc -o32' manually.
|
||||
"irix-mips3-gcc","gcc:-mabi=n32 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:${no_asm}:dlfcn:irix-shared::-mabi=n32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix-mips3-cc", "cc:-n32 -mips3 -O2 -use_readonly_const -G0 -rdata_shared -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:${no_asm}:dlfcn:irix-shared::-n32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix-mips3-gcc","gcc:-mabi=n32 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT::bn-mips3.o::::::::::dlfcn:irix-shared::-mabi=n32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix-mips3-cc", "cc:-n32 -mips3 -O2 -use_readonly_const -G0 -rdata_shared -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT::bn-mips3.o::::::::::dlfcn:irix-shared::-n32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# N64 ABI builds.
|
||||
"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${no_asm}:dlfcn:irix-shared::-mabi=64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -G0 -rdata_shared -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${no_asm}:dlfcn:irix-shared::-64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG::bn-mips3.o::::::::::dlfcn:irix-shared::-mabi=64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -G0 -rdata_shared -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG::bn-mips3.o::::::::::dlfcn:irix-shared::-64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
#### Unified HP-UX ANSI C configs.
|
||||
# Special notes:
|
||||
@@ -273,8 +274,8 @@ my %table=(
|
||||
# Since there is mention of this in shlib/hpux10-cc.sh
|
||||
"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1:${no_asm}:dl:hpux-shared:+Z:-b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT::-Wl,+s -ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1:${no_asm}:dl:hpux-shared:-fPIC:-shared:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc2-gcc","gcc:-march=2.0 -O3 -DB_ENDIAN -D_REENTRANT::::-Wl,+s -ldld:SIXTY_FOUR_BIT RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL DES_RISC1:${no_asm}:dl:hpux-shared:-fPIC:-shared:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux64-parisc2-gcc","gcc:-O3 -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:${no_asm}:dlfcn:hpux-shared:-fpic:-shared:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc2-gcc","gcc:-march=2.0 -O3 -DB_ENDIAN -D_REENTRANT::::-Wl,+s -ldld:SIXTY_FOUR_BIT RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL DES_RISC1::pa-risc2.o::::::::::dl:hpux-shared:-fPIC:-shared:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux64-parisc2-gcc","gcc:-O3 -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::pa-risc2W.o::::::::::dlfcn:hpux-shared:-fpic:-shared:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
# More attempts at unified 10.X and 11.X targets for HP C compiler.
|
||||
#
|
||||
@@ -282,8 +283,8 @@ my %table=(
|
||||
# Kevin Steves <ks@hp.se>
|
||||
"hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT::-Wl,+s -ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:${no_asm}:dl:hpux-shared:+Z:-b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc1_0-cc","cc:+DAportable +O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT::-Wl,+s -ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:${no_asm}:dl:hpux-shared:+Z:-b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY -D_REENTRANT::::-Wl,+s -ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:${no_asm}:dl:hpux-shared:+Z:-b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:${no_asm}:dlfcn:hpux-shared:+Z:+DD64 -b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY -D_REENTRANT::::-Wl,+s -ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::pa-risc2.o::::::::::dl:hpux-shared:+Z:-b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::pa-risc2W.o::::::::::dlfcn:hpux-shared:+Z:+DD64 -b:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
# HP/UX IA-64 targets
|
||||
"hpux-ia64-cc","cc:-Ae +DD32 +O2 +Olit=all -z -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT:${ia64_asm}:dlfcn:hpux-shared:+Z:+DD32 -b:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
@@ -320,28 +321,27 @@ my %table=(
|
||||
# *-generic* is endian-neutral target, but ./config is free to
|
||||
# throw in -D[BL]_ENDIAN, whichever appropriate...
|
||||
"linux-generic32","gcc:-DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc32.o::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
#### IA-32 targets...
|
||||
"linux-ia32-icc", "icc:-DL_ENDIAN -DTERMIO -O2 -no_cpprt::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-KPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
|
||||
####
|
||||
"linux-generic64","gcc:-DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ppc64", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ppc64", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc64.o::::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-s390x", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${s390x_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
#### SPARC Linux setups
|
||||
# Ray Miller <ray.miller@computing-services.oxford.ac.uk> has patiently
|
||||
# assisted with debugging of following two configs.
|
||||
"linux-sparcv8","gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-sparcv8","gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# it's a real mess with -mcpu=ultrasparc option under Linux, but
|
||||
# -Wa,-Av8plus should do the trick no matter what.
|
||||
"linux-sparcv9","gcc:-m32 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -Wa,-Av8plus -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC:-m32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux-sparcv9","gcc:-m32 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -Wa,-Av8plus -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC:-m32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# GCC 3.1 is a requirement
|
||||
"linux64-sparcv9","gcc:-m64 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:ULTRASPARC:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"linux64-sparcv9","gcc:-m64 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:ULTRASPARC:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
#### Alpha Linux with GNU C and Compaq C setups
|
||||
# Special notes:
|
||||
# - linux-alpha+bwx-gcc is ment to be used from ./config only. If you
|
||||
@@ -365,13 +365,13 @@ my %table=(
|
||||
"BSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-x86-elf", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-BSD-x86-elf", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wall -g::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-sparcv8", "gcc:-DB_ENDIAN -DTERMIOS -O3 -mv8 -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-sparcv8", "gcc:-DB_ENDIAN -DTERMIOS -O3 -mv8 -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
"BSD-generic64","gcc:-DTERMIOS -O3 -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# -DMD32_REG_T=int doesn't actually belong in sparc64 target, it
|
||||
# simply *happens* to work around a compiler bug in gcc 3.3.3,
|
||||
# triggered by RIPEMD160 code.
|
||||
"BSD-sparc64", "gcc:-DB_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC2 BF_PTR:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-sparc64", "gcc:-DB_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC2 BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-ia64", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-x86_64", "gcc:-DL_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
@@ -409,12 +409,12 @@ my %table=(
|
||||
|
||||
#### IBM's AIX.
|
||||
"aix3-cc", "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::",
|
||||
"aix-gcc", "gcc:-O -DB_ENDIAN::-D_THREAD_SAFE:AIX::BN_LLONG RC4_CHAR:${no_asm}:dlfcn:aix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
|
||||
"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-D_THREAD_SAFE:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${no_asm}:dlfcn:aix-shared::-maix64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X64",
|
||||
"aix-gcc", "gcc:-O -DB_ENDIAN::-pthread:AIX::BN_LLONG RC4_CHAR::aix_ppc32.o::::::::::dlfcn:aix-shared::-shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
|
||||
"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-pthread:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR::aix_ppc64.o::::::::::dlfcn:aix-shared::-maix64 -shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X64",
|
||||
# Below targets assume AIX 5. Idea is to effectively disregard $OBJECT_MODE
|
||||
# at build time. $OBJECT_MODE is respected at ./config stage!
|
||||
"aix-cc", "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR:${no_asm}:dlfcn:aix-shared::-q32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
|
||||
"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${no_asm}:dlfcn:aix-shared::-q64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 64",
|
||||
"aix-cc", "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR::aix_ppc32.o::::::::::dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
|
||||
"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR::aix_ppc64.o::::::::::dlfcn:aix-shared::-q64 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 64",
|
||||
|
||||
#
|
||||
# Cray T90 and similar (SDSC)
|
||||
@@ -485,15 +485,20 @@ my %table=(
|
||||
"Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_coff_asm}:dlfcn:cygwin-shared:-D_WINDLL:-shared:.dll.a",
|
||||
"debug-Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -march=i486 -Wall -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DOPENSSL_NO_ASM -g -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror:::CYGWIN32:::${no_asm}:dlfcn:cygwin-shared:-D_WINDLL:-shared:.dll.a",
|
||||
|
||||
# NetWare from David Ward (dsward@novell.com) - requires MetroWerks NLM development tools
|
||||
# NetWare from David Ward (dsward@novell.com)
|
||||
# requires either MetroWerks NLM development tools, or gcc / nlmconv
|
||||
# NetWare defaults socket bio to WinSock sockets. However,
|
||||
# the builds can be configured to use BSD sockets instead.
|
||||
# netware-clib => legacy CLib c-runtime support
|
||||
"netware-clib", "mwccnlm::::::BN_LLONG ${x86_gcc_opts}::",
|
||||
"netware-clib", "mwccnlm::::::${x86_gcc_opts}::",
|
||||
"netware-clib-bsdsock", "mwccnlm::::::${x86_gcc_opts}::",
|
||||
"netware-clib-gcc", "i586-netware-gcc:-nostdinc -I/ndk/nwsdk/include/nlm -I/ndk/ws295sdk/include -DL_ENDIAN -DNETWARE_CLIB -DOPENSSL_SYSNAME_NETWARE -O2 -Wall:::::${x86_gcc_opts}::",
|
||||
"netware-clib-bsdsock-gcc", "i586-netware-gcc:-nostdinc -I/ndk/nwsdk/include/nlm -DNETWARE_BSDSOCK -DNETDB_USE_INTERNET -DL_ENDIAN -DNETWARE_CLIB -DOPENSSL_SYSNAME_NETWARE -O2 -Wall:::::${x86_gcc_opts}::",
|
||||
# netware-libc => LibC/NKS support
|
||||
# NetWare defaults socket bio to WinSock sockets. However, the LibC build can be
|
||||
# configured to use BSD sockets instead.
|
||||
"netware-libc", "mwccnlm::::::BN_LLONG ${x86_gcc_opts}::",
|
||||
"netware-libc-bsdsock", "mwccnlm::::::BN_LLONG ${x86_gcc_opts}::",
|
||||
"netware-libc-gcc", "i586-netware-gcc:-nostdinc -I/ndk/libc/include -I/ndk/libc/include/winsock -DL_ENDIAN -DNETWARE_LIBC -DOPENSSL_SYSNAME_NETWARE -DTERMIO -O2 -Wall:::::BN_LLONG ${x86_gcc_opts}::",
|
||||
"netware-libc-bsdsock-gcc", "i586-netware-gcc:-nostdinc -I/ndk/libc/include -DNETWARE_BSDSOCK -DL_ENDIAN -DNETWARE_LIBC -DOPENSSL_SYSNAME_NETWARE -DTERMIO -O2 -Wall:::::BN_LLONG ${x86_gcc_opts}::",
|
||||
|
||||
# DJGPP
|
||||
"DJGPP", "gcc:-I/dev/env/WATT_ROOT/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O2 -Wall:::MSDOS:-L/dev/env/WATT_ROOT/lib -lwatt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:",
|
||||
@@ -506,9 +511,12 @@ my %table=(
|
||||
|
||||
##### MacOS X (a.k.a. Rhapsody or Darwin) setup
|
||||
"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown):MACOSX_RHAPSODY::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::",
|
||||
"darwin-ppc-cc","cc:-O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin-i386-cc","cc:-O3 -fomit-frame-pointer -fno-common::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin-ppc-cc","cc:-arch ppc -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o::::::::::dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin64-ppc-cc","cc:-arch ppc64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc64.o::::::::::dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin-i386-cc","cc:-arch i386 -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"debug-darwin-i386-cc","cc:-arch i386 -g3 -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin64-x86_64-cc","cc:-arch x86_64 -O3 -fomit-frame-pointer -DL_ENDIAN -DMD32_REG_T=int -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch x86_64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o::::::::::dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
|
||||
##### A/UX
|
||||
"aux3-gcc","gcc:-O2 -DTERMIO::(unknown):AUX:-lbsd:RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
|
||||
@@ -536,7 +544,9 @@ my %table=(
|
||||
|
||||
my @MK1MF_Builds=qw(VC-WIN64I VC-WIN64A
|
||||
VC-NT VC-CE VC-WIN32
|
||||
BC-32 OS2-EMX netware-clib netware-libc netware-libc-bsdsock);
|
||||
BC-32 OS2-EMX
|
||||
netware-clib netware-clib-bsdsock
|
||||
netware-libc netware-libc-bsdsock);
|
||||
|
||||
my $idx = 0;
|
||||
my $idx_cc = $idx++;
|
||||
@@ -580,6 +590,7 @@ my $no_shared=0; # but "no-shared" is default
|
||||
my $zlib=1; # but "no-zlib" is default
|
||||
my $no_krb5=0; # but "no-krb5" is implied unless "--with-krb5-..." is used
|
||||
my $no_rfc3779=1; # but "no-rfc3779" is default
|
||||
my $montasm=1; # but "no-montasm" is default
|
||||
my $no_asm=0;
|
||||
my $no_dso=0;
|
||||
my $no_gmp=0;
|
||||
@@ -613,27 +624,35 @@ my $fips=0;
|
||||
|
||||
# All of the following is disabled by default (RC5 was enabled before 0.9.8):
|
||||
|
||||
my %disabled = ( # "what" => "comment"
|
||||
my %disabled = ( # "what" => "comment" [or special keyword "experimental"]
|
||||
"camellia" => "default",
|
||||
"capieng" => "default",
|
||||
"cms" => "default",
|
||||
"gmp" => "default",
|
||||
"jpake" => "experimental",
|
||||
"mdc2" => "default",
|
||||
"montasm" => "default", # explicit option in 0.9.8 only (implicitly enabled in 0.9.9)
|
||||
"rc5" => "default",
|
||||
"rfc3779" => "default",
|
||||
"seed" => "default",
|
||||
"shared" => "default",
|
||||
"tlsext" => "default",
|
||||
"zlib" => "default",
|
||||
"zlib-dynamic" => "default"
|
||||
);
|
||||
my @experimental = ();
|
||||
|
||||
# Additional "no-..." options will be collected in %disabled.
|
||||
# To remove something from %disabled, use e.g. "enable-rc5".
|
||||
# For symmetry, "disable-..." is a synonym for "no-...".
|
||||
# This is what $depflags will look like with the above defaults
|
||||
# (we need this to see if we should advise the user to run "make depend"):
|
||||
my $default_depflags = " -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_CAPIENG -DOPENSSL_NO_CMS -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SEED";
|
||||
|
||||
# This is what $depflags will look like with the above default:
|
||||
my $default_depflags = "-DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_GMP -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SEED -DOPENSSL_NO_TLSEXT ";
|
||||
|
||||
# Explicit "no-..." options will be collected in %disabled along with the defaults.
|
||||
# To remove something from %disabled, use "enable-foo" (unless it's experimental).
|
||||
# For symmetry, "disable-foo" is a synonym for "no-foo".
|
||||
|
||||
# For features called "experimental" here, a more explicit "experimental-foo" is needed to enable.
|
||||
# We will collect such requests in @experimental.
|
||||
# To avoid accidental use of experimental features, applications will have to use -DOPENSSL_EXPERIMENTAL_FOO.
|
||||
|
||||
|
||||
my $no_sse2=0;
|
||||
@@ -642,6 +661,7 @@ my $no_sse2=0;
|
||||
|
||||
my $flags;
|
||||
my $depflags;
|
||||
my $openssl_experimental_defines;
|
||||
my $openssl_algorithm_defines;
|
||||
my $openssl_thread_defines;
|
||||
my $openssl_sys_defines="";
|
||||
@@ -662,6 +682,7 @@ while($argv_unprocessed)
|
||||
{
|
||||
$flags="";
|
||||
$depflags="";
|
||||
$openssl_experimental_defines="";
|
||||
$openssl_algorithm_defines="";
|
||||
$openssl_thread_defines="";
|
||||
$openssl_sys_defines="";
|
||||
@@ -687,25 +708,35 @@ PROCESS_ARGS:
|
||||
|
||||
if (/^no-(.+)$/ || /^disable-(.+)$/)
|
||||
{
|
||||
if ($1 eq "ssl")
|
||||
if (!($disabled{$1} eq "experimental"))
|
||||
{
|
||||
$disabled{"ssl2"} = "option(ssl)";
|
||||
$disabled{"ssl3"} = "option(ssl)";
|
||||
}
|
||||
elsif ($1 eq "tls")
|
||||
{
|
||||
$disabled{"tls1"} = "option(tls)"
|
||||
}
|
||||
else
|
||||
{
|
||||
$disabled{$1} = "option";
|
||||
if ($1 eq "ssl")
|
||||
{
|
||||
$disabled{"ssl2"} = "option(ssl)";
|
||||
$disabled{"ssl3"} = "option(ssl)";
|
||||
}
|
||||
elsif ($1 eq "tls")
|
||||
{
|
||||
$disabled{"tls1"} = "option(tls)"
|
||||
}
|
||||
else
|
||||
{
|
||||
$disabled{$1} = "option";
|
||||
}
|
||||
}
|
||||
}
|
||||
elsif (/^enable-(.+)$/)
|
||||
elsif (/^enable-(.+)$/ || /^experimental-(.+)$/)
|
||||
{
|
||||
delete $disabled{$1};
|
||||
my $algo = $1;
|
||||
if ($disabled{$algo} eq "experimental")
|
||||
{
|
||||
die "You are requesting an experimental feature; please say 'experimental-$algo' if you are sure\n"
|
||||
unless (/^experimental-/);
|
||||
push @experimental, $algo;
|
||||
}
|
||||
delete $disabled{$algo};
|
||||
|
||||
$threads = 1 if ($1 eq "threads");
|
||||
$threads = 1 if ($algo eq "threads");
|
||||
}
|
||||
elsif (/^--test-sanity$/)
|
||||
{
|
||||
@@ -950,6 +981,15 @@ if ($fips)
|
||||
"$cpuid_obj:$bn_obj:$aes_obj:$des_obj:$sha1_obj" eq "::::");
|
||||
}
|
||||
|
||||
foreach (sort @experimental)
|
||||
{
|
||||
my $ALGO;
|
||||
($ALGO = $_) =~ tr/[a-z]/[A-Z]/;
|
||||
|
||||
# opensslconf.h will set OPENSSL_NO_... unless OPENSSL_EXPERIMENTAL_... is defined
|
||||
$openssl_experimental_defines .= "#define OPENSSL_NO_$ALGO\n";
|
||||
$cflags .= " -DOPENSSL_EXPERIMENTAL_$ALGO";
|
||||
}
|
||||
|
||||
foreach (sort (keys %disabled))
|
||||
{
|
||||
@@ -965,6 +1005,8 @@ foreach (sort (keys %disabled))
|
||||
{ $no_shared = 1; }
|
||||
elsif (/^zlib$/)
|
||||
{ $zlib = 0; }
|
||||
elsif (/^montasm$/)
|
||||
{ $montasm = 0; }
|
||||
elsif (/^static-engine$/)
|
||||
{ }
|
||||
elsif (/^zlib-dynamic$/)
|
||||
@@ -998,7 +1040,7 @@ foreach (sort (keys %disabled))
|
||||
push @skip, $algo;
|
||||
print " (skip dir)";
|
||||
|
||||
$depflags .="-DOPENSSL_NO_$ALGO ";
|
||||
$depflags .= " -DOPENSSL_NO_$ALGO";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1014,6 +1056,7 @@ $IsMK1MF=1 if ($target eq "mingw" && $^O ne "cygwin" && !is_msys());
|
||||
$no_shared = 0 if ($fipsdso && !$IsMK1MF);
|
||||
|
||||
$exe_ext=".exe" if ($target eq "Cygwin" || $target eq "DJGPP" || $target eq "mingw");
|
||||
$exe_ext=".nlm" if ($target =~ /netware/);
|
||||
$exe_ext=".pm" if ($target =~ /vos/);
|
||||
if ($openssldir eq "" and $prefix eq "")
|
||||
{
|
||||
@@ -1033,7 +1076,7 @@ $perl=$ENV{'PERL'} or $perl=&which("perl5") or $perl=&which("perl")
|
||||
or $perl="perl";
|
||||
|
||||
chop $openssldir if $openssldir =~ /\/$/;
|
||||
chop $prefix if $prefix =~ /\/$/;
|
||||
chop $prefix if $prefix =~ /.\/$/;
|
||||
|
||||
$openssldir=$prefix . "/ssl" if $openssldir eq "";
|
||||
$openssldir=$prefix . "/" . $openssldir if $openssldir !~ /(^\/|^[a-zA-Z]:[\\\/])/;
|
||||
@@ -1177,6 +1220,14 @@ if ($no_asm)
|
||||
$cflags=~s/\-D[BL]_ENDIAN// if ($fips);
|
||||
$thread_cflags=~s/\-D[BL]_ENDIAN// if ($fips);
|
||||
}
|
||||
if ($montasm)
|
||||
{
|
||||
$bn_obj =~ s/MAYBE-MO86-/mo86-/;
|
||||
}
|
||||
else
|
||||
{
|
||||
$bn_obj =~ s/MAYBE-MO86-[a-z.]*//;
|
||||
}
|
||||
|
||||
if (!$no_shared)
|
||||
{
|
||||
@@ -1242,7 +1293,6 @@ if ($target =~ /\-icc$/) # Intel C compiler
|
||||
while(<FD>) { $iccver=$1 if (/Version ([0-9]+)\./); }
|
||||
close(FD);
|
||||
}
|
||||
|
||||
if ($iccver>=8)
|
||||
{
|
||||
# Eliminate unnecessary dependency from libirc.a. This is
|
||||
@@ -1388,7 +1438,8 @@ while (<IN>)
|
||||
if ($sdirs) {
|
||||
my $dir;
|
||||
foreach $dir (@skip) {
|
||||
s/([ ])$dir /\1/;
|
||||
s/(\s)$dir\s/$1/;
|
||||
s/\s$dir$//;
|
||||
}
|
||||
}
|
||||
$sdirs = 0 unless /\\$/;
|
||||
@@ -1409,7 +1460,7 @@ while (<IN>)
|
||||
s/^CC=.*$/CC= $cc/;
|
||||
s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq "gcc";
|
||||
s/^CFLAG=.*$/CFLAG= $cflags/;
|
||||
s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
|
||||
s/^DEPFLAG=.*$/DEPFLAG=$depflags/;
|
||||
s/^PEX_LIBS=.*$/PEX_LIBS= $prelflags/;
|
||||
s/^EX_LIBS=.*$/EX_LIBS= $lflags/;
|
||||
s/^EXE_EXT=.*$/EXE_EXT= $exe_ext/;
|
||||
@@ -1553,6 +1604,7 @@ print OUT "/* WARNING: Generated automatically from opensslconf.h.in by Configur
|
||||
|
||||
print OUT "/* OpenSSL was configured with the following options: */\n";
|
||||
my $openssl_algorithm_defines_trans = $openssl_algorithm_defines;
|
||||
$openssl_experimental_defines =~ s/^\s*#\s*define\s+OPENSSL_NO_(.*)/#ifndef OPENSSL_EXPERIMENTAL_$1\n# ifndef OPENSSL_NO_$1\n# define OPENSSL_NO_$1\n# endif\n#endif/mg;
|
||||
$openssl_algorithm_defines_trans =~ s/^\s*#\s*define\s+OPENSSL_(.*)/# if defined(OPENSSL_$1) \&\& !defined($1)\n# define $1\n# endif/mg;
|
||||
$openssl_algorithm_defines =~ s/^\s*#\s*define\s+(.*)/#ifndef $1\n# define $1\n#endif/mg;
|
||||
$openssl_algorithm_defines = " /* no ciphers excluded */\n" if $openssl_algorithm_defines eq "";
|
||||
@@ -1561,8 +1613,10 @@ $openssl_sys_defines =~ s/^\s*#\s*define\s+(.*)/#ifndef $1\n# define $1\n#endif/
|
||||
$openssl_other_defines =~ s/^\s*#\s*define\s+(.*)/#ifndef $1\n# define $1\n#endif/mg;
|
||||
print OUT $openssl_sys_defines;
|
||||
print OUT "#ifndef OPENSSL_DOING_MAKEDEPEND\n\n";
|
||||
print OUT $openssl_experimental_defines;
|
||||
print OUT "\n";
|
||||
print OUT $openssl_algorithm_defines;
|
||||
print OUT "\n#endif /* OPENSSL_DOING_MAKEDEPEND */\n";
|
||||
print OUT "\n#endif /* OPENSSL_DOING_MAKEDEPEND */\n\n";
|
||||
print OUT $openssl_thread_defines;
|
||||
print OUT $openssl_other_defines,"\n";
|
||||
|
||||
@@ -1713,7 +1767,7 @@ EOF
|
||||
}
|
||||
|
||||
# create the ms/version32.rc file if needed
|
||||
if ($IsMK1MF) {
|
||||
if ($IsMK1MF && ($target !~ /^netware/)) {
|
||||
my ($v1, $v2, $v3, $v4);
|
||||
if ($version_num =~ /(^[0-9a-f]{1})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})/i) {
|
||||
$v1=hex $1;
|
||||
@@ -1815,7 +1869,7 @@ OpenSSL FIPS Object Module as identified by the CMVP
|
||||
(http://csrc.nist.gov/cryptval/) in any application requiring the use of FIPS
|
||||
140-2 validated software.
|
||||
|
||||
This is an OpenSSL 0.9.8-fips test version.
|
||||
This is an OpenSSL 0.9.8 test version.
|
||||
|
||||
See the file README.FIPS for details of how to build a test library.
|
||||
|
||||
|
85
FAQ
85
FAQ
@@ -32,6 +32,8 @@ OpenSSL - Frequently Asked Questions
|
||||
* How do I install a CA certificate into a browser?
|
||||
* Why is OpenSSL x509 DN output not conformant to RFC2253?
|
||||
* What is a "128 bit certificate"? Can I create one with OpenSSL?
|
||||
* Why does OpenSSL set the authority key identifier extension incorrectly?
|
||||
* How can I set up a bundle of commercial root CA certificates?
|
||||
|
||||
[BUILD] Questions about building and testing OpenSSL
|
||||
|
||||
@@ -66,6 +68,8 @@ OpenSSL - Frequently Asked Questions
|
||||
* Why doesn't my server application receive a client certificate?
|
||||
* Why does compilation fail due to an undefined symbol NID_uniqueIdentifier?
|
||||
* I think I've detected a memory leak, is this a bug?
|
||||
* Why does Valgrind complain about the use of uninitialized data?
|
||||
* Why doesn't a memory BIO work when a file does?
|
||||
|
||||
===============================================================================
|
||||
|
||||
@@ -74,7 +78,7 @@ OpenSSL - Frequently Asked Questions
|
||||
* Which is the current version of OpenSSL?
|
||||
|
||||
The current version is available from <URL: http://www.openssl.org>.
|
||||
OpenSSL 0.9.8e was released on February 23rd, 2007.
|
||||
OpenSSL 0.9.8j was released on Jan 7th, 2009.
|
||||
|
||||
In addition to the current stable release, you can also access daily
|
||||
snapshots of the OpenSSL development version at <URL:
|
||||
@@ -401,10 +405,10 @@ You can't generally create such a certificate using OpenSSL but there is no
|
||||
need to any more. Nowadays web browsers using unrestricted strong encryption
|
||||
are generally available.
|
||||
|
||||
When there were tight export restrictions on the export of strong encryption
|
||||
When there were tight restrictions on the export of strong encryption
|
||||
software from the US only weak encryption algorithms could be freely exported
|
||||
(initially 40 bit and then 56 bit). It was widely recognised that this was
|
||||
inadequate. A relaxation the rules allowed the use of strong encryption but
|
||||
inadequate. A relaxation of the rules allowed the use of strong encryption but
|
||||
only to an authorised server.
|
||||
|
||||
Two slighly different techniques were developed to support this, one used by
|
||||
@@ -425,6 +429,39 @@ The export laws were later changed to allow almost unrestricted use of strong
|
||||
encryption so these certificates are now obsolete.
|
||||
|
||||
|
||||
* Why does OpenSSL set the authority key identifier (AKID) extension incorrectly?
|
||||
|
||||
It doesn't: this extension is often the cause of confusion.
|
||||
|
||||
Consider a certificate chain A->B->C so that A signs B and B signs C. Suppose
|
||||
certificate C contains AKID.
|
||||
|
||||
The purpose of this extension is to identify the authority certificate B. This
|
||||
can be done either by including the subject key identifier of B or its issuer
|
||||
name and serial number.
|
||||
|
||||
In this latter case because it is identifying certifcate B it must contain the
|
||||
issuer name and serial number of B.
|
||||
|
||||
It is often wrongly assumed that it should contain the subject name of B. If it
|
||||
did this would be redundant information because it would duplicate the issuer
|
||||
name of C.
|
||||
|
||||
|
||||
* How can I set up a bundle of commercial root CA certificates?
|
||||
|
||||
The OpenSSL software is shipped without any root CA certificate as the
|
||||
OpenSSL project does not have any policy on including or excluding
|
||||
any specific CA and does not intend to set up such a policy. Deciding
|
||||
about which CAs to support is up to application developers or
|
||||
administrators.
|
||||
|
||||
Other projects do have other policies so you can for example extract the CA
|
||||
bundle used by Mozilla and/or modssl as described in this article:
|
||||
|
||||
http://www.mail-archive.com/modssl-users@modssl.org/msg16980.html
|
||||
|
||||
|
||||
[BUILD] =======================================================================
|
||||
|
||||
* Why does the linker complain about undefined symbols?
|
||||
@@ -822,11 +859,11 @@ code itself (the hex digits after the second colon).
|
||||
|
||||
* Why do I get errors about unknown algorithms?
|
||||
|
||||
This can happen under several circumstances such as reading in an
|
||||
encrypted private key or attempting to decrypt a PKCS#12 file. The cause
|
||||
is forgetting to load OpenSSL's table of algorithms with
|
||||
OpenSSL_add_all_algorithms(). See the manual page for more information.
|
||||
|
||||
The cause is forgetting to load OpenSSL's table of algorithms with
|
||||
OpenSSL_add_all_algorithms(). See the manual page for more information. This
|
||||
can cause several problems such as being unable to read in an encrypted
|
||||
PEM file, unable to decrypt a PKCS#12 file or signature failure when
|
||||
verifying certificates.
|
||||
|
||||
* Why can't the OpenSSH configure script detect OpenSSL?
|
||||
|
||||
@@ -894,5 +931,35 @@ thread-safe):
|
||||
ERR_free_strings(), EVP_cleanup() and CRYPTO_cleanup_all_ex_data().
|
||||
|
||||
|
||||
===============================================================================
|
||||
* Why does Valgrind complain about the use of uninitialized data?
|
||||
|
||||
When OpenSSL's PRNG routines are called to generate random numbers the supplied
|
||||
buffer contents are mixed into the entropy pool: so it technically does not
|
||||
matter whether the buffer is initialized at this point or not. Valgrind (and
|
||||
other test tools) will complain about this. When using Valgrind, make sure the
|
||||
OpenSSL library has been compiled with the PURIFY macro defined (-DPURIFY)
|
||||
to get rid of these warnings.
|
||||
|
||||
|
||||
* Why doesn't a memory BIO work when a file does?
|
||||
|
||||
This can occur in several cases for example reading an S/MIME email message.
|
||||
The reason is that a memory BIO can do one of two things when all the data
|
||||
has been read from it.
|
||||
|
||||
The default behaviour is to indicate that no more data is available and that
|
||||
the call should be retried, this is to allow the application to fill up the BIO
|
||||
again if necessary.
|
||||
|
||||
Alternatively it can indicate that no more data is available and that EOF has
|
||||
been reached.
|
||||
|
||||
If a memory BIO is to behave in the same way as a file this second behaviour
|
||||
is needed. This must be done by calling:
|
||||
|
||||
BIO_set_mem_eof_return(bio, 0);
|
||||
|
||||
See the manual pages for more details.
|
||||
|
||||
|
||||
===============================================================================
|
||||
|
4
INSTALL
4
INSTALL
@@ -158,7 +158,7 @@
|
||||
standard headers). If it is a problem with OpenSSL itself, please
|
||||
report the problem to <openssl-bugs@openssl.org> (note that your
|
||||
message will be recorded in the request tracker publicly readable
|
||||
via http://www.openssl.org/support/rt2.html and will be forwarded to a
|
||||
via http://www.openssl.org/support/rt.html and will be forwarded to a
|
||||
public mailing list). Include the output of "make report" in your message.
|
||||
Please check out the request tracker. Maybe the bug was already
|
||||
reported or has already been fixed.
|
||||
@@ -180,7 +180,7 @@
|
||||
in Makefile.ssl and run "make clean; make". Please send a bug
|
||||
report to <openssl-bugs@openssl.org>, including the output of
|
||||
"make report" in order to be added to the request tracker at
|
||||
http://www.openssl.org/support/rt2.html.
|
||||
http://www.openssl.org/support/rt.html.
|
||||
|
||||
4. If everything tests ok, install OpenSSL with
|
||||
|
||||
|
130
INSTALL.NW
130
INSTALL.NW
@@ -8,58 +8,62 @@ Notes about building OpenSSL for NetWare.
|
||||
BUILD PLATFORM:
|
||||
---------------
|
||||
The build scripts (batch files, perl scripts, etc) have been developed and
|
||||
tested on W2K. The scripts should run fine on other Windows
|
||||
platforms (NT, Win9x, WinXP) but they haven't been tested. They may require
|
||||
some modifications.
|
||||
tested on W2K. The scripts should run fine on other Windows platforms
|
||||
(NT, Win9x, WinXP) but they have not been tested. They may require some
|
||||
modifications.
|
||||
|
||||
|
||||
Supported NetWare Platforms - NetWare 5.x, NetWare 6.x:
|
||||
------------------------------------------
|
||||
OpenSSL uses the WinSock interfaces introduced in NetWare 5. Therefore,
|
||||
previous versions of NetWare, 4.x and 3.x, are not supported.
|
||||
-------------------------------------------------------
|
||||
OpenSSL can either use the WinSock interfaces introduced in NetWare 5,
|
||||
or the BSD socket interface. Previous versions of NetWare, 4.x and 3.x,
|
||||
are only supported if OpenSSL is build for CLIB and BSD sockets;
|
||||
WinSock builds only support NetWare 5 and up.
|
||||
|
||||
On NetWare there are two c-runtime libraries. There is the legacy CLIB
|
||||
interfaces and the newer LibC interfaces. Being ANSI-C libraries, the
|
||||
functionality in CLIB and LibC is similar but the LibC interfaces are built
|
||||
interfaces and the newer LIBC interfaces. Being ANSI-C libraries, the
|
||||
functionality in CLIB and LIBC is similar but the LIBC interfaces are built
|
||||
using Novell Kernal Services (NKS) which is designed to leverage
|
||||
multi-processor environments.
|
||||
|
||||
The NetWare port of OpenSSL can configured to build using CLIB or LibC. The
|
||||
CLIB build was developed and tested using NetWare 5.0 sp6.0a. The LibC
|
||||
The NetWare port of OpenSSL can be configured to build using CLIB or LIBC.
|
||||
The CLIB build was developed and tested using NetWare 5.0 sp6.0a. The LIBC
|
||||
build was developed and tested using the NetWare 6.0 FCS.
|
||||
|
||||
The necessary LibC functionality ships with NetWare 6. However, earlier
|
||||
NetWare 5.x versions will require updates in order to run the OpenSSL LibC
|
||||
build.
|
||||
The necessary LIBC functionality ships with NetWare 6. However, earlier
|
||||
NetWare 5.x versions will require updates in order to run the OpenSSL LIBC
|
||||
build (NetWare 5.1 SP8 is known to work).
|
||||
|
||||
As of June 2005, the LibC build can be configured to use BSD sockets instead
|
||||
As of June 2005, the LIBC build can be configured to use BSD sockets instead
|
||||
of WinSock sockets. Call Configure (usually through netware\build.bat) using
|
||||
a target of "netware-libc-bsdsock" instead of "netware-libc".
|
||||
|
||||
As of June 2007, support for CLIB and BSD sockets is also now available
|
||||
using a target of "netware-clib-bsdsock" instead of "netware-clib";
|
||||
also gcc builds are now supported on both Linux and Win32 (post 0.9.8e).
|
||||
|
||||
REQUIRED TOOLS:
|
||||
---------------
|
||||
Based upon the configuration and build options used, some or all of the
|
||||
following tools may be required:
|
||||
|
||||
|
||||
* Perl for Win32 - required (http://www.activestate.com/ActivePerl)
|
||||
Used to run the various perl scripts on the build platform.
|
||||
|
||||
|
||||
* Perl 5.8.0 for NetWare v3.20 (or later) - required
|
||||
(http://developer.novell.com) Used to run the test script on NetWare
|
||||
after building.
|
||||
|
||||
* Compiler / Linker - required:
|
||||
Metrowerks CodeWarrior PDK 2.1 (or later) for NetWare (commercial):
|
||||
Provides command line tools used for building.
|
||||
Tools:
|
||||
mwccnlm.exe - C/C++ Compiler for NetWare
|
||||
mwldnlm.exe - Linker for NetWare
|
||||
mwasmnlm.exe - x86 assembler for NetWare (if using assembly option)
|
||||
|
||||
* Metrowerks CodeWarrior PDK 2.1 (or later) for NetWare - required:
|
||||
Provides command line tools used for building.
|
||||
|
||||
Tools:
|
||||
mwccnlm.exe - C/C++ Compiler for NetWare
|
||||
mwldnlm.exe - Linker for NetWare
|
||||
mwasmnlm.exe - x86 assembler for NetWare (if using assembly option)
|
||||
|
||||
gcc / nlmconv Cross-Compiler, available from Novell Forge (free):
|
||||
http://forge.novell.com/modules/xfmod/project/?aunixnw
|
||||
|
||||
* Assemblers - optional:
|
||||
If you intend to build using the assembly options you will need an
|
||||
@@ -79,11 +83,11 @@ following tools may be required:
|
||||
In order to build you will need a make tool. Two make tools are
|
||||
supported, GNU make (gmake.exe) or Microsoft nmake.exe.
|
||||
|
||||
gmake.exe - GNU make for Windows (version 3.75 used for development)
|
||||
http://www.gnu.org/software/make/make.html
|
||||
make.exe - GNU make for Windows (version 3.75 used for development)
|
||||
http://gnuwin32.sourceforge.net/packages/make.htm
|
||||
|
||||
nmake.exe - Microsoft make (Version 6.00.8168.0 used for development)
|
||||
|
||||
http://support.microsoft.com/kb/132084/EN-US/
|
||||
|
||||
* Novell Developer Kit (NDK) - required: (http://developer.novell.com)
|
||||
|
||||
@@ -123,14 +127,14 @@ following tools may be required:
|
||||
|
||||
LIBC - BUILDS:
|
||||
|
||||
Libraries for C (LibC) - LibC headers and import files
|
||||
If you are going to build a LibC version of OpenSSL, you will
|
||||
need the LibC headers and imports. The March 14, 2002 NDK release or
|
||||
Libraries for C (LIBC) - LIBC headers and import files
|
||||
If you are going to build a LIBC version of OpenSSL, you will
|
||||
need the LIBC headers and imports. The March 14, 2002 NDK release or
|
||||
later is required.
|
||||
|
||||
NOTE: The LibC SDK includes the necessary WinSock2 support. It
|
||||
It is not necessary to download the WinSock2 Developer when building
|
||||
for LibC. The LibC SDK also includes the appropriate BSD socket support
|
||||
NOTE: The LIBC SDK includes the necessary WinSock2 support.
|
||||
It is not necessary to download the WinSock2 NDK when building for
|
||||
LIBC. The LIBC SDK also includes the appropriate BSD socket support
|
||||
if configuring to use BSD sockets.
|
||||
|
||||
|
||||
@@ -143,33 +147,36 @@ The set_env.bat file is a template you can use to set up the path
|
||||
and environment variables you will need to build. Modify the
|
||||
various lines to point to YOUR tools and run set_env.bat.
|
||||
|
||||
netware\set_env.bat [target]
|
||||
netware\set_env.bat <target> [compiler]
|
||||
|
||||
target - "netware-clib" - CLib NetWare build
|
||||
- "netware-libc" - LibC NetWare build
|
||||
target - "netware-clib" - CLIB NetWare build
|
||||
- "netware-libc" - LIBC NetWare build
|
||||
|
||||
compiler - "gnuc" - GNU GCC Compiler
|
||||
- "codewarrior" - MetroWerks CodeWarrior (default)
|
||||
|
||||
If you don't use set_env.bat, you will need to set up the following
|
||||
environment variables:
|
||||
|
||||
path - Set path to point to the tools you will use.
|
||||
PATH - Set PATH to point to the tools you will use.
|
||||
|
||||
MWCIncludes - The location of the NDK include files.
|
||||
INCLUDE - The location of the NDK include files.
|
||||
|
||||
CLIB ex: set MWCIncludes=c:\ndk\nwsdk\include\nlm
|
||||
LibC ex: set MWCIncludes=c:\ndk\libc\include
|
||||
CLIB ex: set INCLUDE=c:\ndk\nwsdk\include\nlm
|
||||
LIBC ex: set INCLUDE=c:\ndk\libc\include
|
||||
|
||||
PRELUDE - The absolute path of the prelude object to link with. For
|
||||
a CLIB build it is recommended you use the "clibpre.o" files shipped
|
||||
with the Metrowerks PDK for NetWare. For a LibC build you should
|
||||
use the "libcpre.o" file delivered with the LibC NDK components.
|
||||
with the Metrowerks PDK for NetWare. For a LIBC build you should
|
||||
use the "libcpre.o" file delivered with the LIBC NDK components.
|
||||
|
||||
CLIB ex: set PRELUDE=c:\ndk\nwsdk\imports\clibpre.o
|
||||
LibC ex: set PRELUDE=c:\ndk\libc\imports\libcpre.o
|
||||
LIBC ex: set PRELUDE=c:\ndk\libc\imports\libcpre.o
|
||||
|
||||
IMPORTS - The locaton of the NDK import files.
|
||||
|
||||
CLIB ex: set IMPORTS=c:\ndk\nwsdk\imports
|
||||
LibC ex: set IMPORTS=c:\ndk\libc\imports
|
||||
LIBC ex: set IMPORTS=c:\ndk\libc\imports
|
||||
|
||||
|
||||
In order to build, you need to run the Perl scripts to configure the build
|
||||
@@ -182,9 +189,10 @@ the assembly code. Always run build.bat from the "openssl" directory.
|
||||
|
||||
netware\build [target] [debug opts] [assembly opts] [configure opts]
|
||||
|
||||
target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
||||
- "netware-libc" - LibC NetWare build (WinSock Sockets)
|
||||
- "netware-libc-bsdsock" - LibC NetWare build (BSD Sockets)
|
||||
target - "netware-clib" - CLIB NetWare build (WinSock Sockets)
|
||||
- "netware-clib-bsdsock" - CLIB NetWare build (BSD Sockets)
|
||||
- "netware-libc" - LIBC NetWare build (WinSock Sockets)
|
||||
- "netware-libc-bsdsock" - LIBC NetWare build (BSD Sockets)
|
||||
|
||||
debug opts - "debug" - build debug
|
||||
|
||||
@@ -193,25 +201,27 @@ the assembly code. Always run build.bat from the "openssl" directory.
|
||||
"no-asm" - don't use assembly
|
||||
|
||||
configure opts- all unrecognized arguments are passed to the
|
||||
perl configure script
|
||||
perl 'configure' script. See that script for
|
||||
internal documentation regarding options that
|
||||
are available.
|
||||
|
||||
examples:
|
||||
|
||||
CLIB build, debug, without assembly:
|
||||
netware\build.bat netware-clib debug no-asm
|
||||
|
||||
LibC build, non-debug, using NASM assembly:
|
||||
netware\build.bat netware-libc nw-nasm
|
||||
LIBC build, non-debug, using NASM assembly, add mdc2 support:
|
||||
netware\build.bat netware-libc nw-nasm enable-mdc2
|
||||
|
||||
LibC build, BSD sockets, non-debug, without assembly:
|
||||
LIBC build, BSD sockets, non-debug, without assembly:
|
||||
netware\build.bat netware-libc-bsdsock no-asm
|
||||
|
||||
Running build.bat generates a make file to be processed by your make
|
||||
tool (gmake or nmake):
|
||||
|
||||
CLIB ex: gmake -f netware\nlm_clib_dbg.mak
|
||||
LibC ex: gmake -f netware\nlm_libc.mak
|
||||
LibC ex: gmake -f netware\nlm_libc_bsdsock.mak
|
||||
LIBC ex: gmake -f netware\nlm_libc.mak
|
||||
LIBC ex: gmake -f netware\nlm_libc_bsdsock.mak
|
||||
|
||||
|
||||
You can also run the build scripts manually if you do not want to use the
|
||||
@@ -220,7 +230,7 @@ subdirectory (in the order listed below):
|
||||
|
||||
perl configure no-asm [other config opts] [netware-clib|netware-libc|netware-libc-bsdsock]
|
||||
configures no assembly build for specified netware environment
|
||||
(CLIB or LibC).
|
||||
(CLIB or LIBC).
|
||||
|
||||
perl util\mkfiles.pl >MINFO
|
||||
generates a listing of source files (used by mk1mf)
|
||||
@@ -250,12 +260,12 @@ The output from the build is placed in the following directories:
|
||||
tmp_nw_clib - temporary build files
|
||||
outinc_nw_clib - necesary include files
|
||||
|
||||
LibC Debug build:
|
||||
LIBC Debug build:
|
||||
out_nw_libc.dbg - static libs & test nlm(s)
|
||||
tmp_nw_libc.dbg - temporary build files
|
||||
outinc_nw_libc - necessary include files
|
||||
|
||||
LibC Non-debug build:
|
||||
LIBC Non-debug build:
|
||||
out_nw_libc - static libs & test nlm(s)
|
||||
tmp_nw_libc - temporary build files
|
||||
outinc_nw_libc - necesary include files
|
||||
@@ -281,7 +291,7 @@ To run cpy_tests.bat:
|
||||
NetWare drive - drive letter of mapped drive
|
||||
|
||||
CLIB ex: netware\cpy_tests out_nw_clib m:
|
||||
LibC ex: netware\cpy_tests out_nw_libc m:
|
||||
LIBC ex: netware\cpy_tests out_nw_libc m:
|
||||
|
||||
|
||||
The Perl script, "do_tests.pl", in the "OpenSSL" directory on the server
|
||||
@@ -356,9 +366,9 @@ clean up the resources!
|
||||
|
||||
Multi-threaded Development
|
||||
---------------------------
|
||||
The NetWare version of OpenSSL is thread-safe however, multi-threaded
|
||||
The NetWare version of OpenSSL is thread-safe, however multi-threaded
|
||||
applications must provide the necessary locking function callbacks. This
|
||||
is described in doc\threads.doc. The file "openssl\crypto\threads\mttest.c"
|
||||
is described in doc\threads.doc. The file "openssl-x.x.x\crypto\threads\mttest.c"
|
||||
is a multi-threaded test program and demonstrates the locking functions.
|
||||
|
||||
|
||||
@@ -428,7 +438,7 @@ Makefile "vclean"
|
||||
------------------
|
||||
The generated makefile has a "vclean" target which cleans up the build
|
||||
directories. If you have been building successfully and suddenly
|
||||
experience problems, use "vclean" (gmake -f netware\nlm.mak vclean) and retry.
|
||||
experience problems, use "vclean" (gmake -f netware\nlm_xxxx.mak vclean) and retry.
|
||||
|
||||
|
||||
"Undefined Symbol" Linker errors
|
||||
|
2
LICENSE
2
LICENSE
@@ -12,7 +12,7 @@
|
||||
---------------
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved.
|
||||
* Copyright (c) 1998-2008 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
|
||||
|
14
Makefile.org
14
Makefile.org
@@ -142,7 +142,7 @@ SDIRS= \
|
||||
bn ec rsa dsa ecdsa dh ecdh dso engine \
|
||||
buffer bio stack lhash rand err \
|
||||
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp ocsp ui krb5 \
|
||||
store cms pqueue
|
||||
store cms pqueue jpake
|
||||
# keep in mind that the above list is adjusted by ./Configure
|
||||
# according to no-xxx arguments...
|
||||
|
||||
@@ -172,7 +172,7 @@ SHARED_LDFLAGS=
|
||||
|
||||
GENERAL= Makefile
|
||||
BASENAME= openssl
|
||||
NAME= $(BASENAME)-fips-$(VERSION)
|
||||
NAME= $(BASENAME)-$(VERSION)
|
||||
TARFILE= $(NAME).tar
|
||||
WTARFILE= $(NAME)-win.tar
|
||||
EXHEADER= e_os2.h
|
||||
@@ -219,7 +219,8 @@ BUILDENV= PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
|
||||
SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' \
|
||||
MD5_ASM_OBJ='${MD5_ASM_OBJ}' \
|
||||
RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' \
|
||||
FIPSLIBDIR='${FIPSLIBDIR}' FIPSCANLIB='${FIPSCANLIB}' \
|
||||
FIPSLIBDIR='${FIPSLIBDIR}' \
|
||||
FIPSCANLIB="$${FIPSCANLIB:-$(FIPSCANLIB)}" \
|
||||
FIPSCANISTERINTERNAL='${FIPSCANISTERINTERNAL}' \
|
||||
FIPS_EX_OBJ='${FIPS_EX_OBJ}' \
|
||||
THIS=$${THIS:-$@} MAKEFILE=Makefile MAKEOVERRIDES=
|
||||
@@ -240,7 +241,8 @@ BUILDENV= PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
|
||||
# subdirectories defined in $(DIRS). It requires that the target
|
||||
# is given through the shell variable `target'.
|
||||
BUILD_CMD= if [ -d "$$dir" ]; then \
|
||||
( cd $$dir && echo "making $$target in $$dir..." && \
|
||||
( [ $$target != all -a -z "$(FIPSCANLIB)" ] && FIPSCANLIB=/dev/null; \
|
||||
cd $$dir && echo "making $$target in $$dir..." && \
|
||||
$(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. DIR=$$dir $$target \
|
||||
) || exit 1; \
|
||||
fi
|
||||
@@ -584,7 +586,7 @@ tar:
|
||||
$(TAR) $(TARFLAGS) --files-from ../$(TARFILE).list -cvf - | \
|
||||
tardy --user_number=0 --user_name=openssl \
|
||||
--group_number=0 --group_name=openssl \
|
||||
--prefix=openssl-fips-$(VERSION) - |\
|
||||
--prefix=openssl-$(VERSION) - |\
|
||||
gzip --best >../$(TARFILE).gz; \
|
||||
rm -f ../$(TARFILE).list; \
|
||||
ls -l ../$(TARFILE).gz
|
||||
@@ -606,7 +608,7 @@ dist:
|
||||
dist_pem_h:
|
||||
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
|
||||
|
||||
install: all install_sw
|
||||
install: all install_docs install_sw
|
||||
|
||||
install_sw:
|
||||
@$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
|
||||
|
@@ -491,23 +491,23 @@ link_app.hpux:
|
||||
|
||||
link_o.aix:
|
||||
@ $(CALC_VERSIONS); \
|
||||
OBJECT_MODE=`expr x$(SHARED_LDFLAGS) : 'x\-[a-z]*\(64\)'` || :; \
|
||||
OBJECT_MODE=`expr "x$(SHARED_LDFLAGS)" : 'x\-[a-z]*\(64\)'` || :; \
|
||||
OBJECT_MODE=$${OBJECT_MODE:-32}; export OBJECT_MODE; \
|
||||
SHLIB=lib$(LIBNAME).so; \
|
||||
SHLIB_SUFFIX=; \
|
||||
ALLSYMSFLAGS=''; \
|
||||
NOALLSYMSFLAGS=''; \
|
||||
SHAREDFLAGS='$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-G,-bexpall,-bnolibpath,-bM:SRE'; \
|
||||
SHAREDFLAGS='$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-bexpall,-bnolibpath,-bM:SRE'; \
|
||||
$(LINK_SO_O);
|
||||
link_a.aix:
|
||||
@ $(CALC_VERSIONS); \
|
||||
OBJECT_MODE=`expr x$(SHARED_LDFLAGS) : 'x\-[a-z]*\(64\)'` || : ; \
|
||||
OBJECT_MODE=`expr "x$(SHARED_LDFLAGS)" : 'x\-[a-z]*\(64\)'` || : ; \
|
||||
OBJECT_MODE=$${OBJECT_MODE:-32}; export OBJECT_MODE; \
|
||||
SHLIB=lib$(LIBNAME).so; \
|
||||
SHLIB_SUFFIX=; \
|
||||
ALLSYMSFLAGS='-bnogc'; \
|
||||
NOALLSYMSFLAGS=''; \
|
||||
SHAREDFLAGS='$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-G,-bexpall,-bnolibpath,-bM:SRE'; \
|
||||
SHAREDFLAGS='$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-bexpall,-bnolibpath,-bM:SRE'; \
|
||||
$(LINK_SO_A_VIA_O)
|
||||
link_app.aix:
|
||||
LDFLAGS="$(CFLAGS) -Wl,-brtl,-blibpath:$(LIBRPATH):$${LIBPATH:-/usr/lib:/lib}"; \
|
||||
|
28
NEWS
28
NEWS
@@ -5,6 +5,34 @@
|
||||
This file gives a brief overview of the major changes between each OpenSSL
|
||||
release. For more details please read the CHANGES file.
|
||||
|
||||
Major changes between OpenSSL 0.9.8i and OpenSSL 0.9.8j:
|
||||
|
||||
o Fix security issue (CVE-2008-5077)
|
||||
o Merge FIPS 140-2 branch code.
|
||||
|
||||
Major changes between OpenSSL 0.9.8g and OpenSSL 0.9.8h:
|
||||
|
||||
o CryptoAPI ENGINE support.
|
||||
o Various precautionary measures.
|
||||
o Fix for bugs affecting certificate request creation.
|
||||
o Support for local machine keyset attribute in PKCS#12 files.
|
||||
|
||||
Major changes between OpenSSL 0.9.8f and OpenSSL 0.9.8g:
|
||||
|
||||
o Backport of CMS functionality to 0.9.8.
|
||||
o Fixes for bugs introduced with 0.9.8f.
|
||||
|
||||
Major changes between OpenSSL 0.9.8e and OpenSSL 0.9.8f:
|
||||
|
||||
o Add gcc 4.2 support.
|
||||
o Add support for AES and SSE2 assembly lanugauge optimization
|
||||
for VC++ build.
|
||||
o Support for RFC4507bis and server name extensions if explicitly
|
||||
selected at compile time.
|
||||
o DTLS improvements.
|
||||
o RFC4507bis support.
|
||||
o TLS Extensions support.
|
||||
|
||||
Major changes between OpenSSL 0.9.8d and OpenSSL 0.9.8e:
|
||||
|
||||
o Various ciphersuite selection fixes.
|
||||
|
12
README
12
README
@@ -1,16 +1,10 @@
|
||||
|
||||
OpenSSL 0.9.8h-fips-dev test version
|
||||
OpenSSL 0.9.8j
|
||||
|
||||
Copyright (c) 1998-2007 The OpenSSL Project
|
||||
Copyright (c) 1998-2008 The OpenSSL Project
|
||||
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
|
||||
All rights reserved.
|
||||
|
||||
WARNING
|
||||
-------
|
||||
|
||||
This version of OpenSSL is a port of the FIPS 140-2 code to OpenSSL
|
||||
0.9.8. See the file README.FIPS for brief usage details.
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
@@ -167,7 +161,7 @@
|
||||
- Stack Traceback (if the application dumps core)
|
||||
|
||||
Report the bug to the OpenSSL project via the Request Tracker
|
||||
(http://www.openssl.org/support/rt2.html) by mail to:
|
||||
(http://www.openssl.org/support/rt.html) by mail to:
|
||||
|
||||
openssl-bugs@openssl.org
|
||||
|
||||
|
84
README.FIPS
84
README.FIPS
@@ -1,84 +0,0 @@
|
||||
Brief instructions on using OpenSSL 0.9.8 FIPS 140-2 test branch.
|
||||
|
||||
NOTE: this distribution is NOT FIPS140-2 validated. These instructions are
|
||||
intended for people who wish to test the OpenSSL FIPS 140-2 1.2 module. More
|
||||
complete instructions will be made available after validation.
|
||||
|
||||
1. Build from test tarball.
|
||||
|
||||
Download the OpenSSL test 1.2 source tree. The current version has the CVS tag
|
||||
FIPS_098_TEST_8 or can be downloaded from:
|
||||
|
||||
ftp://ftp.openssl.org/snapshot/openssl-fips-test-1.2.0.tar.gz
|
||||
|
||||
Ignore any instructions in that tree: they are likely to be out of date.
|
||||
|
||||
If you are using a Unix like environment run the following commands. You may
|
||||
NOT specify ANY other options at this stage.
|
||||
|
||||
./config fipscanisterbuild
|
||||
make
|
||||
make install
|
||||
|
||||
This will build and install the test 1.2 module and binaries under
|
||||
/usr/local/fips-1.0
|
||||
|
||||
For Windows you need VC++, perl and NASM installed. This is now a pure VC++
|
||||
build: no alternative compilers or tools are required. From a VC++ environment
|
||||
do:
|
||||
|
||||
ms\do_fips
|
||||
|
||||
It should report that the compile was successful.
|
||||
|
||||
This will compile binaries into the out32dll directory. They can be copied to
|
||||
a more convenient location.
|
||||
|
||||
2. Link test module to a more recent version of OpenSSL.
|
||||
|
||||
Once the test module has been installed it can be linked against a more recent
|
||||
version of OpenSSL. Currently only versions from the 0.9.8-fips stable branch
|
||||
can be used. It has the CVS tag OpenSSL-fips-0_9_8-stable daily snaphots can
|
||||
also be downloaded as:
|
||||
|
||||
ftp://ftp.openssl.org/snapshot/openssl-0.9.8-fips-test-SNAP-YYMMDD.tar.gz
|
||||
|
||||
For a Unix build the standrd build procedure is followed and the option "fips"
|
||||
is passed to either the config or Configure scripts. The fipscanisterbuild
|
||||
option MUST NOT be used. Any other options may be included. Static libraries
|
||||
can be built using the no-shared option.
|
||||
|
||||
For example:
|
||||
|
||||
./config fips
|
||||
|
||||
./config fips no-shared
|
||||
|
||||
For Windows builds the options "fips" and --with-fipslibdir=<path> are passed
|
||||
to the Configure script where <path> is wherever the module was installed
|
||||
For example:
|
||||
|
||||
perl Configure fips --with-fipslibdir=C:\some\path\fips
|
||||
|
||||
Then the build process continues in the normal way for example:
|
||||
|
||||
ms\do_nasm
|
||||
nmake -f ms\ntdll.mak
|
||||
|
||||
for DLLs or
|
||||
|
||||
ms\do_nasm
|
||||
nmake -f ms\nt.mak
|
||||
|
||||
for static builds.
|
||||
|
||||
3. Test new version of OpenSSL.
|
||||
|
||||
The new test FIPS enabled OpenSSL can now be tested in the usual way.
|
||||
|
||||
Additionally binary compatibility tests against OpenSSL 0.9.8x would be
|
||||
MOST welcomed. This will help avoid any major issues when the 0.9.8-fips
|
||||
branch is merged into 0.9.8 branch.
|
||||
|
||||
Any problems should be reported to the openssl-dev mailing list.
|
||||
|
9
STATUS
9
STATUS
@@ -1,10 +1,15 @@
|
||||
|
||||
OpenSSL STATUS Last modified at
|
||||
______________ $Date: 2007/02/23 12:12:27 $
|
||||
______________ $Date: 2009/01/07 10:50:54 $
|
||||
|
||||
DEVELOPMENT STATE
|
||||
|
||||
o OpenSSL 0.9.9: Under development...
|
||||
o OpenSSL 0.9.8j: Released on January 7th, 2009
|
||||
o OpenSSL 0.9.8i: Released on September 15th, 2008
|
||||
o OpenSSL 0.9.8h: Released on May 28th, 2008
|
||||
o OpenSSL 0.9.8g: Released on October 19th, 2007
|
||||
o OpenSSL 0.9.8f: Released on October 11th, 2007
|
||||
o OpenSSL 0.9.8e: Released on February 23rd, 2007
|
||||
o OpenSSL 0.9.8d: Released on September 28th, 2006
|
||||
o OpenSSL 0.9.8c: Released on September 5th, 2006
|
||||
@@ -47,7 +52,7 @@
|
||||
o OpenSSL 0.9.2b: Released on March 22th, 1999
|
||||
o OpenSSL 0.9.1c: Released on December 23th, 1998
|
||||
|
||||
[See also http://www.openssl.org/support/rt2.html]
|
||||
[See also http://www.openssl.org/support/rt.html]
|
||||
|
||||
RELEASE SHOWSTOPPERS
|
||||
|
||||
|
630
apps/Makefile
630
apps/Makefile
@@ -178,13 +178,14 @@ app_rand.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
app_rand.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
app_rand.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
app_rand.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
app_rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
app_rand.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
app_rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
app_rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
app_rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
app_rand.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
app_rand.o: ../include/openssl/x509_vfy.h app_rand.c apps.h
|
||||
app_rand.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
app_rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
app_rand.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
app_rand.o: ../include/openssl/rand.h ../include/openssl/safestack.h
|
||||
app_rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
app_rand.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
app_rand.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
app_rand.o: ../include/openssl/x509v3.h app_rand.c apps.h
|
||||
apps.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
apps.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
apps.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -193,15 +194,16 @@ apps.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
apps.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
apps.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
apps.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
apps.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
apps.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
apps.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
apps.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
|
||||
apps.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
apps.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
apps.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
apps.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
apps.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.c apps.h
|
||||
apps.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
apps.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
apps.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
apps.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
|
||||
apps.o: ../include/openssl/pkcs7.h ../include/openssl/rsa.h
|
||||
apps.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
apps.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
apps.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
apps.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
apps.o: ../include/openssl/x509v3.h apps.c apps.h
|
||||
asn1pars.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
asn1pars.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
asn1pars.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -210,13 +212,14 @@ asn1pars.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
asn1pars.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
asn1pars.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
asn1pars.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
asn1pars.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
asn1pars.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
asn1pars.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
asn1pars.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
asn1pars.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
asn1pars.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
asn1pars.o: ../include/openssl/x509_vfy.h apps.h asn1pars.c
|
||||
asn1pars.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
asn1pars.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
asn1pars.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
asn1pars.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
asn1pars.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
asn1pars.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
asn1pars.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
asn1pars.o: ../include/openssl/x509v3.h apps.h asn1pars.c
|
||||
ca.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
ca.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
ca.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -241,8 +244,9 @@ ciphers.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
ciphers.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
ciphers.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
ciphers.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
ciphers.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
ciphers.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
ciphers.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
ciphers.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
ciphers.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
ciphers.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
ciphers.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
ciphers.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -252,8 +256,22 @@ ciphers.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
ciphers.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
ciphers.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
ciphers.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
ciphers.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
ciphers.o: ciphers.c
|
||||
ciphers.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
ciphers.o: ../include/openssl/x509v3.h apps.h ciphers.c
|
||||
cms.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
cms.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
cms.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
cms.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
cms.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
cms.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
cms.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
cms.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
cms.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
cms.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
cms.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
cms.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
cms.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
cms.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h cms.c
|
||||
crl.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
crl.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
crl.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -262,13 +280,14 @@ crl.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
crl.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
crl.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
crl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
crl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
crl.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
crl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
crl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
crl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
crl.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
crl.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h crl.c
|
||||
crl.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
crl.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
crl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
crl.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
crl.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
crl.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
crl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
crl.o: ../include/openssl/x509v3.h apps.h crl.c
|
||||
crl2p7.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
crl2p7.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
crl2p7.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -277,13 +296,14 @@ crl2p7.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
crl2p7.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
crl2p7.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
crl2p7.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
crl2p7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
crl2p7.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
crl2p7.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
crl2p7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
crl2p7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
crl2p7.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
crl2p7.o: ../include/openssl/x509_vfy.h apps.h crl2p7.c
|
||||
crl2p7.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
crl2p7.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
crl2p7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
crl2p7.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
crl2p7.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
crl2p7.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
crl2p7.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
crl2p7.o: ../include/openssl/x509v3.h apps.h crl2p7.c
|
||||
dgst.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
dgst.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
dgst.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -292,13 +312,14 @@ dgst.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
dgst.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
dgst.o: ../include/openssl/fips.h ../include/openssl/hmac.h
|
||||
dgst.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
dgst.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
dgst.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
dgst.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
dgst.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
dgst.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
dgst.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
dgst.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h dgst.c
|
||||
dgst.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
dgst.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
dgst.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
dgst.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
dgst.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
dgst.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
dgst.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
dgst.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h dgst.c
|
||||
dh.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
dh.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
dh.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -308,13 +329,14 @@ dh.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
dh.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
dh.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
dh.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
dh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
dh.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
dh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
dh.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
dh.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
dh.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
dh.o: ../include/openssl/x509_vfy.h apps.h dh.c
|
||||
dh.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
dh.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
dh.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
dh.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
dh.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
dh.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
dh.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
dh.o: ../include/openssl/x509v3.h apps.h dh.c
|
||||
dsa.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
dsa.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
dsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -324,13 +346,14 @@ dsa.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
dsa.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
dsa.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
dsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
dsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
dsa.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
dsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
dsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
dsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
dsa.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
dsa.o: ../include/openssl/x509_vfy.h apps.h dsa.c
|
||||
dsa.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
dsa.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
dsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
dsa.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
dsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
dsa.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
dsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
dsa.o: ../include/openssl/x509v3.h apps.h dsa.c
|
||||
dsaparam.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
dsaparam.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
dsaparam.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -340,15 +363,16 @@ dsaparam.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
dsaparam.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
dsaparam.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
dsaparam.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
dsaparam.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
dsaparam.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
dsaparam.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
dsaparam.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
dsaparam.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
dsaparam.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
dsaparam.o: ../include/openssl/store.h ../include/openssl/symhacks.h
|
||||
dsaparam.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
dsaparam.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
dsaparam.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
dsaparam.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
dsaparam.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
dsaparam.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
dsaparam.o: ../include/openssl/rand.h ../include/openssl/rsa.h
|
||||
dsaparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
dsaparam.o: ../include/openssl/stack.h ../include/openssl/store.h
|
||||
dsaparam.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
dsaparam.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
dsaparam.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
dsaparam.o: dsaparam.c
|
||||
ec.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
ec.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
@@ -358,13 +382,14 @@ ec.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
ec.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
ec.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
ec.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
ec.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
ec.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
ec.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
ec.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
ec.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
ec.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
ec.o: ../include/openssl/x509_vfy.h apps.h ec.c
|
||||
ec.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
ec.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
ec.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
ec.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
ec.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
ec.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
ec.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
ec.o: ../include/openssl/x509v3.h apps.h ec.c
|
||||
ecparam.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
ecparam.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
ecparam.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -373,13 +398,14 @@ ecparam.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
ecparam.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
ecparam.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
ecparam.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
ecparam.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
ecparam.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
ecparam.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
ecparam.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
ecparam.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
ecparam.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
ecparam.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
ecparam.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
ecparam.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
ecparam.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
ecparam.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
ecparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
ecparam.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
ecparam.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
ecparam.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
ecparam.o: ecparam.c
|
||||
enc.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
enc.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
@@ -389,13 +415,14 @@ enc.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
enc.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
enc.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
enc.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
enc.o: ../include/openssl/rand.h ../include/openssl/safestack.h
|
||||
enc.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
enc.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
enc.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h enc.c
|
||||
enc.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
enc.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
enc.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
enc.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
enc.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
enc.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h enc.c
|
||||
engine.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
engine.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
engine.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -404,8 +431,9 @@ engine.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
engine.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
engine.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
engine.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
engine.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
engine.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
engine.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
engine.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
engine.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
engine.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
engine.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
engine.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -415,8 +443,8 @@ engine.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
engine.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
engine.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
engine.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
engine.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
engine.o: engine.c
|
||||
engine.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
engine.o: ../include/openssl/x509v3.h apps.h engine.c
|
||||
errstr.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
errstr.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
errstr.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -425,8 +453,9 @@ errstr.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
errstr.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
errstr.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
errstr.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
errstr.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
errstr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
errstr.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
errstr.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
errstr.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
errstr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
errstr.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
errstr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -436,8 +465,8 @@ errstr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
errstr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
errstr.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
errstr.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
errstr.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
errstr.o: errstr.c
|
||||
errstr.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
errstr.o: ../include/openssl/x509v3.h apps.h errstr.c
|
||||
gendh.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
gendh.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
gendh.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -447,15 +476,17 @@ gendh.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
gendh.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
gendh.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
gendh.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
gendh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
gendh.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
gendh.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
gendh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
gendh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
gendh.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
gendh.o: ../include/openssl/store.h ../include/openssl/symhacks.h
|
||||
gendh.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
gendh.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h gendh.c
|
||||
gendh.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
gendh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
gendh.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
gendh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
gendh.o: ../include/openssl/rand.h ../include/openssl/rsa.h
|
||||
gendh.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
gendh.o: ../include/openssl/stack.h ../include/openssl/store.h
|
||||
gendh.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
gendh.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
gendh.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
gendh.o: gendh.c
|
||||
gendsa.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
gendsa.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
gendsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -465,13 +496,14 @@ gendsa.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
gendsa.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
gendsa.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
gendsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
gendsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
gendsa.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
gendsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
gendsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
gendsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
gendsa.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
gendsa.o: ../include/openssl/x509_vfy.h apps.h gendsa.c
|
||||
gendsa.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
gendsa.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
gendsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
gendsa.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
gendsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
gendsa.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
gendsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
gendsa.o: ../include/openssl/x509v3.h apps.h gendsa.c
|
||||
genrsa.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
genrsa.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
genrsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -481,15 +513,16 @@ genrsa.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
genrsa.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
genrsa.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
genrsa.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
genrsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
genrsa.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
genrsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
genrsa.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
genrsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
genrsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
genrsa.o: ../include/openssl/store.h ../include/openssl/symhacks.h
|
||||
genrsa.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
genrsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
genrsa.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
genrsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
genrsa.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
genrsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
genrsa.o: ../include/openssl/rand.h ../include/openssl/rsa.h
|
||||
genrsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
genrsa.o: ../include/openssl/stack.h ../include/openssl/store.h
|
||||
genrsa.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
genrsa.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
genrsa.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
genrsa.o: genrsa.c
|
||||
nseq.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
nseq.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
@@ -499,13 +532,14 @@ nseq.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
nseq.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
nseq.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
nseq.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
nseq.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
nseq.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
nseq.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
nseq.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
nseq.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
nseq.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
nseq.o: ../include/openssl/x509_vfy.h apps.h nseq.c
|
||||
nseq.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
nseq.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
nseq.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
nseq.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
nseq.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
nseq.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
nseq.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
nseq.o: ../include/openssl/x509v3.h apps.h nseq.c
|
||||
ocsp.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
ocsp.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
ocsp.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -514,19 +548,20 @@ ocsp.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
ocsp.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
ocsp.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
ocsp.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
ocsp.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
ocsp.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
ocsp.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
ocsp.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
ocsp.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
ocsp.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
ocsp.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
ocsp.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
ocsp.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
ocsp.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
|
||||
ocsp.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
ocsp.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
ocsp.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h ocsp.c
|
||||
ocsp.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
ocsp.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
ocsp.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
ocsp.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
ocsp.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
ocsp.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
ocsp.o: ../include/openssl/pq_compat.h ../include/openssl/pqueue.h
|
||||
ocsp.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
ocsp.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
ocsp.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
ocsp.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
ocsp.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
ocsp.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
ocsp.o: ../include/openssl/x509v3.h apps.h ocsp.c
|
||||
openssl.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
openssl.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
openssl.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -535,8 +570,9 @@ openssl.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
openssl.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
openssl.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
openssl.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
openssl.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
openssl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
openssl.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
openssl.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
openssl.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
openssl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
openssl.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
openssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -546,8 +582,8 @@ openssl.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
openssl.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
openssl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
openssl.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
openssl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
openssl.o: openssl.c progs.h s_apps.h
|
||||
openssl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
openssl.o: ../include/openssl/x509v3.h apps.h openssl.c progs.h s_apps.h
|
||||
passwd.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
passwd.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
passwd.o: ../include/openssl/crypto.h ../include/openssl/des.h
|
||||
@@ -557,14 +593,15 @@ passwd.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
passwd.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
passwd.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
passwd.o: ../include/openssl/md5.h ../include/openssl/obj_mac.h
|
||||
passwd.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
passwd.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
passwd.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
passwd.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
passwd.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
passwd.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
passwd.o: ../include/openssl/ui_compat.h ../include/openssl/x509.h
|
||||
passwd.o: ../include/openssl/x509_vfy.h apps.h passwd.c
|
||||
passwd.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
passwd.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
passwd.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
passwd.o: ../include/openssl/rand.h ../include/openssl/safestack.h
|
||||
passwd.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
passwd.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
passwd.o: ../include/openssl/ui.h ../include/openssl/ui_compat.h
|
||||
passwd.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
passwd.o: ../include/openssl/x509v3.h apps.h passwd.c
|
||||
pkcs12.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
pkcs12.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
pkcs12.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -573,13 +610,14 @@ pkcs12.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
pkcs12.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
pkcs12.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
pkcs12.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
pkcs12.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
pkcs12.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
pkcs12.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
|
||||
pkcs12.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
pkcs12.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
pkcs12.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
pkcs12.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
pkcs12.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
pkcs12.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
pkcs12.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
pkcs12.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
|
||||
pkcs12.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
pkcs12.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
pkcs12.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
pkcs12.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
pkcs12.o: pkcs12.c
|
||||
pkcs7.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
pkcs7.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
@@ -589,13 +627,14 @@ pkcs7.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
pkcs7.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
pkcs7.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
pkcs7.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
pkcs7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
pkcs7.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
pkcs7.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
pkcs7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
pkcs7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
pkcs7.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
pkcs7.o: ../include/openssl/x509_vfy.h apps.h pkcs7.c
|
||||
pkcs7.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
pkcs7.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
pkcs7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
pkcs7.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
pkcs7.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
pkcs7.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
pkcs7.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
pkcs7.o: ../include/openssl/x509v3.h apps.h pkcs7.c
|
||||
pkcs8.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
pkcs8.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
pkcs8.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -604,13 +643,15 @@ pkcs8.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
pkcs8.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
pkcs8.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
pkcs8.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
pkcs8.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
pkcs8.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
pkcs8.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
|
||||
pkcs8.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
pkcs8.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
pkcs8.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
pkcs8.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h pkcs8.c
|
||||
pkcs8.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
pkcs8.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
pkcs8.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
pkcs8.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
|
||||
pkcs8.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
pkcs8.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
pkcs8.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
pkcs8.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
pkcs8.o: pkcs8.c
|
||||
prime.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
prime.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
prime.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -619,12 +660,13 @@ prime.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
prime.o: ../include/openssl/engine.h ../include/openssl/evp.h
|
||||
prime.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
prime.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
prime.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
prime.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
prime.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
prime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
prime.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
prime.o: ../include/openssl/x509_vfy.h apps.h prime.c
|
||||
prime.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
prime.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
prime.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
prime.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
prime.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
prime.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
prime.o: ../include/openssl/x509v3.h apps.h prime.c
|
||||
rand.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
rand.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
rand.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -633,12 +675,13 @@ rand.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
rand.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
rand.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
rand.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
rand.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
rand.o: ../include/openssl/rand.h ../include/openssl/safestack.h
|
||||
rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
rand.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
rand.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h rand.c
|
||||
rand.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
rand.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
rand.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
rand.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h rand.c
|
||||
req.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
req.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
req.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -648,16 +691,16 @@ req.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
req.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
req.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
req.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
req.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
req.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
req.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
req.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
req.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
req.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
req.o: ../include/openssl/store.h ../include/openssl/symhacks.h
|
||||
req.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
req.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
req.o: ../include/openssl/x509v3.h apps.h req.c
|
||||
req.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
req.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
req.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
req.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
req.o: ../include/openssl/rand.h ../include/openssl/rsa.h
|
||||
req.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
req.o: ../include/openssl/stack.h ../include/openssl/store.h
|
||||
req.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
req.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
req.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h req.c
|
||||
rsa.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
rsa.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
rsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -666,14 +709,15 @@ rsa.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
rsa.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
rsa.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
rsa.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
rsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
rsa.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
rsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
rsa.o: ../include/openssl/pkcs7.h ../include/openssl/rsa.h
|
||||
rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
rsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
rsa.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
rsa.o: ../include/openssl/x509_vfy.h apps.h rsa.c
|
||||
rsa.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
rsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
rsa.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
rsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
rsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
rsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
rsa.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
rsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
rsa.o: ../include/openssl/x509v3.h apps.h rsa.c
|
||||
rsautl.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
rsautl.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
rsautl.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -682,13 +726,14 @@ rsautl.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
rsautl.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
rsautl.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
rsautl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
rsautl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
rsautl.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
rsautl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
rsautl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
rsautl.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
rsautl.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
rsautl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
rsautl.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
rsautl.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
rsautl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
rsautl.o: ../include/openssl/pkcs7.h ../include/openssl/rsa.h
|
||||
rsautl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
rsautl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
rsautl.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
rsautl.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
rsautl.o: rsautl.c
|
||||
s_cb.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_cb.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
@@ -698,8 +743,9 @@ s_cb.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
s_cb.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
s_cb.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
s_cb.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
s_cb.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
s_cb.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_cb.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
s_cb.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_cb.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
s_cb.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
s_cb.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
s_cb.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -709,8 +755,8 @@ s_cb.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
s_cb.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
s_cb.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
s_cb.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
s_cb.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h s_apps.h
|
||||
s_cb.o: s_cb.c
|
||||
s_cb.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
s_cb.o: ../include/openssl/x509v3.h apps.h s_apps.h s_cb.c
|
||||
s_client.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_client.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_client.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -719,8 +765,9 @@ s_client.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
s_client.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
s_client.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
s_client.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
s_client.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
s_client.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_client.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
s_client.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_client.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
s_client.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
s_client.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
s_client.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -731,7 +778,8 @@ s_client.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
s_client.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
|
||||
s_client.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
s_client.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
s_client.o: ../include/openssl/x509_vfy.h apps.h s_apps.h s_client.c timeouts.h
|
||||
s_client.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
s_client.o: s_apps.h s_client.c timeouts.h
|
||||
s_server.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_server.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_server.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -741,8 +789,9 @@ s_server.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
s_server.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
s_server.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
s_server.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
s_server.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
s_server.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_server.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
s_server.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_server.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
s_server.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
s_server.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
s_server.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -754,8 +803,8 @@ s_server.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
s_server.o: ../include/openssl/stack.h ../include/openssl/store.h
|
||||
s_server.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
s_server.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
s_server.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
s_server.o: s_apps.h s_server.c timeouts.h
|
||||
s_server.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
s_server.o: ../include/openssl/x509v3.h apps.h s_apps.h s_server.c timeouts.h
|
||||
s_socket.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_socket.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_socket.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -763,9 +812,10 @@ s_socket.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
s_socket.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
s_socket.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
s_socket.o: ../include/openssl/engine.h ../include/openssl/evp.h
|
||||
s_socket.o: ../include/openssl/fips.h ../include/openssl/kssl.h
|
||||
s_socket.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_socket.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
s_socket.o: ../include/openssl/fips.h ../include/openssl/hmac.h
|
||||
s_socket.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
s_socket.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_socket.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
s_socket.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
s_socket.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
s_socket.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
@@ -775,7 +825,8 @@ s_socket.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
s_socket.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
|
||||
s_socket.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
s_socket.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
s_socket.o: ../include/openssl/x509_vfy.h apps.h s_apps.h s_socket.c
|
||||
s_socket.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
s_socket.o: s_apps.h s_socket.c
|
||||
s_time.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_time.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_time.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -784,8 +835,9 @@ s_time.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
s_time.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
s_time.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
s_time.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
s_time.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
s_time.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_time.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
s_time.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_time.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
s_time.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
s_time.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
s_time.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -795,8 +847,8 @@ s_time.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
s_time.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
s_time.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
s_time.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
s_time.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
s_time.o: s_apps.h s_time.c
|
||||
s_time.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
s_time.o: ../include/openssl/x509v3.h apps.h s_apps.h s_time.c
|
||||
sess_id.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
sess_id.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
sess_id.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
@@ -805,8 +857,9 @@ sess_id.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
sess_id.o: ../include/openssl/ecdh.h ../include/openssl/ecdsa.h
|
||||
sess_id.o: ../include/openssl/engine.h ../include/openssl/err.h
|
||||
sess_id.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
sess_id.o: ../include/openssl/kssl.h ../include/openssl/lhash.h
|
||||
sess_id.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
sess_id.o: ../include/openssl/hmac.h ../include/openssl/kssl.h
|
||||
sess_id.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
sess_id.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
sess_id.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
sess_id.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
sess_id.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
@@ -816,8 +869,8 @@ sess_id.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
sess_id.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
sess_id.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
sess_id.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
sess_id.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
|
||||
sess_id.o: sess_id.c
|
||||
sess_id.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
sess_id.o: ../include/openssl/x509v3.h apps.h sess_id.c
|
||||
smime.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
smime.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
smime.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -826,14 +879,14 @@ smime.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
smime.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
smime.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
smime.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
smime.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
smime.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
smime.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
smime.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
smime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
smime.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
smime.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
smime.o: smime.c
|
||||
smime.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
smime.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
smime.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
smime.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
smime.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
smime.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
smime.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
smime.o: ../include/openssl/x509v3.h apps.h smime.c
|
||||
speed.o: ../e_os.h ../include/openssl/aes.h ../include/openssl/asn1.h
|
||||
speed.o: ../include/openssl/bio.h ../include/openssl/blowfish.h
|
||||
speed.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
@@ -848,16 +901,17 @@ speed.o: ../include/openssl/hmac.h ../include/openssl/idea.h
|
||||
speed.o: ../include/openssl/lhash.h ../include/openssl/md2.h
|
||||
speed.o: ../include/openssl/md4.h ../include/openssl/md5.h
|
||||
speed.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
speed.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
speed.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
speed.o: ../include/openssl/rand.h ../include/openssl/rc2.h
|
||||
speed.o: ../include/openssl/rc4.h ../include/openssl/ripemd.h
|
||||
speed.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
speed.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
speed.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
speed.o: ../include/openssl/ui.h ../include/openssl/ui_compat.h
|
||||
speed.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h speed.c
|
||||
speed.o: testdsa.h testrsa.h
|
||||
speed.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
speed.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
speed.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
|
||||
speed.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
|
||||
speed.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
|
||||
speed.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
speed.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
speed.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
speed.o: ../include/openssl/ui_compat.h ../include/openssl/x509.h
|
||||
speed.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
speed.o: speed.c testdsa.h testrsa.h
|
||||
spkac.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
spkac.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
spkac.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -866,13 +920,14 @@ spkac.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
spkac.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
spkac.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
spkac.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
spkac.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
spkac.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
spkac.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
spkac.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
spkac.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
spkac.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
spkac.o: ../include/openssl/x509_vfy.h apps.h spkac.c
|
||||
spkac.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
spkac.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
spkac.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
spkac.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
spkac.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
spkac.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
spkac.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
spkac.o: ../include/openssl/x509v3.h apps.h spkac.c
|
||||
verify.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
verify.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
verify.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
|
||||
@@ -881,14 +936,14 @@ verify.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
verify.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
verify.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
verify.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
verify.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
verify.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
verify.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
verify.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
verify.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
verify.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
verify.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h
|
||||
verify.o: verify.c
|
||||
verify.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
verify.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
verify.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
verify.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
|
||||
verify.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
verify.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
verify.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
verify.o: ../include/openssl/x509v3.h apps.h verify.c
|
||||
version.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
version.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
|
||||
version.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
@@ -899,14 +954,15 @@ version.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
version.o: ../include/openssl/evp.h ../include/openssl/fips.h
|
||||
version.o: ../include/openssl/idea.h ../include/openssl/lhash.h
|
||||
version.o: ../include/openssl/md2.h ../include/openssl/obj_mac.h
|
||||
version.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
version.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
version.o: ../include/openssl/pkcs7.h ../include/openssl/rc4.h
|
||||
version.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
version.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
version.o: ../include/openssl/txt_db.h ../include/openssl/ui.h
|
||||
version.o: ../include/openssl/ui_compat.h ../include/openssl/x509.h
|
||||
version.o: ../include/openssl/x509_vfy.h apps.h version.c
|
||||
version.o: ../include/openssl/objects.h ../include/openssl/ocsp.h
|
||||
version.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
version.o: ../include/openssl/ossl_typ.h ../include/openssl/pkcs7.h
|
||||
version.o: ../include/openssl/rc4.h ../include/openssl/safestack.h
|
||||
version.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
version.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
version.o: ../include/openssl/ui.h ../include/openssl/ui_compat.h
|
||||
version.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
version.o: ../include/openssl/x509v3.h apps.h version.c
|
||||
x509.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
x509.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
x509.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
@@ -916,11 +972,11 @@ x509.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
x509.o: ../include/openssl/err.h ../include/openssl/evp.h
|
||||
x509.o: ../include/openssl/fips.h ../include/openssl/lhash.h
|
||||
x509.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
x509.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
x509.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
x509.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
x509.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
x509.o: ../include/openssl/sha.h ../include/openssl/stack.h
|
||||
x509.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
x509.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
x509.o: ../include/openssl/x509v3.h apps.h x509.c
|
||||
x509.o: ../include/openssl/ocsp.h ../include/openssl/opensslconf.h
|
||||
x509.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
x509.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
x509.o: ../include/openssl/pkcs7.h ../include/openssl/rsa.h
|
||||
x509.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
x509.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
|
||||
x509.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
x509.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h apps.h x509.c
|
||||
|
234
apps/apps.c
234
apps/apps.c
@@ -115,6 +115,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <ctype.h>
|
||||
#include <assert.h>
|
||||
#include <openssl/err.h>
|
||||
#include <openssl/x509.h>
|
||||
#include <openssl/x509v3.h>
|
||||
@@ -129,6 +130,9 @@
|
||||
#include <openssl/rsa.h>
|
||||
#endif
|
||||
#include <openssl/bn.h>
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
#include <openssl/jpake.h>
|
||||
#endif
|
||||
|
||||
#define NON_MAIN
|
||||
#include "apps.h"
|
||||
@@ -2333,3 +2337,233 @@ void policies_print(BIO *out, X509_STORE_CTX *ctx)
|
||||
if (free_out)
|
||||
BIO_free(out);
|
||||
}
|
||||
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
|
||||
static JPAKE_CTX *jpake_init(const char *us, const char *them,
|
||||
const char *secret)
|
||||
{
|
||||
BIGNUM *p = NULL;
|
||||
BIGNUM *g = NULL;
|
||||
BIGNUM *q = NULL;
|
||||
BIGNUM *bnsecret = BN_new();
|
||||
JPAKE_CTX *ctx;
|
||||
|
||||
/* Use a safe prime for p (that we found earlier) */
|
||||
BN_hex2bn(&p, "F9E5B365665EA7A05A9C534502780FEE6F1AB5BD4F49947FD036DBD7E905269AF46EF28B0FC07487EE4F5D20FB3C0AF8E700F3A2FA3414970CBED44FEDFF80CE78D800F184BB82435D137AADA2C6C16523247930A63B85661D1FC817A51ACD96168E95898A1F83A79FFB529368AA7833ABD1B0C3AEDDB14D2E1A2F71D99F763F");
|
||||
g = BN_new();
|
||||
BN_set_word(g, 2);
|
||||
q = BN_new();
|
||||
BN_rshift1(q, p);
|
||||
|
||||
BN_bin2bn((const unsigned char *)secret, strlen(secret), bnsecret);
|
||||
|
||||
ctx = JPAKE_CTX_new(us, them, p, g, q, bnsecret);
|
||||
BN_free(bnsecret);
|
||||
BN_free(q);
|
||||
BN_free(g);
|
||||
BN_free(p);
|
||||
|
||||
return ctx;
|
||||
}
|
||||
|
||||
static void jpake_send_part(BIO *conn, const JPAKE_STEP_PART *p)
|
||||
{
|
||||
BN_print(conn, p->gx);
|
||||
BIO_puts(conn, "\n");
|
||||
BN_print(conn, p->zkpx.gr);
|
||||
BIO_puts(conn, "\n");
|
||||
BN_print(conn, p->zkpx.b);
|
||||
BIO_puts(conn, "\n");
|
||||
}
|
||||
|
||||
static void jpake_send_step1(BIO *bconn, JPAKE_CTX *ctx)
|
||||
{
|
||||
JPAKE_STEP1 s1;
|
||||
|
||||
JPAKE_STEP1_init(&s1);
|
||||
JPAKE_STEP1_generate(&s1, ctx);
|
||||
jpake_send_part(bconn, &s1.p1);
|
||||
jpake_send_part(bconn, &s1.p2);
|
||||
(void)BIO_flush(bconn);
|
||||
JPAKE_STEP1_release(&s1);
|
||||
}
|
||||
|
||||
static void jpake_send_step2(BIO *bconn, JPAKE_CTX *ctx)
|
||||
{
|
||||
JPAKE_STEP2 s2;
|
||||
|
||||
JPAKE_STEP2_init(&s2);
|
||||
JPAKE_STEP2_generate(&s2, ctx);
|
||||
jpake_send_part(bconn, &s2);
|
||||
(void)BIO_flush(bconn);
|
||||
JPAKE_STEP2_release(&s2);
|
||||
}
|
||||
|
||||
static void jpake_send_step3a(BIO *bconn, JPAKE_CTX *ctx)
|
||||
{
|
||||
JPAKE_STEP3A s3a;
|
||||
|
||||
JPAKE_STEP3A_init(&s3a);
|
||||
JPAKE_STEP3A_generate(&s3a, ctx);
|
||||
BIO_write(bconn, s3a.hhk, sizeof s3a.hhk);
|
||||
(void)BIO_flush(bconn);
|
||||
JPAKE_STEP3A_release(&s3a);
|
||||
}
|
||||
|
||||
static void jpake_send_step3b(BIO *bconn, JPAKE_CTX *ctx)
|
||||
{
|
||||
JPAKE_STEP3B s3b;
|
||||
|
||||
JPAKE_STEP3B_init(&s3b);
|
||||
JPAKE_STEP3B_generate(&s3b, ctx);
|
||||
BIO_write(bconn, s3b.hk, sizeof s3b.hk);
|
||||
(void)BIO_flush(bconn);
|
||||
JPAKE_STEP3B_release(&s3b);
|
||||
}
|
||||
|
||||
static void readbn(BIGNUM **bn, BIO *bconn)
|
||||
{
|
||||
char buf[10240];
|
||||
int l;
|
||||
|
||||
l = BIO_gets(bconn, buf, sizeof buf);
|
||||
assert(l >= 0);
|
||||
assert(buf[l-1] == '\n');
|
||||
buf[l-1] = '\0';
|
||||
BN_hex2bn(bn, buf);
|
||||
}
|
||||
|
||||
static void jpake_receive_part(JPAKE_STEP_PART *p, BIO *bconn)
|
||||
{
|
||||
readbn(&p->gx, bconn);
|
||||
readbn(&p->zkpx.gr, bconn);
|
||||
readbn(&p->zkpx.b, bconn);
|
||||
}
|
||||
|
||||
static void jpake_receive_step1(JPAKE_CTX *ctx, BIO *bconn)
|
||||
{
|
||||
JPAKE_STEP1 s1;
|
||||
|
||||
JPAKE_STEP1_init(&s1);
|
||||
jpake_receive_part(&s1.p1, bconn);
|
||||
jpake_receive_part(&s1.p2, bconn);
|
||||
if(!JPAKE_STEP1_process(ctx, &s1))
|
||||
{
|
||||
ERR_print_errors(bio_err);
|
||||
exit(1);
|
||||
}
|
||||
JPAKE_STEP1_release(&s1);
|
||||
}
|
||||
|
||||
static void jpake_receive_step2(JPAKE_CTX *ctx, BIO *bconn)
|
||||
{
|
||||
JPAKE_STEP2 s2;
|
||||
|
||||
JPAKE_STEP2_init(&s2);
|
||||
jpake_receive_part(&s2, bconn);
|
||||
if(!JPAKE_STEP2_process(ctx, &s2))
|
||||
{
|
||||
ERR_print_errors(bio_err);
|
||||
exit(1);
|
||||
}
|
||||
JPAKE_STEP2_release(&s2);
|
||||
}
|
||||
|
||||
static void jpake_receive_step3a(JPAKE_CTX *ctx, BIO *bconn)
|
||||
{
|
||||
JPAKE_STEP3A s3a;
|
||||
int l;
|
||||
|
||||
JPAKE_STEP3A_init(&s3a);
|
||||
l = BIO_read(bconn, s3a.hhk, sizeof s3a.hhk);
|
||||
assert(l == sizeof s3a.hhk);
|
||||
if(!JPAKE_STEP3A_process(ctx, &s3a))
|
||||
{
|
||||
ERR_print_errors(bio_err);
|
||||
exit(1);
|
||||
}
|
||||
JPAKE_STEP3A_release(&s3a);
|
||||
}
|
||||
|
||||
static void jpake_receive_step3b(JPAKE_CTX *ctx, BIO *bconn)
|
||||
{
|
||||
JPAKE_STEP3B s3b;
|
||||
int l;
|
||||
|
||||
JPAKE_STEP3B_init(&s3b);
|
||||
l = BIO_read(bconn, s3b.hk, sizeof s3b.hk);
|
||||
assert(l == sizeof s3b.hk);
|
||||
if(!JPAKE_STEP3B_process(ctx, &s3b))
|
||||
{
|
||||
ERR_print_errors(bio_err);
|
||||
exit(1);
|
||||
}
|
||||
JPAKE_STEP3B_release(&s3b);
|
||||
}
|
||||
|
||||
void jpake_client_auth(BIO *out, BIO *conn, const char *secret)
|
||||
{
|
||||
JPAKE_CTX *ctx;
|
||||
BIO *bconn;
|
||||
|
||||
BIO_puts(out, "Authenticating with JPAKE\n");
|
||||
|
||||
ctx = jpake_init("client", "server", secret);
|
||||
|
||||
bconn = BIO_new(BIO_f_buffer());
|
||||
BIO_push(bconn, conn);
|
||||
|
||||
jpake_send_step1(bconn, ctx);
|
||||
jpake_receive_step1(ctx, bconn);
|
||||
jpake_send_step2(bconn, ctx);
|
||||
jpake_receive_step2(ctx, bconn);
|
||||
jpake_send_step3a(bconn, ctx);
|
||||
jpake_receive_step3b(ctx, bconn);
|
||||
|
||||
/*
|
||||
* The problem is that you must use the derived key in the
|
||||
* session key or you are subject to man-in-the-middle
|
||||
* attacks.
|
||||
*/
|
||||
BIO_puts(out, "JPAKE authentication succeeded (N.B. This version can"
|
||||
" be MitMed. See the version in HEAD for how to do it"
|
||||
" properly)\n");
|
||||
|
||||
BIO_pop(bconn);
|
||||
BIO_free(bconn);
|
||||
}
|
||||
|
||||
void jpake_server_auth(BIO *out, BIO *conn, const char *secret)
|
||||
{
|
||||
JPAKE_CTX *ctx;
|
||||
BIO *bconn;
|
||||
|
||||
BIO_puts(out, "Authenticating with JPAKE\n");
|
||||
|
||||
ctx = jpake_init("server", "client", secret);
|
||||
|
||||
bconn = BIO_new(BIO_f_buffer());
|
||||
BIO_push(bconn, conn);
|
||||
|
||||
jpake_receive_step1(ctx, bconn);
|
||||
jpake_send_step1(bconn, ctx);
|
||||
jpake_receive_step2(ctx, bconn);
|
||||
jpake_send_step2(bconn, ctx);
|
||||
jpake_receive_step3a(ctx, bconn);
|
||||
jpake_send_step3b(bconn, ctx);
|
||||
|
||||
/*
|
||||
* The problem is that you must use the derived key in the
|
||||
* session key or you are subject to man-in-the-middle
|
||||
* attacks.
|
||||
*/
|
||||
BIO_puts(out, "JPAKE authentication succeeded (N.B. This version can"
|
||||
" be MitMed. See the version in HEAD for how to do it"
|
||||
" properly)\n");
|
||||
|
||||
BIO_pop(bconn);
|
||||
BIO_free(bconn);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -338,6 +338,10 @@ X509_NAME *parse_name(char *str, long chtype, int multirdn);
|
||||
int args_verify(char ***pargs, int *pargc,
|
||||
int *badarg, BIO *err, X509_VERIFY_PARAM **pm);
|
||||
void policies_print(BIO *out, X509_STORE_CTX *ctx);
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
void jpake_client_auth(BIO *out, BIO *conn, const char *secret);
|
||||
void jpake_server_auth(BIO *out, BIO *conn, const char *secret);
|
||||
#endif
|
||||
|
||||
#define FORMAT_UNDEF 0
|
||||
#define FORMAT_ASN1 1
|
||||
|
@@ -56,7 +56,7 @@
|
||||
* [including the GNU Public Licence.]
|
||||
*/
|
||||
|
||||
/* A nice addition from Dr Stephen Henson <shenson@bigfoot.com> to
|
||||
/* A nice addition from Dr Stephen Henson <steve@openssl.org> to
|
||||
* add the -strparse option which parses nested binary structures
|
||||
*/
|
||||
|
||||
|
21
apps/crl.c
21
apps/crl.c
@@ -85,6 +85,7 @@ static const char *crl_usage[]={
|
||||
" -issuer - print issuer DN\n",
|
||||
" -lastupdate - lastUpdate field\n",
|
||||
" -nextupdate - nextUpdate field\n",
|
||||
" -crlnumber - print CRL number\n",
|
||||
" -noout - no CRL output\n",
|
||||
" -CAfile name - verify CRL using certificates in file \"name\"\n",
|
||||
" -CApath dir - verify CRL using certificates in \"dir\"\n",
|
||||
@@ -107,7 +108,7 @@ int MAIN(int argc, char **argv)
|
||||
int informat,outformat;
|
||||
char *infile=NULL,*outfile=NULL;
|
||||
int hash=0,issuer=0,lastupdate=0,nextupdate=0,noout=0,text=0;
|
||||
int fingerprint = 0;
|
||||
int fingerprint = 0, crlnumber = 0;
|
||||
const char **pp;
|
||||
X509_STORE *store = NULL;
|
||||
X509_STORE_CTX ctx;
|
||||
@@ -206,6 +207,8 @@ int MAIN(int argc, char **argv)
|
||||
noout= ++num;
|
||||
else if (strcmp(*argv,"-fingerprint") == 0)
|
||||
fingerprint= ++num;
|
||||
else if (strcmp(*argv,"-crlnumber") == 0)
|
||||
crlnumber= ++num;
|
||||
else if ((md_alg=EVP_get_digestbyname(*argv + 1)))
|
||||
{
|
||||
/* ok */
|
||||
@@ -281,7 +284,21 @@ bad:
|
||||
{
|
||||
print_name(bio_out, "issuer=", X509_CRL_get_issuer(x), nmflag);
|
||||
}
|
||||
|
||||
if (crlnumber == i)
|
||||
{
|
||||
ASN1_INTEGER *crlnum;
|
||||
crlnum = X509_CRL_get_ext_d2i(x, NID_crl_number,
|
||||
NULL, NULL);
|
||||
BIO_printf(bio_out,"crlNumber=");
|
||||
if (crlnum)
|
||||
{
|
||||
i2a_ASN1_INTEGER(bio_out, crlnum);
|
||||
ASN1_INTEGER_free(crlnum);
|
||||
}
|
||||
else
|
||||
BIO_puts(bio_out, "<NONE>");
|
||||
BIO_printf(bio_out,"\n");
|
||||
}
|
||||
if (hash == i)
|
||||
{
|
||||
BIO_printf(bio_out,"%08lx\n",
|
||||
|
@@ -84,7 +84,7 @@ int MAIN(int argc, char **argv)
|
||||
{
|
||||
ENGINE *e = NULL;
|
||||
unsigned char *buf=NULL;
|
||||
int i,err=0;
|
||||
int i,err=1;
|
||||
const EVP_MD *md=NULL,*m;
|
||||
BIO *in=NULL,*inp;
|
||||
BIO *bmd=NULL;
|
||||
@@ -415,6 +415,7 @@ ERR_load_crypto_strings();
|
||||
else
|
||||
{
|
||||
name=OBJ_nid2sn(md->type);
|
||||
err = 0;
|
||||
for (i=0; i<argc; i++)
|
||||
{
|
||||
char *tmp,*tofree=NULL;
|
||||
|
@@ -96,9 +96,7 @@ int MAIN(int, char **);
|
||||
|
||||
int MAIN(int argc, char **argv)
|
||||
{
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
ENGINE *e = NULL;
|
||||
#endif
|
||||
int ret=1;
|
||||
DSA *dsa=NULL;
|
||||
int i,badops=0;
|
||||
|
@@ -56,7 +56,6 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@@ -66,6 +65,7 @@
|
||||
#endif
|
||||
#include "apps.h"
|
||||
#include <openssl/err.h>
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
#include <openssl/engine.h>
|
||||
#include <openssl/ssl.h>
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* nseq.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* ocsp.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -8,8 +8,9 @@
|
||||
HOME = .
|
||||
RANDFILE = $ENV::HOME/.rnd
|
||||
|
||||
# Uncomment out to enable OpenSSL configuration see config(3)
|
||||
# openssl_conf = openssl_init
|
||||
# Extra OBJECT IDENTIFIER info:
|
||||
#oid_file = $ENV::HOME/.oid
|
||||
oid_section = new_oids
|
||||
|
||||
# To use this configuration file with the "-extfile" option of the
|
||||
# "openssl x509" utility, name here the section containing the
|
||||
@@ -18,22 +19,13 @@ RANDFILE = $ENV::HOME/.rnd
|
||||
# (Alternatively, use a configuration file that has only
|
||||
# X.509v3 extensions in its main [= default] section.)
|
||||
|
||||
[openssl_init]
|
||||
# Extra OBJECT IDENTIFIER info:
|
||||
oid_section = new_oids
|
||||
alg_section = algs
|
||||
|
||||
[ new_oids ]
|
||||
|
||||
# We can add new OIDs in here for use by any config aware application
|
||||
# We can add new OIDs in here for use by 'ca' and 'req'.
|
||||
# Add a simple OID like this:
|
||||
# shortname=Long Object Identifier Name, 1.2.3.4
|
||||
# testoid1=1.2.3.4
|
||||
# Or use config file substitution like this:
|
||||
# testoid2=OID2 LONG NAME, ${testoid1}.5.6, OTHER OID
|
||||
|
||||
[ algs ]
|
||||
# Algorithm configuration options. Currently just fips_mode
|
||||
fips_mode = no
|
||||
# testoid2=${testoid1}.5.6
|
||||
|
||||
####################################################################
|
||||
[ ca ]
|
||||
|
@@ -8,8 +8,9 @@
|
||||
HOME = .
|
||||
RANDFILE = $ENV::HOME/.rnd
|
||||
|
||||
# Uncomment out to enable OpenSSL configuration see config(3)
|
||||
# openssl_conf = openssl_init
|
||||
# Extra OBJECT IDENTIFIER info:
|
||||
#oid_file = $ENV::HOME/.oid
|
||||
oid_section = new_oids
|
||||
|
||||
# To use this configuration file with the "-extfile" option of the
|
||||
# "openssl x509" utility, name here the section containing the
|
||||
@@ -18,22 +19,13 @@ RANDFILE = $ENV::HOME/.rnd
|
||||
# (Alternatively, use a configuration file that has only
|
||||
# X.509v3 extensions in its main [= default] section.)
|
||||
|
||||
[openssl_init]
|
||||
# Extra OBJECT IDENTIFIER info:
|
||||
oid_section = new_oids
|
||||
alg_section = algs
|
||||
|
||||
[ new_oids ]
|
||||
|
||||
# We can add new OIDs in here for use by any config aware application
|
||||
# We can add new OIDs in here for use by 'ca' and 'req'.
|
||||
# Add a simple OID like this:
|
||||
# shortname=Long Object Identifier Name, 1.2.3.4
|
||||
# testoid1=1.2.3.4
|
||||
# Or use config file substitution like this:
|
||||
# testoid2=OID2 LONG NAME, ${testoid1}.5.6, OTHER OID
|
||||
|
||||
[ algs ]
|
||||
# Algorithm configuration options. Currently just fips_mode
|
||||
fips_mode = no
|
||||
# testoid2=${testoid1}.5.6
|
||||
|
||||
####################################################################
|
||||
[ ca ]
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* pkcs12.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* pkcs8.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999-2004.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* rsautl.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -221,6 +221,7 @@ static void sc_usage(void)
|
||||
BIO_printf(bio_err," -crlf - convert LF from terminal into CRLF\n");
|
||||
BIO_printf(bio_err," -quiet - no s_client output\n");
|
||||
BIO_printf(bio_err," -ign_eof - ignore input eof (default when -quiet)\n");
|
||||
BIO_printf(bio_err," -no_ign_eof - don't ignore input eof\n");
|
||||
BIO_printf(bio_err," -ssl2 - just use SSLv2\n");
|
||||
BIO_printf(bio_err," -ssl3 - just use SSLv3\n");
|
||||
BIO_printf(bio_err," -tls1 - just use TLSv1\n");
|
||||
@@ -234,7 +235,8 @@ static void sc_usage(void)
|
||||
BIO_printf(bio_err," -starttls prot - use the STARTTLS command before starting TLS\n");
|
||||
BIO_printf(bio_err," for those protocols that support it, where\n");
|
||||
BIO_printf(bio_err," 'prot' defines which one to assume. Currently,\n");
|
||||
BIO_printf(bio_err," only \"smtp\", \"pop3\", \"imap\", and \"ftp\" are supported.\n");
|
||||
BIO_printf(bio_err," only \"smtp\", \"pop3\", \"imap\", \"ftp\" and \"xmpp\"\n");
|
||||
BIO_printf(bio_err," are supported.\n");
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
BIO_printf(bio_err," -engine id - Initialise and use the specified engine\n");
|
||||
#endif
|
||||
@@ -276,7 +278,8 @@ enum
|
||||
PROTO_SMTP,
|
||||
PROTO_POP3,
|
||||
PROTO_IMAP,
|
||||
PROTO_FTP
|
||||
PROTO_FTP,
|
||||
PROTO_XMPP
|
||||
};
|
||||
|
||||
int MAIN(int, char **);
|
||||
@@ -318,8 +321,9 @@ int MAIN(int argc, char **argv)
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
char *engine_id=NULL;
|
||||
char *ssl_client_engine_id=NULL;
|
||||
ENGINE *e=NULL, *ssl_client_engine=NULL;
|
||||
ENGINE *ssl_client_engine=NULL;
|
||||
#endif
|
||||
ENGINE *e=NULL;
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) || defined(OPENSSL_SYS_NETWARE)
|
||||
struct timeval tv;
|
||||
#endif
|
||||
@@ -335,6 +339,9 @@ int MAIN(int argc, char **argv)
|
||||
int peerlen = sizeof(peer);
|
||||
int enable_timeouts = 0 ;
|
||||
long mtu = 0;
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
char *jpake_secret = NULL;
|
||||
#endif
|
||||
|
||||
#if !defined(OPENSSL_NO_SSL2) && !defined(OPENSSL_NO_SSL3)
|
||||
meth=SSLv23_client_method();
|
||||
@@ -435,6 +442,8 @@ int MAIN(int argc, char **argv)
|
||||
}
|
||||
else if (strcmp(*argv,"-ign_eof") == 0)
|
||||
c_ign_eof=1;
|
||||
else if (strcmp(*argv,"-no_ign_eof") == 0)
|
||||
c_ign_eof=0;
|
||||
else if (strcmp(*argv,"-pause") == 0)
|
||||
c_Pause=1;
|
||||
else if (strcmp(*argv,"-debug") == 0)
|
||||
@@ -547,6 +556,8 @@ int MAIN(int argc, char **argv)
|
||||
starttls_proto = PROTO_IMAP;
|
||||
else if (strcmp(*argv,"ftp") == 0)
|
||||
starttls_proto = PROTO_FTP;
|
||||
else if (strcmp(*argv, "xmpp") == 0)
|
||||
starttls_proto = PROTO_XMPP;
|
||||
else
|
||||
goto bad;
|
||||
}
|
||||
@@ -574,6 +585,13 @@ int MAIN(int argc, char **argv)
|
||||
servername= *(++argv);
|
||||
/* meth=TLSv1_client_method(); */
|
||||
}
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
else if (strcmp(*argv,"-jpake") == 0)
|
||||
{
|
||||
if (--argc < 1) goto bad;
|
||||
jpake_secret = *++argv;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
@@ -837,8 +855,6 @@ re_start:
|
||||
else
|
||||
sbio=BIO_new_socket(s,BIO_NOCLOSE);
|
||||
|
||||
|
||||
|
||||
if (nbio_test)
|
||||
{
|
||||
BIO *test;
|
||||
@@ -882,6 +898,10 @@ SSL_set_tlsext_status_ids(con, ids);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
if (jpake_secret)
|
||||
jpake_client_auth(bio_c_out, sbio, jpake_secret);
|
||||
#endif
|
||||
|
||||
SSL_set_bio(con,sbio,sbio);
|
||||
SSL_set_connect_state(con);
|
||||
@@ -988,6 +1008,28 @@ SSL_set_tlsext_status_ids(con, ids);
|
||||
BIO_printf(sbio,"AUTH TLS\r\n");
|
||||
BIO_read(sbio,sbuf,BUFSIZZ);
|
||||
}
|
||||
if (starttls_proto == PROTO_XMPP)
|
||||
{
|
||||
int seen = 0;
|
||||
BIO_printf(sbio,"<stream:stream "
|
||||
"xmlns:stream='http://etherx.jabber.org/streams' "
|
||||
"xmlns='jabber:client' to='%s' version='1.0'>", host);
|
||||
seen = BIO_read(sbio,mbuf,BUFSIZZ);
|
||||
mbuf[seen] = 0;
|
||||
while (!strstr(mbuf, "<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'"))
|
||||
{
|
||||
if (strstr(mbuf, "/stream:features>"))
|
||||
goto shut;
|
||||
seen = BIO_read(sbio,mbuf,BUFSIZZ);
|
||||
mbuf[seen] = 0;
|
||||
}
|
||||
BIO_printf(sbio, "<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>");
|
||||
seen = BIO_read(sbio,sbuf,BUFSIZZ);
|
||||
sbuf[seen] = 0;
|
||||
if (!strstr(sbuf, "<proceed"))
|
||||
goto shut;
|
||||
mbuf[0] = 0;
|
||||
}
|
||||
|
||||
for (;;)
|
||||
{
|
||||
|
@@ -742,6 +742,10 @@ BIO_printf(err, "cert_status: received %d ids\n", sk_OCSP_RESPID_num(ids));
|
||||
#endif
|
||||
int MAIN(int, char **);
|
||||
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
static char *jpake_secret = NULL;
|
||||
#endif
|
||||
|
||||
int MAIN(int argc, char *argv[])
|
||||
{
|
||||
X509_STORE *store = NULL;
|
||||
@@ -760,9 +764,7 @@ int MAIN(int argc, char *argv[])
|
||||
int state=0;
|
||||
SSL_METHOD *meth=NULL;
|
||||
int socket_type=SOCK_STREAM;
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
ENGINE *e=NULL;
|
||||
#endif
|
||||
char *inrand=NULL;
|
||||
int s_cert_format = FORMAT_PEM, s_key_format = FORMAT_PEM;
|
||||
char *passarg = NULL, *pass = NULL;
|
||||
@@ -774,7 +776,6 @@ int MAIN(int argc, char *argv[])
|
||||
EVP_PKEY *s_key2 = NULL;
|
||||
X509 *s_cert2 = NULL;
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_NO_TLSEXT
|
||||
tlsextctx tlsextcbp = {NULL, NULL, SSL_TLSEXT_ERR_ALERT_WARNING};
|
||||
#endif
|
||||
@@ -1071,6 +1072,14 @@ int MAIN(int argc, char *argv[])
|
||||
if (--argc < 1) goto bad;
|
||||
s_key_file2= *(++argv);
|
||||
}
|
||||
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
else if (strcmp(*argv,"-jpake") == 0)
|
||||
{
|
||||
if (--argc < 1) goto bad;
|
||||
jpake_secret = *(++argv);
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
@@ -1673,6 +1682,11 @@ static int sv_body(char *hostname, int s, unsigned char *context)
|
||||
test=BIO_new(BIO_f_nbio_test());
|
||||
sbio=BIO_push(test,sbio);
|
||||
}
|
||||
#ifndef OPENSSL_NO_JPAKE
|
||||
if(jpake_secret)
|
||||
jpake_server_auth(bio_s_out, sbio, jpake_secret);
|
||||
#endif
|
||||
|
||||
SSL_set_bio(con,sbio,sbio);
|
||||
SSL_set_accept_state(con);
|
||||
/* SSL_set_fd(con,s); */
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* smime.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -2132,7 +2132,7 @@ int MAIN(int argc, char **argv)
|
||||
{
|
||||
ret=RSA_verify(NID_md5_sha1, buf,36, buf2,
|
||||
rsa_num, rsa_key[j]);
|
||||
if (ret == 0)
|
||||
if (ret <= 0)
|
||||
{
|
||||
BIO_printf(bio_err,
|
||||
"RSA verify failure\n");
|
||||
@@ -2760,6 +2760,8 @@ static int do_multi(int multi)
|
||||
for(n=0 ; n < multi ; ++n)
|
||||
{
|
||||
pipe(fd);
|
||||
fflush(stdout);
|
||||
fflush(stderr);
|
||||
if(fork())
|
||||
{
|
||||
close(fd[1]);
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/* apps/spkac.c */
|
||||
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999. Based on an original idea by Massimiliano Pala
|
||||
* (madwolf@openca.org).
|
||||
*/
|
||||
@@ -285,7 +285,7 @@ bad:
|
||||
pkey = NETSCAPE_SPKI_get_pubkey(spki);
|
||||
if(verify) {
|
||||
i = NETSCAPE_SPKI_verify(spki, pkey);
|
||||
if(i) BIO_printf(bio_err, "Signature OK\n");
|
||||
if (i > 0) BIO_printf(bio_err, "Signature OK\n");
|
||||
else {
|
||||
BIO_printf(bio_err, "Signature Failure\n");
|
||||
ERR_print_errors(bio_err);
|
||||
|
@@ -266,7 +266,7 @@ static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, STACK_OF(X
|
||||
|
||||
ret=0;
|
||||
end:
|
||||
if (i)
|
||||
if (i > 0)
|
||||
{
|
||||
fprintf(stdout,"OK\n");
|
||||
ret=1;
|
||||
@@ -367,4 +367,3 @@ static int MS_CALLBACK cb(int ok, X509_STORE_CTX *ctx)
|
||||
ERR_clear_error();
|
||||
return(ok);
|
||||
}
|
||||
|
||||
|
@@ -167,7 +167,7 @@ int MAIN(int argc, char **argv)
|
||||
date=version=cflags=options=platform=dir=1;
|
||||
else
|
||||
{
|
||||
BIO_printf(bio_err,"usage:version -[avbofp]\n");
|
||||
BIO_printf(bio_err,"usage:version -[avbofpd]\n");
|
||||
ret=1;
|
||||
goto end;
|
||||
}
|
||||
|
@@ -1151,7 +1151,7 @@ static int x509_certify(X509_STORE *ctx, char *CAfile, const EVP_MD *digest,
|
||||
/* NOTE: this certificate can/should be self signed, unless it was
|
||||
* a certificate request in which case it is not. */
|
||||
X509_STORE_CTX_set_cert(&xsc,x);
|
||||
if (!reqfile && !X509_verify_cert(&xsc))
|
||||
if (!reqfile && X509_verify_cert(&xsc) <= 0)
|
||||
goto end;
|
||||
|
||||
if (!X509_check_private_key(xca,pkey))
|
||||
|
76
config
76
config
@@ -501,7 +501,20 @@ case "$GUESSOS" in
|
||||
OUT="irix-mips3-$CC"
|
||||
;;
|
||||
mips4-sgi-irix64)
|
||||
OUT="irix64-mips4-$CC"
|
||||
echo "WARNING! If you wish to build 64-bit library, then you have to"
|
||||
echo " invoke './Configure irix64-mips4-$CC' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
#CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
|
||||
#CPU=${CPU:-0}
|
||||
#if [ $CPU -ge 5000 ]; then
|
||||
# options="$options -mips4"
|
||||
#else
|
||||
# options="$options -mips3"
|
||||
#fi
|
||||
OUT="irix-mips3-$CC"
|
||||
;;
|
||||
ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
|
||||
ppc-apple-darwin*) OUT="darwin-ppc-cc" ;;
|
||||
@@ -521,12 +534,25 @@ case "$GUESSOS" in
|
||||
fi
|
||||
;;
|
||||
ppc64-*-linux2)
|
||||
OUT="linux-ppc64"
|
||||
echo "WARNING! If you wish to build 64-bit library, then you have to"
|
||||
echo " invoke './Configure linux-ppc64' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
OUT="linux-ppc"
|
||||
;;
|
||||
ppc-*-linux2) OUT="linux-ppc" ;;
|
||||
ia64-*-linux?) OUT="linux-ia64" ;;
|
||||
sparc64-*-linux2)
|
||||
OUT="linux64-sparcv9" ;;
|
||||
echo "WARNING! If you *know* that your GNU C supports 64-bit/V9 ABI"
|
||||
echo " and wish to build 64-bit library, then you have to"
|
||||
echo " invoke './Configure linux64-sparcv9' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
OUT="linux-sparcv9" ;;
|
||||
sparc-*-linux2)
|
||||
KARCH=`awk '/^type/{print$3;exit(0);}' /proc/cpuinfo`
|
||||
case ${KARCH:-sun4} in
|
||||
@@ -563,7 +589,7 @@ case "$GUESSOS" in
|
||||
sh*-*-linux2) OUT="linux-generic32"; options="$options -DL_ENDIAN" ;;
|
||||
m68k*-*-linux2) OUT="linux-generic32"; options="$options -DB_ENDIAN" ;;
|
||||
s390-*-linux2) OUT="linux-generic32"; options="$options -DB_ENDIAN -DNO_ASM" ;;
|
||||
s390x-*-linux2) OUT="linux-s390x" ;;
|
||||
s390x-*-linux2) OUT="linux-generic64"; options="$options -DB_ENDIAN" ;;
|
||||
x86_64-*-linux?) OUT="linux-x86_64" ;;
|
||||
*86-*-linux2) OUT="linux-elf"
|
||||
if [ "$GCCVER" -gt 28 ]; then
|
||||
@@ -584,13 +610,32 @@ case "$GUESSOS" in
|
||||
ISA64=`(isalist) 2>/dev/null | grep sparcv9`
|
||||
if [ "$ISA64" != "" ]; then
|
||||
if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then
|
||||
OUT="solaris64-sparcv9-cc"
|
||||
echo "WARNING! If you wish to build 64-bit library, then you have to"
|
||||
echo " invoke './Configure solaris64-sparcv9-cc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then
|
||||
# $GCC_ARCH denotes default ABI chosen by compiler driver
|
||||
# (first one found on the $PATH). I assume that user
|
||||
# expects certain consistency with the rest of his builds
|
||||
# and therefore switch over to 64-bit. <appro>
|
||||
OUT="solaris64-sparcv9-gcc"
|
||||
echo "WARNING! If you wish to build 32-bit library, then you have to"
|
||||
echo " invoke './Configure solaris-sparcv9-gcc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
elif [ "$GCC_ARCH" = "-m32" ]; then
|
||||
echo "NOTICE! If you *know* that your GNU C supports 64-bit/V9 ABI"
|
||||
echo " and wish to build 64-bit library, then you have to"
|
||||
echo " invoke './Configure solaris64-sparcv9-gcc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
@@ -657,11 +702,23 @@ case "$GUESSOS" in
|
||||
CPU_VERSION=${CPU_VERSION:-0}
|
||||
# See <sys/unistd.h> for further info on CPU_VERSION.
|
||||
if [ $CPU_VERSION -ge 768 ]; then # IA-64 CPU
|
||||
echo "WARNING! 64-bit ABI is the default configured ABI on HP-UXi."
|
||||
echo " If you wish to build 32-bit library, the you have to"
|
||||
echo " invoke './Configure hpux-ia64-cc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
OUT="hpux64-ia64-cc"
|
||||
elif [ $CPU_VERSION -ge 532 ]; then # PA-RISC 2.x CPU
|
||||
OUT=${OUT:-"hpux-parisc2-${CC}"}
|
||||
if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then
|
||||
OUT="hpux64-parisc2-${CC}"
|
||||
echo "WARNING! If you wish to build 64-bit library then you have to"
|
||||
echo " invoke './Configure hpux64-parisc2-cc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
fi
|
||||
elif [ $CPU_VERSION -ge 528 ]; then # PA-RISC 1.1+ CPU
|
||||
OUT="hpux-parisc-${CC}"
|
||||
@@ -684,7 +741,12 @@ case "$GUESSOS" in
|
||||
else
|
||||
OUT="aix-cc"
|
||||
if [ $KERNEL_BITS -eq 64 ]; then
|
||||
OUT="aix64-cc"
|
||||
echo "WARNING! If you wish to build 64-bit kit, then you have to"
|
||||
echo " invoke './Configure aix64-cc' *manually*."
|
||||
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||
echo " You have ~5 seconds to press Ctrl-C to abort."
|
||||
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if (lsattr -E -O -l `lsdev -c processor|awk '{print$1;exit}'` | grep -i powerpc) >/dev/null 2>&1; then
|
||||
|
@@ -33,7 +33,7 @@ GENERAL=Makefile README crypto-lib.com install.com
|
||||
|
||||
LIB= $(TOP)/libcrypto.a
|
||||
SHARED_LIB= libcrypto$(SHLIB_EXT)
|
||||
LIBSRC= cryptlib.c dyn_lck.c mem.c mem_clr.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c uid.c o_time.c o_str.c o_dir.c o_init.c fips_err.c
|
||||
LIBSRC= cryptlib.c dyn_lck.c mem.c mem_clr.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c uid.c o_time.c o_str.c o_dir.c o_init.c fips_err.c
|
||||
LIBOBJ= cryptlib.o dyn_lck.o mem.o mem_clr.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdic.o uid.o o_time.o o_str.o o_dir.o o_init.o fips_err.o $(CPUID_OBJ)
|
||||
|
||||
SRC= $(LIBSRC)
|
||||
|
@@ -59,8 +59,6 @@ ax86-out.s: asm/aes-586.pl ../perlasm/x86asm.pl
|
||||
|
||||
aes-x86_64.s: asm/aes-x86_64.pl
|
||||
$(PERL) asm/aes-x86_64.pl $@
|
||||
# GNU make "catch all"
|
||||
aes-%.s: asm/aes-%.pl; $(PERL) $< $(CFLAGS) > $@
|
||||
|
||||
files:
|
||||
$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
|
||||
@@ -105,7 +103,8 @@ aes_cfb.o: ../../e_os.h ../../include/openssl/aes.h
|
||||
aes_cfb.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h
|
||||
aes_cfb.o: aes_cfb.c aes_locl.h
|
||||
aes_core.o: ../../include/openssl/aes.h ../../include/openssl/e_os2.h
|
||||
aes_core.o: ../../include/openssl/opensslconf.h aes_core.c aes_locl.h
|
||||
aes_core.o: ../../include/openssl/fips.h ../../include/openssl/opensslconf.h
|
||||
aes_core.o: aes_core.c aes_locl.h
|
||||
aes_ctr.o: ../../include/openssl/aes.h ../../include/openssl/e_os2.h
|
||||
aes_ctr.o: ../../include/openssl/opensslconf.h aes_ctr.c aes_locl.h
|
||||
aes_ecb.o: ../../include/openssl/aes.h ../../include/openssl/e_os2.h
|
||||
@@ -122,3 +121,11 @@ aes_misc.o: ../../include/openssl/opensslconf.h
|
||||
aes_misc.o: ../../include/openssl/opensslv.h aes_locl.h aes_misc.c
|
||||
aes_ofb.o: ../../include/openssl/aes.h ../../include/openssl/e_os2.h
|
||||
aes_ofb.o: ../../include/openssl/opensslconf.h aes_locl.h aes_ofb.c
|
||||
aes_wrap.o: ../../e_os.h ../../include/openssl/aes.h
|
||||
aes_wrap.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
|
||||
aes_wrap.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
|
||||
aes_wrap.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
|
||||
aes_wrap.o: ../../include/openssl/opensslconf.h
|
||||
aes_wrap.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
aes_wrap.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
aes_wrap.o: ../../include/openssl/symhacks.h ../cryptlib.h aes_wrap.c
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -213,11 +213,11 @@ a_meth.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
a_meth.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
a_meth.o: ../../include/openssl/symhacks.h ../cryptlib.h a_meth.c
|
||||
a_object.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
a_object.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
|
||||
a_object.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
|
||||
a_object.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
|
||||
a_object.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
|
||||
a_object.o: ../../include/openssl/opensslconf.h
|
||||
a_object.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
|
||||
a_object.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
a_object.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
a_object.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
|
||||
a_object.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
|
||||
a_object.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
a_object.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
a_object.o: ../../include/openssl/symhacks.h ../cryptlib.h a_object.c
|
||||
@@ -292,7 +292,8 @@ a_type.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
a_type.o: ../../include/openssl/asn1t.h ../../include/openssl/bio.h
|
||||
a_type.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
a_type.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
a_type.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
|
||||
a_type.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
|
||||
a_type.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
|
||||
a_type.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
a_type.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
a_type.o: ../../include/openssl/symhacks.h ../cryptlib.h a_type.c
|
||||
@@ -364,6 +365,21 @@ asn1_par.o: ../../include/openssl/opensslconf.h
|
||||
asn1_par.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
asn1_par.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
asn1_par.o: ../../include/openssl/symhacks.h ../cryptlib.h asn1_par.c
|
||||
asn_mime.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
asn_mime.o: ../../include/openssl/asn1t.h ../../include/openssl/bio.h
|
||||
asn_mime.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
asn_mime.o: ../../include/openssl/e_os2.h ../../include/openssl/ec.h
|
||||
asn_mime.o: ../../include/openssl/ecdh.h ../../include/openssl/ecdsa.h
|
||||
asn_mime.o: ../../include/openssl/err.h ../../include/openssl/evp.h
|
||||
asn_mime.o: ../../include/openssl/fips.h ../../include/openssl/lhash.h
|
||||
asn_mime.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
|
||||
asn_mime.o: ../../include/openssl/opensslconf.h
|
||||
asn_mime.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
asn_mime.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
|
||||
asn_mime.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
|
||||
asn_mime.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
|
||||
asn_mime.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
|
||||
asn_mime.o: ../cryptlib.h asn_mime.c
|
||||
asn_moid.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
asn_moid.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
|
||||
asn_moid.o: ../../include/openssl/conf.h ../../include/openssl/crypto.h
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* a_mbstr.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -267,7 +267,12 @@ int ASN1_item_sign(const ASN1_ITEM *it, X509_ALGOR *algor1, X509_ALGOR *algor2,
|
||||
goto err;
|
||||
}
|
||||
|
||||
EVP_SignInit_ex(&ctx,type, NULL);
|
||||
if (!EVP_SignInit_ex(&ctx,type, NULL))
|
||||
{
|
||||
outl=0;
|
||||
ASN1err(ASN1_F_ASN1_ITEM_SIGN,ERR_R_EVP_LIB);
|
||||
goto err;
|
||||
}
|
||||
EVP_SignUpdate(&ctx,(unsigned char *)buf_in,inl);
|
||||
if (!EVP_SignFinal(&ctx,(unsigned char *)buf_out,
|
||||
(unsigned int *)&outl,pkey))
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* a_strex.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* a_strnid.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -100,7 +100,12 @@ int ASN1_verify(i2d_of_void *i2d, X509_ALGOR *a, ASN1_BIT_STRING *signature,
|
||||
p=buf_in;
|
||||
|
||||
i2d(data,&p);
|
||||
EVP_VerifyInit_ex(&ctx,type, NULL);
|
||||
if (!EVP_VerifyInit_ex(&ctx,type, NULL))
|
||||
{
|
||||
ASN1err(ASN1_F_ASN1_VERIFY,ERR_R_EVP_LIB);
|
||||
ret=0;
|
||||
goto err;
|
||||
}
|
||||
EVP_VerifyUpdate(&ctx,(unsigned char *)buf_in,inl);
|
||||
|
||||
OPENSSL_cleanse(buf_in,(unsigned int)inl);
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* asn1_gen.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2002.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* asn1t.h */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* asn_moid.c */
|
||||
/* Written by Stephen Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2001.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* asn_pack.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* nsseq.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* p5_pbe.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* p5_pbev2.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999-2004.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* p8_pkey.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* t_bitst.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* t_crl.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* t_spki.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -393,7 +393,7 @@ int ASN1_GENERALIZEDTIME_print(BIO *bp, ASN1_GENERALIZEDTIME *tm)
|
||||
d= (v[6]-'0')*10+(v[7]-'0');
|
||||
h= (v[8]-'0')*10+(v[9]-'0');
|
||||
m= (v[10]-'0')*10+(v[11]-'0');
|
||||
if (i >= 14 &&
|
||||
if (tm->length >= 14 &&
|
||||
(v[12] >= '0') && (v[12] <= '9') &&
|
||||
(v[13] >= '0') && (v[13] <= '9'))
|
||||
s= (v[12]-'0')*10+(v[13]-'0');
|
||||
@@ -429,7 +429,7 @@ int ASN1_UTCTIME_print(BIO *bp, ASN1_UTCTIME *tm)
|
||||
d= (v[4]-'0')*10+(v[5]-'0');
|
||||
h= (v[6]-'0')*10+(v[7]-'0');
|
||||
m= (v[8]-'0')*10+(v[9]-'0');
|
||||
if (i >=12 &&
|
||||
if (tm->length >=12 &&
|
||||
(v[10] >= '0') && (v[10] <= '9') &&
|
||||
(v[11] >= '0') && (v[11] <= '9'))
|
||||
s= (v[10]-'0')*10+(v[11]-'0');
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* t_x509a.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_dec.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_enc.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_fre.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_new.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_prn.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_typ.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* tasn_utl.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* x_algor.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* x_bignum.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* x_exten.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* x_long.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2000.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* a_x509a.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 1999.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -919,6 +919,6 @@ int BIO_nwrite(BIO *bio, char **buf, int num)
|
||||
|
||||
ret = BIO_ctrl(bio, BIO_C_NWRITE, num, buf);
|
||||
if (ret > 0)
|
||||
bio->num_read += ret;
|
||||
bio->num_write += ret;
|
||||
return ret;
|
||||
}
|
||||
|
@@ -279,7 +279,7 @@ static long MS_CALLBACK file_ctrl(BIO *b, int cmd, long num, void *ptr)
|
||||
#endif
|
||||
{
|
||||
#if defined(OPENSSL_SYS_WINDOWS)
|
||||
int fd = fileno((FILE*)ptr);
|
||||
int fd = _fileno((FILE*)ptr);
|
||||
if (num & BIO_FP_TEXT)
|
||||
_setmode(fd,_O_TEXT);
|
||||
else
|
||||
|
@@ -4,3 +4,4 @@ Makefile.save
|
||||
semantic.cache
|
||||
co86-elf.s
|
||||
bn86-elf.s
|
||||
mo86-elf.s
|
||||
|
@@ -28,13 +28,13 @@ LIBSRC= bn_add.c bn_div.c bn_exp.c bn_lib.c bn_ctx.c bn_mul.c bn_mod.c \
|
||||
bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c \
|
||||
bn_kron.c bn_sqrt.c bn_gcd.c bn_prime.c bn_err.c bn_sqr.c bn_asm.c \
|
||||
bn_recp.c bn_mont.c bn_mpi.c bn_exp2.c bn_gf2m.c bn_nist.c \
|
||||
bn_depr.c bn_const.c bn_x931p.c bn_opt.c
|
||||
bn_depr.c bn_x931p.c bn_const.c bn_opt.c
|
||||
|
||||
LIBOBJ= bn_add.o bn_div.o bn_exp.o bn_lib.o bn_ctx.o bn_mul.o bn_mod.o \
|
||||
bn_print.o bn_rand.o bn_shift.o bn_word.o bn_blind.o \
|
||||
bn_kron.o bn_sqrt.o bn_gcd.o bn_prime.o bn_err.o bn_sqr.o $(BN_ASM) \
|
||||
bn_recp.o bn_mont.o bn_mpi.o bn_exp2.o bn_gf2m.o bn_nist.o \
|
||||
bn_depr.o bn_const.o bn_x931p.o bn_opt.o
|
||||
bn_depr.o bn_x931p.o bn_const.o bn_opt.o
|
||||
|
||||
SRC= $(LIBSRC)
|
||||
|
||||
@@ -67,22 +67,22 @@ bn86-elf.s: asm/bn-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) bn-586.pl elf $(CFLAGS) > ../$@)
|
||||
co86-elf.s: asm/co-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) co-586.pl elf $(CFLAGS) > ../$@)
|
||||
mo86-elf.s: asm/x86-mont.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) x86-mont.pl elf $(CFLAGS) > ../$@)
|
||||
mo86-elf.s: asm/mo-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) mo-586.pl elf $(CFLAGS) > ../$@)
|
||||
# COFF
|
||||
bn86-cof.s: asm/bn-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) bn-586.pl coff $(CFLAGS) > ../$@)
|
||||
co86-cof.s: asm/co-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) co-586.pl coff $(CFLAGS) > ../$@)
|
||||
mo86-cof.s: asm/x86-mont.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) x86-mont.pl coff $(CFLAGS) > ../$@)
|
||||
mo86-cof.s: asm/mo-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) mo-586.pl coff $(CFLAGS) > ../$@)
|
||||
# a.out
|
||||
bn86-out.s: asm/bn-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) bn-586.pl a.out $(CFLAGS) > ../$@)
|
||||
co86-out.s: asm/co-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) co-586.pl a.out $(CFLAGS) > ../$@)
|
||||
mo86-out.s: asm/x86-mont.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) x86-mont.pl a.out $(CFLAGS) > ../$@)
|
||||
mo86-out.s: asm/mo-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) mo-586.pl a.out $(CFLAGS) > ../$@)
|
||||
|
||||
sparcv8.o: asm/sparcv8.S
|
||||
$(CC) $(CFLAGS) -c asm/sparcv8.S
|
||||
@@ -103,9 +103,6 @@ x86_64-mont.s: asm/x86_64-mont.pl
|
||||
bn-ia64.s: asm/ia64.S
|
||||
$(CC) $(CFLAGS) -E asm/ia64.S > $@
|
||||
|
||||
bn-s390x.s: asm/s390x.S
|
||||
$(CC) $(CFLAGS) -E asm/s390x.S > $@
|
||||
|
||||
# GNU assembler fails to compile PA-RISC2 modules, insist on calling
|
||||
# vendor assembler...
|
||||
pa-risc2W.o: asm/pa-risc2W.s
|
||||
@@ -119,9 +116,7 @@ linux_ppc64.s: asm/ppc.pl; $(PERL) $< $@
|
||||
aix_ppc32.s: asm/ppc.pl; $(PERL) asm/ppc.pl $@
|
||||
aix_ppc64.s: asm/ppc.pl; $(PERL) asm/ppc.pl $@
|
||||
osx_ppc32.s: asm/ppc.pl; $(PERL) $< $@
|
||||
|
||||
# GNU make "catch all"
|
||||
%-mont.s: asm/%-mont.pl; $(PERL) $< $(CFLAGS) > $@
|
||||
osx_ppc64.s: asm/ppc.pl; $(PERL) $< $@
|
||||
|
||||
files:
|
||||
$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
|
||||
|
0
crypto/bn/asm/x86-mont.pl → crypto/bn/asm/mo-586.pl
Executable file → Normal file
0
crypto/bn/asm/x86-mont.pl → crypto/bn/asm/mo-586.pl
Executable file → Normal file
@@ -1,678 +0,0 @@
|
||||
.ident "s390x.S, version 1.0"
|
||||
// ====================================================================
|
||||
// Written by Andy Polyakov <appro@fy.chalmers.se> for the OpenSSL
|
||||
// project.
|
||||
//
|
||||
// Rights for redistribution and usage in source and binary forms are
|
||||
// granted according to the OpenSSL license. Warranty of any kind is
|
||||
// disclaimed.
|
||||
// ====================================================================
|
||||
|
||||
.text
|
||||
|
||||
#define zero %r0
|
||||
|
||||
// BN_ULONG bn_mul_add_words(BN_ULONG *r2,BN_ULONG *r3,int r4,BN_ULONG r5);
|
||||
.globl bn_mul_add_words
|
||||
.type bn_mul_add_words,@function
|
||||
.align 4
|
||||
bn_mul_add_words:
|
||||
lghi zero,0 // zero = 0
|
||||
la %r1,0(%r2) // put rp aside
|
||||
lghi %r2,0 // i=0;
|
||||
ltgfr %r4,%r4
|
||||
bler %r14 // if (len<=0) return 0;
|
||||
|
||||
stmg %r6,%r10,48(%r15)
|
||||
lghi %r8,0 // carry = 0
|
||||
srag %r10,%r4,2 // cnt=len/4
|
||||
jz .Loop1_madd
|
||||
|
||||
.Loop4_madd:
|
||||
lg %r7,0(%r2,%r3) // ap[i]
|
||||
mlgr %r6,%r5 // *=w
|
||||
algr %r7,%r8 // +=carry
|
||||
alcgr %r6,zero
|
||||
alg %r7,0(%r2,%r1) // +=rp[i]
|
||||
alcgr %r6,zero
|
||||
stg %r7,0(%r2,%r1) // rp[i]=
|
||||
|
||||
lg %r9,8(%r2,%r3)
|
||||
mlgr %r8,%r5
|
||||
algr %r9,%r6
|
||||
alcgr %r8,zero
|
||||
alg %r9,8(%r2,%r1)
|
||||
alcgr %r8,zero
|
||||
stg %r9,8(%r2,%r1)
|
||||
|
||||
lg %r7,16(%r2,%r3)
|
||||
mlgr %r6,%r5
|
||||
algr %r7,%r8
|
||||
alcgr %r6,zero
|
||||
alg %r7,16(%r2,%r1)
|
||||
alcgr %r6,zero
|
||||
stg %r7,16(%r2,%r1)
|
||||
|
||||
lg %r9,24(%r2,%r3)
|
||||
mlgr %r8,%r5
|
||||
algr %r9,%r6
|
||||
alcgr %r8,zero
|
||||
alg %r9,24(%r2,%r1)
|
||||
alcgr %r8,zero
|
||||
stg %r9,24(%r2,%r1)
|
||||
|
||||
la %r2,32(%r2) // i+=4
|
||||
brct %r10,.Loop4_madd
|
||||
|
||||
lghi %r10,3
|
||||
nr %r4,%r10 // cnt=len%4
|
||||
jz .Lend_madd
|
||||
|
||||
.Loop1_madd:
|
||||
lg %r7,0(%r2,%r3) // ap[i]
|
||||
mlgr %r6,%r5 // *=w
|
||||
algr %r7,%r8 // +=carry
|
||||
alcgr %r6,zero
|
||||
alg %r7,0(%r2,%r1) // +=rp[i]
|
||||
alcgr %r6,zero
|
||||
stg %r7,0(%r2,%r1) // rp[i]=
|
||||
|
||||
lgr %r8,%r6
|
||||
la %r2,8(%r2) // i++
|
||||
brct %r4,.Loop1_madd
|
||||
|
||||
.Lend_madd:
|
||||
lgr %r2,%r8
|
||||
lmg %r6,%r10,48(%r15)
|
||||
br %r14
|
||||
.size bn_mul_add_words,.-bn_mul_add_words
|
||||
|
||||
// BN_ULONG bn_mul_words(BN_ULONG *r2,BN_ULONG *r3,int r4,BN_ULONG r5);
|
||||
.globl bn_mul_words
|
||||
.type bn_mul_words,@function
|
||||
.align 4
|
||||
bn_mul_words:
|
||||
lghi zero,0 // zero = 0
|
||||
la %r1,0(%r2) // put rp aside
|
||||
lghi %r2,0 // i=0;
|
||||
ltgfr %r4,%r4
|
||||
bler %r14 // if (len<=0) return 0;
|
||||
|
||||
stmg %r6,%r10,48(%r15)
|
||||
lghi %r8,0 // carry = 0
|
||||
srag %r10,%r4,2 // cnt=len/4
|
||||
jz .Loop1_mul
|
||||
|
||||
.Loop4_mul:
|
||||
lg %r7,0(%r2,%r3) // ap[i]
|
||||
mlgr %r6,%r5 // *=w
|
||||
algr %r7,%r8 // +=carry
|
||||
alcgr %r6,zero
|
||||
stg %r7,0(%r2,%r1) // rp[i]=
|
||||
|
||||
lg %r9,8(%r2,%r3)
|
||||
mlgr %r8,%r5
|
||||
algr %r9,%r6
|
||||
alcgr %r8,zero
|
||||
stg %r9,8(%r2,%r1)
|
||||
|
||||
lg %r7,16(%r2,%r3)
|
||||
mlgr %r6,%r5
|
||||
algr %r7,%r8
|
||||
alcgr %r6,zero
|
||||
stg %r7,16(%r2,%r1)
|
||||
|
||||
lg %r9,24(%r2,%r3)
|
||||
mlgr %r8,%r5
|
||||
algr %r9,%r6
|
||||
alcgr %r8,zero
|
||||
stg %r9,24(%r2,%r1)
|
||||
|
||||
la %r2,32(%r2) // i+=4
|
||||
brct %r10,.Loop4_mul
|
||||
|
||||
lghi %r10,3
|
||||
nr %r4,%r10 // cnt=len%4
|
||||
jz .Lend_mul
|
||||
|
||||
.Loop1_mul:
|
||||
lg %r7,0(%r2,%r3) // ap[i]
|
||||
mlgr %r6,%r5 // *=w
|
||||
algr %r7,%r8 // +=carry
|
||||
alcgr %r6,zero
|
||||
stg %r7,0(%r2,%r1) // rp[i]=
|
||||
|
||||
lgr %r8,%r6
|
||||
la %r2,8(%r2) // i++
|
||||
brct %r4,.Loop1_mul
|
||||
|
||||
.Lend_mul:
|
||||
lgr %r2,%r8
|
||||
lmg %r6,%r10,48(%r15)
|
||||
br %r14
|
||||
.size bn_mul_words,.-bn_mul_words
|
||||
|
||||
// void bn_sqr_words(BN_ULONG *r2,BN_ULONG *r2,int r4)
|
||||
.globl bn_sqr_words
|
||||
.type bn_sqr_words,@function
|
||||
.align 4
|
||||
bn_sqr_words:
|
||||
ltgfr %r4,%r4
|
||||
bler %r14
|
||||
|
||||
stmg %r6,%r7,48(%r15)
|
||||
srag %r1,%r4,2 // cnt=len/4
|
||||
jz .Loop1_sqr
|
||||
|
||||
.Loop4_sqr:
|
||||
lg %r7,0(%r3)
|
||||
mlgr %r6,%r7
|
||||
stg %r7,0(%r2)
|
||||
stg %r6,8(%r2)
|
||||
|
||||
lg %r7,8(%r3)
|
||||
mlgr %r6,%r7
|
||||
stg %r7,16(%r2)
|
||||
stg %r6,24(%r2)
|
||||
|
||||
lg %r7,16(%r3)
|
||||
mlgr %r6,%r7
|
||||
stg %r7,32(%r2)
|
||||
stg %r6,40(%r2)
|
||||
|
||||
lg %r7,24(%r3)
|
||||
mlgr %r6,%r7
|
||||
stg %r7,48(%r2)
|
||||
stg %r6,56(%r2)
|
||||
|
||||
la %r3,32(%r3)
|
||||
la %r2,64(%r2)
|
||||
brct %r1,.Loop4_sqr
|
||||
|
||||
lghi %r1,3
|
||||
nr %r4,%r1 // cnt=len%4
|
||||
jz .Lend_sqr
|
||||
|
||||
.Loop1_sqr:
|
||||
lg %r7,0(%r3)
|
||||
mlgr %r6,%r7
|
||||
stg %r7,0(%r2)
|
||||
stg %r6,8(%r2)
|
||||
|
||||
la %r3,8(%r3)
|
||||
la %r2,16(%r2)
|
||||
brct %r4,.Loop1_sqr
|
||||
|
||||
.Lend_sqr:
|
||||
lmg %r6,%r7,48(%r15)
|
||||
br %r14
|
||||
.size bn_sqr_words,.-bn_sqr_words
|
||||
|
||||
// BN_ULONG bn_div_words(BN_ULONG h,BN_ULONG l,BN_ULONG d);
|
||||
.globl bn_div_words
|
||||
.type bn_div_words,@function
|
||||
.align 4
|
||||
bn_div_words:
|
||||
dlgr %r2,%r4
|
||||
lgr %r2,%r3
|
||||
br %r14
|
||||
.size bn_div_words,.-bn_div_words
|
||||
|
||||
// BN_ULONG bn_add_words(BN_ULONG *r2,BN_ULONG *r3,BN_ULONG *r4,int r5);
|
||||
.globl bn_add_words
|
||||
.type bn_add_words,@function
|
||||
.align 4
|
||||
bn_add_words:
|
||||
la %r1,0(%r2) // put rp aside
|
||||
lghi %r2,0 // i=0
|
||||
ltgfr %r5,%r5
|
||||
bler %r14 // if (len<=0) return 0;
|
||||
|
||||
stg %r6,48(%r15)
|
||||
lghi %r6,3
|
||||
nr %r6,%r5 // len%4
|
||||
sra %r5,2 // len/4, use sra because it sets condition code
|
||||
jz .Loop1_add // carry is incidentally cleared if branch taken
|
||||
algr %r2,%r2 // clear carry
|
||||
|
||||
.Loop4_add:
|
||||
lg %r0,0(%r2,%r3)
|
||||
alcg %r0,0(%r2,%r4)
|
||||
stg %r0,0(%r2,%r1)
|
||||
lg %r0,8(%r2,%r3)
|
||||
alcg %r0,8(%r2,%r4)
|
||||
stg %r0,8(%r2,%r1)
|
||||
lg %r0,16(%r2,%r3)
|
||||
alcg %r0,16(%r2,%r4)
|
||||
stg %r0,16(%r2,%r1)
|
||||
lg %r0,24(%r2,%r3)
|
||||
alcg %r0,24(%r2,%r4)
|
||||
stg %r0,24(%r2,%r1)
|
||||
|
||||
la %r2,32(%r2) // i+=4
|
||||
brct %r5,.Loop4_add
|
||||
|
||||
la %r6,1(%r6) // see if len%4 is zero ...
|
||||
brct %r6,.Loop1_add // without touching condition code:-)
|
||||
|
||||
.Lexit_add:
|
||||
lghi %r2,0
|
||||
alcgr %r2,%r2
|
||||
lg %r6,48(%r15)
|
||||
br %r14
|
||||
|
||||
.Loop1_add:
|
||||
lg %r0,0(%r2,%r3)
|
||||
alcg %r0,0(%r2,%r4)
|
||||
stg %r0,0(%r2,%r1)
|
||||
|
||||
la %r2,8(%r2) // i++
|
||||
brct %r6,.Loop1_add
|
||||
|
||||
j .Lexit_add
|
||||
.size bn_add_words,.-bn_add_words
|
||||
|
||||
// BN_ULONG bn_sub_words(BN_ULONG *r2,BN_ULONG *r3,BN_ULONG *r4,int r5);
|
||||
.globl bn_sub_words
|
||||
.type bn_sub_words,@function
|
||||
.align 4
|
||||
bn_sub_words:
|
||||
la %r1,0(%r2) // put rp aside
|
||||
lghi %r2,0 // i=0
|
||||
ltgfr %r5,%r5
|
||||
bler %r14 // if (len<=0) return 0;
|
||||
|
||||
stg %r6,48(%r15)
|
||||
lghi %r6,3
|
||||
nr %r6,%r5 // len%4
|
||||
sra %r5,2 // len/4, use sra because it sets condition code
|
||||
jnz .Loop4_sub // borrow is incidentally cleared if branch taken
|
||||
slgr %r2,%r2 // clear borrow
|
||||
|
||||
.Loop1_sub:
|
||||
lg %r0,0(%r2,%r3)
|
||||
slbg %r0,0(%r2,%r4)
|
||||
stg %r0,0(%r2,%r1)
|
||||
|
||||
la %r2,8(%r2) // i++
|
||||
brct %r6,.Loop1_sub
|
||||
j .Lexit_sub
|
||||
|
||||
.Loop4_sub:
|
||||
lg %r0,0(%r2,%r3)
|
||||
slbg %r0,0(%r2,%r4)
|
||||
stg %r0,0(%r2,%r1)
|
||||
lg %r0,8(%r2,%r3)
|
||||
slbg %r0,8(%r2,%r4)
|
||||
stg %r0,8(%r2,%r1)
|
||||
lg %r0,16(%r2,%r3)
|
||||
slbg %r0,16(%r2,%r4)
|
||||
stg %r0,16(%r2,%r1)
|
||||
lg %r0,24(%r2,%r3)
|
||||
slbg %r0,24(%r2,%r4)
|
||||
stg %r0,24(%r2,%r1)
|
||||
|
||||
la %r2,32(%r2) // i+=4
|
||||
brct %r5,.Loop4_sub
|
||||
|
||||
la %r6,1(%r6) // see if len%4 is zero ...
|
||||
brct %r6,.Loop1_sub // without touching condition code:-)
|
||||
|
||||
.Lexit_sub:
|
||||
lghi %r2,0
|
||||
slbgr %r2,%r2
|
||||
lcgr %r2,%r2
|
||||
lg %r6,48(%r15)
|
||||
br %r14
|
||||
.size bn_sub_words,.-bn_sub_words
|
||||
|
||||
#define c1 %r1
|
||||
#define c2 %r5
|
||||
#define c3 %r8
|
||||
|
||||
#define mul_add_c(ai,bi,c1,c2,c3) \
|
||||
lg %r7,ai*8(%r3); \
|
||||
mlg %r6,bi*8(%r4); \
|
||||
algr c1,%r7; \
|
||||
alcgr c2,%r6; \
|
||||
alcgr c3,zero
|
||||
|
||||
// void bn_mul_comba8(BN_ULONG *r2,BN_ULONG *r3,BN_ULONG *r4);
|
||||
.globl bn_mul_comba8
|
||||
.type bn_mul_comba8,@function
|
||||
.align 4
|
||||
bn_mul_comba8:
|
||||
stmg %r6,%r8,48(%r15)
|
||||
|
||||
lghi c1,0
|
||||
lghi c2,0
|
||||
lghi c3,0
|
||||
lghi zero,0
|
||||
|
||||
mul_add_c(0,0,c1,c2,c3);
|
||||
stg c1,0*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(0,1,c2,c3,c1);
|
||||
mul_add_c(1,0,c2,c3,c1);
|
||||
stg c2,1*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(2,0,c3,c1,c2);
|
||||
mul_add_c(1,1,c3,c1,c2);
|
||||
mul_add_c(0,2,c3,c1,c2);
|
||||
stg c3,2*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(0,3,c1,c2,c3);
|
||||
mul_add_c(1,2,c1,c2,c3);
|
||||
mul_add_c(2,1,c1,c2,c3);
|
||||
mul_add_c(3,0,c1,c2,c3);
|
||||
stg c1,3*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(4,0,c2,c3,c1);
|
||||
mul_add_c(3,1,c2,c3,c1);
|
||||
mul_add_c(2,2,c2,c3,c1);
|
||||
mul_add_c(1,3,c2,c3,c1);
|
||||
mul_add_c(0,4,c2,c3,c1);
|
||||
stg c2,4*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(0,5,c3,c1,c2);
|
||||
mul_add_c(1,4,c3,c1,c2);
|
||||
mul_add_c(2,3,c3,c1,c2);
|
||||
mul_add_c(3,2,c3,c1,c2);
|
||||
mul_add_c(4,1,c3,c1,c2);
|
||||
mul_add_c(5,0,c3,c1,c2);
|
||||
stg c3,5*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(6,0,c1,c2,c3);
|
||||
mul_add_c(5,1,c1,c2,c3);
|
||||
mul_add_c(4,2,c1,c2,c3);
|
||||
mul_add_c(3,3,c1,c2,c3);
|
||||
mul_add_c(2,4,c1,c2,c3);
|
||||
mul_add_c(1,5,c1,c2,c3);
|
||||
mul_add_c(0,6,c1,c2,c3);
|
||||
stg c1,6*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(0,7,c2,c3,c1);
|
||||
mul_add_c(1,6,c2,c3,c1);
|
||||
mul_add_c(2,5,c2,c3,c1);
|
||||
mul_add_c(3,4,c2,c3,c1);
|
||||
mul_add_c(4,3,c2,c3,c1);
|
||||
mul_add_c(5,2,c2,c3,c1);
|
||||
mul_add_c(6,1,c2,c3,c1);
|
||||
mul_add_c(7,0,c2,c3,c1);
|
||||
stg c2,7*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(7,1,c3,c1,c2);
|
||||
mul_add_c(6,2,c3,c1,c2);
|
||||
mul_add_c(5,3,c3,c1,c2);
|
||||
mul_add_c(4,4,c3,c1,c2);
|
||||
mul_add_c(3,5,c3,c1,c2);
|
||||
mul_add_c(2,6,c3,c1,c2);
|
||||
mul_add_c(1,7,c3,c1,c2);
|
||||
stg c3,8*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(2,7,c1,c2,c3);
|
||||
mul_add_c(3,6,c1,c2,c3);
|
||||
mul_add_c(4,5,c1,c2,c3);
|
||||
mul_add_c(5,4,c1,c2,c3);
|
||||
mul_add_c(6,3,c1,c2,c3);
|
||||
mul_add_c(7,2,c1,c2,c3);
|
||||
stg c1,9*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(7,3,c2,c3,c1);
|
||||
mul_add_c(6,4,c2,c3,c1);
|
||||
mul_add_c(5,5,c2,c3,c1);
|
||||
mul_add_c(4,6,c2,c3,c1);
|
||||
mul_add_c(3,7,c2,c3,c1);
|
||||
stg c2,10*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(4,7,c3,c1,c2);
|
||||
mul_add_c(5,6,c3,c1,c2);
|
||||
mul_add_c(6,5,c3,c1,c2);
|
||||
mul_add_c(7,4,c3,c1,c2);
|
||||
stg c3,11*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(7,5,c1,c2,c3);
|
||||
mul_add_c(6,6,c1,c2,c3);
|
||||
mul_add_c(5,7,c1,c2,c3);
|
||||
stg c1,12*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
|
||||
mul_add_c(6,7,c2,c3,c1);
|
||||
mul_add_c(7,6,c2,c3,c1);
|
||||
stg c2,13*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(7,7,c3,c1,c2);
|
||||
stg c3,14*8(%r2)
|
||||
stg c1,15*8(%r2)
|
||||
|
||||
lmg %r6,%r8,48(%r15)
|
||||
br %r14
|
||||
.size bn_mul_comba8,.-bn_mul_comba8
|
||||
|
||||
// void bn_mul_comba4(BN_ULONG *r2,BN_ULONG *r3,BN_ULONG *r4);
|
||||
.globl bn_mul_comba4
|
||||
.type bn_mul_comba4,@function
|
||||
.align 4
|
||||
bn_mul_comba4:
|
||||
stmg %r6,%r8,48(%r15)
|
||||
|
||||
lghi c1,0
|
||||
lghi c2,0
|
||||
lghi c3,0
|
||||
lghi zero,0
|
||||
|
||||
mul_add_c(0,0,c1,c2,c3);
|
||||
stg c1,0*8(%r3)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(0,1,c2,c3,c1);
|
||||
mul_add_c(1,0,c2,c3,c1);
|
||||
stg c2,1*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(2,0,c3,c1,c2);
|
||||
mul_add_c(1,1,c3,c1,c2);
|
||||
mul_add_c(0,2,c3,c1,c2);
|
||||
stg c3,2*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(0,3,c1,c2,c3);
|
||||
mul_add_c(1,2,c1,c2,c3);
|
||||
mul_add_c(2,1,c1,c2,c3);
|
||||
mul_add_c(3,0,c1,c2,c3);
|
||||
stg c1,3*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
mul_add_c(3,1,c2,c3,c1);
|
||||
mul_add_c(2,2,c2,c3,c1);
|
||||
mul_add_c(1,3,c2,c3,c1);
|
||||
stg c2,4*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
mul_add_c(2,3,c3,c1,c2);
|
||||
mul_add_c(3,2,c3,c1,c2);
|
||||
stg c3,5*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
mul_add_c(3,3,c1,c2,c3);
|
||||
stg c1,6*8(%r2)
|
||||
stg c2,7*8(%r2)
|
||||
|
||||
stmg %r6,%r8,48(%r15)
|
||||
br %r14
|
||||
.size bn_mul_comba4,.-bn_mul_comba4
|
||||
|
||||
#define sqr_add_c(ai,c1,c2,c3) \
|
||||
lg %r7,ai*8(%r3); \
|
||||
mlgr %r6,%r7; \
|
||||
algr c1,%r7; \
|
||||
alcgr c2,%r6; \
|
||||
alcgr c3,zero
|
||||
|
||||
#define sqr_add_c2(ai,aj,c1,c2,c3) \
|
||||
lg %r7,ai*8(%r3); \
|
||||
mlg %r6,aj*8(%r3); \
|
||||
algr c1,%r7; \
|
||||
alcgr c2,%r6; \
|
||||
alcgr c3,zero; \
|
||||
algr c1,%r7; \
|
||||
alcgr c2,%r6; \
|
||||
alcgr c3,zero
|
||||
|
||||
// void bn_sqr_comba8(BN_ULONG *r2,BN_ULONG *r3);
|
||||
.globl bn_sqr_comba8
|
||||
.type bn_sqr_comba8,@function
|
||||
.align 4
|
||||
bn_sqr_comba8:
|
||||
stmg %r6,%r8,48(%r15)
|
||||
|
||||
lghi c1,0
|
||||
lghi c2,0
|
||||
lghi c3,0
|
||||
lghi zero,0
|
||||
|
||||
sqr_add_c(0,c1,c2,c3);
|
||||
stg c1,0*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c2(1,0,c2,c3,c1);
|
||||
stg c2,1*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c(1,c3,c1,c2);
|
||||
sqr_add_c2(2,0,c3,c1,c2);
|
||||
stg c3,2*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c2(3,0,c1,c2,c3);
|
||||
sqr_add_c2(2,1,c1,c2,c3);
|
||||
stg c1,3*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c(2,c2,c3,c1);
|
||||
sqr_add_c2(3,1,c2,c3,c1);
|
||||
sqr_add_c2(4,0,c2,c3,c1);
|
||||
stg c2,4*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c2(5,0,c3,c1,c2);
|
||||
sqr_add_c2(4,1,c3,c1,c2);
|
||||
sqr_add_c2(3,2,c3,c1,c2);
|
||||
stg c3,5*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c(3,c1,c2,c3);
|
||||
sqr_add_c2(4,2,c1,c2,c3);
|
||||
sqr_add_c2(5,1,c1,c2,c3);
|
||||
sqr_add_c2(6,0,c1,c2,c3);
|
||||
stg c1,6*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c2(7,0,c2,c3,c1);
|
||||
sqr_add_c2(6,1,c2,c3,c1);
|
||||
sqr_add_c2(5,2,c2,c3,c1);
|
||||
sqr_add_c2(4,3,c2,c3,c1);
|
||||
stg c2,7*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c(4,c3,c1,c2);
|
||||
sqr_add_c2(5,3,c3,c1,c2);
|
||||
sqr_add_c2(6,2,c3,c1,c2);
|
||||
sqr_add_c2(7,1,c3,c1,c2);
|
||||
stg c3,8*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c2(7,2,c1,c2,c3);
|
||||
sqr_add_c2(6,3,c1,c2,c3);
|
||||
sqr_add_c2(5,4,c1,c2,c3);
|
||||
stg c1,9*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c(5,c2,c3,c1);
|
||||
sqr_add_c2(6,4,c2,c3,c1);
|
||||
sqr_add_c2(7,3,c2,c3,c1);
|
||||
stg c2,10*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c2(7,4,c3,c1,c2);
|
||||
sqr_add_c2(6,5,c3,c1,c2);
|
||||
stg c3,11*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c(6,c1,c2,c3);
|
||||
sqr_add_c2(7,5,c1,c2,c3);
|
||||
stg c1,12*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c2(7,6,c2,c3,c1);
|
||||
stg c2,13*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c(7,c3,c1,c2);
|
||||
stg c3,14*8(%r2)
|
||||
stg c1,15*8(%r2)
|
||||
|
||||
lmg %r6,%r8,48(%r15)
|
||||
br %r14
|
||||
.size bn_sqr_comba8,.-bn_sqr_comba8
|
||||
|
||||
// void bn_sqr_comba4(BN_ULONG *r2,BN_ULONG *r3);
|
||||
.globl bn_sqr_comba4
|
||||
.type bn_sqr_comba4,@function
|
||||
.align 4
|
||||
bn_sqr_comba4:
|
||||
stmg %r6,%r8,48(%r15)
|
||||
|
||||
lghi c1,0
|
||||
lghi c2,0
|
||||
lghi c3,0
|
||||
lghi zero,0
|
||||
|
||||
sqr_add_c(0,c1,c2,c3);
|
||||
stg c1,0*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c2(1,0,c2,c3,c1);
|
||||
stg c2,1*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c(1,c3,c1,c2);
|
||||
sqr_add_c2(2,0,c3,c1,c2);
|
||||
stg c3,2*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c2(3,0,c1,c2,c3);
|
||||
sqr_add_c2(2,1,c1,c2,c3);
|
||||
stg c1,3*8(%r2)
|
||||
lghi c1,0
|
||||
|
||||
sqr_add_c(2,c2,c3,c1);
|
||||
sqr_add_c2(3,1,c2,c3,c1);
|
||||
stg c2,4*8(%r2)
|
||||
lghi c2,0
|
||||
|
||||
sqr_add_c2(3,2,c3,c1,c2);
|
||||
stg c3,5*8(%r2)
|
||||
lghi c3,0
|
||||
|
||||
sqr_add_c(3,c1,c2,c3);
|
||||
stg c1,6*8(%r2)
|
||||
stg c2,7*8(%r2)
|
||||
|
||||
lmg %r6,%r8,48(%r15)
|
||||
br %r14
|
||||
.size bn_sqr_comba4,.-bn_sqr_comba4
|
@@ -303,7 +303,12 @@ struct bn_mont_ctx_st
|
||||
BIGNUM N; /* The modulus */
|
||||
BIGNUM Ni; /* R*(1/R mod N) - N*Ni = 1
|
||||
* (Ni is only stored for bignum algorithm) */
|
||||
#if 0
|
||||
/* OpenSSL 0.9.9 preview: */
|
||||
BN_ULONG n0[2];/* least significant word(s) of Ni */
|
||||
#else
|
||||
BN_ULONG n0; /* least significant word of Ni */
|
||||
#endif
|
||||
int flags;
|
||||
};
|
||||
|
||||
@@ -403,8 +408,8 @@ BIGNUM *BN_CTX_get(BN_CTX *ctx);
|
||||
void BN_CTX_end(BN_CTX *ctx);
|
||||
int BN_rand(BIGNUM *rnd, int bits, int top,int bottom);
|
||||
int BN_pseudo_rand(BIGNUM *rnd, int bits, int top,int bottom);
|
||||
int BN_rand_range(BIGNUM *rnd, BIGNUM *range);
|
||||
int BN_pseudo_rand_range(BIGNUM *rnd, BIGNUM *range);
|
||||
int BN_rand_range(BIGNUM *rnd, const BIGNUM *range);
|
||||
int BN_pseudo_rand_range(BIGNUM *rnd, const BIGNUM *range);
|
||||
int BN_num_bits(const BIGNUM *a);
|
||||
int BN_num_bits_word(BN_ULONG);
|
||||
BIGNUM *BN_new(void);
|
||||
@@ -526,16 +531,7 @@ int BN_is_prime_ex(const BIGNUM *p,int nchecks, BN_CTX *ctx, BN_GENCB *cb);
|
||||
int BN_is_prime_fasttest_ex(const BIGNUM *p,int nchecks, BN_CTX *ctx,
|
||||
int do_trial_division, BN_GENCB *cb);
|
||||
|
||||
int BN_X931_derive_prime(BIGNUM *p, BIGNUM *p1, BIGNUM *p2,
|
||||
void (*cb)(int, int, void *), void *cb_arg,
|
||||
const BIGNUM *Xp, const BIGNUM *Xp1, const BIGNUM *Xp2,
|
||||
const BIGNUM *e, BN_CTX *ctx);
|
||||
int BN_X931_generate_Xpq(BIGNUM *Xp, BIGNUM *Xq, int nbits, BN_CTX *ctx);
|
||||
int BN_X931_generate_prime(BIGNUM *p, BIGNUM *p1, BIGNUM *p2,
|
||||
BIGNUM *Xp1, BIGNUM *Xp2,
|
||||
const BIGNUM *Xp,
|
||||
const BIGNUM *e, BN_CTX *ctx,
|
||||
void (*cb)(int, int, void *), void *cb_arg);
|
||||
|
||||
int BN_X931_derive_prime_ex(BIGNUM *p, BIGNUM *p1, BIGNUM *p2,
|
||||
const BIGNUM *Xp, const BIGNUM *Xp1, const BIGNUM *Xp2,
|
||||
|
@@ -109,26 +109,4 @@ int BN_is_prime_fasttest(const BIGNUM *a, int checks,
|
||||
return BN_is_prime_fasttest_ex(a, checks, ctx_passed,
|
||||
do_trial_division, &cb);
|
||||
}
|
||||
|
||||
int BN_X931_derive_prime(BIGNUM *p, BIGNUM *p1, BIGNUM *p2,
|
||||
void (*callback)(int, int, void *), void *cb_arg,
|
||||
const BIGNUM *Xp, const BIGNUM *Xp1, const BIGNUM *Xp2,
|
||||
const BIGNUM *e, BN_CTX *ctx)
|
||||
{
|
||||
BN_GENCB cb;
|
||||
BN_GENCB_set_old(&cb, callback, cb_arg);
|
||||
return BN_X931_derive_prime_ex(p, p1, p2, Xp, Xp1, Xp2, e, ctx, &cb);
|
||||
}
|
||||
|
||||
int BN_X931_generate_prime(BIGNUM *p, BIGNUM *p1, BIGNUM *p2,
|
||||
BIGNUM *Xp1, BIGNUM *Xp2,
|
||||
const BIGNUM *Xp,
|
||||
const BIGNUM *e, BN_CTX *ctx,
|
||||
void (*callback)(int, int, void *), void *cb_arg)
|
||||
{
|
||||
BN_GENCB cb;
|
||||
BN_GENCB_set_old(&cb, callback, cb_arg);
|
||||
return BN_X931_generate_prime_ex(p, p1, p2, Xp1, Xp2, Xp, e, ctx, &cb);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -122,6 +122,26 @@
|
||||
|
||||
#define MONT_WORD /* use the faster word-based algorithm */
|
||||
|
||||
#if defined(MONT_WORD) && defined(OPENSSL_BN_ASM_MONT) && (BN_BITS2<=32)
|
||||
/* This condition means we have a specific non-default build:
|
||||
* In the 0.9.8 branch, OPENSSL_BN_ASM_MONT is normally not set for any
|
||||
* BN_BITS2<=32 platform; an explicit "enable-montasm" is required.
|
||||
* I.e., if we are here, the user intentionally deviates from the
|
||||
* normal stable build to get better Montgomery performance from
|
||||
* the 0.9.9-dev backport.
|
||||
*
|
||||
* In this case only, we also enable BN_from_montgomery_word()
|
||||
* (another non-stable feature from 0.9.9-dev).
|
||||
*/
|
||||
#define MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD
|
||||
#endif
|
||||
|
||||
#ifdef MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD
|
||||
static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont);
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
|
||||
BN_MONT_CTX *mont, BN_CTX *ctx)
|
||||
{
|
||||
@@ -133,7 +153,11 @@ int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
|
||||
if (num>1 && a->top==num && b->top==num)
|
||||
{
|
||||
if (bn_wexpand(r,num) == NULL) return(0);
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0 */
|
||||
if (bn_mul_mont(r->d,a->d,b->d,mont->N.d,mont->n0,num))
|
||||
#else
|
||||
if (bn_mul_mont(r->d,a->d,b->d,mont->N.d,&mont->n0,num))
|
||||
#endif
|
||||
{
|
||||
r->neg = a->neg^b->neg;
|
||||
r->top = num;
|
||||
@@ -157,7 +181,11 @@ int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b,
|
||||
if (!BN_mul(tmp,a,b,ctx)) goto err;
|
||||
}
|
||||
/* reduce from aRR to aR */
|
||||
#ifdef MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD
|
||||
if (!BN_from_montgomery_word(r,tmp,mont)) goto err;
|
||||
#else
|
||||
if (!BN_from_montgomery(r,tmp,mont,ctx)) goto err;
|
||||
#endif
|
||||
bn_check_top(r);
|
||||
ret=1;
|
||||
err:
|
||||
@@ -165,6 +193,150 @@ err:
|
||||
return(ret);
|
||||
}
|
||||
|
||||
#ifdef MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD
|
||||
static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont)
|
||||
{
|
||||
BIGNUM *n;
|
||||
BN_ULONG *ap,*np,*rp,n0,v,*nrp;
|
||||
int al,nl,max,i,x,ri;
|
||||
|
||||
n= &(mont->N);
|
||||
/* mont->ri is the size of mont->N in bits (rounded up
|
||||
to the word size) */
|
||||
al=ri=mont->ri/BN_BITS2;
|
||||
|
||||
nl=n->top;
|
||||
if ((al == 0) || (nl == 0)) { ret->top=0; return(1); }
|
||||
|
||||
max=(nl+al+1); /* allow for overflow (no?) XXX */
|
||||
if (bn_wexpand(r,max) == NULL) return(0);
|
||||
|
||||
r->neg^=n->neg;
|
||||
np=n->d;
|
||||
rp=r->d;
|
||||
nrp= &(r->d[nl]);
|
||||
|
||||
/* clear the top words of T */
|
||||
for (i=r->top; i<max; i++) /* memset? XXX */
|
||||
r->d[i]=0;
|
||||
|
||||
r->top=max;
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0 */
|
||||
n0=mont->n0[0];
|
||||
#else
|
||||
n0=mont->n0;
|
||||
#endif
|
||||
|
||||
#ifdef BN_COUNT
|
||||
fprintf(stderr,"word BN_from_montgomery_word %d * %d\n",nl,nl);
|
||||
#endif
|
||||
for (i=0; i<nl; i++)
|
||||
{
|
||||
#ifdef __TANDEM
|
||||
{
|
||||
long long t1;
|
||||
long long t2;
|
||||
long long t3;
|
||||
t1 = rp[0] * (n0 & 0177777);
|
||||
t2 = 037777600000l;
|
||||
t2 = n0 & t2;
|
||||
t3 = rp[0] & 0177777;
|
||||
t2 = (t3 * t2) & BN_MASK2;
|
||||
t1 = t1 + t2;
|
||||
v=bn_mul_add_words(rp,np,nl,(BN_ULONG) t1);
|
||||
}
|
||||
#else
|
||||
v=bn_mul_add_words(rp,np,nl,(rp[0]*n0)&BN_MASK2);
|
||||
#endif
|
||||
nrp++;
|
||||
rp++;
|
||||
if (((nrp[-1]+=v)&BN_MASK2) >= v)
|
||||
continue;
|
||||
else
|
||||
{
|
||||
if (((++nrp[0])&BN_MASK2) != 0) continue;
|
||||
if (((++nrp[1])&BN_MASK2) != 0) continue;
|
||||
for (x=2; (((++nrp[x])&BN_MASK2) == 0); x++) ;
|
||||
}
|
||||
}
|
||||
bn_correct_top(r);
|
||||
|
||||
/* mont->ri will be a multiple of the word size and below code
|
||||
* is kind of BN_rshift(ret,r,mont->ri) equivalent */
|
||||
if (r->top <= ri)
|
||||
{
|
||||
ret->top=0;
|
||||
return(1);
|
||||
}
|
||||
al=r->top-ri;
|
||||
|
||||
if (bn_wexpand(ret,ri) == NULL) return(0);
|
||||
x=0-(((al-ri)>>(sizeof(al)*8-1))&1);
|
||||
ret->top=x=(ri&~x)|(al&x); /* min(ri,al) */
|
||||
ret->neg=r->neg;
|
||||
|
||||
rp=ret->d;
|
||||
ap=&(r->d[ri]);
|
||||
|
||||
{
|
||||
size_t m1,m2;
|
||||
|
||||
v=bn_sub_words(rp,ap,np,ri);
|
||||
/* this ----------------^^ works even in al<ri case
|
||||
* thanks to zealous zeroing of top of the vector in the
|
||||
* beginning. */
|
||||
|
||||
/* if (al==ri && !v) || al>ri) nrp=rp; else nrp=ap; */
|
||||
/* in other words if subtraction result is real, then
|
||||
* trick unconditional memcpy below to perform in-place
|
||||
* "refresh" instead of actual copy. */
|
||||
m1=0-(size_t)(((al-ri)>>(sizeof(al)*8-1))&1); /* al<ri */
|
||||
m2=0-(size_t)(((ri-al)>>(sizeof(al)*8-1))&1); /* al>ri */
|
||||
m1|=m2; /* (al!=ri) */
|
||||
m1|=(0-(size_t)v); /* (al!=ri || v) */
|
||||
m1&=~m2; /* (al!=ri || v) && !al>ri */
|
||||
nrp=(BN_ULONG *)(((size_t)rp&~m1)|((size_t)ap&m1));
|
||||
}
|
||||
|
||||
/* 'i<ri' is chosen to eliminate dependency on input data, even
|
||||
* though it results in redundant copy in al<ri case. */
|
||||
for (i=0,ri-=4; i<ri; i+=4)
|
||||
{
|
||||
BN_ULONG t1,t2,t3,t4;
|
||||
|
||||
t1=nrp[i+0];
|
||||
t2=nrp[i+1];
|
||||
t3=nrp[i+2]; ap[i+0]=0;
|
||||
t4=nrp[i+3]; ap[i+1]=0;
|
||||
rp[i+0]=t1; ap[i+2]=0;
|
||||
rp[i+1]=t2; ap[i+3]=0;
|
||||
rp[i+2]=t3;
|
||||
rp[i+3]=t4;
|
||||
}
|
||||
for (ri+=4; i<ri; i++)
|
||||
rp[i]=nrp[i], ap[i]=0;
|
||||
bn_correct_top(r);
|
||||
bn_correct_top(ret);
|
||||
bn_check_top(ret);
|
||||
|
||||
return(1);
|
||||
}
|
||||
|
||||
int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
int retn=0;
|
||||
BIGNUM *t;
|
||||
|
||||
BN_CTX_start(ctx);
|
||||
if ((t = BN_CTX_get(ctx)) && BN_copy(t,a))
|
||||
retn = BN_from_montgomery_word(ret,t,mont);
|
||||
BN_CTX_end(ctx);
|
||||
return retn;
|
||||
}
|
||||
|
||||
#else /* !MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD */
|
||||
|
||||
int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
@@ -357,6 +529,7 @@ int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont,
|
||||
BN_CTX_end(ctx);
|
||||
return(retn);
|
||||
}
|
||||
#endif /* MONT_FROM_WORD___NON_DEFAULT_0_9_8_BUILD */
|
||||
|
||||
BN_MONT_CTX *BN_MONT_CTX_new(void)
|
||||
{
|
||||
@@ -376,6 +549,11 @@ void BN_MONT_CTX_init(BN_MONT_CTX *ctx)
|
||||
BN_init(&(ctx->RR));
|
||||
BN_init(&(ctx->N));
|
||||
BN_init(&(ctx->Ni));
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0 */
|
||||
ctx->n0[0] = ctx->n0[1] = 0;
|
||||
#else
|
||||
ctx->n0 = 0;
|
||||
#endif
|
||||
ctx->flags=0;
|
||||
}
|
||||
|
||||
@@ -409,14 +587,51 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx)
|
||||
|
||||
mont->ri=(BN_num_bits(mod)+(BN_BITS2-1))/BN_BITS2*BN_BITS2;
|
||||
BN_zero(R);
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0, would be "#if defined(OPENSSL_BN_ASM_MONT) && (BN_BITS2<=32)",
|
||||
only certain BN_BITS2<=32 platforms actually need this */
|
||||
if (!(BN_set_bit(R,2*BN_BITS2))) goto err; /* R */
|
||||
#else
|
||||
if (!(BN_set_bit(R,BN_BITS2))) goto err; /* R */
|
||||
#endif
|
||||
|
||||
buf[0]=mod->d[0]; /* tmod = N mod word size */
|
||||
buf[1]=0;
|
||||
|
||||
BN_init(&tmod);
|
||||
tmod.d=buf;
|
||||
tmod.top = buf[0] != 0 ? 1 : 0;
|
||||
tmod.dmax=2;
|
||||
tmod.neg=0;
|
||||
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0, would be "#if defined(OPENSSL_BN_ASM_MONT) && (BN_BITS2<=32)";
|
||||
only certain BN_BITS2<=32 platforms actually need this */
|
||||
tmod.top=0;
|
||||
if ((buf[0] = mod->d[0])) tmod.top=1;
|
||||
if ((buf[1] = mod->top>1 ? mod->d[1] : 0)) tmod.top=2;
|
||||
|
||||
if ((BN_mod_inverse(Ri,R,&tmod,ctx)) == NULL)
|
||||
goto err;
|
||||
if (!BN_lshift(Ri,Ri,2*BN_BITS2)) goto err; /* R*Ri */
|
||||
if (!BN_is_zero(Ri))
|
||||
{
|
||||
if (!BN_sub_word(Ri,1)) goto err;
|
||||
}
|
||||
else /* if N mod word size == 1 */
|
||||
{
|
||||
if (bn_expand(Ri,(int)sizeof(BN_ULONG)*2) == NULL)
|
||||
goto err;
|
||||
/* Ri-- (mod double word size) */
|
||||
Ri->neg=0;
|
||||
Ri->d[0]=BN_MASK2;
|
||||
Ri->d[1]=BN_MASK2;
|
||||
Ri->top=2;
|
||||
}
|
||||
if (!BN_div(Ri,NULL,Ri,&tmod,ctx)) goto err;
|
||||
/* Ni = (R*Ri-1)/N,
|
||||
* keep only couple of least significant words: */
|
||||
mont->n0[0] = (Ri->top > 0) ? Ri->d[0] : 0;
|
||||
mont->n0[1] = (Ri->top > 1) ? Ri->d[1] : 0;
|
||||
#else
|
||||
/* Ri = R^-1 mod N*/
|
||||
if ((BN_mod_inverse(Ri,R,&tmod,ctx)) == NULL)
|
||||
goto err;
|
||||
@@ -432,7 +647,13 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx)
|
||||
if (!BN_div(Ri,NULL,Ri,&tmod,ctx)) goto err;
|
||||
/* Ni = (R*Ri-1)/N,
|
||||
* keep only least significant word: */
|
||||
# if 0 /* for OpenSSL 0.9.9 mont->n0 */
|
||||
mont->n0[0] = (Ri->top > 0) ? Ri->d[0] : 0;
|
||||
mont->n0[1] = 0;
|
||||
# else
|
||||
mont->n0 = (Ri->top > 0) ? Ri->d[0] : 0;
|
||||
# endif
|
||||
#endif
|
||||
}
|
||||
#else /* !MONT_WORD */
|
||||
{ /* bignum version */
|
||||
@@ -468,7 +689,12 @@ BN_MONT_CTX *BN_MONT_CTX_copy(BN_MONT_CTX *to, BN_MONT_CTX *from)
|
||||
if (!BN_copy(&(to->N),&(from->N))) return NULL;
|
||||
if (!BN_copy(&(to->Ni),&(from->Ni))) return NULL;
|
||||
to->ri=from->ri;
|
||||
#if 0 /* for OpenSSL 0.9.9 mont->n0 */
|
||||
to->n0[0]=from->n0[0];
|
||||
to->n0[1]=from->n0[1];
|
||||
#else
|
||||
to->n0=from->n0;
|
||||
#endif
|
||||
return(to);
|
||||
}
|
||||
|
||||
|
@@ -66,46 +66,157 @@
|
||||
#define BN_NIST_384_TOP (384+BN_BITS2-1)/BN_BITS2
|
||||
#define BN_NIST_521_TOP (521+BN_BITS2-1)/BN_BITS2
|
||||
|
||||
/* pre-computed tables are "carry-less" values of modulus*(i+1) */
|
||||
#if BN_BITS2 == 64
|
||||
static const BN_ULONG _nist_p_192[] =
|
||||
{0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFEULL,
|
||||
0xFFFFFFFFFFFFFFFFULL};
|
||||
static const BN_ULONG _nist_p_224[] =
|
||||
static const BN_ULONG _nist_p_192[][BN_NIST_192_TOP] = {
|
||||
{0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFEULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0xFFFFFFFFFFFFFFFEULL,0xFFFFFFFFFFFFFFFDULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0xFFFFFFFFFFFFFFFDULL,0xFFFFFFFFFFFFFFFCULL,0xFFFFFFFFFFFFFFFFULL}
|
||||
};
|
||||
static const BN_ULONG _nist_p_192_sqr[] = {
|
||||
0x0000000000000001ULL,0x0000000000000002ULL,0x0000000000000001ULL,
|
||||
0xFFFFFFFFFFFFFFFEULL,0xFFFFFFFFFFFFFFFDULL,0xFFFFFFFFFFFFFFFFULL
|
||||
};
|
||||
static const BN_ULONG _nist_p_224[][BN_NIST_224_TOP] = {
|
||||
{0x0000000000000001ULL,0xFFFFFFFF00000000ULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0x00000000FFFFFFFFULL};
|
||||
static const BN_ULONG _nist_p_256[] =
|
||||
0xFFFFFFFFFFFFFFFFULL,0x00000000FFFFFFFFULL},
|
||||
{0x0000000000000002ULL,0xFFFFFFFE00000000ULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0x00000001FFFFFFFFULL} /* this one is "carry-full" */
|
||||
};
|
||||
static const BN_ULONG _nist_p_224_sqr[] = {
|
||||
0x0000000000000001ULL,0xFFFFFFFE00000000ULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0x0000000200000000ULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFFFFFFFFFEULL,
|
||||
0xFFFFFFFFFFFFFFFFULL
|
||||
};
|
||||
static const BN_ULONG _nist_p_256[][BN_NIST_256_TOP] = {
|
||||
{0xFFFFFFFFFFFFFFFFULL,0x00000000FFFFFFFFULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFF00000001ULL};
|
||||
static const BN_ULONG _nist_p_384[] =
|
||||
{0x00000000FFFFFFFFULL,0xFFFFFFFF00000000ULL,
|
||||
0xFFFFFFFFFFFFFFFEULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL};
|
||||
0x0000000000000000ULL,0xFFFFFFFF00000001ULL},
|
||||
{0xFFFFFFFFFFFFFFFEULL,0x00000001FFFFFFFFULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFE00000002ULL},
|
||||
{0xFFFFFFFFFFFFFFFDULL,0x00000002FFFFFFFFULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFD00000003ULL},
|
||||
{0xFFFFFFFFFFFFFFFCULL,0x00000003FFFFFFFFULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFC00000004ULL},
|
||||
{0xFFFFFFFFFFFFFFFBULL,0x00000004FFFFFFFFULL,
|
||||
0x0000000000000000ULL,0xFFFFFFFB00000005ULL},
|
||||
};
|
||||
static const BN_ULONG _nist_p_256_sqr[] = {
|
||||
0x0000000000000001ULL,0xFFFFFFFE00000000ULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0x00000001FFFFFFFEULL,
|
||||
0x00000001FFFFFFFEULL,0x00000001FFFFFFFEULL,
|
||||
0xFFFFFFFE00000001ULL,0xFFFFFFFE00000002ULL
|
||||
};
|
||||
static const BN_ULONG _nist_p_384[][BN_NIST_384_TOP] = {
|
||||
{0x00000000FFFFFFFFULL,0xFFFFFFFF00000000ULL,0xFFFFFFFFFFFFFFFEULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0x00000001FFFFFFFEULL,0xFFFFFFFE00000000ULL,0xFFFFFFFFFFFFFFFDULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0x00000002FFFFFFFDULL,0xFFFFFFFD00000000ULL,0xFFFFFFFFFFFFFFFCULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0x00000003FFFFFFFCULL,0xFFFFFFFC00000000ULL,0xFFFFFFFFFFFFFFFBULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
{0x00000004FFFFFFFBULL,0xFFFFFFFB00000000ULL,0xFFFFFFFFFFFFFFFAULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL},
|
||||
};
|
||||
static const BN_ULONG _nist_p_384_sqr[] = {
|
||||
0xFFFFFFFE00000001ULL,0x0000000200000000ULL,0xFFFFFFFE00000000ULL,
|
||||
0x0000000200000000ULL,0x0000000000000001ULL,0x0000000000000000ULL,
|
||||
0x00000001FFFFFFFEULL,0xFFFFFFFE00000000ULL,0xFFFFFFFFFFFFFFFDULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL
|
||||
};
|
||||
static const BN_ULONG _nist_p_521[] =
|
||||
{0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0x00000000000001FFULL};
|
||||
static const BN_ULONG _nist_p_521_sqr[] = {
|
||||
0x0000000000000001ULL,0x0000000000000000ULL,0x0000000000000000ULL,
|
||||
0x0000000000000000ULL,0x0000000000000000ULL,0x0000000000000000ULL,
|
||||
0x0000000000000000ULL,0x0000000000000000ULL,0xFFFFFFFFFFFFFC00ULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,0xFFFFFFFFFFFFFFFFULL,
|
||||
0xFFFFFFFFFFFFFFFFULL,0x000000000003FFFFULL
|
||||
};
|
||||
#elif BN_BITS2 == 32
|
||||
static const BN_ULONG _nist_p_192[] = {0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFE,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF};
|
||||
static const BN_ULONG _nist_p_224[] = {0x00000001,0x00000000,0x00000000,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF};
|
||||
static const BN_ULONG _nist_p_256[] = {0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0x00000000,0x00000000,0x00000000,0x00000001,0xFFFFFFFF};
|
||||
static const BN_ULONG _nist_p_384[] = {0xFFFFFFFF,0x00000000,0x00000000,
|
||||
0xFFFFFFFF,0xFFFFFFFE,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF};
|
||||
static const BN_ULONG _nist_p_192[][BN_NIST_192_TOP] = {
|
||||
{0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFE,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFE,0xFFFFFFFF,0xFFFFFFFD,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFD,0xFFFFFFFF,0xFFFFFFFC,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF}
|
||||
};
|
||||
static const BN_ULONG _nist_p_192_sqr[] = {
|
||||
0x00000001,0x00000000,0x00000002,0x00000000,0x00000001,0x00000000,
|
||||
0xFFFFFFFE,0xFFFFFFFF,0xFFFFFFFD,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
|
||||
};
|
||||
static const BN_ULONG _nist_p_224[][BN_NIST_224_TOP] = {
|
||||
{0x00000001,0x00000000,0x00000000,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0x00000002,0x00000000,0x00000000,0xFFFFFFFE,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF}
|
||||
};
|
||||
static const BN_ULONG _nist_p_224_sqr[] = {
|
||||
0x00000001,0x00000000,0x00000000,0xFFFFFFFE,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000002,
|
||||
0x00000000,0x00000000,0xFFFFFFFE,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF
|
||||
};
|
||||
static const BN_ULONG _nist_p_256[][BN_NIST_256_TOP] = {
|
||||
{0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,
|
||||
0x00000000,0x00000000,0x00000001,0xFFFFFFFF},
|
||||
{0xFFFFFFFE,0xFFFFFFFF,0xFFFFFFFF,0x00000001,
|
||||
0x00000000,0x00000000,0x00000002,0xFFFFFFFE},
|
||||
{0xFFFFFFFD,0xFFFFFFFF,0xFFFFFFFF,0x00000002,
|
||||
0x00000000,0x00000000,0x00000003,0xFFFFFFFD},
|
||||
{0xFFFFFFFC,0xFFFFFFFF,0xFFFFFFFF,0x00000003,
|
||||
0x00000000,0x00000000,0x00000004,0xFFFFFFFC},
|
||||
{0xFFFFFFFB,0xFFFFFFFF,0xFFFFFFFF,0x00000004,
|
||||
0x00000000,0x00000000,0x00000005,0xFFFFFFFB},
|
||||
};
|
||||
static const BN_ULONG _nist_p_256_sqr[] = {
|
||||
0x00000001,0x00000000,0x00000000,0xFFFFFFFE,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFE,0x00000001,
|
||||
0xFFFFFFFE,0x00000001,0xFFFFFFFE,0x00000001,
|
||||
0x00000001,0xFFFFFFFE,0x00000002,0xFFFFFFFE
|
||||
};
|
||||
static const BN_ULONG _nist_p_384[][BN_NIST_384_TOP] = {
|
||||
{0xFFFFFFFF,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFE,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFE,0x00000001,0x00000000,0xFFFFFFFE,0xFFFFFFFD,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFD,0x00000002,0x00000000,0xFFFFFFFD,0xFFFFFFFC,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFC,0x00000003,0x00000000,0xFFFFFFFC,0xFFFFFFFB,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
{0xFFFFFFFB,0x00000004,0x00000000,0xFFFFFFFB,0xFFFFFFFA,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF},
|
||||
};
|
||||
static const BN_ULONG _nist_p_384_sqr[] = {
|
||||
0x00000001,0xFFFFFFFE,0x00000000,0x00000002,0x00000000,0xFFFFFFFE,
|
||||
0x00000000,0x00000002,0x00000001,0x00000000,0x00000000,0x00000000,
|
||||
0xFFFFFFFE,0x00000001,0x00000000,0xFFFFFFFE,0xFFFFFFFD,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
|
||||
};
|
||||
static const BN_ULONG _nist_p_521[] = {0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0x000001FF};
|
||||
static const BN_ULONG _nist_p_521_sqr[] = {
|
||||
0x00000001,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFC00,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0xFFFFFFFF,0xFFFFFFFF,0x0003FFFF
|
||||
};
|
||||
#else
|
||||
#error "unsupported BN_BITS2"
|
||||
#endif
|
||||
|
||||
|
||||
static const BIGNUM _bignum_nist_p_192 =
|
||||
{
|
||||
(BN_ULONG *)_nist_p_192,
|
||||
(BN_ULONG *)_nist_p_192[0],
|
||||
BN_NIST_192_TOP,
|
||||
BN_NIST_192_TOP,
|
||||
0,
|
||||
@@ -114,7 +225,7 @@ static const BIGNUM _bignum_nist_p_192 =
|
||||
|
||||
static const BIGNUM _bignum_nist_p_224 =
|
||||
{
|
||||
(BN_ULONG *)_nist_p_224,
|
||||
(BN_ULONG *)_nist_p_224[0],
|
||||
BN_NIST_224_TOP,
|
||||
BN_NIST_224_TOP,
|
||||
0,
|
||||
@@ -123,7 +234,7 @@ static const BIGNUM _bignum_nist_p_224 =
|
||||
|
||||
static const BIGNUM _bignum_nist_p_256 =
|
||||
{
|
||||
(BN_ULONG *)_nist_p_256,
|
||||
(BN_ULONG *)_nist_p_256[0],
|
||||
BN_NIST_256_TOP,
|
||||
BN_NIST_256_TOP,
|
||||
0,
|
||||
@@ -132,7 +243,7 @@ static const BIGNUM _bignum_nist_p_256 =
|
||||
|
||||
static const BIGNUM _bignum_nist_p_384 =
|
||||
{
|
||||
(BN_ULONG *)_nist_p_384,
|
||||
(BN_ULONG *)_nist_p_384[0],
|
||||
BN_NIST_384_TOP,
|
||||
BN_NIST_384_TOP,
|
||||
0,
|
||||
@@ -180,7 +291,9 @@ static void nist_cp_bn_0(BN_ULONG *buf, BN_ULONG *a, int top, int max)
|
||||
int i;
|
||||
BN_ULONG *_tmp1 = (buf), *_tmp2 = (a);
|
||||
|
||||
#ifdef BN_DEBUG
|
||||
OPENSSL_assert(top <= max);
|
||||
#endif
|
||||
for (i = (top); i != 0; i--)
|
||||
*_tmp1++ = *_tmp2++;
|
||||
for (i = (max) - (top); i != 0; i--)
|
||||
@@ -198,9 +311,14 @@ static void nist_cp_bn(BN_ULONG *buf, BN_ULONG *a, int top)
|
||||
#if BN_BITS2 == 64
|
||||
#define bn_cp_64(to, n, from, m) (to)[n] = (m>=0)?((from)[m]):0;
|
||||
#define bn_64_set_0(to, n) (to)[n] = (BN_ULONG)0;
|
||||
/* TBD */
|
||||
#define bn_cp_32(to, n, from, m) (to)[n] = (m>=0)?((from)[m]):0;
|
||||
#define bn_32_set_0(to, n) (to)[n] = (BN_ULONG)0;
|
||||
/*
|
||||
* two following macros are implemented under assumption that they
|
||||
* are called in a sequence with *ascending* n, i.e. as they are...
|
||||
*/
|
||||
#define bn_cp_32_naked(to, n, from, m) (((n)&1)?(to[(n)/2]|=((m)&1)?(from[(m)/2]&BN_MASK2h):(from[(m)/2]<<32))\
|
||||
:(to[(n)/2] =((m)&1)?(from[(m)/2]>>32):(from[(m)/2]&BN_MASK2l)))
|
||||
#define bn_32_set_0(to, n) (((n)&1)?(to[(n)/2]&=BN_MASK2l):(to[(n)/2]=0));
|
||||
#define bn_cp_32(to,n,from,m) ((m)>=0)?bn_cp_32_naked(to,n,from,m):bn_32_set_0(to,n)
|
||||
#else
|
||||
#define bn_cp_64(to, n, from, m) \
|
||||
{ \
|
||||
@@ -221,9 +339,9 @@ static void nist_cp_bn(BN_ULONG *buf, BN_ULONG *a, int top)
|
||||
|
||||
#define nist_set_192(to, from, a1, a2, a3) \
|
||||
{ \
|
||||
if (a3 != 0) bn_cp_64(to, 0, from, (a3) - 3) else bn_64_set_0(to, 0)\
|
||||
bn_cp_64(to, 0, from, (a3) - 3) \
|
||||
bn_cp_64(to, 1, from, (a2) - 3) \
|
||||
if (a1 != 0) bn_cp_64(to, 2, from, (a1) - 3) else bn_64_set_0(to, 2)\
|
||||
bn_cp_64(to, 2, from, (a1) - 3) \
|
||||
}
|
||||
|
||||
int BN_nist_mod_192(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
@@ -237,11 +355,16 @@ int BN_nist_mod_192(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
c_d[BN_NIST_192_TOP],
|
||||
*res;
|
||||
size_t mask;
|
||||
static const BIGNUM _bignum_nist_p_192_sqr = {
|
||||
(BN_ULONG *)_nist_p_192_sqr,
|
||||
sizeof(_nist_p_192_sqr)/sizeof(_nist_p_192_sqr[0]),
|
||||
sizeof(_nist_p_192_sqr)/sizeof(_nist_p_192_sqr[0]),
|
||||
0,BN_FLG_STATIC_DATA };
|
||||
|
||||
field = &_bignum_nist_p_192; /* just to make sure */
|
||||
|
||||
if (BN_is_negative(a) || a->top > 2*BN_NIST_192_TOP)
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
if (BN_is_negative(a) || BN_ucmp(a,&_bignum_nist_p_192_sqr)>=0)
|
||||
return BN_nnmod(r, a, field, ctx);
|
||||
|
||||
i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
@@ -265,50 +388,49 @@ int BN_nist_mod_192(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
nist_cp_bn_0(buf, a_d + BN_NIST_192_TOP, top - BN_NIST_192_TOP, BN_NIST_192_TOP);
|
||||
|
||||
nist_set_192(t_d, buf, 0, 3, 3);
|
||||
carry = bn_add_words(r_d, r_d, t_d, BN_NIST_192_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_192,BN_NIST_192_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry = (int)bn_add_words(r_d, r_d, t_d, BN_NIST_192_TOP);
|
||||
nist_set_192(t_d, buf, 4, 4, 0);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_192_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_192,BN_NIST_192_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_192_TOP);
|
||||
nist_set_192(t_d, buf, 5, 5, 5)
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_192_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_192,BN_NIST_192_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_192_TOP);
|
||||
|
||||
if (carry > 0)
|
||||
carry = (int)bn_sub_words(r_d,r_d,_nist_p_192[carry-1],BN_NIST_192_TOP);
|
||||
else
|
||||
carry = 1;
|
||||
|
||||
/*
|
||||
* we need 'if (carry==0 || result>=modulus) result-=modulus;'
|
||||
* as comparison implies subtraction, we can write
|
||||
* 'tmp=result-modulus; if (!carry || !borrow) result=tmp;'
|
||||
* this is what happens below, but without explicit if:-) a.
|
||||
*/
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_192[0],BN_NIST_192_TOP);
|
||||
mask &= 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&~mask) | ((size_t)r_d&mask));
|
||||
nist_cp_bn(r_d, res, BN_NIST_192_TOP);
|
||||
r->top = BN_NIST_192_TOP;
|
||||
bn_correct_top(r);
|
||||
|
||||
if (BN_ucmp(field, r) <= 0)
|
||||
{
|
||||
if (!BN_usub(r, r, field)) return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
typedef BN_ULONG (*bn_addsub_f)(BN_ULONG *,const BN_ULONG *,const BN_ULONG *,int);
|
||||
|
||||
#define nist_set_224(to, from, a1, a2, a3, a4, a5, a6, a7) \
|
||||
{ \
|
||||
if (a7 != 0) bn_cp_32(to, 0, from, (a7) - 7) else bn_32_set_0(to, 0)\
|
||||
if (a6 != 0) bn_cp_32(to, 1, from, (a6) - 7) else bn_32_set_0(to, 1)\
|
||||
if (a5 != 0) bn_cp_32(to, 2, from, (a5) - 7) else bn_32_set_0(to, 2)\
|
||||
if (a4 != 0) bn_cp_32(to, 3, from, (a4) - 7) else bn_32_set_0(to, 3)\
|
||||
if (a3 != 0) bn_cp_32(to, 4, from, (a3) - 7) else bn_32_set_0(to, 4)\
|
||||
if (a2 != 0) bn_cp_32(to, 5, from, (a2) - 7) else bn_32_set_0(to, 5)\
|
||||
if (a1 != 0) bn_cp_32(to, 6, from, (a1) - 7) else bn_32_set_0(to, 6)\
|
||||
bn_cp_32(to, 0, from, (a7) - 7) \
|
||||
bn_cp_32(to, 1, from, (a6) - 7) \
|
||||
bn_cp_32(to, 2, from, (a5) - 7) \
|
||||
bn_cp_32(to, 3, from, (a4) - 7) \
|
||||
bn_cp_32(to, 4, from, (a3) - 7) \
|
||||
bn_cp_32(to, 5, from, (a2) - 7) \
|
||||
bn_cp_32(to, 6, from, (a1) - 7) \
|
||||
}
|
||||
|
||||
int BN_nist_mod_224(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
#if BN_BITS2 == 32
|
||||
int top = a->top, i;
|
||||
int carry;
|
||||
BN_ULONG *r_d, *a_d = a->d;
|
||||
@@ -317,11 +439,18 @@ int BN_nist_mod_224(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
c_d[BN_NIST_224_TOP],
|
||||
*res;
|
||||
size_t mask;
|
||||
union { bn_addsub_f f; size_t p; } u;
|
||||
static const BIGNUM _bignum_nist_p_224_sqr = {
|
||||
(BN_ULONG *)_nist_p_224_sqr,
|
||||
sizeof(_nist_p_224_sqr)/sizeof(_nist_p_224_sqr[0]),
|
||||
sizeof(_nist_p_224_sqr)/sizeof(_nist_p_224_sqr[0]),
|
||||
0,BN_FLG_STATIC_DATA };
|
||||
|
||||
|
||||
field = &_bignum_nist_p_224; /* just to make sure */
|
||||
|
||||
if (BN_is_negative(a) || a->top > 2*BN_NIST_224_TOP)
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
if (BN_is_negative(a) || BN_ucmp(a,&_bignum_nist_p_224_sqr)>=0)
|
||||
return BN_nnmod(r, a, field, ctx);
|
||||
|
||||
i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
@@ -342,72 +471,77 @@ int BN_nist_mod_224(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
else
|
||||
r_d = a_d;
|
||||
|
||||
#if BN_BITS2==64
|
||||
/* copy upper 256 bits of 448 bit number ... */
|
||||
nist_cp_bn_0(t_d, a_d + (BN_NIST_224_TOP-1), top - (BN_NIST_224_TOP-1), BN_NIST_224_TOP);
|
||||
/* ... and right shift by 32 to obtain upper 224 bits */
|
||||
nist_set_224(buf, t_d, 14, 13, 12, 11, 10, 9, 8);
|
||||
/* truncate lower part to 224 bits too */
|
||||
r_d[BN_NIST_224_TOP-1] &= BN_MASK2l;
|
||||
#else
|
||||
nist_cp_bn_0(buf, a_d + BN_NIST_224_TOP, top - BN_NIST_224_TOP, BN_NIST_224_TOP);
|
||||
|
||||
#endif
|
||||
nist_set_224(t_d, buf, 10, 9, 8, 7, 0, 0, 0);
|
||||
carry = bn_add_words(r_d, r_d, t_d, BN_NIST_224_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry = (int)bn_add_words(r_d, r_d, t_d, BN_NIST_224_TOP);
|
||||
nist_set_224(t_d, buf, 0, 13, 12, 11, 0, 0, 0);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_224_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_224_TOP);
|
||||
nist_set_224(t_d, buf, 13, 12, 11, 10, 9, 8, 7);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_224_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, res, t_d, BN_NIST_224_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_224_TOP);
|
||||
nist_set_224(t_d, buf, 0, 0, 0, 0, 13, 12, 11);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_224_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_224_TOP);
|
||||
|
||||
nist_cp_bn(r_d, res, BN_NIST_224_TOP);
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_224_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_224,BN_NIST_224_TOP);
|
||||
#if BN_BITS2==64
|
||||
carry = (int)(r_d[BN_NIST_224_TOP-1]>>32);
|
||||
#endif
|
||||
u.f = bn_sub_words;
|
||||
if (carry > 0)
|
||||
{
|
||||
carry = (int)bn_sub_words(r_d,r_d,_nist_p_224[carry-1],BN_NIST_224_TOP);
|
||||
#if BN_BITS2==64
|
||||
carry=(int)(~(r_d[BN_NIST_224_TOP-1]>>32))&1;
|
||||
#endif
|
||||
}
|
||||
else if (carry < 0)
|
||||
{
|
||||
/* it's a bit more comlicated logic in this case.
|
||||
* if bn_add_words yields no carry, then result
|
||||
* has to be adjusted by unconditionally *adding*
|
||||
* the modulus. but if it does, then result has
|
||||
* to be compared to the modulus and conditionally
|
||||
* adjusted by *subtracting* the latter. */
|
||||
carry = (int)bn_add_words(r_d,r_d,_nist_p_224[-carry-1],BN_NIST_224_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
u.p = ((size_t)bn_sub_words&mask) | ((size_t)bn_add_words&~mask);
|
||||
}
|
||||
else
|
||||
carry = 1;
|
||||
|
||||
/* otherwise it's effectively same as in BN_nist_mod_192... */
|
||||
mask = 0-(size_t)(*u.f)(c_d,r_d,_nist_p_224[0],BN_NIST_224_TOP);
|
||||
mask &= 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&~mask) | ((size_t)r_d&mask));
|
||||
nist_cp_bn(r_d, res, BN_NIST_224_TOP);
|
||||
r->top = BN_NIST_224_TOP;
|
||||
bn_correct_top(r);
|
||||
|
||||
if (BN_ucmp(field, r) <= 0)
|
||||
{
|
||||
if (!BN_usub(r, r, field)) return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
#else /* BN_BITS!=32 */
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
#define nist_set_256(to, from, a1, a2, a3, a4, a5, a6, a7, a8) \
|
||||
{ \
|
||||
if (a8 != 0) bn_cp_32(to, 0, from, (a8) - 8) else bn_32_set_0(to, 0)\
|
||||
if (a7 != 0) bn_cp_32(to, 1, from, (a7) - 8) else bn_32_set_0(to, 1)\
|
||||
if (a6 != 0) bn_cp_32(to, 2, from, (a6) - 8) else bn_32_set_0(to, 2)\
|
||||
if (a5 != 0) bn_cp_32(to, 3, from, (a5) - 8) else bn_32_set_0(to, 3)\
|
||||
if (a4 != 0) bn_cp_32(to, 4, from, (a4) - 8) else bn_32_set_0(to, 4)\
|
||||
if (a3 != 0) bn_cp_32(to, 5, from, (a3) - 8) else bn_32_set_0(to, 5)\
|
||||
if (a2 != 0) bn_cp_32(to, 6, from, (a2) - 8) else bn_32_set_0(to, 6)\
|
||||
if (a1 != 0) bn_cp_32(to, 7, from, (a1) - 8) else bn_32_set_0(to, 7)\
|
||||
bn_cp_32(to, 0, from, (a8) - 8) \
|
||||
bn_cp_32(to, 1, from, (a7) - 8) \
|
||||
bn_cp_32(to, 2, from, (a6) - 8) \
|
||||
bn_cp_32(to, 3, from, (a5) - 8) \
|
||||
bn_cp_32(to, 4, from, (a4) - 8) \
|
||||
bn_cp_32(to, 5, from, (a3) - 8) \
|
||||
bn_cp_32(to, 6, from, (a2) - 8) \
|
||||
bn_cp_32(to, 7, from, (a1) - 8) \
|
||||
}
|
||||
|
||||
int BN_nist_mod_256(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
#if BN_BITS2 == 32
|
||||
int i, top = a->top;
|
||||
int carry = 0;
|
||||
register BN_ULONG *a_d = a->d, *r_d;
|
||||
@@ -416,11 +550,17 @@ int BN_nist_mod_256(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
c_d[BN_NIST_256_TOP],
|
||||
*res;
|
||||
size_t mask;
|
||||
union { bn_addsub_f f; size_t p; } u;
|
||||
static const BIGNUM _bignum_nist_p_256_sqr = {
|
||||
(BN_ULONG *)_nist_p_256_sqr,
|
||||
sizeof(_nist_p_256_sqr)/sizeof(_nist_p_256_sqr[0]),
|
||||
sizeof(_nist_p_256_sqr)/sizeof(_nist_p_256_sqr[0]),
|
||||
0,BN_FLG_STATIC_DATA };
|
||||
|
||||
field = &_bignum_nist_p_256; /* just to make sure */
|
||||
|
||||
if (BN_is_negative(a) || a->top > 2*BN_NIST_256_TOP)
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
if (BN_is_negative(a) || BN_ucmp(a,&_bignum_nist_p_256_sqr)>=0)
|
||||
return BN_nnmod(r, a, field, ctx);
|
||||
|
||||
i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
@@ -446,116 +586,84 @@ int BN_nist_mod_256(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
/*S1*/
|
||||
nist_set_256(t_d, buf, 15, 14, 13, 12, 11, 0, 0, 0);
|
||||
/*S2*/
|
||||
nist_set_256(c_d,buf, 0, 15, 14, 13, 12, 0, 0, 0);
|
||||
carry = bn_add_words(t_d, t_d, c_d, BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,t_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)t_d&~mask));
|
||||
|
||||
carry = bn_add_words(t_d, res, res, BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,t_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)t_d&~mask));
|
||||
|
||||
carry = bn_add_words(r_d, r_d, res, BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
nist_set_256(c_d, buf, 0, 15, 14, 13, 12, 0, 0, 0);
|
||||
carry = (int)bn_add_words(t_d, t_d, c_d, BN_NIST_256_TOP);
|
||||
/* left shift */
|
||||
{
|
||||
register BN_ULONG *ap,t,c;
|
||||
ap = t_d;
|
||||
c=0;
|
||||
for (i = BN_NIST_256_TOP; i != 0; --i)
|
||||
{
|
||||
t= *ap;
|
||||
*(ap++)=((t<<1)|c)&BN_MASK2;
|
||||
c=(t & BN_TBIT)?1:0;
|
||||
}
|
||||
carry <<= 1;
|
||||
carry |= c;
|
||||
}
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*S3*/
|
||||
nist_set_256(t_d, buf, 15, 14, 0, 0, 0, 10, 9, 8);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*S4*/
|
||||
nist_set_256(t_d, buf, 8, 13, 15, 14, 13, 11, 10, 9);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*D1*/
|
||||
nist_set_256(t_d, buf, 10, 8, 0, 0, 0, 13, 12, 11);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, res, t_d, BN_NIST_256_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*D2*/
|
||||
nist_set_256(t_d, buf, 11, 9, 0, 0, 15, 14, 13, 12);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*D3*/
|
||||
nist_set_256(t_d, buf, 12, 0, 10, 9, 8, 15, 14, 13);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
/*D4*/
|
||||
nist_set_256(t_d, buf, 13, 0, 11, 10, 9, 0, 15, 14);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_256_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP);
|
||||
|
||||
nist_cp_bn(r_d, res, BN_NIST_384_TOP);
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_256_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_256,BN_NIST_256_TOP);
|
||||
#endif
|
||||
/* see BN_nist_mod_224 for explanation */
|
||||
u.f = bn_sub_words;
|
||||
if (carry > 0)
|
||||
carry = (int)bn_sub_words(r_d,r_d,_nist_p_256[carry-1],BN_NIST_256_TOP);
|
||||
else if (carry < 0)
|
||||
{
|
||||
carry = (int)bn_add_words(r_d,r_d,_nist_p_256[-carry-1],BN_NIST_256_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
u.p = ((size_t)bn_sub_words&mask) | ((size_t)bn_add_words&~mask);
|
||||
}
|
||||
else
|
||||
carry = 1;
|
||||
|
||||
mask = 0-(size_t)(*u.f)(c_d,r_d,_nist_p_256[0],BN_NIST_256_TOP);
|
||||
mask &= 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&~mask) | ((size_t)r_d&mask));
|
||||
nist_cp_bn(r_d, res, BN_NIST_256_TOP);
|
||||
r->top = BN_NIST_256_TOP;
|
||||
bn_correct_top(r);
|
||||
|
||||
if (BN_ucmp(field, r) <= 0)
|
||||
{
|
||||
if (!BN_usub(r, r, field)) return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
#else /* BN_BITS!=32 */
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
#define nist_set_384(to,from,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) \
|
||||
{ \
|
||||
if (a12 != 0) bn_cp_32(to, 0, from, (a12) - 12) else bn_32_set_0(to, 0)\
|
||||
if (a11 != 0) bn_cp_32(to, 1, from, (a11) - 12) else bn_32_set_0(to, 1)\
|
||||
if (a10 != 0) bn_cp_32(to, 2, from, (a10) - 12) else bn_32_set_0(to, 2)\
|
||||
if (a9 != 0) bn_cp_32(to, 3, from, (a9) - 12) else bn_32_set_0(to, 3)\
|
||||
if (a8 != 0) bn_cp_32(to, 4, from, (a8) - 12) else bn_32_set_0(to, 4)\
|
||||
if (a7 != 0) bn_cp_32(to, 5, from, (a7) - 12) else bn_32_set_0(to, 5)\
|
||||
if (a6 != 0) bn_cp_32(to, 6, from, (a6) - 12) else bn_32_set_0(to, 6)\
|
||||
if (a5 != 0) bn_cp_32(to, 7, from, (a5) - 12) else bn_32_set_0(to, 7)\
|
||||
if (a4 != 0) bn_cp_32(to, 8, from, (a4) - 12) else bn_32_set_0(to, 8)\
|
||||
if (a3 != 0) bn_cp_32(to, 9, from, (a3) - 12) else bn_32_set_0(to, 9)\
|
||||
if (a2 != 0) bn_cp_32(to, 10, from, (a2) - 12) else bn_32_set_0(to, 10)\
|
||||
if (a1 != 0) bn_cp_32(to, 11, from, (a1) - 12) else bn_32_set_0(to, 11)\
|
||||
bn_cp_32(to, 0, from, (a12) - 12) \
|
||||
bn_cp_32(to, 1, from, (a11) - 12) \
|
||||
bn_cp_32(to, 2, from, (a10) - 12) \
|
||||
bn_cp_32(to, 3, from, (a9) - 12) \
|
||||
bn_cp_32(to, 4, from, (a8) - 12) \
|
||||
bn_cp_32(to, 5, from, (a7) - 12) \
|
||||
bn_cp_32(to, 6, from, (a6) - 12) \
|
||||
bn_cp_32(to, 7, from, (a5) - 12) \
|
||||
bn_cp_32(to, 8, from, (a4) - 12) \
|
||||
bn_cp_32(to, 9, from, (a3) - 12) \
|
||||
bn_cp_32(to, 10, from, (a2) - 12) \
|
||||
bn_cp_32(to, 11, from, (a1) - 12) \
|
||||
}
|
||||
|
||||
int BN_nist_mod_384(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
#if BN_BITS2 == 32
|
||||
int i, top = a->top;
|
||||
int carry = 0;
|
||||
register BN_ULONG *r_d, *a_d = a->d;
|
||||
@@ -564,11 +672,18 @@ int BN_nist_mod_384(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
c_d[BN_NIST_384_TOP],
|
||||
*res;
|
||||
size_t mask;
|
||||
union { bn_addsub_f f; size_t p; } u;
|
||||
static const BIGNUM _bignum_nist_p_384_sqr = {
|
||||
(BN_ULONG *)_nist_p_384_sqr,
|
||||
sizeof(_nist_p_384_sqr)/sizeof(_nist_p_384_sqr[0]),
|
||||
sizeof(_nist_p_384_sqr)/sizeof(_nist_p_384_sqr[0]),
|
||||
0,BN_FLG_STATIC_DATA };
|
||||
|
||||
|
||||
field = &_bignum_nist_p_384; /* just to make sure */
|
||||
|
||||
if (BN_is_negative(a) || a->top > 2*BN_NIST_384_TOP)
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
if (BN_is_negative(a) || BN_ucmp(a,&_bignum_nist_p_384_sqr)>=0)
|
||||
return BN_nnmod(r, a, field, ctx);
|
||||
|
||||
i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
@@ -606,171 +721,116 @@ int BN_nist_mod_384(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
}
|
||||
*ap=c;
|
||||
}
|
||||
carry = bn_add_words(r_d+(128/BN_BITS2), r_d+(128/BN_BITS2),
|
||||
carry = (int)bn_add_words(r_d+(128/BN_BITS2), r_d+(128/BN_BITS2),
|
||||
t_d, BN_NIST_256_TOP);
|
||||
/*
|
||||
* we need if (result>=modulus) subtract(result,modulus);
|
||||
* in n-bit space this can be expressed as
|
||||
* if (carry || result>=modulus) subtract(result,modulus);
|
||||
* the catch is that comparison implies subtraction and
|
||||
* therefore one can write tmp=subtract(result,modulus);
|
||||
* and then if(carry || !borrow) result=tmp; this's what
|
||||
* happens below, but without explicit if:-) a.
|
||||
*/
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
/*S2 */
|
||||
carry = bn_add_words(r_d, res, buf, BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, buf, BN_NIST_384_TOP);
|
||||
/*S3*/
|
||||
nist_set_384(t_d,buf,20,19,18,17,16,15,14,13,12,23,22,21);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*S4*/
|
||||
nist_set_384(t_d,buf,19,18,17,16,15,14,13,12,20,0,23,0);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*S5*/
|
||||
nist_set_384(t_d, buf,0,0,0,0,23,22,21,20,0,0,0,0);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*S6*/
|
||||
nist_set_384(t_d,buf,0,0,0,0,0,0,23,22,21,0,0,20);
|
||||
carry = bn_add_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = ~mask | (0-(size_t)carry);
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
|
||||
carry += (int)bn_add_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*D1*/
|
||||
nist_set_384(t_d,buf,22,21,20,19,18,17,16,15,14,13,12,23);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, res, t_d, BN_NIST_384_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*D2*/
|
||||
nist_set_384(t_d,buf,0,0,0,0,0,0,0,23,22,21,20,0);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_384_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
#endif
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
/*D3*/
|
||||
nist_set_384(t_d,buf,0,0,0,0,0,0,0,23,23,0,0,0);
|
||||
#if BRANCH_FREE
|
||||
carry = bn_sub_words(r_d, res, t_d, BN_NIST_384_TOP);
|
||||
bn_add_words(c_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&mask) | ((size_t)r_d&~mask));
|
||||
carry -= (int)bn_sub_words(r_d, r_d, t_d, BN_NIST_384_TOP);
|
||||
|
||||
/* see BN_nist_mod_224 for explanation */
|
||||
u.f = bn_sub_words;
|
||||
if (carry > 0)
|
||||
carry = (int)bn_sub_words(r_d,r_d,_nist_p_384[carry-1],BN_NIST_384_TOP);
|
||||
else if (carry < 0)
|
||||
{
|
||||
carry = (int)bn_add_words(r_d,r_d,_nist_p_384[-carry-1],BN_NIST_384_TOP);
|
||||
mask = 0-(size_t)carry;
|
||||
u.p = ((size_t)bn_sub_words&mask) | ((size_t)bn_add_words&~mask);
|
||||
}
|
||||
else
|
||||
carry = 1;
|
||||
|
||||
mask = 0-(size_t)(*u.f)(c_d,r_d,_nist_p_384[0],BN_NIST_384_TOP);
|
||||
mask &= 0-(size_t)carry;
|
||||
res = (BN_ULONG *)(((size_t)c_d&~mask) | ((size_t)r_d&mask));
|
||||
nist_cp_bn(r_d, res, BN_NIST_384_TOP);
|
||||
#else
|
||||
if (bn_sub_words(r_d, r_d, t_d, BN_NIST_384_TOP))
|
||||
bn_add_words(r_d,r_d,_nist_p_384,BN_NIST_384_TOP);
|
||||
#endif
|
||||
r->top = BN_NIST_384_TOP;
|
||||
bn_correct_top(r);
|
||||
|
||||
if (BN_ucmp(field, r) <= 0)
|
||||
{
|
||||
if (!BN_usub(r, r, field)) return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
#else /* BN_BITS!=32 */
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
#define BN_NIST_521_RSHIFT (521%BN_BITS2)
|
||||
#define BN_NIST_521_LSHIFT (BN_BITS2-BN_NIST_521_RSHIFT)
|
||||
#define BN_NIST_521_TOP_MASK ((BN_ULONG)BN_MASK2>>BN_NIST_521_LSHIFT)
|
||||
|
||||
int BN_nist_mod_521(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
BN_CTX *ctx)
|
||||
{
|
||||
#if BN_BITS2 == 64
|
||||
#define BN_NIST_521_TOP_MASK (BN_ULONG)0x1FF
|
||||
#elif BN_BITS2 == 32
|
||||
#define BN_NIST_521_TOP_MASK (BN_ULONG)0x1FF
|
||||
#endif
|
||||
int top, ret = 0;
|
||||
BIGNUM *tmp;
|
||||
int top = a->top, i;
|
||||
BN_ULONG *r_d, *a_d = a->d,
|
||||
t_d[BN_NIST_521_TOP],
|
||||
val,tmp,*res;
|
||||
size_t mask;
|
||||
static const BIGNUM _bignum_nist_p_521_sqr = {
|
||||
(BN_ULONG *)_nist_p_521_sqr,
|
||||
sizeof(_nist_p_521_sqr)/sizeof(_nist_p_521_sqr[0]),
|
||||
sizeof(_nist_p_521_sqr)/sizeof(_nist_p_521_sqr[0]),
|
||||
0,BN_FLG_STATIC_DATA };
|
||||
|
||||
field = &_bignum_nist_p_521; /* just to make sure */
|
||||
|
||||
if (BN_is_negative(a))
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
if (BN_is_negative(a) || BN_ucmp(a,&_bignum_nist_p_521_sqr)>=0)
|
||||
return BN_nnmod(r, a, field, ctx);
|
||||
|
||||
/* check whether a reduction is necessary */
|
||||
top = a->top;
|
||||
if (top < BN_NIST_521_TOP || ( top == BN_NIST_521_TOP &&
|
||||
(!(a->d[BN_NIST_521_TOP-1] & ~(BN_NIST_521_TOP_MASK)))))
|
||||
i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
{
|
||||
int i = BN_ucmp(field, a);
|
||||
if (i == 0)
|
||||
{
|
||||
BN_zero(r);
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef BN_DEBUG
|
||||
OPENSSL_assert(i > 0); /* because 'field' is 1111...1111 */
|
||||
#endif
|
||||
return (r == a)? 1 : (BN_copy(r ,a) != NULL);
|
||||
}
|
||||
BN_zero(r);
|
||||
return 1;
|
||||
}
|
||||
else if (i > 0)
|
||||
return (r == a)? 1 : (BN_copy(r ,a) != NULL);
|
||||
|
||||
if (BN_num_bits(a) > 2*521)
|
||||
return BN_nnmod(r, field, a, ctx);
|
||||
|
||||
BN_CTX_start(ctx);
|
||||
tmp = BN_CTX_get(ctx);
|
||||
if (!tmp)
|
||||
goto err;
|
||||
|
||||
if (!bn_wexpand(tmp, BN_NIST_521_TOP))
|
||||
goto err;
|
||||
nist_cp_bn(tmp->d, a->d, BN_NIST_521_TOP);
|
||||
|
||||
tmp->top = BN_NIST_521_TOP;
|
||||
tmp->d[BN_NIST_521_TOP-1] &= BN_NIST_521_TOP_MASK;
|
||||
bn_correct_top(tmp);
|
||||
|
||||
if (!BN_rshift(r, a, 521))
|
||||
goto err;
|
||||
|
||||
if (!BN_uadd(r, tmp, r))
|
||||
goto err;
|
||||
|
||||
if (BN_ucmp(field, r) <= 0)
|
||||
if (r != a)
|
||||
{
|
||||
if (!BN_usub(r, r, field)) goto err;
|
||||
if (!bn_wexpand(r,BN_NIST_521_TOP))
|
||||
return 0;
|
||||
r_d = r->d;
|
||||
nist_cp_bn(r_d,a_d, BN_NIST_521_TOP);
|
||||
}
|
||||
else
|
||||
r_d = a_d;
|
||||
|
||||
ret = 1;
|
||||
err:
|
||||
BN_CTX_end(ctx);
|
||||
/* upper 521 bits, copy ... */
|
||||
nist_cp_bn_0(t_d,a_d + (BN_NIST_521_TOP-1), top - (BN_NIST_521_TOP-1),BN_NIST_521_TOP);
|
||||
/* ... and right shift */
|
||||
for (val=t_d[0],i=0; i<BN_NIST_521_TOP-1; i++)
|
||||
{
|
||||
tmp = val>>BN_NIST_521_RSHIFT;
|
||||
val = t_d[i+1];
|
||||
t_d[i] = (tmp | val<<BN_NIST_521_LSHIFT) & BN_MASK2;
|
||||
}
|
||||
t_d[i] = val>>BN_NIST_521_RSHIFT;
|
||||
/* lower 521 bits */
|
||||
r_d[i] &= BN_NIST_521_TOP_MASK;
|
||||
|
||||
bn_check_top(r);
|
||||
return ret;
|
||||
bn_add_words(r_d,r_d,t_d,BN_NIST_521_TOP);
|
||||
mask = 0-(size_t)bn_sub_words(t_d,r_d,_nist_p_521,BN_NIST_521_TOP);
|
||||
res = (BN_ULONG *)(((size_t)t_d&~mask) | ((size_t)r_d&mask));
|
||||
nist_cp_bn(r_d,res,BN_NIST_521_TOP);
|
||||
r->top = BN_NIST_521_TOP;
|
||||
bn_correct_top(r);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
@@ -227,7 +227,7 @@ int BN_bntest_rand(BIGNUM *rnd, int bits, int top, int bottom)
|
||||
|
||||
|
||||
/* random number r: 0 <= r < range */
|
||||
static int bn_rand_range(int pseudo, BIGNUM *r, BIGNUM *range)
|
||||
static int bn_rand_range(int pseudo, BIGNUM *r, const BIGNUM *range)
|
||||
{
|
||||
int (*bn_rand)(BIGNUM *, int, int, int) = pseudo ? BN_pseudo_rand : BN_rand;
|
||||
int n;
|
||||
@@ -294,12 +294,12 @@ static int bn_rand_range(int pseudo, BIGNUM *r, BIGNUM *range)
|
||||
}
|
||||
|
||||
|
||||
int BN_rand_range(BIGNUM *r, BIGNUM *range)
|
||||
int BN_rand_range(BIGNUM *r, const BIGNUM *range)
|
||||
{
|
||||
return bn_rand_range(0, r, range);
|
||||
}
|
||||
|
||||
int BN_pseudo_rand_range(BIGNUM *r, BIGNUM *range)
|
||||
int BN_pseudo_rand_range(BIGNUM *r, const BIGNUM *range)
|
||||
{
|
||||
return bn_rand_range(1, r, range);
|
||||
}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* bn_x931p.c */
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2005.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -87,6 +87,11 @@ struct camellia_key_st
|
||||
|
||||
typedef struct camellia_key_st CAMELLIA_KEY;
|
||||
|
||||
#ifdef OPENSSL_FIPS
|
||||
int private_Camellia_set_key(const unsigned char *userKey, const int bits,
|
||||
CAMELLIA_KEY *key);
|
||||
#endif
|
||||
|
||||
int Camellia_set_key(const unsigned char *userKey, const int bits,
|
||||
CAMELLIA_KEY *key);
|
||||
|
||||
|
@@ -52,11 +52,24 @@
|
||||
#include <openssl/opensslv.h>
|
||||
#include <openssl/camellia.h>
|
||||
#include "cmll_locl.h"
|
||||
#include <openssl/crypto.h>
|
||||
#ifdef OPENSSL_FIPS
|
||||
#include <openssl/fips.h>
|
||||
#endif
|
||||
|
||||
const char CAMELLIA_version[]="CAMELLIA" OPENSSL_VERSION_PTEXT;
|
||||
|
||||
int Camellia_set_key(const unsigned char *userKey, const int bits,
|
||||
CAMELLIA_KEY *key)
|
||||
#ifdef OPENSSL_FIPS
|
||||
{
|
||||
if (FIPS_mode())
|
||||
FIPS_BAD_ABORT(CAMELLIA)
|
||||
return private_Camellia_set_key(userKey, bits, key);
|
||||
}
|
||||
int private_Camellia_set_key(const unsigned char *userKey, const int bits,
|
||||
CAMELLIA_KEY *key)
|
||||
#endif
|
||||
{
|
||||
if (!userKey || !key)
|
||||
{
|
||||
|
@@ -37,7 +37,7 @@ test:
|
||||
all: lib
|
||||
|
||||
lib: $(LIBOBJ)
|
||||
$(AR) $(LIB) $(LIBOBJ)
|
||||
$(ARX) $(LIB) $(LIBOBJ)
|
||||
$(RANLIB) $(LIB) || echo Never mind.
|
||||
@touch lib
|
||||
|
||||
|
@@ -830,7 +830,7 @@ int CMS_SignerInfo_verify(CMS_SignerInfo *si)
|
||||
cms_fixup_mctx(&mctx, si->pkey);
|
||||
r = EVP_VerifyFinal(&mctx,
|
||||
si->signature->data, si->signature->length, si->pkey);
|
||||
if (!r)
|
||||
if (r <= 0)
|
||||
CMSerr(CMS_F_CMS_SIGNERINFO_VERIFY, CMS_R_VERIFICATION_FAILURE);
|
||||
err:
|
||||
EVP_MD_CTX_cleanup(&mctx);
|
||||
|
@@ -68,7 +68,10 @@ static int cms_copy_content(BIO *out, BIO *in, unsigned int flags)
|
||||
if (out == NULL)
|
||||
tmpout = BIO_new(BIO_s_null());
|
||||
else if (flags & CMS_TEXT)
|
||||
{
|
||||
tmpout = BIO_new(BIO_s_mem());
|
||||
BIO_set_mem_eof_return(tmpout, 0);
|
||||
}
|
||||
else
|
||||
tmpout = out;
|
||||
|
||||
|
@@ -727,6 +727,7 @@ static long bio_zlib_ctrl(BIO *b, int cmd, long num, void *ptr)
|
||||
case BIO_CTRL_RESET:
|
||||
ctx->ocount = 0;
|
||||
ctx->odone = 0;
|
||||
ret = 1;
|
||||
break;
|
||||
|
||||
case BIO_CTRL_FLUSH:
|
||||
@@ -771,7 +772,7 @@ static long bio_zlib_ctrl(BIO *b, int cmd, long num, void *ptr)
|
||||
}
|
||||
ctx->obufsize = obs;
|
||||
}
|
||||
|
||||
ret = 1;
|
||||
break;
|
||||
|
||||
case BIO_C_DO_STATE_MACHINE:
|
||||
@@ -783,7 +784,6 @@ static long bio_zlib_ctrl(BIO *b, int cmd, long num, void *ptr)
|
||||
default:
|
||||
ret = BIO_ctrl(b->next_bio, cmd, num, ptr);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* conf_mall.c */
|
||||
/* Written by Stephen Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2001.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* conf_mod.c */
|
||||
/* Written by Stephen Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2001.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* conf_sap.c */
|
||||
/* Written by Stephen Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
|
||||
* project 2001.
|
||||
*/
|
||||
/* ====================================================================
|
||||
|
@@ -103,7 +103,6 @@ extern unsigned long OPENSSL_ia32cap_P;
|
||||
void OPENSSL_showfatal(const char *,...);
|
||||
void *OPENSSL_stderr(void);
|
||||
extern int OPENSSL_NONPIC_relocated;
|
||||
int OPENSSL_isservice(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -83,7 +83,7 @@ $ ENCRYPT_TYPES = "Basic,"+ -
|
||||
"BUFFER,BIO,STACK,LHASH,RAND,ERR,"+ -
|
||||
"EVP,EVP_2,ASN1,ASN1_2,PEM,X509,X509V3,"+ -
|
||||
"CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,UI,KRB5,"+ -
|
||||
"STORE,PQUEUE"
|
||||
"STORE,CMS,PQUEUE,JPAKE"
|
||||
$!
|
||||
$! Check To Make Sure We Have Valid Command Line Parameters.
|
||||
$!
|
||||
@@ -161,7 +161,7 @@ $!
|
||||
$ APPS_DES = "DES/DES,CBC3_ENC"
|
||||
$ APPS_PKCS7 = "ENC/ENC;DEC/DEC;SIGN/SIGN;VERIFY/VERIFY,EXAMPLE"
|
||||
$
|
||||
$ LIB_ = "cryptlib,mem,mem_clr,mem_dbg,cversion,ex_data,tmdiff,cpt_err,ebcdic,uid,o_time,o_str,o_dir"
|
||||
$ LIB_ = "cryptlib,dyn_lck,mem,mem_clr,mem_dbg,cversion,ex_data,tmdiff,cpt_err,ebcdic,uid,o_time,o_str,o_dir,o_init,fips_err"
|
||||
$ LIB_MD2 = "md2_dgst,md2_one"
|
||||
$ LIB_MD4 = "md4_dgst,md4_one"
|
||||
$ LIB_MD5 = "md5_dgst,md5_one"
|
||||
@@ -197,9 +197,9 @@ $ LIB_EC = "ec_lib,ecp_smpl,ecp_mont,ecp_nist,ec_cvt,ec_mult,"+ -
|
||||
"ec2_smpl,ec2_mult"
|
||||
$ LIB_RSA = "rsa_eay,rsa_gen,rsa_lib,rsa_sign,rsa_saos,rsa_err,"+ -
|
||||
"rsa_pk1,rsa_ssl,rsa_none,rsa_oaep,rsa_chk,rsa_null,"+ -
|
||||
"rsa_pss,rsa_x931,rsa_asn1,rsa_depr"
|
||||
"rsa_pss,rsa_x931,rsa_x931g,rsa_asn1,rsa_depr,rsa_eng"
|
||||
$ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,"+ -
|
||||
"dsa_err,dsa_ossl,dsa_depr"
|
||||
"dsa_err,dsa_ossl,dsa_depr,dsa_utl"
|
||||
$ LIB_ECDSA = "ecs_lib,ecs_asn1,ecs_ossl,ecs_sign,ecs_vrf,ecs_err"
|
||||
$ LIB_DH = "dh_asn1,dh_gen,dh_key,dh_lib,dh_check,dh_err,dh_depr"
|
||||
$ LIB_ECDH = "ech_lib,ech_ossl,ech_key,ech_err"
|
||||
@@ -212,7 +212,7 @@ $ LIB_ENGINE = "eng_err,eng_lib,eng_list,eng_init,eng_ctrl,"+ -
|
||||
"eng_openssl,eng_dyn,eng_cnf,eng_cryptodev,eng_padlock"
|
||||
$ LIB_AES = "aes_core,aes_misc,aes_ecb,aes_cbc,aes_cfb,aes_ofb,"+ -
|
||||
"aes_ctr,aes_ige"
|
||||
$ LIB_BUFFER = "buffer,buf_err"
|
||||
$ LIB_BUFFER = "buffer,buf_str,buf_err"
|
||||
$ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
|
||||
"bss_mem,bss_null,bss_fd,"+ -
|
||||
"bss_file,bss_sock,bss_conn,"+ -
|
||||
@@ -224,18 +224,19 @@ $ LIB_STACK = "stack"
|
||||
$ LIB_LHASH = "lhash,lh_stats"
|
||||
$ LIB_RAND = "md_rand,randfile,rand_lib,rand_err,rand_egd,"+ -
|
||||
"rand_vms"
|
||||
$ LIB_ERR = "err,err_all,err_prn"
|
||||
$ LIB_ERR = "err,err_def,err_all,err_prn,err_str,err_bio"
|
||||
$ LIB_OBJECTS = "o_names,obj_dat,obj_lib,obj_err"
|
||||
$ LIB_EVP = "encode,digest,evp_enc,evp_key,evp_acnf,"+ -
|
||||
"e_des,e_bf,e_idea,e_des3,e_camellia,e_seed,"+ -
|
||||
"e_rc4,e_aes,names,"+ -
|
||||
"e_xcbc_d,e_rc2,e_cast,e_rc5"
|
||||
$ LIB_EVP = "encode,digest,dig_eng,evp_enc,evp_key,evp_acnf,evp_cnf,"+ -
|
||||
"e_des,e_bf,e_idea,e_des3,e_camellia,"+ -
|
||||
"e_rc4,e_aes,names,e_seed,"+ -
|
||||
"e_xcbc_d,e_rc2,e_cast,e_rc5,enc_min"
|
||||
$ LIB_EVP_2 = "m_null,m_md2,m_md4,m_md5,m_sha,m_sha1," + -
|
||||
"m_dss,m_dss1,m_mdc2,m_ripemd,m_ecdsa,"+ -
|
||||
"p_open,p_seal,p_sign,p_verify,p_lib,p_enc,p_dec,"+ -
|
||||
"bio_md,bio_b64,bio_enc,evp_err,e_null,"+ -
|
||||
"c_all,c_allc,c_alld,evp_lib,bio_ok,"+-
|
||||
"evp_pkey,evp_pbe,p5_crpt,p5_crpt2"
|
||||
$ LIB_EVP_3 = "e_old"
|
||||
$ LIB_ASN1 = "a_object,a_bitstr,a_utctm,a_gentm,a_time,a_int,a_octet,"+ -
|
||||
"a_print,a_type,a_set,a_dup,a_d2i_fp,a_i2d_fp,"+ -
|
||||
"a_enum,a_utf8,a_sign,a_digest,a_verify,a_mbstr,a_strex,"+ -
|
||||
@@ -277,7 +278,10 @@ $ LIB_UI_COMPAT = ",ui_compat"
|
||||
$ LIB_UI = "ui_err,ui_lib,ui_openssl,ui_util"+LIB_UI_COMPAT
|
||||
$ LIB_KRB5 = "krb5_asn"
|
||||
$ LIB_STORE = "str_err,str_lib,str_meth,str_mem"
|
||||
$ LIB_CMS = "cms_lib,cms_asn1,cms_att,cms_io,cms_smime,cms_err,"+ -
|
||||
"cms_sd,cms_dd,cms_cd,cms_env,cms_enc,cms_ess"
|
||||
$ LIB_PQUEUE = "pqueue"
|
||||
$ LIB_JPAKE = "jpake,jpake_err"
|
||||
$!
|
||||
$! Setup exceptional compilations
|
||||
$!
|
||||
|
@@ -219,9 +219,13 @@ typedef struct openssl_item_st
|
||||
#define CRYPTO_LOCK_EC_PRE_COMP 36
|
||||
#define CRYPTO_LOCK_STORE 37
|
||||
#define CRYPTO_LOCK_COMP 38
|
||||
#ifndef OPENSSL_FIPS
|
||||
#define CRYPTO_NUM_LOCKS 39
|
||||
#else
|
||||
#define CRYPTO_LOCK_FIPS 39
|
||||
#define CRYPTO_LOCK_FIPS2 40
|
||||
#define CRYPTO_NUM_LOCKS 41
|
||||
#endif
|
||||
|
||||
#define CRYPTO_LOCK 1
|
||||
#define CRYPTO_UNLOCK 2
|
||||
@@ -358,6 +362,7 @@ int CRYPTO_is_mem_check_on(void);
|
||||
#define is_MemCheck_on() CRYPTO_is_mem_check_on()
|
||||
|
||||
#define OPENSSL_malloc(num) CRYPTO_malloc((int)num,__FILE__,__LINE__)
|
||||
#define OPENSSL_strdup(str) CRYPTO_strdup((str),__FILE__,__LINE__)
|
||||
#define OPENSSL_realloc(addr,num) \
|
||||
CRYPTO_realloc((char *)addr,(int)num,__FILE__,__LINE__)
|
||||
#define OPENSSL_realloc_clean(addr,old_num,num) \
|
||||
@@ -469,6 +474,7 @@ void CRYPTO_get_mem_debug_functions(void (**m)(void *,int,const char *,int,int),
|
||||
void *CRYPTO_malloc_locked(int num, const char *file, int line);
|
||||
void CRYPTO_free_locked(void *);
|
||||
void *CRYPTO_malloc(int num, const char *file, int line);
|
||||
char *CRYPTO_strdup(const char *str, const char *file, int line);
|
||||
void CRYPTO_free(void *);
|
||||
void *CRYPTO_realloc(void *addr,int num, const char *file, int line);
|
||||
void *CRYPTO_realloc_clean(void *addr,int old_num,int num,const char *file,
|
||||
@@ -526,6 +532,7 @@ void OpenSSLDie(const char *file,int line,const char *assertion);
|
||||
|
||||
unsigned long *OPENSSL_ia32cap_loc(void);
|
||||
#define OPENSSL_ia32cap (*(OPENSSL_ia32cap_loc()))
|
||||
int OPENSSL_isservice(void);
|
||||
|
||||
#ifdef OPENSSL_FIPS
|
||||
#define FIPS_ERROR_IGNORED(alg) OpenSSLDie(__FILE__, __LINE__, \
|
||||
|
@@ -277,11 +277,11 @@ rpc_enc.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
|
||||
rpc_enc.o: ../../include/openssl/ui.h ../../include/openssl/ui_compat.h
|
||||
rpc_enc.o: des_locl.h des_ver.h rpc_des.h rpc_enc.c
|
||||
set_key.o: ../../include/openssl/des.h ../../include/openssl/des_old.h
|
||||
set_key.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h
|
||||
set_key.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
|
||||
set_key.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
|
||||
set_key.o: ../../include/openssl/ui.h ../../include/openssl/ui_compat.h
|
||||
set_key.o: des_locl.h set_key.c
|
||||
set_key.o: ../../include/openssl/e_os2.h ../../include/openssl/fips.h
|
||||
set_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/ossl_typ.h
|
||||
set_key.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
set_key.o: ../../include/openssl/symhacks.h ../../include/openssl/ui.h
|
||||
set_key.o: ../../include/openssl/ui_compat.h des_locl.h set_key.c
|
||||
str2key.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
|
||||
str2key.o: ../../include/openssl/des_old.h ../../include/openssl/e_os2.h
|
||||
str2key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
|
||||
|
@@ -147,7 +147,11 @@ int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
|
||||
/* first - get the length */
|
||||
while (net_num < HDRSIZE)
|
||||
{
|
||||
#ifndef _WIN32
|
||||
i=read(fd,(void *)&(net[net_num]),HDRSIZE-net_num);
|
||||
#else
|
||||
i=_read(fd,(void *)&(net[net_num]),HDRSIZE-net_num);
|
||||
#endif
|
||||
#ifdef EINTR
|
||||
if ((i == -1) && (errno == EINTR)) continue;
|
||||
#endif
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user