Compare commits
252 Commits
main
...
OpenSSL_0_
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f254b540b8 | ||
![]() |
11024f252e | ||
![]() |
9d5cba17ba | ||
![]() |
1d01c9d43d | ||
![]() |
e32ea81876 | ||
![]() |
ef8a18f49b | ||
![]() |
b914049c53 | ||
![]() |
dabaea8048 | ||
![]() |
09c1a425a9 | ||
![]() |
8c6fed007f | ||
![]() |
2e39604021 | ||
![]() |
fbfb947b21 | ||
![]() |
8b963f4ba4 | ||
![]() |
9152f07eaf | ||
![]() |
35f70c09f5 | ||
![]() |
cc4cba7b5d | ||
![]() |
6b695fefd0 | ||
![]() |
910d193029 | ||
![]() |
f18dd687c8 | ||
![]() |
50d5376698 | ||
![]() |
5b9b62a7db | ||
![]() |
c0e29e5b01 | ||
![]() |
2f03129d46 | ||
![]() |
b44e2d3416 | ||
![]() |
564915681c | ||
![]() |
a24b7eeb87 | ||
![]() |
0215c01861 | ||
![]() |
beae6324e5 | ||
![]() |
71a61c573e | ||
![]() |
6b3b632767 | ||
![]() |
2a2fa04b7b | ||
![]() |
79b81d194b | ||
![]() |
ef04c9aff8 | ||
![]() |
7f85197c10 | ||
![]() |
ff0bfe64af | ||
![]() |
44b3a3a5e6 | ||
![]() |
7e3033aa93 | ||
![]() |
8bdbf50772 | ||
![]() |
ec33a76641 | ||
![]() |
00ce9376c7 | ||
![]() |
46e7a9797e | ||
![]() |
7006c4ac88 | ||
![]() |
a50a2126cf | ||
![]() |
07f7b4b470 | ||
![]() |
7e726e42f4 | ||
![]() |
40ba0257de | ||
![]() |
3fbd5f9fea | ||
![]() |
57b2246d35 | ||
![]() |
2a5b22d6f9 | ||
![]() |
f247dc7522 | ||
![]() |
e6531253e2 | ||
![]() |
c938babf00 | ||
![]() |
bf3900020f | ||
![]() |
586df3bb7f | ||
![]() |
c4b13b0268 | ||
![]() |
daef72316f | ||
![]() |
1f93c96e63 | ||
![]() |
8aa9c79276 | ||
![]() |
09a7f2e734 | ||
![]() |
b2d27e376d | ||
![]() |
644c4af11e | ||
![]() |
ca3dc3a0a0 | ||
![]() |
2b975dfd5b | ||
![]() |
0932892278 | ||
![]() |
fe0b3d98c2 | ||
![]() |
8d56c8b51c | ||
![]() |
d8e6409336 | ||
![]() |
a4ae746656 | ||
![]() |
331a0a7b9b | ||
![]() |
c630a3e8d6 | ||
![]() |
7435d89edf | ||
![]() |
14557c8be4 | ||
![]() |
98b4995bad | ||
![]() |
3000bdcc3a | ||
![]() |
cbe77a6753 | ||
![]() |
c58a1f76f8 | ||
![]() |
ecf2875ebf | ||
![]() |
ce2c19e357 | ||
![]() |
1b1081a3ed | ||
![]() |
37b200389a | ||
![]() |
6b5a8f3a22 | ||
![]() |
0b18d8b0c7 | ||
![]() |
3d187ede47 | ||
![]() |
f3b9c34515 | ||
![]() |
c923394924 | ||
![]() |
d9dbd24db5 | ||
![]() |
b135819d71 | ||
![]() |
cbcbd07da2 | ||
![]() |
24f6ab73a7 | ||
![]() |
5e88347e1b | ||
![]() |
cac0d4ee6f | ||
![]() |
428759b3d4 | ||
![]() |
898d3ecce0 | ||
![]() |
004f16f6c4 | ||
![]() |
4e2a0e58f2 | ||
![]() |
39d29195a7 | ||
![]() |
727c9b8027 | ||
![]() |
bd4e9b0512 | ||
![]() |
7844ff735f | ||
![]() |
49e96badcf | ||
![]() |
eb6a81bacc | ||
![]() |
6687f12988 | ||
![]() |
fcd12fc0f1 | ||
![]() |
0fb4d54068 | ||
![]() |
830a468a23 | ||
![]() |
af3ca7b4a9 | ||
![]() |
7a6bb17255 | ||
![]() |
bc6d459a6e | ||
![]() |
ff7f34e353 | ||
![]() |
2e3d79aaec | ||
![]() |
8a41bcc934 | ||
![]() |
e2414b41ad | ||
![]() |
266958bce7 | ||
![]() |
bc5354cbf0 | ||
![]() |
cc4997843e | ||
![]() |
ab95eac286 | ||
![]() |
1cd76233d1 | ||
![]() |
3d5afc8b83 | ||
![]() |
d28b7799dd | ||
![]() |
b0fb889c29 | ||
![]() |
460e80bd1d | ||
![]() |
bc1e96e942 | ||
![]() |
7ea61df414 | ||
![]() |
431712293d | ||
![]() |
335ed97263 | ||
![]() |
e00b165e9b | ||
![]() |
5467ddf0e1 | ||
![]() |
7a37dd92ed | ||
![]() |
d0c11e9d72 | ||
![]() |
5ec52fee2c | ||
![]() |
5026bc13bb | ||
![]() |
c7d27e5247 | ||
![]() |
b7d7af7ea9 | ||
![]() |
39663d2c40 | ||
![]() |
000299a0e6 | ||
![]() |
0a47d82b9b | ||
![]() |
198bcece58 | ||
![]() |
053677d124 | ||
![]() |
804072f014 | ||
![]() |
e9429b43ce | ||
![]() |
3d37d5e24a | ||
![]() |
2728a1b4f3 | ||
![]() |
adb040d4cb | ||
![]() |
479d7934c0 | ||
![]() |
22d1acd5ac | ||
![]() |
b257c152c6 | ||
![]() |
77b97ee0d7 | ||
![]() |
e2ac4732cd | ||
![]() |
e8f665b495 | ||
![]() |
55f3ef29ea | ||
![]() |
c2d78c9623 | ||
![]() |
a4578a5413 | ||
![]() |
e884fcf785 | ||
![]() |
e96025755d | ||
![]() |
c9028b0ab5 | ||
![]() |
b4d2858f95 | ||
![]() |
dea446d995 | ||
![]() |
5cd94f9e9d | ||
![]() |
cad811fc41 | ||
![]() |
69f6a9f007 | ||
![]() |
4eeee0c59f | ||
![]() |
a5afa6c95f | ||
![]() |
625dacb93d | ||
![]() |
62e9c2e091 | ||
![]() |
e4106a4e24 | ||
![]() |
a506b8c7dd | ||
![]() |
e5cd536894 | ||
![]() |
629ea39a88 | ||
![]() |
7d9e1321c7 | ||
![]() |
83af7422a0 | ||
![]() |
ce8945f35c | ||
![]() |
dd890f0776 | ||
![]() |
af4ac437ab | ||
![]() |
607585fdaf | ||
![]() |
2f596aeef5 | ||
![]() |
69762c75fa | ||
![]() |
36b29660ce | ||
![]() |
4976983f30 | ||
![]() |
31e4ad25ba | ||
![]() |
225f4daf15 | ||
![]() |
b9927cfa2d | ||
![]() |
af6cafc603 | ||
![]() |
15da07d436 | ||
![]() |
886ed3544b | ||
![]() |
aff2922f9a | ||
![]() |
f32e0035a3 | ||
![]() |
7b1e7706d8 | ||
![]() |
cd74dda72a | ||
![]() |
032bb2a2c5 | ||
![]() |
fa96ed06d2 | ||
![]() |
43133041c9 | ||
![]() |
e0ee5ea962 | ||
![]() |
f5634286a3 | ||
![]() |
97d37c1c1e | ||
![]() |
739b139cb2 | ||
![]() |
0bc9920ad4 | ||
![]() |
3f516ce837 | ||
![]() |
9f197f9da5 | ||
![]() |
3dc2cc36e9 | ||
![]() |
ca3e683747 | ||
![]() |
38a1757168 | ||
![]() |
4104a57107 | ||
![]() |
b0c0f20071 | ||
![]() |
7870774162 | ||
![]() |
4213cdaf5d | ||
![]() |
39b4c974ee | ||
![]() |
508f56f17c | ||
![]() |
48665b7c99 | ||
![]() |
51971f7293 | ||
![]() |
3d3addb252 | ||
![]() |
3f8bdd1fdb | ||
![]() |
6181fd949f | ||
![]() |
afd61c63c2 | ||
![]() |
9a2073b4cd | ||
![]() |
f28468188b | ||
![]() |
8871d87512 | ||
![]() |
a2b81188be | ||
![]() |
f91f6cd5e4 | ||
![]() |
bd923a7bac | ||
![]() |
373c88faef | ||
![]() |
14813d8123 | ||
![]() |
92f2437f48 | ||
![]() |
da959761ff | ||
![]() |
d8cd25aa0d | ||
![]() |
d63d4f46fc | ||
![]() |
52161e090d | ||
![]() |
9e55e06501 | ||
![]() |
0b6df67fb1 | ||
![]() |
bf087e1ea1 | ||
![]() |
885818fb7c | ||
![]() |
2f370048cb | ||
![]() |
28dc02a9d8 | ||
![]() |
54ebaca535 | ||
![]() |
4fedc91a4a | ||
![]() |
f734aaa413 | ||
![]() |
a575d4b9ee | ||
![]() |
77a87ded3a | ||
![]() |
b958d2c298 | ||
![]() |
dc72a195c2 | ||
![]() |
e2812ff61f | ||
![]() |
8c2e34e27f | ||
![]() |
31f3950fbf | ||
![]() |
75b3654d18 | ||
![]() |
418f9ac5e3 | ||
![]() |
ad4afe4edf | ||
![]() |
c844b971cb | ||
![]() |
ca9b1c47af | ||
![]() |
86039d2751 | ||
![]() |
420a692f04 | ||
![]() |
1d2a464fe0 | ||
![]() |
7735dd0750 | ||
![]() |
bf7b075f0c |
23
CHANGES
23
CHANGES
@ -2,11 +2,24 @@
|
||||
OpenSSL CHANGES
|
||||
_______________
|
||||
|
||||
Changes between 0.9.8 and 0.9.9 [xx XXX xxxx]
|
||||
Changes between 0.9.7h and 0.9.8 [05 Jul 2005]
|
||||
|
||||
*)
|
||||
*) Add libcrypto.pc and libssl.pc for those who feel they need them.
|
||||
[Richard Levitte]
|
||||
|
||||
Changes between 0.9.7h and 0.9.8 [xx XXX xxxx]
|
||||
*) Change CA.sh and CA.pl so they don't bundle the CSR and the private
|
||||
key into the same file any more.
|
||||
[Richard Levitte]
|
||||
|
||||
*) Add initial support for Win64, both IA64 and AMD64/x64 flavors.
|
||||
[Andy Polyakov]
|
||||
|
||||
*) Add -utf8 command line and config file option to 'ca'.
|
||||
[Stefan <stf@udoma.org]
|
||||
|
||||
*) Removed the macro des_crypt(), as it seems to conflict with some
|
||||
libraries. Use DES_crypt().
|
||||
[Richard Levitte]
|
||||
|
||||
*) Correct naming of the 'chil' and '4758cca' ENGINEs. This
|
||||
involves renaming the source and generated shared-libs for
|
||||
@ -810,6 +823,10 @@
|
||||
|
||||
Changes between 0.9.7g and 0.9.7h [XX xxx XXXX]
|
||||
|
||||
*) Minimal support for X9.31 signatures and PSS padding modes. This is
|
||||
mainly for FIPS compliance and not fully integrated at this stage.
|
||||
[Steve Henson]
|
||||
|
||||
*) For DSA signing, unless DSA_FLAG_NO_EXP_CONSTTIME is set, perform
|
||||
the exponentiation using a fixed-length exponent. (Otherwise,
|
||||
the information leaked through timing could expose the secret key
|
||||
|
63
Configure
63
Configure
@ -119,7 +119,7 @@ my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o:dx86-cof.o yx86-cof.o:ax8
|
||||
my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-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:rm86-out.o:r586-out.o";
|
||||
|
||||
my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o::::md5-x86_64.o:::rc4-x86_64.o::";
|
||||
my $ia64_asm=":ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.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::";
|
||||
|
||||
my $no_asm="::::::::::";
|
||||
|
||||
@ -164,8 +164,8 @@ my %table=(
|
||||
"debug-geoff","gcc:-DBN_DEBUG -DBN_DEBUG_RAND -DBN_STRICT -DPURIFY -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_ASM -DOPENSSL_NO_INLINE_ASM -DL_ENDIAN -DTERMIO -DPEDANTIC -O1 -ggdb2 -Wall -Werror -Wundef -pedantic -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Wmissing-prototypes -Wmissing-declarations -Wno-long-long::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-linux-pentium","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -mcpu=pentium -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
|
||||
"debug-linux-ppro","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -mcpu=pentiumpro -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
|
||||
"debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT::-lefence -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -march=i486 -Wall::-D_REENTRANT::-lefence -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"dist", "cc:-O::(unknown)::::::",
|
||||
|
||||
# Basic configs that should work on any (32 and less bit) box
|
||||
@ -173,10 +173,8 @@ my %table=(
|
||||
"cc", "cc:-O::(unknown)::::::",
|
||||
|
||||
####VOS Configurations
|
||||
"vos-gcc","gcc:-b hppa1.1-stratus-vos -O3 -Wall -Wuninitialized -D_POSIX_C_SOURCE=200112L -D_BSD::(unknown):VOS:-Wl,-map:BN_LLONG:${no_asm}:::::.so:",
|
||||
"debug-vos-gcc","gcc:-b hppa1.1-stratus-vos -O0 -g -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG::(unknown):VOS:-Wl,-map:BN_LLONG:${no_asm}:::::.so:",
|
||||
"vos-vcc","vcc:-b i386-stratus-vos -O3 -D_POSIX_C_SOURCE=200112L -D_BSD::(unknown):VOS:-Wl,-map::${no_asm}:::::.so:",
|
||||
"debug-vos-vcc","vcc:-b i386-stratus-vos -O0 -g -D_POSIX_C_SOURCE=200112L -D_BSD -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG::(unknown):VOS:-Wl,-map::${no_asm}:::::.so:",
|
||||
"vos-gcc","gcc:-O3 -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DB_ENDIAN::(unknown):VOS:-Wl,-map:BN_LLONG:${no_asm}:::::.so:",
|
||||
"debug-vos-gcc","gcc:-O0 -g -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DB_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG::(unknown):VOS:-Wl,-map:BN_LLONG:${no_asm}:::::.so:",
|
||||
|
||||
#### Solaris x86 with GNU C setups
|
||||
# -DOPENSSL_NO_INLINE_ASM switches off inline assembler. We have to do it
|
||||
@ -184,7 +182,7 @@ my %table=(
|
||||
# surrounds it with #APP #NO_APP comment pair which (at least Solaris
|
||||
# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
|
||||
# error message.
|
||||
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DOPENSSL_NO_INLINE_ASM::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -march=pentium -Wall -DL_ENDIAN -DOPENSSL_NO_INLINE_ASM::-D_REENTRANT::-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:solaris-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# -shared -static-libgcc might appear controversial, but modules taken
|
||||
# from static libgcc do not have relocations and linking them into our
|
||||
# shared objects doesn't have any negative side-effects. On the contrary,
|
||||
@ -232,11 +230,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 -mmips-as -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::mips3.o::::::::::dlfcn:irix-shared::-mabi=n32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix-mips3-cc", "cc:-n32 -mips3 -O2 -use_readonly_const -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::mips3.o::::::::::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 -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 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG::mips3.o::::::::::dlfcn:irix-shared::-mabi=64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG::mips3.o::::::::::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 -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:
|
||||
@ -287,7 +285,7 @@ my %table=(
|
||||
# with debugging of the following config.
|
||||
"hpux64-ia64-cc","cc:-Ae +DD64 +O3 +Olit=all -z -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT:${ia64_asm}:dlfcn:hpux-shared:+Z:+DD64 -b:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# GCC builds...
|
||||
"hpux-ia64-gcc","gcc:-O3 -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT::ia64.o::aes-ia64.o:::sha256-ia64.o sha512-ia64.o::rc4-ia64.o:::dlfcn:hpux-shared:-fpic:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux-ia64-gcc","gcc:-O3 -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT::bn-ia64.o::aes-ia64.o:::sha256-ia64.o sha512-ia64.o::rc4-ia64.o:::dlfcn:hpux-shared:-fpic:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"hpux64-ia64-gcc","gcc:-mlp64 -O3 -DB_ENDIAN -D_REENTRANT::::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT:${ia64_asm}:dlfcn:hpux-shared:-fpic:-mlp64 -shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
# Legacy HPUX 9.X configs...
|
||||
@ -320,13 +318,14 @@ my %table=(
|
||||
#### 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 -m486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
|
||||
"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)",
|
||||
# -bpowerpc64-linux is transient option, -m64 should be the one to use...
|
||||
"linux-ppc64", "gcc:-bpowerpc64-linux -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:-bpowerpc64-linux:.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)",
|
||||
#### SPARC Linux setups
|
||||
# Ray Miller <ray.miller@computing-services.oxford.ac.uk> has patiently
|
||||
@ -370,7 +369,7 @@ my %table=(
|
||||
"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)",
|
||||
|
||||
"bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall::(unknown)::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
"nextstep", "cc:-O -Wall:<libc.h>:(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
|
||||
"nextstep3.3", "cc:-O3 -Wall:<libc.h>:(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
|
||||
@ -397,10 +396,7 @@ my %table=(
|
||||
"unixware-2.0","cc:-DFILIO_H -DNO_STRINGS_H::-Kthread::-lsocket -lnsl -lresolv -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
|
||||
"unixware-2.1","cc:-O -DFILIO_H::-Kthread::-lsocket -lnsl -lresolv -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
|
||||
"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}:${x86_elf_asm}:dlfcn:svr5-shared:-Kpic::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"unixware-7-gcc","gcc:-DL_ENDIAN -DFILIO_H -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT::-lsocket -lnsl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:gnu-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"OpenUNIX-8","cc:-O -DFILIO_H -Kalloca::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}:${x86_elf_asm}:dlfcn:svr5-shared:-Kpic::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"OpenUNIX-8-gcc","gcc:-O -DFILIO_H -fomit-frame-pointer::-pthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}:${x86_elf_asm}:dlfcn:svr5-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"sco3-gcc", "gcc:-O3 -fomit-frame-pointer -Dssize_t=int -DNO_SYS_UN_H::(unknown)::-lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", # the SCO assembler doesn't seem to like our assembler files ...
|
||||
"unixware-7-gcc","gcc:-DL_ENDIAN -DFILIO_H -O3 -fomit-frame-pointer -march=pentium -Wall::-D_REENTRANT::-lsocket -lnsl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:gnu-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
# SCO 5 - Ben Laurie <ben@algroup.co.uk> says the -O breaks the SCO cc.
|
||||
"sco5-cc", "cc:-belf::(unknown)::-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:svr3-shared:-Kpic::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"sco5-gcc", "gcc:-O3 -fomit-frame-pointer::(unknown)::-lsocket -lnsl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:svr3-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
@ -460,8 +456,8 @@ my %table=(
|
||||
"OS390-Unix","c89.sh:-O -DB_ENDIAN -DCHARSET_EBCDIC -DNO_SYS_PARAM_H -D_ALL_SOURCE::(unknown):::THIRTY_TWO_BIT DES_PTR DES_UNROLL MD2_CHAR RC4_INDEX RC4_CHAR BF_PTR:::",
|
||||
|
||||
# Win64 targets, WIN64I denotes IA-64 and WIN64A - AMD64
|
||||
"VC-WIN64I","cl::::WIN64I::SIXTY_FOUR_BIT EXPORT_VAR_AS_FN:${no_asm}:win32",
|
||||
"VC-WIN64A","cl::::WIN64A::SIXTY_FOUR_BIT EXPORT_VAR_AS_FN:${no_asm}:win32",
|
||||
"VC-WIN64I","cl::::WIN64I::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${no_asm}:win32",
|
||||
"VC-WIN64A","cl::::WIN64A::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${no_asm}:win32",
|
||||
|
||||
# Visual C targets
|
||||
"VC-NT","cl::::WINNT::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${no_asm}:win32",
|
||||
@ -484,23 +480,26 @@ my %table=(
|
||||
|
||||
# NetWare from David Ward (dsward@novell.com) - requires MetroWerks NLM development tools
|
||||
# netware-clib => legacy CLib c-runtime support
|
||||
"netware-clib", "mwccnlm:::::${x86_gcc_opts}:::",
|
||||
"netware-clib", "mwccnlm::::::BN_LLONG ${x86_gcc_opts}::",
|
||||
# netware-libc => LibC/NKS support
|
||||
"netware-libc", "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::::${x86_gcc_opts}:::",
|
||||
# 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}::",
|
||||
|
||||
# DJGPP
|
||||
"DJGPP", "gcc:-I/dev/env/WATT_ROOT/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O2 -Wall -DDEVRANDOM=\"/dev/urandom\\x24\":::MSDOS:-L/dev/env/WATT_ROOT/lib -lwatt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:",
|
||||
"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}:",
|
||||
|
||||
# Ultrix from Bernhard Simon <simon@zid.tuwien.ac.at>
|
||||
"ultrix-cc","cc:-std1 -O -Olimit 2500 -DL_ENDIAN::(unknown):::::::",
|
||||
"ultrix-gcc","gcc:-O3 -DL_ENDIAN::(unknown):::::::",
|
||||
"ultrix-gcc","gcc:-O3 -DL_ENDIAN::(unknown):::BN_LLONG::::",
|
||||
# K&R C is no longer supported; you need gcc on old Ultrix installations
|
||||
##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown):::::::",
|
||||
|
||||
##### 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::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o:::::::::::darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin-ppc-cc","cc:-O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o:::::::::::darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
"darwin-i386-cc","cc:-O3 -fomit-frame-pointer -fno-common -DB_ENDIAN::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::darwin-shared:-fPIC:-dunamiclib:.\$(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:::::::::::darwin-shared:-fPIC:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||
|
||||
@ -511,7 +510,7 @@ my %table=(
|
||||
"newsos4-gcc","gcc:-O -DB_ENDIAN::(unknown):NEWS4:-lmld -liberty:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::",
|
||||
|
||||
##### GNU Hurd
|
||||
"hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC",
|
||||
"hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC",
|
||||
|
||||
##### OS/2 EMX
|
||||
"OS2-EMX", "gcc::::::::",
|
||||
@ -530,7 +529,7 @@ my %table=(
|
||||
|
||||
my @MK1MF_Builds=qw(VC-WIN64I VC-WIN64A
|
||||
VC-NT VC-CE VC-WIN32
|
||||
BC-32 OS2-EMX netware-clib netware-libc);
|
||||
BC-32 OS2-EMX netware-clib netware-libc netware-libc-bsdsock);
|
||||
|
||||
my $idx = 0;
|
||||
my $idx_cc = $idx++;
|
||||
@ -761,7 +760,7 @@ PROCESS_ARGS:
|
||||
}
|
||||
else
|
||||
{
|
||||
die "target already defined - $target\n" if ($target ne "");
|
||||
die "target already defined - $target (offending arg: $_)\n" if ($target ne "");
|
||||
$target=$_;
|
||||
}
|
||||
|
||||
@ -882,8 +881,8 @@ foreach (sort (keys %disabled))
|
||||
$openssl_other_defines .= "#define OPENSSL_NO_$ALGO\n";
|
||||
print " OPENSSL_NO_$ALGO";
|
||||
|
||||
if (/^err$/)
|
||||
{ $flags .= "-DOPENSSL_NO_ERR "; }
|
||||
if (/^err$/) { $flags .= "-DOPENSSL_NO_ERR "; }
|
||||
elsif (/^asm$/) { $no_asm = 1; }
|
||||
}
|
||||
else
|
||||
{
|
||||
|
16
FAQ
16
FAQ
@ -47,6 +47,7 @@ OpenSSL - Frequently Asked Questions
|
||||
* Why does the OpenSSL test suite fail in BN_sqr test [on a 64-bit platform]?
|
||||
* Why does OpenBSD-i386 build fail on des-586.s with "Unimplemented segment type"?
|
||||
* Why does the OpenSSL test suite fail in sha512t on x86 CPU?
|
||||
* Why does compiler fail to compile sha512.c?
|
||||
|
||||
[PROG] Questions about programming with OpenSSL
|
||||
|
||||
@ -71,7 +72,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.7g was released on April 11, 2005.
|
||||
OpenSSL 0.9.8 was released on June 5th, 2005.
|
||||
|
||||
In addition to the current stable release, you can also access daily
|
||||
snapshots of the OpenSSL development version at <URL:
|
||||
@ -142,8 +143,8 @@ less Unix-centric, it might have been used much earlier.
|
||||
|
||||
With version 0.9.6 OpenSSL was extended to interface to external crypto
|
||||
hardware. This was realized in a special release '0.9.6-engine'. With
|
||||
version 0.9.7 (not yet released) the changes were merged into the main
|
||||
development line, so that the special release is no longer necessary.
|
||||
version 0.9.7 the changes were merged into the main development line,
|
||||
so that the special release is no longer necessary.
|
||||
|
||||
* How do I check the authenticity of the OpenSSL distribution?
|
||||
|
||||
@ -607,6 +608,15 @@ Intel P4, under control of kernel which does not support SSE2
|
||||
instruction extentions. See accompanying INSTALL file and
|
||||
OPENSSL_ia32cap(3) documentation page for further information.
|
||||
|
||||
* Why does compiler fail to compile sha512.c?
|
||||
|
||||
OpenSSL SHA-512 implementation depends on compiler support for 64-bit
|
||||
integer type. Few elder compilers [ULTRIX cc, SCO compiler to mention a
|
||||
couple] lack support for this and therefore are incapable of compiling
|
||||
the module in question. The recommendation is to disable SHA-512 by
|
||||
adding no-sha512 to ./config [or ./Configure] command line. Another
|
||||
possible alternative might be to switch to GCC.
|
||||
|
||||
[PROG] ========================================================================
|
||||
|
||||
* Is OpenSSL thread-safe?
|
||||
|
36
INSTALL.NW
36
INSTALL.NW
@ -32,6 +32,10 @@ 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.
|
||||
|
||||
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".
|
||||
|
||||
|
||||
REQUIRED TOOLS:
|
||||
---------------
|
||||
@ -95,7 +99,12 @@ following tools may be required:
|
||||
Microsoft SDK. Note: The winsock2.h support headers may change
|
||||
with various versions of winsock2.h. Check the dependencies
|
||||
section on the NDK WinSock2 download page for the latest
|
||||
information on dependencies.
|
||||
information on dependencies. These components are unsupported by
|
||||
Novell. They are provided as a courtesy, but it is strongly
|
||||
suggested that all development be done using LIBC, not CLIB.
|
||||
|
||||
As of June 2005, the WinSock2 components are available at:
|
||||
http://forgeftp.novell.com//ws2comp/
|
||||
|
||||
|
||||
NLM and NetWare libraries for C (including CLIB and XPlat):
|
||||
@ -121,7 +130,8 @@ following tools may be required:
|
||||
|
||||
NOTE: The LibC SDK includes the necessary WinSock2 support. It
|
||||
It is not necessary to download the WinSock2 Developer when building
|
||||
for LibC.
|
||||
for LibC. The LibC SDK also includes the appropriate BSD socket support
|
||||
if configuring to use BSD sockets.
|
||||
|
||||
|
||||
BUILDING:
|
||||
@ -172,8 +182,9 @@ 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
|
||||
- "netware-libc" - LibC NetWare build
|
||||
target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
||||
- "netware-libc" - LibC NetWare build (WinSock Sockets)
|
||||
- "netware-libc-bsdsock" - LibC NetWare build (BSD Sockets)
|
||||
|
||||
debug opts - "debug" - build debug
|
||||
|
||||
@ -192,25 +203,29 @@ the assembly code. Always run build.bat from the "openssl" directory.
|
||||
LibC build, non-debug, using NASM assembly:
|
||||
netware\build.bat netware-libc nw-nasm
|
||||
|
||||
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.mak
|
||||
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
|
||||
|
||||
|
||||
You can also run the build scripts manually if you do not want to use the
|
||||
build.bat file. Run the following scripts in the "\openssl"
|
||||
subdirectory (in the order listed below):
|
||||
|
||||
perl configure no-asm [other config opts] [netware-clib|netware-libc]
|
||||
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).
|
||||
|
||||
perl util\mkfiles.pl >MINFO
|
||||
generates a listing of source files (used by mk1mf)
|
||||
|
||||
perl util\mk1mf.pl no-asm [other config opts] [netware-clib|netware-libc >netware\nlm.mak
|
||||
perl util\mk1mf.pl no-asm [other config opts] [netware-clib|netware-libc|netware-libc-bsdsock >netware\nlm.mak
|
||||
generates the makefile for NetWare
|
||||
|
||||
gmake -f netware\nlm.mak
|
||||
@ -288,13 +303,6 @@ The do_tests.pl script generates a log file "\openssl\test_out\tests.log"
|
||||
which should be reviewed for errors. Any errors will be denoted by the word
|
||||
"ERROR" in the log.
|
||||
|
||||
NOTE: Currently (11/2002), the LibC test nlms report an error while loading
|
||||
when launched from the perl script (do_tests.pl). The problems are
|
||||
being addressed by the LibC development team and should be fixed in the
|
||||
next release. Until the problems are corrected, the LibC test nlms
|
||||
will have to be executed manually.
|
||||
|
||||
|
||||
DEVELOPING WITH THE OPENSSL SDK:
|
||||
--------------------------------
|
||||
Now that everything is built and tested, you are ready to use the OpenSSL
|
||||
|
@ -3,6 +3,7 @@
|
||||
----------------------------------
|
||||
|
||||
[Instructions for building for Windows CE can be found in INSTALL.WCE]
|
||||
[Instructions for building for Win64 can be found in INSTALL.W64]
|
||||
|
||||
Heres a few comments about building OpenSSL in Windows environments. Most
|
||||
of this is tested on Win32 but it may also work in Win 3.1 with some
|
||||
|
66
INSTALL.W64
Normal file
66
INSTALL.W64
Normal file
@ -0,0 +1,66 @@
|
||||
|
||||
INSTALLATION ON THE WIN64 PLATFORM
|
||||
----------------------------------
|
||||
|
||||
Caveat lector
|
||||
-------------
|
||||
|
||||
As of moment of this writing Win64 support is classified "initial"
|
||||
for the following reasons.
|
||||
|
||||
- No assembler modules are engaged upon initial 0.9.8 release.
|
||||
- API might change within 0.9.8 life-span, *but* in a manner which
|
||||
doesn't break backward binary compatibility. Or in other words,
|
||||
application programs compiled with initial 0.9.8 headers will
|
||||
be expected to work with future minor release .DLL without need
|
||||
to re-compile, even if future minor release features modified API.
|
||||
- Above mentioned API modifications have everything to do with
|
||||
elimination of a number of limitations, which are normally
|
||||
considered inherent to 32-bit platforms. Which in turn is why they
|
||||
are treated as limitations on 64-bit platform such as Win64:-)
|
||||
The current list comprises [but not necessarily limited to]:
|
||||
|
||||
- null-terminated strings may not be longer than 2G-1 bytes,
|
||||
longer strings are treated as zero-length;
|
||||
- dynamically and *internally* allocated chunks can't be larger
|
||||
than 2G-1 bytes;
|
||||
- inability to encrypt/decrypt chunks of data larger than 4GB
|
||||
[it's possibly to *hash* chunks of arbitrary size through];
|
||||
|
||||
Neither of these is actually big deal and hardly encountered
|
||||
in real-life applications.
|
||||
|
||||
Compiling procedure
|
||||
-------------------
|
||||
|
||||
You will need Perl. You can run under Cygwin or you can download
|
||||
ActiveState Perl from http://www.activestate.com/ActivePerl.
|
||||
|
||||
You will need Microsoft Platform SDK, available for download at
|
||||
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/. As per
|
||||
April 2005 Platform SDK is equipped with Win64 compilers, as well
|
||||
as assemblers, but it might change in the future.
|
||||
|
||||
To build for Win64/x64:
|
||||
|
||||
> perl Configure VC-WIN64A
|
||||
> ms\do_win64a
|
||||
> nmake -f ms\ntdll.mak
|
||||
> cd out32dll
|
||||
> ..\ms\test
|
||||
|
||||
To build for Win64/IA64:
|
||||
|
||||
> perl Configure VC-WIN64I
|
||||
> ms\do_win64i
|
||||
> nmake -f ms\ntdll.mak
|
||||
> cd out32dll
|
||||
> ..\ms\test
|
||||
|
||||
Naturally test-suite itself has to be executed on the target platform.
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
TBD, for now see INSTALL.W32.
|
||||
|
152
Makefile.org
152
Makefile.org
@ -112,6 +112,8 @@ SDIRS= \
|
||||
buffer bio stack lhash rand err \
|
||||
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp ocsp ui krb5 \
|
||||
store pqueue
|
||||
# keep in mind that the above list is adjusted by ./Configure
|
||||
# according to no-xxx arguments...
|
||||
|
||||
# tests to perform. "alltests" is a special word indicating that all tests
|
||||
# should be performed.
|
||||
@ -144,18 +146,35 @@ WTARFILE= $(NAME)-win.tar
|
||||
EXHEADER= e_os2.h
|
||||
HEADER= e_os.h
|
||||
|
||||
all: Makefile build_all openssl.pc
|
||||
all: Makefile build_all openssl.pc libssl.pc libcrypto.pc
|
||||
|
||||
# as we stick to -e, CLEARENV ensures that local variables in lower
|
||||
# Makefiles remain local and variable. $${VAR+VAR} is tribute to Korn
|
||||
# shell, which [annoyingly enough] terminates unset with error if VAR
|
||||
# is not present:-( TOP= && unset TOP is tribute to HP-UX /bin/sh,
|
||||
# which terminates unset with error if no variable was present:-(
|
||||
CLEARENV= TOP= && unset TOP $${LIB+LIB} $${LIBS+LIBS} \
|
||||
$${INCLUDE+INCLUDE} $${INCLUDES+INCLUDES} \
|
||||
$${DIR+DIR} $${DIRS+DIRS} $${SRC+SRC} \
|
||||
$${LIBSRC+LIBSRC} $${LIBOBJ+LIBOBJ} $${ALL+ALL} \
|
||||
$${EXHEADER+EXHEADER} $${HEADER+HEADER} \
|
||||
$${GENERAL+GENERAL} $${CFLAGS+CFLAGS} \
|
||||
$${ASFLAGS+ASFLAGS} $${AFLAGS+AFLAGS} \
|
||||
$${LDCMD+LDCMD} $${LDFLAGS+LDFLAGS} \
|
||||
$${SHAREDCMD+SHAREDCMD} $${SHAREDFLAGS+SHAREDFLAGS} \
|
||||
$${SHARED_LIB+SHARED_LIB} $${LIBEXTRAS+LIBEXTRAS}
|
||||
|
||||
BUILDENV= PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
|
||||
CC='${CC}' CFLAG='${CFLAG}' \
|
||||
AS='${CC}' ASFLAG='${CFLAG} -c' \
|
||||
AR='${AR}' PERL='${PERL}' RANLIB='${RANLIB}' \
|
||||
SDIRS='$(SDIRS)' LIBRPATH='$(INSTALLTOP)/lib' \
|
||||
SDIRS='${SDIRS}' LIBRPATH='${INSTALLTOP}/lib' \
|
||||
INSTALL_PREFIX='${INSTALL_PREFIX}' \
|
||||
INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' \
|
||||
MAKEDEPEND='$$(TOP)/util/domd $$(TOP) -MD $(MAKEDEPPROG)'\
|
||||
MAKEDEPEND='$$$${TOP}/util/domd $$$${TOP} -MD ${MAKEDEPPROG}' \
|
||||
DEPFLAG='-DOPENSSL_NO_DEPRECATED ${DEPFLAG}' \
|
||||
MAKEDEPPROG='${MAKEDEPPROG}' \
|
||||
LDFLAGS="$(LDFLAGS)" SHARED_LDFLAGS="$(SHARED_LDFLAGS)" \
|
||||
SHARED_LDFLAGS='${SHARED_LDFLAGS}' \
|
||||
KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' \
|
||||
EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' \
|
||||
SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' \
|
||||
@ -168,18 +187,19 @@ BUILDENV= PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
|
||||
SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' \
|
||||
MD5_ASM_OBJ='${MD5_ASM_OBJ}' \
|
||||
RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' \
|
||||
THIS=$${THIS:-$@}
|
||||
THIS=$${THIS:-$@} MAKEFILE=Makefile MAKEOVERRIDES=
|
||||
# MAKEOVERRIDES= effectively "equalizes" GNU-ish and SysV-ish make flavors,
|
||||
# which in turn eliminates ambiguities in variable treatment with -e.
|
||||
|
||||
BUILD_CMD=if echo " $(DIRS) " | grep " $$dir " >/dev/null 2>/dev/null; then \
|
||||
if [ -d "$$dir" ]; then \
|
||||
(cd $$dir && echo "making $$target in $$dir..." && \
|
||||
$(MAKE) $(BUILDENV) $$target ) || exit 1; \
|
||||
else \
|
||||
$(MAKE) $$dir; \
|
||||
fi; fi
|
||||
BUILD_CMD= if [ -d "$$dir" ]; then \
|
||||
( cd $$dir && echo "making $$target in $$dir..." && \
|
||||
$(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. DIR=$$dir $$target \
|
||||
) || exit 1; \
|
||||
fi
|
||||
RECURSIVE_BUILD_CMD=for dir in $(DIRS); do $(BUILD_CMD); done
|
||||
|
||||
reflect:
|
||||
@[ -n "$(THIS)" ] && $(MAKE) $(THIS) $(BUILDENV)
|
||||
@[ -n "$(THIS)" ] && $(CLEARENV) && $(MAKE) $(THIS) -e $(BUILDENV)
|
||||
|
||||
sub_all: build_all
|
||||
build_all: build_libs build_apps build_tests build_tools
|
||||
@ -249,7 +269,7 @@ do_$(SHLIB_TARGET):
|
||||
if [ "${SHLIBDIRS}" = "ssl" -a -n "$(LIBKRB5)" ]; then \
|
||||
libs="$(LIBKRB5) $$libs"; \
|
||||
fi; \
|
||||
$(MAKE) -f Makefile.shared $(BUILDENV) \
|
||||
$(CLEARENV) && $(MAKE) -f Makefile.shared -e $(BUILDENV) \
|
||||
LIBNAME=$$i LIBVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR} \
|
||||
LIBCOMPATVERSIONS=";${SHLIB_VERSION_HISTORY}" \
|
||||
LIBDEPS="$$libs $(EX_LIBS)" \
|
||||
@ -257,6 +277,32 @@ do_$(SHLIB_TARGET):
|
||||
libs="-l$$i $$libs"; \
|
||||
done
|
||||
|
||||
libcrypto.pc: Makefile
|
||||
@ ( echo 'prefix=$(INSTALLTOP)'; \
|
||||
echo 'exec_prefix=$${prefix}'; \
|
||||
echo 'libdir=$${exec_prefix}/lib'; \
|
||||
echo 'includedir=$${prefix}/include'; \
|
||||
echo ''; \
|
||||
echo 'Name: OpenSSL-libcrypto'; \
|
||||
echo 'Description: OpenSSL cryptography library'; \
|
||||
echo 'Version: '$(VERSION); \
|
||||
echo 'Requires: '; \
|
||||
echo 'Libs: -L$${libdir} -lcrypto $(EX_LIBS)'; \
|
||||
echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libcrypto.pc
|
||||
|
||||
libssl.pc: Makefile
|
||||
@ ( echo 'prefix=$(INSTALLTOP)'; \
|
||||
echo 'exec_prefix=$${prefix}'; \
|
||||
echo 'libdir=$${exec_prefix}/lib'; \
|
||||
echo 'includedir=$${prefix}/include'; \
|
||||
echo ''; \
|
||||
echo 'Name: OpenSSL'; \
|
||||
echo 'Description: Secure Sockets Layer and cryptography libraries'; \
|
||||
echo 'Version: '$(VERSION); \
|
||||
echo 'Requires: '; \
|
||||
echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \
|
||||
echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libssl.pc
|
||||
|
||||
openssl.pc: Makefile
|
||||
@ ( echo 'prefix=$(INSTALLTOP)'; \
|
||||
echo 'exec_prefix=$${prefix}'; \
|
||||
@ -280,15 +326,9 @@ libclean:
|
||||
|
||||
clean: libclean
|
||||
rm -f shlib/*.o *.o core a.out fluff rehash.time testlog make.log cctest cctest.c
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i && echo "making clean in $$i..." && \
|
||||
$(MAKE) SDIRS='${SDIRS}' clean ) || exit 1; \
|
||||
rm -f $(LIBS); \
|
||||
fi; \
|
||||
done;
|
||||
rm -f openssl.pc
|
||||
@set -e; target=clean; $(RECURSIVE_BUILD_CMD)
|
||||
rm -f $(LIBS)
|
||||
rm -f openssl.pc libssl.pc libcrypto.pc
|
||||
rm -f speed.* .pure
|
||||
rm -f $(TARFILE)
|
||||
@set -e; for i in $(ONEDIRS) ;\
|
||||
@ -302,32 +342,20 @@ makefile.one: files
|
||||
|
||||
files:
|
||||
$(PERL) $(TOP)/util/files.pl Makefile > $(TOP)/MINFO
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i && echo "making 'files' in $$i..." && \
|
||||
$(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' files ) || exit 1; \
|
||||
fi; \
|
||||
done;
|
||||
@set -e; target=files; $(RECURSIVE_BUILD_CMD)
|
||||
|
||||
links:
|
||||
@$(PERL) $(TOP)/util/mkdir-p.pl include/openssl
|
||||
@$(PERL) $(TOP)/util/mklink.pl include/openssl $(EXHEADER)
|
||||
@set -e; target=links; for dir in $(DIRS); do $(BUILD_CMD); done
|
||||
@set -e; target=links; $(RECURSIVE_BUILD_CMD)
|
||||
|
||||
gentests:
|
||||
@(cd test && echo "generating dummy tests (if needed)..." && \
|
||||
$(MAKE) $(BUILDENV) TESTS='${TESTS}' OPENSSL_DEBUG_MEMORY=on generate );
|
||||
$(CLEARENV) && $(MAKE) -e $(BUILDENV) TESTS='${TESTS}' OPENSSL_DEBUG_MEMORY=on generate );
|
||||
|
||||
dclean:
|
||||
rm -f *.bak
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i && echo "making dclean in $$i..." && \
|
||||
$(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' dclean ) || exit 1; \
|
||||
fi; \
|
||||
done;
|
||||
@set -e; target=dclean; $(RECURSIVE_BUILD_CMD)
|
||||
|
||||
rehash: rehash.time
|
||||
rehash.time: certs
|
||||
@ -341,29 +369,17 @@ test: tests
|
||||
|
||||
tests: rehash
|
||||
@(cd test && echo "testing..." && \
|
||||
$(MAKE) $(BUILDENV) TESTS='${TESTS}' OPENSSL_DEBUG_MEMORY=on tests );
|
||||
$(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. TESTS='${TESTS}' OPENSSL_DEBUG_MEMORY=on tests );
|
||||
util/opensslwrap.sh version -a
|
||||
|
||||
report:
|
||||
@$(PERL) util/selftest.pl
|
||||
|
||||
depend:
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i && echo "making dependencies $$i..." && \
|
||||
$(MAKE) $(BUILDENV) depend ) || exit 1; \
|
||||
fi; \
|
||||
done;
|
||||
@set -e; target=depend; $(RECURSIVE_BUILD_CMD)
|
||||
|
||||
lint:
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i && echo "making lint $$i..." && \
|
||||
$(MAKE) SDIRS='${SDIRS}' lint ) || exit 1; \
|
||||
fi; \
|
||||
done;
|
||||
@set -e; target=lint; $(RECURSIVE_BUILD_CMD)
|
||||
|
||||
tags:
|
||||
rm -f TAGS
|
||||
@ -391,11 +407,15 @@ crypto/objects/obj_mac.h: crypto/objects/objects.pl crypto/objects/objects.txt c
|
||||
apps/openssl-vms.cnf: apps/openssl.cnf
|
||||
$(PERL) VMS/VMSify-conf.pl < apps/openssl.cnf > apps/openssl-vms.cnf
|
||||
|
||||
crypto/bn/bn_prime.h: crypto/bn/bn_prime.pl
|
||||
$(PERL) crypto/bn/bn_prime.pl >crypto/bn/bn_prime.h
|
||||
|
||||
|
||||
TABLE: Configure
|
||||
(echo 'Output of `Configure TABLE'"':"; \
|
||||
$(PERL) Configure TABLE) > TABLE
|
||||
|
||||
update: depend errors stacks util/libeay.num util/ssleay.num crypto/objects/obj_dat.h apps/openssl-vms.cnf TABLE
|
||||
update: errors stacks util/libeay.num util/ssleay.num crypto/objects/obj_dat.h apps/openssl-vms.cnf crypto/bn/bn_prime.h TABLE depend
|
||||
|
||||
# Build distribution tar-file. As the list of files returned by "find" is
|
||||
# pretty long, on several platforms a "too many arguments" error or similar
|
||||
@ -430,7 +450,7 @@ dist:
|
||||
@$(MAKE) TAR='${TAR}' TARFLAGS='${TARFLAGS}' tar
|
||||
|
||||
dist_pem_h:
|
||||
(cd crypto/pem; $(MAKE) $(BUILDENV) pem.h; $(MAKE) clean)
|
||||
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
|
||||
|
||||
install: all install_docs install_sw
|
||||
|
||||
@ -448,13 +468,7 @@ install_sw:
|
||||
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
|
||||
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
|
||||
done;
|
||||
@set -e; for i in $(DIRS) ;\
|
||||
do \
|
||||
if [ -d "$$i" ]; then \
|
||||
(cd $$i; echo "installing $$i..."; \
|
||||
$(MAKE) $(BUILDENV) install ); \
|
||||
fi; \
|
||||
done
|
||||
@set -e; target=install; $(RECURSIVE_BUILD_CMD)
|
||||
@set -e; for i in $(LIBS) ;\
|
||||
do \
|
||||
if [ -f "$$i" ]; then \
|
||||
@ -496,6 +510,10 @@ install_sw:
|
||||
sed -e '1,/^$$/d' doc/openssl-shared.txt; \
|
||||
fi; \
|
||||
fi
|
||||
cp libcrypto.pc $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig
|
||||
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig/libcrypto.pc
|
||||
cp libssl.pc $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig
|
||||
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig/libssl.pc
|
||||
cp openssl.pc $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig
|
||||
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/pkgconfig/openssl.pc
|
||||
|
||||
@ -521,8 +539,8 @@ install_docs:
|
||||
--release=$(VERSION) `basename $$i`") \
|
||||
> $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
|
||||
$(PERL) util/extract-names.pl < $$i | \
|
||||
grep -v $$filecase "^$$fn\$$" | \
|
||||
grep -v "[ ]" | \
|
||||
(grep -v $$filecase "^$$fn\$$"; true) | \
|
||||
(grep -v "[ ]"; true) | \
|
||||
(cd $(INSTALL_PREFIX)$(MANDIR)/man$$sec/; \
|
||||
while read n; do \
|
||||
$$here/util/point.sh $$fn.$${sec}$(MANSUFFIX) "$$n".$${sec}$(MANSUFFIX); \
|
||||
@ -538,8 +556,8 @@ install_docs:
|
||||
--release=$(VERSION) `basename $$i`") \
|
||||
> $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
|
||||
$(PERL) util/extract-names.pl < $$i | \
|
||||
grep -v $$filecase "^$$fn\$$" | \
|
||||
grep -v "[ ]" | \
|
||||
(grep -v $$filecase "^$$fn\$$"; true) | \
|
||||
(grep -v "[ ]"; true) | \
|
||||
(cd $(INSTALL_PREFIX)$(MANDIR)/man$$sec/; \
|
||||
while read n; do \
|
||||
$$here/util/point.sh $$fn.$${sec}$(MANSUFFIX) "$$n".$${sec}$(MANSUFFIX); \
|
||||
|
@ -89,21 +89,23 @@ CALC_VERSIONS= \
|
||||
|
||||
LINK_APP= \
|
||||
( $(SET_X); \
|
||||
LIBDEPS=$${LIBDEPS:-$(LIBDEPS)}; \
|
||||
LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
|
||||
LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$${LDFLAGS:-$(CFLAGS)}"; \
|
||||
LIBPATH=`for x in $$LIBDEPS; do if echo $$x | grep '^ *-L' > /dev/null 2>&1; then echo $$x | sed -e 's/^ *-L//'; fi; done | uniq`; \
|
||||
LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
|
||||
LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
|
||||
$${LDCMD:=$(CC)} $${LDFLAGS:=$(CFLAGS)} \
|
||||
-o $${APPNAME:=$(APPNAME)} $(OBJECTS) $$LIBDEPS )
|
||||
$${LDCMD} $${LDFLAGS} -o $${APPNAME:=$(APPNAME)} $(OBJECTS) $${LIBDEPS} )
|
||||
|
||||
LINK_SO= \
|
||||
( $(SET_X); \
|
||||
LIBDEPS=$${LIBDEPS:-$(LIBDEPS)}; \
|
||||
LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
|
||||
SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
|
||||
SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
|
||||
nm -Pg $$SHOBJECTS | grep ' [BDT] ' | cut -f1 -d' ' > lib$(LIBNAME).exp; \
|
||||
LIBPATH=`for x in $$LIBDEPS; do if echo $$x | grep '^ *-L' > /dev/null 2>&1; then echo $$x | sed -e 's/^ *-L//'; fi; done | uniq`; \
|
||||
LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
|
||||
LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
|
||||
$${SHAREDCMD:=$(CC)} $${SHAREDFLAGS:=$(CFLAGS) $(SHARED_LDFLAGS)} \
|
||||
$${SHAREDCMD} $${SHAREDFLAGS} \
|
||||
-o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
|
||||
$$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \
|
||||
) && $(SYMLINK_SO); \
|
||||
@ -200,6 +202,7 @@ link_o.darwin:
|
||||
SHLIB_SUFFIX=.dylib; \
|
||||
ALLSYMSFLAGS='-all_load'; \
|
||||
NOALLSYMSFLAGS=''; \
|
||||
SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS)"; \
|
||||
if [ -n "$(LIBVERSION)" ]; then \
|
||||
SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \
|
||||
fi; \
|
||||
@ -213,6 +216,7 @@ link_a.darwin:
|
||||
SHLIB_SUFFIX=.dylib; \
|
||||
ALLSYMSFLAGS='-all_load'; \
|
||||
NOALLSYMSFLAGS=''; \
|
||||
SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS)"; \
|
||||
if [ -n "$(LIBVERSION)" ]; then \
|
||||
SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \
|
||||
fi; \
|
||||
@ -453,6 +457,7 @@ link_o.hpux:
|
||||
expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload'; \
|
||||
SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarnings,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"; \
|
||||
fi; \
|
||||
rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \
|
||||
$(LINK_SO_O) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
|
||||
link_a.hpux:
|
||||
@if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \
|
||||
@ -465,6 +470,7 @@ link_a.hpux:
|
||||
expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload'; \
|
||||
SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarnings,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"; \
|
||||
fi; \
|
||||
rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \
|
||||
$(LINK_SO_A) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
|
||||
link_app.hpux:
|
||||
@if ${DETECT_GNU_LD}; then $(DO_GNU_APP); else \
|
||||
|
74
NEWS
74
NEWS
@ -5,6 +5,80 @@
|
||||
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.7g and OpenSSL 0.9.8:
|
||||
|
||||
o Major work on the BIGNUM library for higher efficiency and to
|
||||
make operations more streamlined and less contradictory. This
|
||||
is the result of a major audit of the BIGNUM library.
|
||||
o Addition of BIGNUM functions for fields GF(2^m) and NIST
|
||||
curves, to support the Elliptic Crypto functions.
|
||||
o Major work on Elliptic Crypto; ECDH and ECDSA added, including
|
||||
the use through EVP, X509 and ENGINE.
|
||||
o New ASN.1 mini-compiler that's usable through the OpenSSL
|
||||
configuration file.
|
||||
o Added support for ASN.1 indefinite length constructed encoding.
|
||||
o New PKCS#12 'medium level' API to manipulate PKCS#12 files.
|
||||
o Complete rework of shared library construction and linking
|
||||
programs with shared or static libraries, through a separate
|
||||
Makefile.shared.
|
||||
o Rework of the passing of parameters from one Makefile to another.
|
||||
o Changed ENGINE framework to load dynamic engine modules
|
||||
automatically from specifically given directories.
|
||||
o New structure and ASN.1 functions for CertificatePair.
|
||||
o Changed the ZLIB compression method to be stateful.
|
||||
o Changed the key-generation and primality testing "progress"
|
||||
mechanism to take a structure that contains the ticker
|
||||
function and an argument.
|
||||
o New engine module: GMP (performs private key exponentiation).
|
||||
o New engine module: VIA PadLOck ACE extension in VIA C3
|
||||
Nehemiah processors.
|
||||
o Added support for IPv6 addresses in certificate extensions.
|
||||
See RFC 1884, section 2.2.
|
||||
o Added support for certificate policy mappings, policy
|
||||
constraints and name constraints.
|
||||
o Added support for multi-valued AVAs in the OpenSSL
|
||||
configuration file.
|
||||
o Added support for multiple certificates with the same subject
|
||||
in the 'openssl ca' index file.
|
||||
o Make it possible to create self-signed certificates using
|
||||
'openssl ca -selfsign'.
|
||||
o Make it possible to generate a serial number file with
|
||||
'openssl ca -create_serial'.
|
||||
o New binary search functions with extended functionality.
|
||||
o New BUF functions.
|
||||
o New STORE structure and library to provide an interface to all
|
||||
sorts of data repositories. Supports storage of public and
|
||||
private keys, certificates, CRLs, numbers and arbitrary blobs.
|
||||
This library is unfortunately unfinished and unused withing
|
||||
OpenSSL.
|
||||
o New control functions for the error stack.
|
||||
o Changed the PKCS#7 library to support one-pass S/MIME
|
||||
processing.
|
||||
o Added the possibility to compile without old deprecated
|
||||
functionality with the OPENSSL_NO_DEPRECATED macro or the
|
||||
'no-deprecated' argument to the config and Configure scripts.
|
||||
o Constification of all ASN.1 conversion functions, and other
|
||||
affected functions.
|
||||
o Improved platform support for PowerPC.
|
||||
o New FIPS 180-2 algorithms (SHA-224, -256, -384 and -512).
|
||||
o New X509_VERIFY_PARAM structure to support parametrisation
|
||||
of X.509 path validation.
|
||||
o Major overhaul of RC4 performance on Intel P4, IA-64 and
|
||||
AMD64.
|
||||
o Changed the Configure script to have some algorithms disabled
|
||||
by default. Those can be explicitely enabled with the new
|
||||
argument form 'enable-xxx'.
|
||||
o Change the default digest in 'openssl' commands from MD5 to
|
||||
SHA-1.
|
||||
o Added support for DTLS.
|
||||
o New BIGNUM blinding.
|
||||
o Added support for the RSA-PSS encryption scheme
|
||||
o Added support for the RSA X.931 padding.
|
||||
o Added support for BSD sockets on NetWare.
|
||||
o Added support for files larger than 2GB.
|
||||
o Added initial support for Win64.
|
||||
o Added alternate pkg-config files.
|
||||
|
||||
Major changes between OpenSSL 0.9.7f and OpenSSL 0.9.7g:
|
||||
|
||||
o More compilation issues fixed.
|
||||
|
@ -6,14 +6,15 @@ rem
|
||||
rem usage:
|
||||
rem build [target] [debug opts] [assembly opts] [configure opts]
|
||||
rem
|
||||
rem target - "netware-clib" - CLib NetWare build
|
||||
rem - "netware-libc" - LibC NKS NetWare build
|
||||
rem target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
||||
rem - "netware-libc" - LibC NKS NetWare build (WinSock Sockets)
|
||||
rem - "netware-libc-bsdsock" - LibC NKS NetWare build (BSD Sockets)
|
||||
rem
|
||||
rem debug opts - "debug" - build debug
|
||||
rem
|
||||
rem assembly opts - "nw-mwasm" - use Metrowerks assembler
|
||||
rem "nw-nasm" - use NASM assembler
|
||||
rem "no-asm" - don't use assembly
|
||||
rem - "nw-nasm" - use NASM assembler
|
||||
rem - "no-asm" - don't use assembly
|
||||
rem
|
||||
rem configure opts- all unrecognized arguments are passed to the
|
||||
rem perl configure script
|
||||
@ -76,6 +77,8 @@ if "%1" == "netware-clib" set BLD_TARGET=netware-clib
|
||||
if "%1" == "netware-clib" set ARG_PROCESSED=YES
|
||||
if "%1" == "netware-libc" set BLD_TARGET=netware-libc
|
||||
if "%1" == "netware-libc" set ARG_PROCESSED=YES
|
||||
if "%1" == "netware-libc-bsdsock" set BLD_TARGET=netware-libc-bsdsock
|
||||
if "%1" == "netware-libc-bsdsock" set ARG_PROCESSED=YES
|
||||
|
||||
rem If we didn't recognize the argument, consider it an option for config
|
||||
if "%ARG_PROCESSED%" == "NO" set CONFIG_OPTS=%CONFIG_OPTS% %1
|
||||
@ -92,6 +95,7 @@ rem build the nlm make file name which includes target and debug info
|
||||
set NLM_MAKE=
|
||||
if "%BLD_TARGET%" == "netware-clib" set NLM_MAKE=netware\nlm_clib
|
||||
if "%BLD_TARGET%" == "netware-libc" set NLM_MAKE=netware\nlm_libc
|
||||
if "%BLD_TARGET%" == "netware-libc-bsdsock" set NLM_MAKE=netware\nlm_libc_bsdsock
|
||||
if "%DEBUG%" == "" set NLM_MAKE=%NLM_MAKE%.mak
|
||||
if "%DEBUG%" == "debug" set NLM_MAKE=%NLM_MAKE%_dbg.mak
|
||||
|
||||
@ -184,8 +188,9 @@ echo . No build target specified!!!
|
||||
echo .
|
||||
echo . usage: build [target] [debug opts] [assembly opts] [configure opts]
|
||||
echo .
|
||||
echo . target - "netware-clib" - CLib NetWare build
|
||||
echo . - "netware-libc" - LibC NKS NetWare build
|
||||
echo . target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
||||
echo . - "netware-libc" - LibC NKS NetWare build (WinSock Sockets)
|
||||
echo . - "netware-libc-bsdsock" - LibC NKS NetWare build (BSD Sockets)
|
||||
echo .
|
||||
echo . debug opts - "debug" - build debug
|
||||
echo .
|
||||
|
@ -42,8 +42,8 @@ sub main()
|
||||
encryption_tests();
|
||||
pem_tests();
|
||||
verify_tests();
|
||||
ssl_tests();
|
||||
ca_tests();
|
||||
ssl_tests();
|
||||
|
||||
close(OUT);
|
||||
|
||||
@ -67,10 +67,17 @@ sub algorithm_tests
|
||||
|
||||
foreach $i (@tests)
|
||||
{
|
||||
$outFile = "$output_path\\$i.out";
|
||||
system("$i > $outFile");
|
||||
log_desc("Test: $i\.nlm:");
|
||||
log_output("", $outFile );
|
||||
if (-e "$base_path\\$i.nlm")
|
||||
{
|
||||
$outFile = "$output_path\\$i.out";
|
||||
system("$i > $outFile");
|
||||
log_desc("Test: $i\.nlm:");
|
||||
log_output("", $outFile );
|
||||
}
|
||||
else
|
||||
{
|
||||
log_desc("Test: $i\.nlm: file not found");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -246,61 +253,63 @@ sub verify_tests
|
||||
sub ssl_tests
|
||||
{
|
||||
my $outFile = "$output_path\\ssl_tst.out";
|
||||
my($CAcert) = "$output_path\\certCA.ss";
|
||||
my($Ukey) = "$output_path\\keyU.ss";
|
||||
my($Ucert) = "$output_path\\certU.ss";
|
||||
my($ssltest)= "ssltest -key $Ukey -cert $Ucert -c_key $Ukey -c_cert $Ucert -CAfile $CAcert";
|
||||
|
||||
print( "\nRUNNING SSL TESTS:\n\n");
|
||||
|
||||
print( OUT "\n========================================================\n");
|
||||
print( OUT "SSL TESTS:\n\n");
|
||||
|
||||
make_tmp_cert_file();
|
||||
|
||||
system("ssltest -ssl2 >$outFile");
|
||||
log_desc("Testing sslv2:");
|
||||
log_output("ssltest -ssl2", $outFile);
|
||||
|
||||
system("ssltest -ssl2 -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl2 -server_auth >$outFile");
|
||||
log_desc("Testing sslv2 with server authentication:");
|
||||
log_output("ssltest -ssl2 -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl2 -server_auth", $outFile);
|
||||
|
||||
system("ssltest -ssl2 -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl2 -client_auth >$outFile");
|
||||
log_desc("Testing sslv2 with client authentication:");
|
||||
log_output("ssltest -ssl2 -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl2 -client_auth", $outFile);
|
||||
|
||||
system("ssltest -ssl2 -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl2 -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv2 with both client and server authentication:");
|
||||
log_output("ssltest -ssl2 -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl2 -server_auth -client_auth", $outFile);
|
||||
|
||||
system("ssltest -ssl3 >$outFile");
|
||||
log_desc("Testing sslv3:");
|
||||
log_output("ssltest -ssl3", $outFile);
|
||||
|
||||
system("ssltest -ssl3 -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl3 -server_auth >$outFile");
|
||||
log_desc("Testing sslv3 with server authentication:");
|
||||
log_output("ssltest -ssl3 -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl3 -server_auth", $outFile);
|
||||
|
||||
system("ssltest -ssl3 -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl3 -client_auth >$outFile");
|
||||
log_desc("Testing sslv3 with client authentication:");
|
||||
log_output("ssltest -ssl3 -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl3 -client_auth", $outFile);
|
||||
|
||||
system("ssltest -ssl3 -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -ssl3 -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv3 with both client and server authentication:");
|
||||
log_output("ssltest -ssl3 -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -ssl3 -server_auth -client_auth", $outFile);
|
||||
|
||||
system("ssltest >$outFile");
|
||||
log_desc("Testing sslv2/sslv3:");
|
||||
log_output("ssltest", $outFile);
|
||||
|
||||
system("ssltest -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -server_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with server authentication:");
|
||||
log_output("ssltest -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -server_auth", $outFile);
|
||||
|
||||
system("ssltest -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -client_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with client authentication:");
|
||||
log_output("ssltest -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -client_auth ", $outFile);
|
||||
|
||||
system("ssltest -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with both client and server authentication:");
|
||||
log_output("ssltest -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -server_auth -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl2 >$outFile");
|
||||
log_desc("Testing sslv2 via BIO pair:");
|
||||
@ -310,49 +319,49 @@ sub ssl_tests
|
||||
log_desc("Testing sslv2/sslv3 with 1024 bit DHE via BIO pair:");
|
||||
log_output("ssltest -bio_pair -dhe1024dsa -v", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl2 -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl2 -server_auth >$outFile");
|
||||
log_desc("Testing sslv2 with server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl2 -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl2 -server_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl2 -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl2 -client_auth >$outFile");
|
||||
log_desc("Testing sslv2 with client authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl2 -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl2 -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl2 -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl2 -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv2 with both client and server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl2 -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl2 -server_auth -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl3 >$outFile");
|
||||
log_desc("Testing sslv3 via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl3", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl3 -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl3 -server_auth >$outFile");
|
||||
log_desc("Testing sslv3 with server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl3 -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl3 -server_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl3 -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl3 -client_auth >$outFile");
|
||||
log_desc("Testing sslv3 with client authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl3 -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl3 -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -ssl3 -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -ssl3 -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv3 with both client and server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -ssl3 -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -ssl3 -server_auth -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 via BIO pair:");
|
||||
log_output("ssltest -bio_pair", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -server_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -server_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -server_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -server_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -client_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with client authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -client_auth", $outFile);
|
||||
|
||||
system("ssltest -bio_pair -server_auth -client_auth -CAfile $tmp_cert >$outFile");
|
||||
system("$ssltest -bio_pair -server_auth -client_auth >$outFile");
|
||||
log_desc("Testing sslv2/sslv3 with both client and server authentication via BIO pair:");
|
||||
log_output("ssltest -bio_pair -server_auth -client_auth -CAfile $tmp_cert", $outFile);
|
||||
log_output("$ssltest -bio_pair -server_auth -client_auth", $outFile);
|
||||
}
|
||||
|
||||
|
||||
|
78
PROBLEMS
78
PROBLEMS
@ -12,8 +12,8 @@ along the whole library path before it bothers looking for .a libraries. This
|
||||
means that -L switches won't matter unless OpenSSL is built with shared
|
||||
library support.
|
||||
|
||||
The workaround may be to change the following lines in apps/Makefile.ssl and
|
||||
test/Makefile.ssl:
|
||||
The workaround may be to change the following lines in apps/Makefile and
|
||||
test/Makefile:
|
||||
|
||||
LIBCRYPTO=-L.. -lcrypto
|
||||
LIBSSL=-L.. -lssl
|
||||
@ -48,20 +48,34 @@ will interfere with each other and lead to test failure.
|
||||
The solution is simple for now: don't run parallell make when testing.
|
||||
|
||||
|
||||
* Bugs in gcc 3.0 triggered
|
||||
* Bugs in gcc triggered
|
||||
|
||||
According to a problem report, there are bugs in gcc 3.0 that are
|
||||
triggered by some of the code in OpenSSL, more specifically in
|
||||
PEM_get_EVP_CIPHER_INFO(). The triggering code is the following:
|
||||
- According to a problem report, there are bugs in gcc 3.0 that are
|
||||
triggered by some of the code in OpenSSL, more specifically in
|
||||
PEM_get_EVP_CIPHER_INFO(). The triggering code is the following:
|
||||
|
||||
header+=11;
|
||||
if (*header != '4') return(0); header++;
|
||||
if (*header != ',') return(0); header++;
|
||||
|
||||
What happens is that gcc might optimize a little too agressively, and
|
||||
you end up with an extra incrementation when *header != '4'.
|
||||
What happens is that gcc might optimize a little too agressively, and
|
||||
you end up with an extra incrementation when *header != '4'.
|
||||
|
||||
We recommend that you upgrade gcc to as high a 3.x version as you can.
|
||||
We recommend that you upgrade gcc to as high a 3.x version as you can.
|
||||
|
||||
- According to multiple problem reports, some of our message digest
|
||||
implementations trigger bug[s] in code optimizer in gcc 3.3 for sparc64
|
||||
and gcc 2.96 for ppc. Former fails to complete RIPEMD160 test, while
|
||||
latter - SHA one.
|
||||
|
||||
The recomendation is to upgrade your compiler. This naturally applies to
|
||||
other similar cases.
|
||||
|
||||
- There is a subtle Solaris x86-specific gcc run-time environment bug, which
|
||||
"falls between" OpenSSL [0.9.8 and later], Solaris ld and GCC. The bug
|
||||
manifests itself as Segmentation Fault upon early application start-up.
|
||||
The problem can be worked around by patching the environment according to
|
||||
http://www.openssl.org/~appro/values.c.
|
||||
|
||||
* solaris64-sparcv9-cc SHA-1 performance with WorkShop 6 compiler.
|
||||
|
||||
@ -120,3 +134,49 @@ Any information helping to solve this issue would be deeply
|
||||
appreciated.
|
||||
|
||||
NOTE: building non-shared doesn't come with this problem.
|
||||
|
||||
* ULTRIX build fails with shell errors, such as "bad substitution"
|
||||
and "test: argument expected"
|
||||
|
||||
The problem is caused by ULTRIX /bin/sh supporting only original
|
||||
Bourne shell syntax/semantics, and the trouble is that the vast
|
||||
majority is so accustomed to more modern syntax, that very few
|
||||
people [if any] would recognize the ancient syntax even as valid.
|
||||
This inevitably results in non-trivial scripts breaking on ULTRIX,
|
||||
and OpenSSL isn't an exclusion. Fortunately there is workaround,
|
||||
hire /bin/ksh to do the job /bin/sh fails to do.
|
||||
|
||||
1. Trick make(1) to use /bin/ksh by setting up following environ-
|
||||
ment variables *prior* you execute ./Configure and make:
|
||||
|
||||
PROG_ENV=POSIX
|
||||
MAKESHELL=/bin/ksh
|
||||
export PROG_ENV MAKESHELL
|
||||
|
||||
or if your shell is csh-compatible:
|
||||
|
||||
setenv PROG_ENV POSIX
|
||||
setenv MAKESHELL /bin/ksh
|
||||
|
||||
2. Trick /bin/sh to use alternative expression evaluator. Create
|
||||
following 'test' script for example in /tmp:
|
||||
|
||||
#!/bin/ksh
|
||||
${0##*/} "$@"
|
||||
|
||||
Then 'chmod a+x /tmp/test; ln /tmp/test /tmp/[' and *prepend*
|
||||
your $PATH with chosen location, e.g. PATH=/tmp:$PATH. Alter-
|
||||
natively just replace system /bin/test and /bin/[ with the
|
||||
above script.
|
||||
|
||||
* hpux64-ia64-cc fails blowfish test.
|
||||
|
||||
Compiler bug, presumably at particular patch level. It should be noted
|
||||
that same compiler generates correct 32-bit code, a.k.a. hpux-ia64-cc
|
||||
target. Drop optimization level to +O2 when compiling 64-bit bf_skey.o.
|
||||
|
||||
* no-engines generates errors.
|
||||
|
||||
Unfortunately, the 'no-engines' configuration option currently doesn't
|
||||
work properly. Use 'no-hw' and you'll will at least get no hardware
|
||||
support. We'll see how we fix that on OpenSSL versions past 0.9.8.
|
||||
|
2
README
2
README
@ -1,5 +1,5 @@
|
||||
|
||||
OpenSSL 0.9.9-dev XX xxx XXXX
|
||||
OpenSSL 0.9.8 05 Jul 2005
|
||||
|
||||
Copyright (c) 1998-2005 The OpenSSL Project
|
||||
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
|
||||
|
5
STATUS
5
STATUS
@ -1,11 +1,11 @@
|
||||
|
||||
OpenSSL STATUS Last modified at
|
||||
______________ $Date: 2005/05/19 19:43:28 $
|
||||
______________ $Date: 2005/07/05 18:49:43 $
|
||||
|
||||
DEVELOPMENT STATE
|
||||
|
||||
o OpenSSL 0.9.9: Under development...
|
||||
o OpenSSL 0.9.8-beta1: Released on May 19th, 2005
|
||||
o OpenSSL 0.9.8: Released on July 5th, 2005
|
||||
o OpenSSL 0.9.7g: Released on April 11th, 2005
|
||||
o OpenSSL 0.9.7f: Released on March 22nd, 2005
|
||||
o OpenSSL 0.9.7e: Released on October 25th, 2004
|
||||
@ -40,6 +40,7 @@
|
||||
|
||||
RELEASE SHOWSTOPPERS
|
||||
|
||||
o The Makefiles fail with some SysV makes.
|
||||
o
|
||||
|
||||
AVAILABLE PATCHES
|
||||
|
255
TABLE
255
TABLE
@ -117,7 +117,7 @@ $sys_id =
|
||||
$lflags =
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -326,7 +326,7 @@ $arflags =
|
||||
|
||||
*** DJGPP
|
||||
$cc = gcc
|
||||
$cflags = -I/dev/env/WATT_ROOT/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O2 -Wall -DDEVRANDOM="/dev/urandom\x24"
|
||||
$cflags = -I/dev/env/WATT_ROOT/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O2 -Wall
|
||||
$unistd =
|
||||
$thread_cflag =
|
||||
$sys_id = MSDOS
|
||||
@ -432,60 +432,6 @@ $shared_extension =
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** OpenUNIX-8
|
||||
$cc = cc
|
||||
$cflags = -O -DFILIO_H -Kalloca
|
||||
$unistd =
|
||||
$thread_cflag = -Kthread
|
||||
$sys_id =
|
||||
$lflags = -lsocket -lnsl
|
||||
$bn_ops = BN_LLONG MD2_CHAR RC4_INDEX DES_PTR DES_RISC1 DES_UNROLL
|
||||
$cpuid_obj = x86cpuid-elf.o
|
||||
$bn_obj = bn86-elf.o co86-elf.o
|
||||
$des_obj = dx86-elf.o yx86-elf.o
|
||||
$aes_obj = ax86-elf.o
|
||||
$bf_obj = bx86-elf.o
|
||||
$md5_obj = mx86-elf.o
|
||||
$sha1_obj = sx86-elf.o s512sse2-elf.o
|
||||
$cast_obj = cx86-elf.o
|
||||
$rc4_obj = rx86-elf.o
|
||||
$rmd160_obj = rm86-elf.o
|
||||
$rc5_obj = r586-elf.o
|
||||
$dso_scheme = dlfcn
|
||||
$shared_target= svr5-shared
|
||||
$shared_cflag = -Kpic
|
||||
$shared_ldflag =
|
||||
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** OpenUNIX-8-gcc
|
||||
$cc = gcc
|
||||
$cflags = -O -DFILIO_H -fomit-frame-pointer
|
||||
$unistd =
|
||||
$thread_cflag = -pthread
|
||||
$sys_id =
|
||||
$lflags = -lsocket -lnsl
|
||||
$bn_ops = BN_LLONG MD2_CHAR RC4_INDEX DES_PTR DES_RISC1 DES_UNROLL
|
||||
$cpuid_obj = x86cpuid-elf.o
|
||||
$bn_obj = bn86-elf.o co86-elf.o
|
||||
$des_obj = dx86-elf.o yx86-elf.o
|
||||
$aes_obj = ax86-elf.o
|
||||
$bf_obj = bx86-elf.o
|
||||
$md5_obj = mx86-elf.o
|
||||
$sha1_obj = sx86-elf.o s512sse2-elf.o
|
||||
$cast_obj = cx86-elf.o
|
||||
$rc4_obj = rx86-elf.o
|
||||
$rmd160_obj = rm86-elf.o
|
||||
$rc5_obj = r586-elf.o
|
||||
$dso_scheme = dlfcn
|
||||
$shared_target= svr5-shared
|
||||
$shared_cflag = -fPIC
|
||||
$shared_ldflag =
|
||||
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** ReliantUNIX
|
||||
$cc = cc
|
||||
$cflags = -KPIC -g -DTERMIOS -DB_ENDIAN
|
||||
@ -682,7 +628,7 @@ $unistd =
|
||||
$thread_cflag =
|
||||
$sys_id = WIN64A
|
||||
$lflags =
|
||||
$bn_ops = SIXTY_FOUR_BIT EXPORT_VAR_AS_FN
|
||||
$bn_ops = SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -709,7 +655,7 @@ $unistd =
|
||||
$thread_cflag =
|
||||
$sys_id = WIN64I
|
||||
$lflags =
|
||||
$bn_ops = SIXTY_FOUR_BIT EXPORT_VAR_AS_FN
|
||||
$bn_ops = SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -866,7 +812,7 @@ $arflags =
|
||||
|
||||
*** bsdi-elf-gcc
|
||||
$cc = gcc
|
||||
$cflags = -DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall
|
||||
$cflags = -DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id =
|
||||
@ -1005,7 +951,7 @@ $cflags = -O3 -DB_ENDIAN
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id = MACOSX
|
||||
$lflags =
|
||||
$lflags = -Wl,-search_paths_first
|
||||
$bn_ops = BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
|
||||
$cpuid_obj =
|
||||
$bn_obj = osx_ppc32.o
|
||||
@ -1433,7 +1379,7 @@ $arflags =
|
||||
|
||||
*** debug-linux-elf
|
||||
$cc = gcc
|
||||
$cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall
|
||||
$cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -march=i486 -Wall
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
@ -1460,7 +1406,7 @@ $arflags =
|
||||
|
||||
*** debug-linux-elf-noefence
|
||||
$cc = gcc
|
||||
$cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall
|
||||
$cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -march=i486 -Wall
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
@ -1757,7 +1703,7 @@ $arflags =
|
||||
|
||||
*** debug-vos-gcc
|
||||
$cc = gcc
|
||||
$cflags = -b hppa1.1-stratus-vos -O0 -g -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG
|
||||
$cflags = -O0 -g -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DB_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id = VOS
|
||||
@ -1782,33 +1728,6 @@ $shared_extension = .so
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** debug-vos-vcc
|
||||
$cc = vcc
|
||||
$cflags = -b i386-stratus-vos -O0 -g -D_POSIX_C_SOURCE=200112L -D_BSD -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id = VOS
|
||||
$lflags = -Wl,-map
|
||||
$bn_ops =
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
$rmd160_obj =
|
||||
$rc5_obj =
|
||||
$dso_scheme =
|
||||
$shared_target=
|
||||
$shared_cflag =
|
||||
$shared_ldflag =
|
||||
$shared_extension = .so
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** dgux-R3-gcc
|
||||
$cc = gcc
|
||||
$cflags = -O3 -fomit-frame-pointer
|
||||
@ -2007,7 +1926,7 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -2034,7 +1953,7 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -2223,7 +2142,7 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -2250,7 +2169,7 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -2324,7 +2243,7 @@ $arflags =
|
||||
|
||||
*** hurd-x86
|
||||
$cc = gcc
|
||||
$cflags = -DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall
|
||||
$cflags = -DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
@ -2412,7 +2331,7 @@ $sys_id =
|
||||
$lflags =
|
||||
$bn_ops = DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT
|
||||
$cpuid_obj =
|
||||
$bn_obj = mips3.o
|
||||
$bn_obj = bn-mips3.o
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
@ -2432,14 +2351,14 @@ $arflags =
|
||||
|
||||
*** irix-mips3-gcc
|
||||
$cc = gcc
|
||||
$cflags = -mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W
|
||||
$cflags = -mabi=n32 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W
|
||||
$unistd =
|
||||
$thread_cflag = -D_SGI_MP_SOURCE
|
||||
$sys_id =
|
||||
$lflags =
|
||||
$bn_ops = MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT
|
||||
$cpuid_obj =
|
||||
$bn_obj = mips3.o
|
||||
$bn_obj = bn-mips3.o
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
@ -2466,7 +2385,7 @@ $sys_id =
|
||||
$lflags =
|
||||
$bn_ops = RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG
|
||||
$cpuid_obj =
|
||||
$bn_obj = mips3.o
|
||||
$bn_obj = bn-mips3.o
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
@ -2486,14 +2405,14 @@ $arflags =
|
||||
|
||||
*** irix64-mips4-gcc
|
||||
$cc = gcc
|
||||
$cflags = -mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W
|
||||
$cflags = -mabi=64 -mips4 -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W
|
||||
$unistd =
|
||||
$thread_cflag = -D_SGI_MP_SOURCE
|
||||
$sys_id =
|
||||
$lflags =
|
||||
$bn_ops = RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG
|
||||
$cpuid_obj =
|
||||
$bn_obj = mips3.o
|
||||
$bn_obj = bn-mips3.o
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
@ -2621,7 +2540,7 @@ $arflags =
|
||||
|
||||
*** linux-aout
|
||||
$cc = gcc
|
||||
$cflags = -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall
|
||||
$cflags = -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -march=i486 -Wall
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id =
|
||||
@ -2763,7 +2682,7 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -2790,7 +2709,34 @@ $sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK
|
||||
$cpuid_obj =
|
||||
$bn_obj = ia64.o
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
$md5_obj =
|
||||
$sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o
|
||||
$cast_obj =
|
||||
$rc4_obj = rc4-ia64.o
|
||||
$rmd160_obj =
|
||||
$rc5_obj =
|
||||
$dso_scheme = dlfcn
|
||||
$shared_target= linux-shared
|
||||
$shared_cflag = -fPIC
|
||||
$shared_ldflag =
|
||||
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** linux-ia64-icc
|
||||
$cc = icc
|
||||
$cflags = -DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
$lflags = -ldl
|
||||
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK
|
||||
$cpuid_obj =
|
||||
$bn_obj = bn-ia64.o
|
||||
$des_obj =
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-ia64.o
|
||||
$bf_obj =
|
||||
@ -3030,8 +2976,8 @@ $cflags =
|
||||
$unistd =
|
||||
$thread_cflag =
|
||||
$sys_id =
|
||||
$lflags = RC4_INDEX MD2_INT
|
||||
$bn_ops =
|
||||
$lflags =
|
||||
$bn_ops = BN_LLONG RC4_INDEX MD2_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -3057,8 +3003,35 @@ $cflags =
|
||||
$unistd =
|
||||
$thread_cflag =
|
||||
$sys_id =
|
||||
$lflags = BN_LLONG RC4_INDEX MD2_INT
|
||||
$bn_ops =
|
||||
$lflags =
|
||||
$bn_ops = BN_LLONG RC4_INDEX MD2_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
$rmd160_obj =
|
||||
$rc5_obj =
|
||||
$dso_scheme =
|
||||
$shared_target=
|
||||
$shared_cflag =
|
||||
$shared_ldflag =
|
||||
$shared_extension =
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** netware-libc-bsdsock
|
||||
$cc = mwccnlm
|
||||
$cflags =
|
||||
$unistd =
|
||||
$thread_cflag =
|
||||
$sys_id =
|
||||
$lflags =
|
||||
$bn_ops = BN_LLONG RC4_INDEX MD2_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -3084,8 +3057,8 @@ $cflags = -nostdinc -I/ndk/libc/include -I/ndk/libc/include/winsock -DL_EN
|
||||
$unistd =
|
||||
$thread_cflag =
|
||||
$sys_id =
|
||||
$lflags = RC4_INDEX MD2_INT
|
||||
$bn_ops =
|
||||
$lflags =
|
||||
$bn_ops = BN_LLONG RC4_INDEX MD2_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -3348,33 +3321,6 @@ $shared_extension =
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** sco3-gcc
|
||||
$cc = gcc
|
||||
$cflags = -O3 -fomit-frame-pointer -Dssize_t=int -DNO_SYS_UN_H
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id =
|
||||
$lflags = -lsocket
|
||||
$bn_ops = BN_LLONG DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
$rmd160_obj =
|
||||
$rc5_obj =
|
||||
$dso_scheme =
|
||||
$shared_target=
|
||||
$shared_cflag =
|
||||
$shared_ldflag =
|
||||
$shared_extension =
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** sco5-cc
|
||||
$cc = cc
|
||||
$cflags = -belf
|
||||
@ -3620,7 +3566,7 @@ $arflags =
|
||||
|
||||
*** solaris-x86-gcc
|
||||
$cc = gcc
|
||||
$cflags = -O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DOPENSSL_NO_INLINE_ASM
|
||||
$cflags = -O3 -fomit-frame-pointer -march=pentium -Wall -DL_ENDIAN -DOPENSSL_NO_INLINE_ASM
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
@ -3868,7 +3814,7 @@ $unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id =
|
||||
$lflags =
|
||||
$bn_ops =
|
||||
$bn_ops = BN_LLONG
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
@ -3971,7 +3917,7 @@ $arflags =
|
||||
|
||||
*** unixware-7-gcc
|
||||
$cc = gcc
|
||||
$cflags = -DL_ENDIAN -DFILIO_H -O3 -fomit-frame-pointer -m486 -Wall
|
||||
$cflags = -DL_ENDIAN -DFILIO_H -O3 -fomit-frame-pointer -march=pentium -Wall
|
||||
$unistd =
|
||||
$thread_cflag = -D_REENTRANT
|
||||
$sys_id =
|
||||
@ -3998,7 +3944,7 @@ $arflags =
|
||||
|
||||
*** vos-gcc
|
||||
$cc = gcc
|
||||
$cflags = -b hppa1.1-stratus-vos -O3 -Wall -Wuninitialized -D_POSIX_C_SOURCE=200112L -D_BSD
|
||||
$cflags = -O3 -Wall -D_POSIX_C_SOURCE=200112L -D_BSD -DB_ENDIAN
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id = VOS
|
||||
@ -4023,33 +3969,6 @@ $shared_extension = .so
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** vos-vcc
|
||||
$cc = vcc
|
||||
$cflags = -b i386-stratus-vos -O3 -D_POSIX_C_SOURCE=200112L -D_BSD
|
||||
$unistd =
|
||||
$thread_cflag = (unknown)
|
||||
$sys_id = VOS
|
||||
$lflags = -Wl,-map
|
||||
$bn_ops =
|
||||
$cpuid_obj =
|
||||
$bn_obj =
|
||||
$des_obj =
|
||||
$aes_obj =
|
||||
$bf_obj =
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
$rmd160_obj =
|
||||
$rc5_obj =
|
||||
$dso_scheme =
|
||||
$shared_target=
|
||||
$shared_cflag =
|
||||
$shared_ldflag =
|
||||
$shared_extension = .so
|
||||
$ranlib =
|
||||
$arflags =
|
||||
|
||||
*** vxworks-mipsle
|
||||
$cc = ccmips
|
||||
$cflags = -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -DL_ENDIAN -EL -Wl,-EL -mips2 -mno-branch-likely -G 0 -fno-builtin -msoft-float -DCPU=MIPS32 -DMIPSEL -DNO_STRINGS_H -I$(WIND_BASE)/target/h
|
||||
|
@ -68,19 +68,19 @@ foreach (@ARGV) {
|
||||
exit 0;
|
||||
} elsif (/^-newcert$/) {
|
||||
# create a certificate
|
||||
system ("$REQ -new -x509 -keyout newreq.pem -out newreq.pem $DAYS");
|
||||
system ("$REQ -new -x509 -keyout newkey.pem -out newcert.pem $DAYS");
|
||||
$RET=$?;
|
||||
print "Certificate (and private key) is in newreq.pem\n"
|
||||
print "Certificate is in newcert.pem, private key is in newkey.pem\n"
|
||||
} elsif (/^-newreq$/) {
|
||||
# create a certificate request
|
||||
system ("$REQ -new -keyout newreq.pem -out newreq.pem $DAYS");
|
||||
system ("$REQ -new -keyout newkey.pem -out newreq.pem $DAYS");
|
||||
$RET=$?;
|
||||
print "Request (and private key) is in newreq.pem\n";
|
||||
print "Request is in newreq.pem, private key is in newkey.pem\n";
|
||||
} elsif (/^-newreq-nodes$/) {
|
||||
# create a certificate request
|
||||
system ("$REQ -new -nodes -keyout newreq.pem -out newreq.pem $DAYS");
|
||||
system ("$REQ -new -nodes -keyout newkey.pem -out newreq.pem $DAYS");
|
||||
$RET=$?;
|
||||
print "Request (and private key) is in newreq.pem\n";
|
||||
print "Request is in newreq.pem, private key is in newkey.pem\n";
|
||||
} elsif (/^-newca$/) {
|
||||
# if explicitly asked for or it doesn't exist then setup the
|
||||
# directory structure that Eric likes to manage things
|
||||
@ -120,10 +120,11 @@ foreach (@ARGV) {
|
||||
} elsif (/^-pkcs12$/) {
|
||||
my $cname = $ARGV[1];
|
||||
$cname = "My Certificate" unless defined $cname;
|
||||
system ("$PKCS12 -in newcert.pem -inkey newreq.pem " .
|
||||
system ("$PKCS12 -in newcert.pem -inkey newkey.pem " .
|
||||
"-certfile ${CATOP}/$CACERT -out newcert.p12 " .
|
||||
"-export -name \"$cname\"");
|
||||
$RET=$?;
|
||||
print "PKCS #12 file is in newcert.p12\n";
|
||||
exit $RET;
|
||||
} elsif (/^-xsign$/) {
|
||||
system ("$CA -policy policy_anything -infiles newreq.pem");
|
||||
|
@ -53,15 +53,15 @@ case $i in
|
||||
;;
|
||||
-newcert)
|
||||
# create a certificate
|
||||
$REQ -new -x509 -keyout newreq.pem -out newreq.pem $DAYS
|
||||
$REQ -new -x509 -keyout newkey.pem -out newcert.pem $DAYS
|
||||
RET=$?
|
||||
echo "Certificate (and private key) is in newreq.pem"
|
||||
echo "Certificate is in newcert.pem, private key is in newkey.pem"
|
||||
;;
|
||||
-newreq)
|
||||
# create a certificate request
|
||||
$REQ -new -keyout newreq.pem -out newreq.pem $DAYS
|
||||
$REQ -new -keyout newkey.pem -out newreq.pem $DAYS
|
||||
RET=$?
|
||||
echo "Request (and private key) is in newreq.pem"
|
||||
echo "Request is in newreq.pem, private key is in newkey.pem"
|
||||
;;
|
||||
-newca)
|
||||
# if explicitly asked for or it doesn't exist then setup the directory
|
||||
|
284
apps/Makefile
284
apps/Makefile
@ -86,7 +86,7 @@ req: sreq.o $(A_OBJ) $(DLIBCRYPTO)
|
||||
shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
|
||||
shlib_target="$(SHLIB_TARGET)"; \
|
||||
fi; \
|
||||
$(MAKE) -f $(TOP)/Makefile.shared \
|
||||
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
||||
APPNAME=req OBJECTS="sreq.o $(A_OBJ) $(RAND_OBJ)" \
|
||||
LIBDEPS="$(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)" \
|
||||
link_app.$${shlib_target}
|
||||
@ -158,11 +158,10 @@ $(EXE): progs.h $(E_OBJ) $(PROGRAM).o $(DLIBCRYPTO) $(DLIBSSL)
|
||||
else \
|
||||
LIBRARIES="$(LIBSSL) $(LIBKRB5) $(LIBCRYPTO)" ; \
|
||||
fi; \
|
||||
$(MAKE) -f $(TOP)/Makefile.shared \
|
||||
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
||||
APPNAME=$(EXE) OBJECTS="$(PROGRAM).o $(E_OBJ)" \
|
||||
LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
|
||||
link_app.$${shlib_target}
|
||||
@case "../*.dll" in *\**) ;; *) cp -p ../*.dll .;; esac
|
||||
-(cd ..; \
|
||||
OPENSSL="`pwd`/util/opensslwrap.sh"; export OPENSSL; \
|
||||
$(PERL) tools/c_rehash certs)
|
||||
@ -236,17 +235,18 @@ ca.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
|
||||
ca.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
|
||||
ca.o: ../include/openssl/x509v3.h apps.h ca.c
|
||||
ciphers.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
ciphers.o: ../include/openssl/buffer.h ../include/openssl/comp.h
|
||||
ciphers.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
ciphers.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
ciphers.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
ciphers.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
ciphers.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
ciphers.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
ciphers.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
ciphers.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
ciphers.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
ciphers.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
ciphers.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
ciphers.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
ciphers.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
ciphers.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
ciphers.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
ciphers.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -391,17 +391,18 @@ 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 apps.h enc.c
|
||||
engine.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
engine.o: ../include/openssl/buffer.h ../include/openssl/comp.h
|
||||
engine.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
engine.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
engine.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
engine.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
engine.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
engine.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
engine.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
engine.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
engine.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
engine.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
engine.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
engine.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
engine.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
engine.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
engine.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
engine.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -410,17 +411,18 @@ engine.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
engine.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
engine.o: ../include/openssl/x509_vfy.h apps.h engine.c
|
||||
errstr.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
errstr.o: ../include/openssl/buffer.h ../include/openssl/comp.h
|
||||
errstr.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
errstr.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
errstr.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
errstr.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
errstr.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
errstr.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
errstr.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
errstr.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
errstr.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
errstr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
errstr.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
errstr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
errstr.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
errstr.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
errstr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
errstr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -507,25 +509,27 @@ 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/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/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/buffer.h ../include/openssl/comp.h
|
||||
openssl.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
openssl.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
openssl.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
openssl.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
openssl.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
openssl.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
openssl.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
openssl.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
openssl.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
openssl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
openssl.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
openssl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
openssl.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
openssl.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
openssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
openssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -621,25 +625,24 @@ 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 apps.h rand.c
|
||||
req.o: ../crypto/cryptlib.h ../e_os.h ../include/openssl/asn1.h
|
||||
req.o: ../include/openssl/bio.h ../include/openssl/bn.h
|
||||
req.o: ../include/openssl/buffer.h ../include/openssl/conf.h
|
||||
req.o: ../include/openssl/crypto.h ../include/openssl/dh.h
|
||||
req.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
|
||||
req.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
req.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
req.o: ../include/openssl/err.h ../include/openssl/evp.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: ../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
|
||||
req.o: ../include/openssl/dh.h ../include/openssl/dsa.h
|
||||
req.o: ../include/openssl/e_os2.h ../include/openssl/ec.h
|
||||
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/lhash.h
|
||||
req.o: ../include/openssl/obj_mac.h ../include/openssl/objects.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
|
||||
@ -671,17 +674,18 @@ 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 apps.h rsautl.c
|
||||
s_cb.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
|
||||
s_cb.o: ../include/openssl/buffer.h ../include/openssl/comp.h
|
||||
s_cb.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
s_cb.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
s_cb.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
s_cb.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
s_cb.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
s_cb.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_cb.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
s_cb.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
s_cb.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_cb.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
s_cb.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
s_cb.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
s_cb.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
s_cb.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
s_cb.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
s_cb.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -690,17 +694,18 @@ s_cb.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
s_cb.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
s_cb.o: ../include/openssl/x509_vfy.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/buffer.h ../include/openssl/comp.h
|
||||
s_client.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
s_client.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
s_client.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
s_client.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
s_client.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
s_client.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_client.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
s_client.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
s_client.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_client.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
s_client.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
s_client.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
s_client.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
s_client.o: ../include/openssl/pqueue.h ../include/openssl/rand.h
|
||||
s_client.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
s_client.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
@ -722,28 +727,29 @@ s_server.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_server.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
s_server.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
s_server.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
s_server.o: ../include/openssl/pkcs7.h ../include/openssl/pqueue.h
|
||||
s_server.o: ../include/openssl/rand.h ../include/openssl/rsa.h
|
||||
s_server.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
s_server.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
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/pkcs7.h ../include/openssl/pq_compat.h
|
||||
s_server.o: ../include/openssl/pqueue.h ../include/openssl/rand.h
|
||||
s_server.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
|
||||
s_server.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
s_server.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
s_server.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
|
||||
s_server.o: ../include/openssl/store.h ../include/openssl/symhacks.h
|
||||
s_server.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
s_server.o: ../include/openssl/ui.h ../include/openssl/x509.h
|
||||
s_server.o: ../include/openssl/x509_vfy.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/buffer.h ../include/openssl/comp.h
|
||||
s_socket.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
s_socket.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
s_socket.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
s_socket.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
s_socket.o: ../include/openssl/evp.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/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/pqueue.h
|
||||
s_socket.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_socket.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
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/kssl.h ../include/openssl/lhash.h
|
||||
s_socket.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
|
||||
s_socket.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
|
||||
s_socket.o: ../include/openssl/ossl_typ.h ../include/openssl/pem.h
|
||||
s_socket.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
|
||||
s_socket.o: ../include/openssl/pq_compat.h ../include/openssl/pqueue.h
|
||||
s_socket.o: ../include/openssl/safestack.h ../include/openssl/sha.h
|
||||
s_socket.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
|
||||
s_socket.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
|
||||
@ -752,17 +758,18 @@ s_socket.o: ../include/openssl/tls1.h ../include/openssl/txt_db.h
|
||||
s_socket.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.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/buffer.h ../include/openssl/comp.h
|
||||
s_time.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
s_time.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
s_time.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
s_time.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
s_time.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
s_time.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
s_time.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
s_time.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
s_time.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
s_time.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
s_time.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
s_time.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
s_time.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
s_time.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
s_time.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
s_time.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
@ -771,17 +778,18 @@ s_time.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
|
||||
s_time.o: ../include/openssl/txt_db.h ../include/openssl/x509.h
|
||||
s_time.o: ../include/openssl/x509_vfy.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/buffer.h ../include/openssl/comp.h
|
||||
sess_id.o: ../include/openssl/conf.h ../include/openssl/crypto.h
|
||||
sess_id.o: ../include/openssl/dtls1.h ../include/openssl/e_os2.h
|
||||
sess_id.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
|
||||
sess_id.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
|
||||
sess_id.o: ../include/openssl/err.h ../include/openssl/evp.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/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
|
||||
sess_id.o: ../include/openssl/bn.h ../include/openssl/buffer.h
|
||||
sess_id.o: ../include/openssl/comp.h ../include/openssl/conf.h
|
||||
sess_id.o: ../include/openssl/crypto.h ../include/openssl/dtls1.h
|
||||
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/kssl.h
|
||||
sess_id.o: ../include/openssl/lhash.h ../include/openssl/obj_mac.h
|
||||
sess_id.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
|
||||
sess_id.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
|
||||
sess_id.o: ../include/openssl/pem.h ../include/openssl/pem2.h
|
||||
sess_id.o: ../include/openssl/pkcs7.h ../include/openssl/pq_compat.h
|
||||
sess_id.o: ../include/openssl/pqueue.h ../include/openssl/safestack.h
|
||||
sess_id.o: ../include/openssl/sha.h ../include/openssl/ssl.h
|
||||
sess_id.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
|
||||
|
24
apps/apps.c
24
apps/apps.c
@ -374,10 +374,17 @@ int chopup_args(ARGS *arg, char *buf, int *argc, char **argv[])
|
||||
/* The start of something good :-) */
|
||||
if (num >= arg->count)
|
||||
{
|
||||
arg->count+=20;
|
||||
arg->data=(char **)OPENSSL_realloc(arg->data,
|
||||
sizeof(char *)*arg->count);
|
||||
if (argc == 0) return(0);
|
||||
char **tmp_p;
|
||||
int tlen = arg->count + 20;
|
||||
tmp_p = (char **)OPENSSL_realloc(arg->data,
|
||||
sizeof(char *)*tlen);
|
||||
if (tmp_p == NULL)
|
||||
return 0;
|
||||
arg->data = tmp_p;
|
||||
arg->count = tlen;
|
||||
/* initialize newly allocated data */
|
||||
for (i = num; i < arg->count; i++)
|
||||
arg->data[i] = NULL;
|
||||
}
|
||||
arg->data[num++]=p;
|
||||
|
||||
@ -1604,8 +1611,9 @@ int rotate_serial(char *serialfile, char *new_suffix, char *old_suffix)
|
||||
{
|
||||
if (errno != ENOENT
|
||||
#ifdef ENOTDIR
|
||||
&& errno != ENOTDIR)
|
||||
&& errno != ENOTDIR
|
||||
#endif
|
||||
)
|
||||
goto err;
|
||||
}
|
||||
else
|
||||
@ -1893,8 +1901,9 @@ int rotate_index(const char *dbfile, const char *new_suffix, const char *old_suf
|
||||
{
|
||||
if (errno != ENOENT
|
||||
#ifdef ENOTDIR
|
||||
&& errno != ENOTDIR)
|
||||
&& errno != ENOTDIR
|
||||
#endif
|
||||
)
|
||||
goto err;
|
||||
}
|
||||
else
|
||||
@ -1929,8 +1938,9 @@ int rotate_index(const char *dbfile, const char *new_suffix, const char *old_suf
|
||||
{
|
||||
if (errno != ENOENT
|
||||
#ifdef ENOTDIR
|
||||
&& errno != ENOTDIR)
|
||||
&& errno != ENOTDIR
|
||||
#endif
|
||||
)
|
||||
goto err;
|
||||
}
|
||||
else
|
||||
|
@ -196,7 +196,7 @@ int MAIN(int argc, char **argv)
|
||||
bad:
|
||||
BIO_printf(bio_err,"%s [options] <infile\n",prog);
|
||||
BIO_printf(bio_err,"where options are\n");
|
||||
BIO_printf(bio_err," -inform arg input format - one of DER TXT PEM\n");
|
||||
BIO_printf(bio_err," -inform arg input format - one of DER PEM\n");
|
||||
BIO_printf(bio_err," -in arg input file\n");
|
||||
BIO_printf(bio_err," -out arg output file (output format is always DER\n");
|
||||
BIO_printf(bio_err," -noout arg don't produce any output\n");
|
||||
|
56
apps/ca.c
56
apps/ca.c
@ -105,6 +105,9 @@
|
||||
|
||||
#define ENV_DEFAULT_CA "default_ca"
|
||||
|
||||
#define STRING_MASK "string_mask"
|
||||
#define UTF8_IN "utf8"
|
||||
|
||||
#define ENV_DIR "dir"
|
||||
#define ENV_CERTS "certs"
|
||||
#define ENV_CRL_DIR "crl_dir"
|
||||
@ -174,6 +177,7 @@ static const char *ca_usage[]={
|
||||
" -msie_hack - msie modifications to handle all those universal strings\n",
|
||||
" -revoke file - Revoke a certificate (given in file)\n",
|
||||
" -subj arg - Use arg instead of request's subject\n",
|
||||
" -utf8 - input characters are UTF8 (default ASCII)\n",
|
||||
" -multivalue-rdn - enable support for multivalued RDNs\n",
|
||||
" -extensions .. - Extension section (override value in config file)\n",
|
||||
" -extfile file - Configuration file with X509v3 extentions to add\n",
|
||||
@ -195,27 +199,27 @@ extern int EF_ALIGNMENT;
|
||||
static void lookup_fail(const char *name, const char *tag);
|
||||
static int certify(X509 **xret, char *infile,EVP_PKEY *pkey,X509 *x509,
|
||||
const EVP_MD *dgst,STACK_OF(CONF_VALUE) *policy,CA_DB *db,
|
||||
BIGNUM *serial, char *subj, int multirdn, int email_dn, char *startdate,
|
||||
BIGNUM *serial, char *subj,unsigned long chtype, int multirdn, int email_dn, char *startdate,
|
||||
char *enddate, long days, int batch, char *ext_sect, CONF *conf,
|
||||
int verbose, unsigned long certopt, unsigned long nameopt,
|
||||
int default_op, int ext_copy, int selfsign);
|
||||
static int certify_cert(X509 **xret, char *infile,EVP_PKEY *pkey,X509 *x509,
|
||||
const EVP_MD *dgst,STACK_OF(CONF_VALUE) *policy,
|
||||
CA_DB *db, BIGNUM *serial, char *subj, int multirdn, int email_dn,
|
||||
CA_DB *db, BIGNUM *serial, char *subj,unsigned long chtype, int multirdn, int email_dn,
|
||||
char *startdate, char *enddate, long days, int batch,
|
||||
char *ext_sect, CONF *conf,int verbose, unsigned long certopt,
|
||||
unsigned long nameopt, int default_op, int ext_copy,
|
||||
ENGINE *e);
|
||||
static int certify_spkac(X509 **xret, char *infile,EVP_PKEY *pkey,X509 *x509,
|
||||
const EVP_MD *dgst,STACK_OF(CONF_VALUE) *policy,
|
||||
CA_DB *db, BIGNUM *serial,char *subj, int multirdn, int email_dn,
|
||||
CA_DB *db, BIGNUM *serial,char *subj,unsigned long chtype, int multirdn, int email_dn,
|
||||
char *startdate, char *enddate, long days, char *ext_sect,
|
||||
CONF *conf, int verbose, unsigned long certopt,
|
||||
unsigned long nameopt, int default_op, int ext_copy);
|
||||
static int fix_data(int nid, int *type);
|
||||
static void write_new_certificate(BIO *bp, X509 *x, int output_der, int notext);
|
||||
static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
|
||||
STACK_OF(CONF_VALUE) *policy, CA_DB *db, BIGNUM *serial,char *subj, int multirdn,
|
||||
STACK_OF(CONF_VALUE) *policy, CA_DB *db, BIGNUM *serial,char *subj,unsigned long chtype, int multirdn,
|
||||
int email_dn, char *startdate, char *enddate, long days, int batch,
|
||||
int verbose, X509_REQ *req, char *ext_sect, CONF *conf,
|
||||
unsigned long certopt, unsigned long nameopt, int default_op,
|
||||
@ -275,6 +279,7 @@ int MAIN(int argc, char **argv)
|
||||
char *extensions=NULL;
|
||||
char *extfile=NULL;
|
||||
char *subj=NULL;
|
||||
unsigned long chtype = MBSTRING_ASC;
|
||||
int multirdn = 0;
|
||||
char *tmp_email_dn=NULL;
|
||||
char *crl_ext=NULL;
|
||||
@ -356,6 +361,8 @@ EF_ALIGNMENT=0;
|
||||
subj= *(++argv);
|
||||
/* preserve=1; */
|
||||
}
|
||||
else if (strcmp(*argv,"-utf8") == 0)
|
||||
chtype = MBSTRING_UTF8;
|
||||
else if (strcmp(*argv,"-create_serial") == 0)
|
||||
create_ser = 1;
|
||||
else if (strcmp(*argv,"-multivalue-rdn") == 0)
|
||||
@ -645,6 +652,23 @@ bad:
|
||||
ERR_clear_error();
|
||||
app_RAND_load_file(randfile, bio_err, 0);
|
||||
|
||||
f = NCONF_get_string(conf, section, STRING_MASK);
|
||||
if (!f)
|
||||
ERR_clear_error();
|
||||
|
||||
if(f && !ASN1_STRING_set_default_mask_asc(f)) {
|
||||
BIO_printf(bio_err, "Invalid global string mask setting %s\n", f);
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (chtype != MBSTRING_UTF8){
|
||||
f = NCONF_get_string(conf, section, UTF8_IN);
|
||||
if (!f)
|
||||
ERR_clear_error();
|
||||
else if (!strcmp(f, "yes"))
|
||||
chtype = MBSTRING_UTF8;
|
||||
}
|
||||
|
||||
db_attr.unique_subject = 1;
|
||||
p = NCONF_get_string(conf, section, ENV_UNIQUE_SUBJECT);
|
||||
if (p)
|
||||
@ -1135,7 +1159,7 @@ bad:
|
||||
{
|
||||
total++;
|
||||
j=certify_spkac(&x,spkac_file,pkey,x509,dgst,attribs,db,
|
||||
serial,subj,multirdn,email_dn,startdate,enddate,days,extensions,
|
||||
serial,subj,chtype,multirdn,email_dn,startdate,enddate,days,extensions,
|
||||
conf,verbose,certopt,nameopt,default_op,ext_copy);
|
||||
if (j < 0) goto err;
|
||||
if (j > 0)
|
||||
@ -1159,7 +1183,7 @@ bad:
|
||||
{
|
||||
total++;
|
||||
j=certify_cert(&x,ss_cert_file,pkey,x509,dgst,attribs,
|
||||
db,serial,subj,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
db,serial,subj,chtype,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
extensions,conf,verbose, certopt, nameopt,
|
||||
default_op, ext_copy, e);
|
||||
if (j < 0) goto err;
|
||||
@ -1179,7 +1203,7 @@ bad:
|
||||
{
|
||||
total++;
|
||||
j=certify(&x,infile,pkey,x509p,dgst,attribs,db,
|
||||
serial,subj,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
serial,subj,chtype,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
extensions,conf,verbose, certopt, nameopt,
|
||||
default_op, ext_copy, selfsign);
|
||||
if (j < 0) goto err;
|
||||
@ -1199,7 +1223,7 @@ bad:
|
||||
{
|
||||
total++;
|
||||
j=certify(&x,argv[i],pkey,x509p,dgst,attribs,db,
|
||||
serial,subj,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
serial,subj,chtype,multirdn,email_dn,startdate,enddate,days,batch,
|
||||
extensions,conf,verbose, certopt, nameopt,
|
||||
default_op, ext_copy, selfsign);
|
||||
if (j < 0) goto err;
|
||||
@ -1509,7 +1533,7 @@ static void lookup_fail(const char *name, const char *tag)
|
||||
|
||||
static int certify(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
const EVP_MD *dgst, STACK_OF(CONF_VALUE) *policy, CA_DB *db,
|
||||
BIGNUM *serial, char *subj, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
BIGNUM *serial, char *subj,unsigned long chtype, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
long days, int batch, char *ext_sect, CONF *lconf, int verbose,
|
||||
unsigned long certopt, unsigned long nameopt, int default_op,
|
||||
int ext_copy, int selfsign)
|
||||
@ -1565,7 +1589,7 @@ static int certify(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
else
|
||||
BIO_printf(bio_err,"Signature ok\n");
|
||||
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj, multirdn, email_dn,
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj,chtype,multirdn, email_dn,
|
||||
startdate,enddate,days,batch,verbose,req,ext_sect,lconf,
|
||||
certopt, nameopt, default_op, ext_copy, selfsign);
|
||||
|
||||
@ -1577,7 +1601,7 @@ err:
|
||||
|
||||
static int certify_cert(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
const EVP_MD *dgst, STACK_OF(CONF_VALUE) *policy, CA_DB *db,
|
||||
BIGNUM *serial, char *subj, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
BIGNUM *serial, char *subj, unsigned long chtype, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
long days, int batch, char *ext_sect, CONF *lconf, int verbose,
|
||||
unsigned long certopt, unsigned long nameopt, int default_op,
|
||||
int ext_copy, ENGINE *e)
|
||||
@ -1619,7 +1643,7 @@ static int certify_cert(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
if ((rreq=X509_to_X509_REQ(req,NULL,EVP_md5())) == NULL)
|
||||
goto err;
|
||||
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj,multirdn,email_dn,startdate,enddate,
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj,chtype,multirdn,email_dn,startdate,enddate,
|
||||
days,batch,verbose,rreq,ext_sect,lconf, certopt, nameopt, default_op,
|
||||
ext_copy, 0);
|
||||
|
||||
@ -1631,7 +1655,7 @@ err:
|
||||
|
||||
static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
|
||||
STACK_OF(CONF_VALUE) *policy, CA_DB *db, BIGNUM *serial, char *subj,
|
||||
int multirdn,
|
||||
unsigned long chtype, int multirdn,
|
||||
int email_dn, char *startdate, char *enddate, long days, int batch,
|
||||
int verbose, X509_REQ *req, char *ext_sect, CONF *lconf,
|
||||
unsigned long certopt, unsigned long nameopt, int default_op,
|
||||
@ -1664,7 +1688,7 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
|
||||
|
||||
if (subj)
|
||||
{
|
||||
X509_NAME *n = parse_name(subj, MBSTRING_ASC, multirdn);
|
||||
X509_NAME *n = parse_name(subj, chtype, multirdn);
|
||||
|
||||
if (!n)
|
||||
{
|
||||
@ -2201,7 +2225,7 @@ static void write_new_certificate(BIO *bp, X509 *x, int output_der, int notext)
|
||||
|
||||
static int certify_spkac(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
const EVP_MD *dgst, STACK_OF(CONF_VALUE) *policy, CA_DB *db,
|
||||
BIGNUM *serial, char *subj, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
BIGNUM *serial, char *subj,unsigned long chtype, int multirdn, int email_dn, char *startdate, char *enddate,
|
||||
long days, char *ext_sect, CONF *lconf, int verbose, unsigned long certopt,
|
||||
unsigned long nameopt, int default_op, int ext_copy)
|
||||
{
|
||||
@ -2342,7 +2366,7 @@ static int certify_spkac(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
|
||||
|
||||
X509_REQ_set_pubkey(req,pktmp);
|
||||
EVP_PKEY_free(pktmp);
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj,multirdn,email_dn,startdate,enddate,
|
||||
ok=do_body(xret,pkey,x509,dgst,policy,db,serial,subj,chtype,multirdn,email_dn,startdate,enddate,
|
||||
days,1,verbose,req,ext_sect,lconf, certopt, nameopt, default_op,
|
||||
ext_copy, 0);
|
||||
err:
|
||||
|
@ -56,6 +56,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#ifndef OPENSSL_NO_EC
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -68,6 +68,8 @@
|
||||
* Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems Laboratories.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#ifndef OPENSSL_NO_EC
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
|
@ -474,7 +474,8 @@ static int do_passwd(int passed_salt, char **salt_p, char **salt_malloc_p,
|
||||
if ((strlen(passwd) > pw_maxlen))
|
||||
{
|
||||
if (!quiet)
|
||||
BIO_printf(bio_err, "Warning: truncating password to %u characters\n", pw_maxlen);
|
||||
/* XXX: really we should know how to print a size_t, not cast it */
|
||||
BIO_printf(bio_err, "Warning: truncating password to %u characters\n", (unsigned)pw_maxlen);
|
||||
passwd[pw_maxlen] = 0;
|
||||
}
|
||||
assert(strlen(passwd) <= pw_maxlen);
|
||||
|
@ -1,6 +1,4 @@
|
||||
/* pkcs12.c */
|
||||
#if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_SHA1)
|
||||
|
||||
/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
|
||||
* project.
|
||||
*/
|
||||
@ -58,6 +56,9 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_SHA1)
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
@ -263,6 +263,9 @@ int MAIN(int argc, char **argv)
|
||||
int starttls_proto = 0;
|
||||
int prexit = 0, vflags = 0;
|
||||
SSL_METHOD *meth=NULL;
|
||||
#ifdef sock_type
|
||||
#undef sock_type
|
||||
#endif
|
||||
int sock_type=SOCK_STREAM;
|
||||
BIO *sbio;
|
||||
char *inrand=NULL;
|
||||
|
@ -262,6 +262,9 @@ static char *engine_id=NULL;
|
||||
static const char *session_id_prefix=NULL;
|
||||
|
||||
static int enable_timeouts = 0;
|
||||
#ifdef mtu
|
||||
#undef mtu
|
||||
#endif
|
||||
static long mtu;
|
||||
static int cert_chain = 0;
|
||||
|
||||
@ -534,6 +537,9 @@ int MAIN(int argc, char *argv[])
|
||||
int no_tmp_rsa=0,no_dhe=0,no_ecdhe=0,nocert=0;
|
||||
int state=0;
|
||||
SSL_METHOD *meth=NULL;
|
||||
#ifdef sock_type
|
||||
#undef sock_type
|
||||
#endif
|
||||
int sock_type=SOCK_STREAM;
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
ENGINE *e=NULL;
|
||||
|
@ -87,8 +87,12 @@ typedef unsigned int u_int;
|
||||
|
||||
#ifndef OPENSSL_NO_SOCK
|
||||
|
||||
#if defined(OPENSSL_SYS_NETWARE) && defined(NETWARE_BSDSOCK)
|
||||
#include "netdb.h"
|
||||
#endif
|
||||
|
||||
static struct hostent *GetHostByName(char *name);
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_NETWARE)
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || (defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK))
|
||||
static void ssl_sock_cleanup(void);
|
||||
#endif
|
||||
static int ssl_sock_init(void);
|
||||
@ -104,7 +108,7 @@ static int host_ip(char *str, unsigned char ip[4]);
|
||||
#define SOCKET_PROTOCOL IPPROTO_TCP
|
||||
#endif
|
||||
|
||||
#ifdef OPENSSL_SYS_NETWARE
|
||||
#if defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK)
|
||||
static int wsa_init_done=0;
|
||||
#endif
|
||||
|
||||
@ -156,7 +160,7 @@ static void ssl_sock_cleanup(void)
|
||||
WSACleanup();
|
||||
}
|
||||
}
|
||||
#elif defined(OPENSSL_SYS_NETWARE)
|
||||
#elif defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK)
|
||||
static void sock_cleanup(void)
|
||||
{
|
||||
if (wsa_init_done)
|
||||
@ -199,7 +203,7 @@ static int ssl_sock_init(void)
|
||||
SetWindowLong(topWnd,GWL_WNDPROC,(LONG)lpTopHookProc);
|
||||
#endif /* OPENSSL_SYS_WIN16 */
|
||||
}
|
||||
#elif defined(OPENSSL_SYS_NETWARE)
|
||||
#elif defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK)
|
||||
WORD wVerReq;
|
||||
WSADATA wsaData;
|
||||
int err;
|
||||
@ -398,7 +402,7 @@ redoit:
|
||||
ret=accept(acc_sock,(struct sockaddr *)&from,(void *)&len);
|
||||
if (ret == INVALID_SOCKET)
|
||||
{
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_NETWARE)
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || (defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK))
|
||||
i=WSAGetLastError();
|
||||
BIO_printf(bio_err,"accept error %d\n",i);
|
||||
#else
|
||||
|
@ -527,6 +527,7 @@ int MAIN(int argc, char **argv)
|
||||
static const unsigned char key16[16]=
|
||||
{0x12,0x34,0x56,0x78,0x9a,0xbc,0xde,0xf0,
|
||||
0x34,0x56,0x78,0x9a,0xbc,0xde,0xf0,0x12};
|
||||
#ifndef OPENSSL_NO_AES
|
||||
static const unsigned char key24[24]=
|
||||
{0x12,0x34,0x56,0x78,0x9a,0xbc,0xde,0xf0,
|
||||
0x34,0x56,0x78,0x9a,0xbc,0xde,0xf0,0x12,
|
||||
@ -536,6 +537,7 @@ int MAIN(int argc, char **argv)
|
||||
0x34,0x56,0x78,0x9a,0xbc,0xde,0xf0,0x12,
|
||||
0x56,0x78,0x9a,0xbc,0xde,0xf0,0x12,0x34,
|
||||
0x78,0x9a,0xbc,0xde,0xf0,0x12,0x34,0x56};
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_AES
|
||||
#define MAX_BLOCK_SIZE 128
|
||||
#else
|
||||
|
39
certs/argena.pem
Normal file
39
certs/argena.pem
Normal file
@ -0,0 +1,39 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIG0zCCBbugAwIBAgIBADANBgkqhkiG9w0BAQUFADCBzDELMAkGA1UEBhMCQVQx
|
||||
EDAOBgNVBAgTB0F1c3RyaWExDzANBgNVBAcTBlZpZW5uYTE6MDgGA1UEChMxQVJH
|
||||
RSBEQVRFTiAtIEF1c3RyaWFuIFNvY2lldHkgZm9yIERhdGEgUHJvdGVjdGlvbjEl
|
||||
MCMGA1UECxMcQS1DRVJUIENlcnRpZmljYXRpb24gU2VydmljZTEYMBYGA1UEAxMP
|
||||
QS1DRVJUIEFEVkFOQ0VEMR0wGwYJKoZIhvcNAQkBFg5pbmZvQGEtY2VydC5hdDAe
|
||||
Fw0wNDEwMjMxNDE0MTRaFw0xMTEwMjMxNDE0MTRaMIHMMQswCQYDVQQGEwJBVDEQ
|
||||
MA4GA1UECBMHQXVzdHJpYTEPMA0GA1UEBxMGVmllbm5hMTowOAYDVQQKEzFBUkdF
|
||||
IERBVEVOIC0gQXVzdHJpYW4gU29jaWV0eSBmb3IgRGF0YSBQcm90ZWN0aW9uMSUw
|
||||
IwYDVQQLExxBLUNFUlQgQ2VydGlmaWNhdGlvbiBTZXJ2aWNlMRgwFgYDVQQDEw9B
|
||||
LUNFUlQgQURWQU5DRUQxHTAbBgkqhkiG9w0BCQEWDmluZm9AYS1jZXJ0LmF0MIIB
|
||||
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3euXIy+mnf6BYKbK+QH5k679
|
||||
tUFqeT8jlZxMew8eNiHuw9KoxWBzL6KksK+5uK7Gatw+sbAYntEGE80P+Jg1hADM
|
||||
e+Fr5V0bc6QS3gkVtfUCW/RIvfMM39oxvmqJmOgPnJU7H6+nmLtsq61tv9kVJi/2
|
||||
4Y5wXW3odet72sF57EoG6s78w0BUVLNcMngS9bZZzmdG3/d6JbkGgoNF/8DcgCBJ
|
||||
W/t0JrcIzyppXIOVtUzzOrrU86zuUgT3Rtkl5kjG7DEHpFb9H0fTOY1v8+gRoaO6
|
||||
2gA0PCiysgVZjwgVeYe3KAg11nznyleDv198uK3Dc1oXIGYjJx2FpKWUvAuAEwID
|
||||
AQABo4ICvDCCArgwHQYDVR0OBBYEFDd/Pj6ZcWDKJNSRE3nQdCm0qCTYMIH5BgNV
|
||||
HSMEgfEwge6AFDd/Pj6ZcWDKJNSRE3nQdCm0qCTYoYHSpIHPMIHMMQswCQYDVQQG
|
||||
EwJBVDEQMA4GA1UECBMHQXVzdHJpYTEPMA0GA1UEBxMGVmllbm5hMTowOAYDVQQK
|
||||
EzFBUkdFIERBVEVOIC0gQXVzdHJpYW4gU29jaWV0eSBmb3IgRGF0YSBQcm90ZWN0
|
||||
aW9uMSUwIwYDVQQLExxBLUNFUlQgQ2VydGlmaWNhdGlvbiBTZXJ2aWNlMRgwFgYD
|
||||
VQQDEw9BLUNFUlQgQURWQU5DRUQxHTAbBgkqhkiG9w0BCQEWDmluZm9AYS1jZXJ0
|
||||
LmF0ggEAMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgHmMEcGA1UdJQRAMD4G
|
||||
CCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEFBQcD
|
||||
CAYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAP8wUQYDVR0gBEowSDBGBggq
|
||||
KAAYAQEBAzA6MDgGCCsGAQUFBwIBFixodHRwOi8vd3d3LmEtY2VydC5hdC9jZXJ0
|
||||
aWZpY2F0ZS1wb2xpY3kuaHRtbDA7BglghkgBhvhCAQgELhYsaHR0cDovL3d3dy5h
|
||||
LWNlcnQuYXQvY2VydGlmaWNhdGUtcG9saWN5Lmh0bWwwGQYDVR0RBBIwEIEOaW5m
|
||||
b0BhLWNlcnQuYXQwLwYDVR0SBCgwJoEOaW5mb0BhLWNlcnQuYXSGFGh0dHA6Ly93
|
||||
d3cuYS1jZXJ0LmF0MEUGA1UdHwQ+MDwwOqA4oDaGNGh0dHBzOi8vc2VjdXJlLmEt
|
||||
Y2VydC5hdC9jZ2ktYmluL2EtY2VydC1hZHZhbmNlZC5jZ2kwDQYJKoZIhvcNAQEF
|
||||
BQADggEBACX1IvgfdG2rvfv35O48vSEvcVaEdlN8USFBHWz3JRAozgzvaBtwHkjK
|
||||
Zwt5l/BWOtjbvHfRjDt7ijlBEcxOOrNC1ffyMHwHrXpvff6YpQ5wnxmIYEQcURiG
|
||||
HMqruEX0WkuDNgSKwefsgXs27eeBauHgNGVcTYH1rmHu/ZyLpLxOyJQ2PCzA1DzW
|
||||
3rWkIX92ogJ7lTRdWrbxwUL1XGinxnnaQ74+/y0pI9JNEv7ic2tpkweRMpkedaLW
|
||||
msC1+orfKTebsg69aMaCx7o6jNONRmR/7TVaPf8/k6g52cHZ9YWjQvup22b5rWxG
|
||||
J5r5LZ4vCPmF4+T4lutjUYAa/lGuQTg=
|
||||
-----END CERTIFICATE-----
|
23
certs/argeng.pem
Normal file
23
certs/argeng.pem
Normal file
@ -0,0 +1,23 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDwzCCAyygAwIBAgIBADANBgkqhkiG9w0BAQQFADCBmDELMAkGA1UEBhMCQVQx
|
||||
EDAOBgNVBAgTB0F1c3RyaWExDzANBgNVBAcTBlZpZW5uYTFCMEAGA1UEChM5QXJn
|
||||
ZSBEYXRlbiBPZXN0ZXJyZWljaGlzY2hlIEdlc2VsbHNjaGFmdCBmdWVyIERhdGVu
|
||||
c2NodXR6MSIwIAYJKoZIhvcNAQkBFhNhLWNlcnRAYXJnZWRhdGVuLmF0MB4XDTAx
|
||||
MDIxMjExMzAzMFoXDTA5MDIxMjExMzAzMFowgZgxCzAJBgNVBAYTAkFUMRAwDgYD
|
||||
VQQIEwdBdXN0cmlhMQ8wDQYDVQQHEwZWaWVubmExQjBABgNVBAoTOUFyZ2UgRGF0
|
||||
ZW4gT2VzdGVycmVpY2hpc2NoZSBHZXNlbGxzY2hhZnQgZnVlciBEYXRlbnNjaHV0
|
||||
ejEiMCAGCSqGSIb3DQEJARYTYS1jZXJ0QGFyZ2VkYXRlbi5hdDCBnzANBgkqhkiG
|
||||
9w0BAQEFAAOBjQAwgYkCgYEAwgsHqoNtmmrJ86+e1I4hOVBaL4kokqKN2IPOIL+1
|
||||
XwY8vfOOUfPEdhWpaC0ldt7VYrksgDiUccgH0FROANWK2GkfKMDzjjXHysR04uEb
|
||||
Om7Kqjqn0nproOGkFG+QvBZgs+Ws+HXNFJA6V76fU4+JXq4452LSK4Lr5YcBquu3
|
||||
NJECAwEAAaOCARkwggEVMB0GA1UdDgQWBBQ0j59zH/G31zRjgK1y2P//tSAWZjCB
|
||||
xQYDVR0jBIG9MIG6gBQ0j59zH/G31zRjgK1y2P//tSAWZqGBnqSBmzCBmDELMAkG
|
||||
A1UEBhMCQVQxEDAOBgNVBAgTB0F1c3RyaWExDzANBgNVBAcTBlZpZW5uYTFCMEAG
|
||||
A1UEChM5QXJnZSBEYXRlbiBPZXN0ZXJyZWljaGlzY2hlIEdlc2VsbHNjaGFmdCBm
|
||||
dWVyIERhdGVuc2NodXR6MSIwIAYJKoZIhvcNAQkBFhNhLWNlcnRAYXJnZWRhdGVu
|
||||
LmF0ggEAMAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQE
|
||||
AwICBDANBgkqhkiG9w0BAQQFAAOBgQBFuJYncqMYB6gXQS3eDOI90BEHfFTKy/dV
|
||||
AV+K7QdAYikWmqgBheRdPKddJdccPy/Zl/p3ZT7GhDyC5f3wZjcuu8AJ27BNwbCA
|
||||
x54dgxgCNcyPm79nY8MRtEdEpoRGdSsFKJemz6hpXM++MWFciyrRWIIA44XB0Gv3
|
||||
US0spjsDPQ==
|
||||
-----END CERTIFICATE-----
|
27
config
27
config
@ -84,7 +84,7 @@ if [ "x$XREL" != "x" ]; then
|
||||
4.2)
|
||||
echo "whatever-whatever-unixware1"; exit 0
|
||||
;;
|
||||
5)
|
||||
5*)
|
||||
case "x${VERSION}" in
|
||||
# We hardcode i586 in place of ${MACHINE} for the
|
||||
# following reason. The catch is that even though Pentium
|
||||
@ -93,8 +93,7 @@ if [ "x$XREL" != "x" ]; then
|
||||
# with i386 is that it makes ./config pass 386 to
|
||||
# ./Configure, which in turn makes make generate
|
||||
# inefficient SHA-1 (for this moment) code.
|
||||
x7*) echo "i586-sco-unixware7"; exit 0 ;;
|
||||
x8*) echo "i586-unkn-OpenUNIX${VERSION}"; exit 0 ;;
|
||||
x[678]*) echo "i586-sco-unixware7"; exit 0 ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
@ -654,13 +653,20 @@ case "$GUESSOS" in
|
||||
;;
|
||||
*-*-sunos4) OUT="sunos-$CC" ;;
|
||||
|
||||
*86*-*-bsdi4) OUT="bsdi-elf-gcc"; options="$options no-sse2" ;;
|
||||
*86*-*-bsdi4) OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;;
|
||||
alpha*-*-*bsd*) OUT="BSD-generic64; options="$options -DL_ENDIAN" ;;
|
||||
powerpc64-*-*bsd*) OUT="BSD-generic64; options="$options -DB_ENDIAN" ;;
|
||||
sparc64-*-*bsd*) OUT="BSD-sparc64" ;;
|
||||
ia64-*-*bsd*) OUT="BSD-ia64" ;;
|
||||
amd64-*-*bsd*) OUT="BSD-x86_64" ;;
|
||||
*86*-*-*bsd*) case "`(file -L /usr/lib/libc.so.*) 2>/dev/null`" in
|
||||
*86*-*-*bsd*) # mimic ld behaviour when it's looking for libc...
|
||||
if [ -L /usr/lib/libc.so ]; then # [Free|Net]BSD
|
||||
libc=/usr/lib/libc.so
|
||||
else # OpenBSD
|
||||
# ld searches for highest libc.so.* and so do we
|
||||
libc=`(ls /usr/lib/libc.so.* | tail -1) 2>/dev/null`
|
||||
fi
|
||||
case "`(file -L $libc) 2>/dev/null`" in
|
||||
*ELF*) OUT="BSD-x86-elf" ;;
|
||||
*) OUT="BSD-x86"; options="$options no-sse2" ;;
|
||||
esac ;;
|
||||
@ -668,16 +674,15 @@ case "$GUESSOS" in
|
||||
|
||||
*-*-osf) OUT="osf1-alpha-cc" ;;
|
||||
*-*-tru64) OUT="tru64-alpha-cc" ;;
|
||||
*-*-OpenUNIX*)
|
||||
*-*-[Uu]nix[Ww]are7)
|
||||
if [ "$CC" = "gcc" ]; then
|
||||
OUT="OpenUNIX-8-gcc"
|
||||
OUT="unixware-7-gcc" ; options="$options no-sse2"
|
||||
else
|
||||
OUT="OpenUNIX-8"
|
||||
OUT="unixware-7" ; options="$options no-sse2 -D__i386__"
|
||||
fi
|
||||
;;
|
||||
*-*-[Uu]nix[Ww]are7) OUT="unixware-7" ;;
|
||||
*-*-[Uu]nix[Ww]are20*) OUT="unixware-2.0" ;;
|
||||
*-*-[Uu]nix[Ww]are21*) OUT="unixware-2.1" ;;
|
||||
*-*-[Uu]nix[Ww]are20*) OUT="unixware-2.0"; options="$options no-sse2 no-sha512" ;;
|
||||
*-*-[Uu]nix[Ww]are21*) OUT="unixware-2.1"; options="$options no-sse2 no-sha512" ;;
|
||||
*-*-vos)
|
||||
options="$options no-threads no-shared no-asm no-dso"
|
||||
EXE=".pm"
|
||||
|
111
crypto/Makefile
111
crypto/Makefile
@ -15,6 +15,11 @@ MAKEFILE= Makefile
|
||||
RM= rm -f
|
||||
AR= ar r
|
||||
|
||||
RECURSIVE_MAKE= [ -n "$(SDIRS)" ] && for i in $(SDIRS) ; do \
|
||||
(cd $$i && echo "making $$target in $(DIR)/$$i..." && \
|
||||
$(MAKE) -e TOP=../.. DIR=$$i INCLUDES='${INCLUDES}' $$target ) || exit 1; \
|
||||
done;
|
||||
|
||||
PEX_LIBS=
|
||||
EX_LIBS=
|
||||
|
||||
@ -24,14 +29,6 @@ AFLAGS=$(ASFLAGS)
|
||||
|
||||
LIBS=
|
||||
|
||||
SDIRS= objects \
|
||||
md2 md4 md5 sha mdc2 hmac ripemd \
|
||||
des rc2 rc4 rc5 idea bf cast \
|
||||
bn ec rsa dsa ecdsa ecdh dh dso engine aes \
|
||||
buffer bio stack lhash rand err \
|
||||
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp ocsp ui krb5 \
|
||||
store pqueue
|
||||
|
||||
GENERAL=Makefile README crypto-lib.com install.com
|
||||
|
||||
LIB= $(TOP)/libcrypto.a
|
||||
@ -52,30 +49,6 @@ top:
|
||||
|
||||
all: shared
|
||||
|
||||
BUILDENV= PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
|
||||
CC='${CC}' CFLAG='${CFLAG}' \
|
||||
AS='${CC}' ASFLAG='${CFLAG} -c' \
|
||||
AR='${AR}' PERL='${PERL}' RANLIB='${RANLIB}' \
|
||||
SDIRS='$(SDIRS)' LIBRPATH='$(INSTALLTOP)/lib' \
|
||||
INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' \
|
||||
MAKEDEPEND='$$(TOP)/util/domd $$(TOP) -MD $(MAKEDEPPROG)'\
|
||||
DEPFLAG='-DOPENSSL_NO_DEPRECATED ${DEPFLAG}' \
|
||||
MAKEDEPPROG='${MAKEDEPPROG}' \
|
||||
LDFLAGS="$(LDFLAGS)" SHARED_LDFLAGS="$(SHARED_LDFLAGS)" \
|
||||
KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' \
|
||||
EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' \
|
||||
SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' \
|
||||
PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' \
|
||||
CPUID_OBJ='${CPUID_OBJ}' \
|
||||
BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' \
|
||||
AES_ASM_OBJ='${AES_ASM_OBJ}' \
|
||||
BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' \
|
||||
RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' \
|
||||
SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' \
|
||||
MD5_ASM_OBJ='${MD5_ASM_OBJ}' \
|
||||
RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' \
|
||||
THIS=$${THIS:-$@}
|
||||
|
||||
buildinf.h: ../Makefile
|
||||
( echo "#ifndef MK1MF_BUILD"; \
|
||||
echo ' /* auto-generated by crypto/Makefile for crypto/cversion.c */'; \
|
||||
@ -103,34 +76,23 @@ ia64cpuid.s: ia64cpuid.S
|
||||
$(CC) $(CFLAGS) -E ia64cpuid.S > $@
|
||||
|
||||
testapps:
|
||||
[ -z "$(THIS)" ] || ( if echo ${SDIRS} | fgrep ' des '; \
|
||||
then cd des && $(MAKE) des; fi )
|
||||
[ -z "$(THIS)" ] || ( cd pkcs7 && $(MAKE) testapps );
|
||||
[ -z "$(THIS)" ] || ( if echo ${SDIRS} | fgrep ' des '; \
|
||||
then cd des && $(MAKE) -e des; fi )
|
||||
[ -z "$(THIS)" ] || ( cd pkcs7 && $(MAKE) -e testapps );
|
||||
@if [ -z "$(THIS)" ]; then $(MAKE) -f $(TOP)/Makefile reflect THIS=$@; fi
|
||||
|
||||
subdirs:
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making all in crypto/$$i..." && \
|
||||
$(MAKE) $(BUILDENV) INCLUDES='${INCLUDES}' all ) || exit 1; \
|
||||
done;
|
||||
@target=all; $(RECURSIVE_MAKE)
|
||||
|
||||
files:
|
||||
$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making 'files' in crypto/$$i..." && \
|
||||
$(MAKE) files ); \
|
||||
done;
|
||||
@target=files; $(RECURSIVE_MAKE)
|
||||
|
||||
links:
|
||||
@$(PERL) $(TOP)/util/mklink.pl ../include/openssl $(EXHEADER)
|
||||
@$(PERL) $(TOP)/util/mklink.pl ../test $(TEST)
|
||||
@$(PERL) $(TOP)/util/mklink.pl ../apps $(APPS)
|
||||
@for i in $(SDIRS); do \
|
||||
(cd $$i && echo "making links in crypto/$$i..." && \
|
||||
$(MAKE) links ); \
|
||||
done;
|
||||
@target=links; $(RECURSIVE_MAKE)
|
||||
|
||||
lib: $(LIBOBJ)
|
||||
$(AR) $(LIB) $(LIBOBJ)
|
||||
@ -143,19 +105,7 @@ shared: buildinf.h lib subdirs
|
||||
fi
|
||||
|
||||
libs:
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making libs in crypto/$$i..." && \
|
||||
$(MAKE) lib );
|
||||
done;
|
||||
|
||||
tests:
|
||||
@[ -z "$(THIS)" ] || (for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making tests in crypto/$$i..." && \
|
||||
$(MAKE) tests ); \
|
||||
done; )
|
||||
@if [ -z "$(THIS)" ]; then $(MAKE) -f $(TOP)/Makefile reflect THIS=$@; fi
|
||||
@target=lib; $(RECURSIVE_MAKE)
|
||||
|
||||
install:
|
||||
@[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
|
||||
@ -164,47 +114,26 @@ install:
|
||||
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
|
||||
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
|
||||
done;
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making install in crypto/$$i..." && \
|
||||
$(MAKE) install ); \
|
||||
done;
|
||||
@target=install; $(RECURSIVE_MAKE)
|
||||
|
||||
lint:
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making lint in crypto/$$i..." && \
|
||||
$(MAKE) lint ); \
|
||||
done;
|
||||
@target=lint; $(RECURSIVE_MAKE)
|
||||
|
||||
depend:
|
||||
[ -z "$(THIS)" -o -f buildinf.h ] || touch buildinf.h # fake buildinf.h if it does not exist
|
||||
[ -z "$(THIS)" ] || $(MAKEDEPEND) -- $(CFLAG) $(INCLUDE) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
|
||||
[ -z "$(THIS)" -o -s buildinf.h ] || rm buildinf.h
|
||||
@[ -z "$(THIS)" ] || (set -e; \
|
||||
for i in $(SDIRS) ; do \
|
||||
( cd $$i && echo "making depend in crypto/$$i..." && \
|
||||
$(MAKE) INCLUDES='${INCLUDES}' depend \
|
||||
); \
|
||||
done; )
|
||||
@[ -z "$(THIS)" -o -f buildinf.h ] || touch buildinf.h # fake buildinf.h if it does not exist
|
||||
@[ -z "$(THIS)" ] || $(MAKEDEPEND) -- $(CFLAG) $(INCLUDE) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
|
||||
@[ -z "$(THIS)" -o -s buildinf.h ] || rm buildinf.h
|
||||
@[ -z "$(THIS)" ] || (set -e; target=depend; $(RECURSIVE_MAKE) )
|
||||
@if [ -z "$(THIS)" ]; then $(MAKE) -f $(TOP)/Makefile reflect THIS=$@; fi
|
||||
|
||||
clean:
|
||||
rm -f buildinf.h *.s *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making clean in crypto/$$i..." && \
|
||||
$(MAKE) clean ); \
|
||||
done;
|
||||
@target=clean; $(RECURSIVE_MAKE)
|
||||
|
||||
dclean:
|
||||
$(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
|
||||
mv -f Makefile.new $(MAKEFILE)
|
||||
@for i in $(SDIRS) ;\
|
||||
do \
|
||||
(cd $$i && echo "making dclean in crypto/$$i..." && \
|
||||
$(MAKE) dclean ); \
|
||||
done;
|
||||
@target=dclean; $(RECURSIVE_MAKE)
|
||||
|
||||
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
||||
|
||||
|
@ -92,7 +92,7 @@ b_dump.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
b_dump.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
|
||||
b_dump.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
b_dump.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
b_dump.o: ../../include/openssl/symhacks.h ../cryptlib.h b_dump.c
|
||||
b_dump.o: ../../include/openssl/symhacks.h ../cryptlib.h b_dump.c bio_lcl.h
|
||||
b_print.o: ../../e_os.h ../../include/openssl/bio.h ../../include/openssl/bn.h
|
||||
b_print.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
b_print.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
@ -183,14 +183,14 @@ bss_fd.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
bss_fd.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
|
||||
bss_fd.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
bss_fd.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
bss_fd.o: ../../include/openssl/symhacks.h ../cryptlib.h bss_fd.c
|
||||
bss_fd.o: ../../include/openssl/symhacks.h ../cryptlib.h bio_lcl.h bss_fd.c
|
||||
bss_file.o: ../../e_os.h ../../include/openssl/bio.h
|
||||
bss_file.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
bss_file.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
bss_file.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
|
||||
bss_file.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
bss_file.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
bss_file.o: ../../include/openssl/symhacks.h ../cryptlib.h bss_file.c
|
||||
bss_file.o: ../../include/openssl/symhacks.h ../cryptlib.h bio_lcl.h bss_file.c
|
||||
bss_log.o: ../../e_os.h ../../include/openssl/bio.h
|
||||
bss_log.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
bss_log.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
|
@ -62,6 +62,9 @@
|
||||
#define USE_SOCKETS
|
||||
#include "cryptlib.h"
|
||||
#include <openssl/bio.h>
|
||||
#if defined(OPENSSL_SYS_NETWARE) && defined(NETWARE_BSDSOCK)
|
||||
#include "netdb.h"
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_NO_SOCK
|
||||
|
||||
@ -79,7 +82,7 @@
|
||||
#define MAX_LISTEN 32
|
||||
#endif
|
||||
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_NETWARE)
|
||||
#if defined(OPENSSL_SYS_WINDOWS) || (defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK))
|
||||
static int wsa_init_done=0;
|
||||
#endif
|
||||
|
||||
@ -474,7 +477,7 @@ int BIO_sock_init(void)
|
||||
return (-1);
|
||||
#endif
|
||||
|
||||
#if defined(OPENSSL_SYS_NETWARE)
|
||||
#if defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK)
|
||||
WORD wVerReq;
|
||||
WSADATA wsaData;
|
||||
int err;
|
||||
@ -512,7 +515,7 @@ void BIO_sock_cleanup(void)
|
||||
#endif
|
||||
WSACleanup();
|
||||
}
|
||||
#elif defined(OPENSSL_SYS_NETWARE)
|
||||
#elif defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK)
|
||||
if (wsa_init_done)
|
||||
{
|
||||
wsa_init_done=0;
|
||||
|
@ -65,6 +65,24 @@
|
||||
#ifndef HEADER_BSS_FILE_C
|
||||
#define HEADER_BSS_FILE_C
|
||||
|
||||
#if defined(__linux) || defined(__sun) || defined(__hpux)
|
||||
/* Following definition aliases fopen to fopen64 on above mentioned
|
||||
* platforms. This makes it possible to open and sequentially access
|
||||
* files larger than 2GB from 32-bit application. It does not allow to
|
||||
* traverse them beyond 2GB with fseek/ftell, but on the other hand *no*
|
||||
* 32-bit platform permits that, not with fseek/ftell. Not to mention
|
||||
* that breaking 2GB limit for seeking would require surgery to *our*
|
||||
* API. But sequential access suffices for practical cases when you
|
||||
* can run into large files, such as fingerprinting, so we can let API
|
||||
* alone. For reference, the list of 32-bit platforms which allow for
|
||||
* sequential access of large files without extra "magic" comprise *BSD,
|
||||
* Darwin, IRIX...
|
||||
*/
|
||||
#ifndef _FILE_OFFSET_BITS
|
||||
#define _FILE_OFFSET_BITS 64
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
#include "cryptlib.h"
|
||||
|
@ -79,11 +79,15 @@ co86-out.s: asm/co-586.pl ../perlasm/x86asm.pl
|
||||
(cd asm; $(PERL) co-586.pl a.out $(CFLAGS) > ../$@)
|
||||
|
||||
sparcv8.o: asm/sparcv8.S
|
||||
|
||||
$(CC) $(CFLAGS) -c asm/sparcv8.S
|
||||
sparcv8plus.o: asm/sparcv8plus.S
|
||||
$(CC) $(CFLAGS) -c asm/sparcv8plus.S
|
||||
|
||||
mips3.o: asm/mips3.s
|
||||
bn-mips3.o: asm/mips3.s
|
||||
@if [ "$(CC)" = "gcc" ]; then \
|
||||
ABI=`expr "$(CFLAGS)" : ".*-mabi=\([n3264]*\)"` && \
|
||||
as -$$ABI -O -o $@ asm/mips3.s; \
|
||||
else $(CC) -c $(CFLAGS) -o $@ asm/mips3.s; fi
|
||||
|
||||
x86_64-gcc.o: asm/x86_64-gcc.c
|
||||
$(CC) $(CFLAGS) -c -o $@ asm/x86_64-gcc.c
|
||||
|
@ -116,7 +116,7 @@ if ($opf =~ /32\.s/) {
|
||||
$UDIV= "divwu"; # unsigned divide
|
||||
$UCMPI= "cmplwi"; # unsigned compare with immediate
|
||||
$UCMP= "cmplw"; # unsigned compare
|
||||
$COUNTZ="cntlzw"; # count leading zeros
|
||||
$CNTLZ= "cntlzw"; # count leading zeros
|
||||
$SHL= "slw"; # shift left
|
||||
$SHR= "srw"; # unsigned shift right
|
||||
$SHRI= "srwi"; # unsigned shift right by immediate
|
||||
@ -124,6 +124,7 @@ if ($opf =~ /32\.s/) {
|
||||
$CLRU= "clrlwi"; # clear upper bits
|
||||
$INSR= "insrwi"; # insert right
|
||||
$ROTL= "rotlwi"; # rotate left by immediate
|
||||
$TR= "tw"; # conditional trap
|
||||
} elsif ($opf =~ /64\.s/) {
|
||||
$BITS= 64;
|
||||
$BNSZ= $BITS/8;
|
||||
@ -139,7 +140,7 @@ if ($opf =~ /32\.s/) {
|
||||
$UDIV= "divdu"; # unsigned divide
|
||||
$UCMPI= "cmpldi"; # unsigned compare with immediate
|
||||
$UCMP= "cmpld"; # unsigned compare
|
||||
$COUNTZ="cntlzd"; # count leading zeros
|
||||
$CNTLZ= "cntlzd"; # count leading zeros
|
||||
$SHL= "sld"; # shift left
|
||||
$SHR= "srd"; # unsigned shift right
|
||||
$SHRI= "srdi"; # unsigned shift right by immediate
|
||||
@ -147,6 +148,7 @@ if ($opf =~ /32\.s/) {
|
||||
$CLRU= "clrldi"; # clear upper bits
|
||||
$INSR= "insrdi"; # insert right
|
||||
$ROTL= "rotldi"; # rotate left by immediate
|
||||
$TR= "td"; # conditional trap
|
||||
} else { die "nonsense $opf"; }
|
||||
|
||||
( defined shift || open STDOUT,">$opf" ) || die "can't open $opf: $!";
|
||||
@ -1710,17 +1712,12 @@ Lppcasm_add_adios:
|
||||
bclr BO_ALWAYS,CR0_LT
|
||||
Lppcasm_div1:
|
||||
xor r0,r0,r0 #r0=0
|
||||
$COUNTZ r7,r5 #r7 = num leading 0s in d.
|
||||
subfic r8,r7,$BITS #r8 = BN_num_bits_word(d)
|
||||
cmpi 0,0,r8,$BITS #
|
||||
bc BO_IF,CR0_EQ,Lppcasm_div2 #proceed if (r8==$BITS)
|
||||
li r9,1 # r9=1
|
||||
$SHL r10,r9,r8 # r9<<=r8
|
||||
$UCMP 0,r3,r10 #
|
||||
bc BO_IF,CR0_GT,Lppcasm_div2 #or if (h > (1<<r8))
|
||||
$UDIV r3,r3,r0 #if not assert(0) divide by 0!
|
||||
#that's how we signal overflow
|
||||
bclr BO_ALWAYS,CR0_LT #return. NEVER REACHED.
|
||||
li r8,$BITS
|
||||
$CNTLZ. r7,r5 #r7 = num leading 0s in d.
|
||||
bc BO_IF,CR0_EQ,Lppcasm_div2 #proceed if no leading zeros
|
||||
subf r8,r7,r8 #r8 = BN_num_bits_word(d)
|
||||
$SHR. r9,r3,r8 #are there any bits above r8'th?
|
||||
$TR 16,r9,r0 #if there're, signal to dump core...
|
||||
Lppcasm_div2:
|
||||
$UCMP 0,r3,r5 #h>=d?
|
||||
bc BO_IF,CR0_LT,Lppcasm_div3 #goto Lppcasm_div3 if not
|
||||
|
@ -167,7 +167,7 @@ extern "C" {
|
||||
#ifdef THIRTY_TWO_BIT
|
||||
#ifdef BN_LLONG
|
||||
# if defined(OPENSSL_SYS_WIN32) && !defined(__GNUC__)
|
||||
# define BN_ULLONG unsigned _int64
|
||||
# define BN_ULLONG unsigned __int64
|
||||
# else
|
||||
# define BN_ULLONG unsigned long long
|
||||
# endif
|
||||
|
@ -237,7 +237,7 @@ BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
|
||||
if (d == 0) return(BN_MASK2);
|
||||
|
||||
i=BN_num_bits_word(d);
|
||||
assert((i == BN_BITS2) || (h > (BN_ULONG)1<<i));
|
||||
assert((i == BN_BITS2) || (h <= (BN_ULONG)1<<i));
|
||||
|
||||
i=BN_BITS2-i;
|
||||
if (h >= d) h-=d;
|
||||
|
@ -172,6 +172,7 @@ const BIGNUM *BN_get0_nist_prime_521(void)
|
||||
}
|
||||
|
||||
/* some misc internal functions */
|
||||
#if BN_BITS2 != 64
|
||||
static BN_ULONG _256_data[BN_NIST_256_TOP*6];
|
||||
static int _is_set_256_data = 0;
|
||||
static void _init_256_data(void);
|
||||
@ -179,6 +180,7 @@ static void _init_256_data(void);
|
||||
static BN_ULONG _384_data[BN_NIST_384_TOP*8];
|
||||
static int _is_set_384_data = 0;
|
||||
static void _init_384_data(void);
|
||||
#endif
|
||||
|
||||
#define BN_NIST_ADD_ONE(a) while (!(++(*(a)))) ++(a);
|
||||
|
||||
@ -405,6 +407,7 @@ int BN_nist_mod_224(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
#endif
|
||||
}
|
||||
|
||||
#if BN_BITS2 != 64
|
||||
static void _init_256_data(void)
|
||||
{
|
||||
int i;
|
||||
@ -422,6 +425,7 @@ static void _init_256_data(void)
|
||||
}
|
||||
_is_set_256_data = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
#define nist_set_256(to, from, a1, a2, a3, a4, a5, a6, a7, a8) \
|
||||
{ \
|
||||
@ -555,6 +559,7 @@ int BN_nist_mod_256(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
|
||||
#endif
|
||||
}
|
||||
|
||||
#if BN_BITS2 != 64
|
||||
static void _init_384_data(void)
|
||||
{
|
||||
int i;
|
||||
@ -572,6 +577,7 @@ static void _init_384_data(void)
|
||||
}
|
||||
_is_set_384_data = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
#define nist_set_384(to,from,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) \
|
||||
{ \
|
||||
|
@ -73,7 +73,9 @@ static COMP_METHOD zlib_stateful_method={
|
||||
# include <windows.h>
|
||||
|
||||
# define Z_CALLCONV _stdcall
|
||||
# define ZLIB_SHARED
|
||||
# ifndef ZLIB_SHARED
|
||||
# define ZLIB_SHARED
|
||||
# endif
|
||||
#else
|
||||
# define Z_CALLCONV
|
||||
#endif /* !(OPENSSL_SYS_WINDOWS || OPENSSL_SYS_WIN32) */
|
||||
|
@ -545,7 +545,6 @@ const char *CRYPTO_get_lock_name(int type)
|
||||
|
||||
unsigned long OPENSSL_ia32cap_P=0;
|
||||
unsigned long *OPENSSL_ia32cap_loc(void) { return &OPENSSL_ia32cap_P; }
|
||||
int OPENSSL_NONPIC_relocated=0;
|
||||
|
||||
#if defined(OPENSSL_CPUID_OBJ) && !defined(OPENSSL_NO_ASM) && !defined(I386_ONLY)
|
||||
#define OPENSSL_CPUID_SETUP
|
||||
@ -572,6 +571,7 @@ void OPENSSL_cpuid_setup(void)
|
||||
#else
|
||||
unsigned long *OPENSSL_ia32cap_loc(void) { return NULL; }
|
||||
#endif
|
||||
int OPENSSL_NONPIC_relocated = 0;
|
||||
#if !defined(OPENSSL_CPUID_SETUP)
|
||||
void OPENSSL_cpuid_setup(void) {}
|
||||
#endif
|
||||
|
@ -194,7 +194,7 @@ $ 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_asn1,rsa_depr"
|
||||
"rsa_pss,rsa_x931,rsa_asn1,rsa_depr"
|
||||
$ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,"+ -
|
||||
"dsa_err,dsa_ossl,dsa_depr"
|
||||
$ LIB_ECDSA = "ecs_lib,ecs_asn1,ecs_ossl,ecs_sign,ecs_vrf,ecs_err"
|
||||
@ -214,6 +214,7 @@ $ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
|
||||
"bss_file,bss_sock,bss_conn,"+ -
|
||||
"bf_null,bf_buff,b_print,b_dump,"+ -
|
||||
"b_sock,bss_acpt,bf_nbio,bss_rtcp,bss_bio,bss_log,"+ -
|
||||
"bss_dgram,"+ -
|
||||
"bf_lbuf"
|
||||
$ LIB_STACK = "stack"
|
||||
$ LIB_LHASH = "lhash,lh_stats"
|
||||
|
@ -171,9 +171,9 @@ typedef struct _ossl_old_des_ks_struct
|
||||
DES_enc_write((f),(b),(l),&(k),(iv))
|
||||
#define des_fcrypt(b,s,r)\
|
||||
DES_fcrypt((b),(s),(r))
|
||||
#if 0
|
||||
#define des_crypt(b,s)\
|
||||
DES_crypt((b),(s))
|
||||
#if 0
|
||||
#if !defined(PERL5) && !defined(__FreeBSD__) && !defined(NeXT) && !defined(__OpenBSD__)
|
||||
#define crypt(b,s)\
|
||||
DES_crypt((b),(s))
|
||||
|
@ -84,7 +84,7 @@ int main(int argc, char *argv[])
|
||||
#else
|
||||
#include <openssl/des.h>
|
||||
|
||||
#define crypt(c,s) (des_crypt((c),(s)))
|
||||
#define crypt(c,s) (DES_crypt((c),(s)))
|
||||
|
||||
/* tisk tisk - the test keys don't all have odd parity :-( */
|
||||
/* test data */
|
||||
|
@ -128,7 +128,8 @@ static int dl_load(DSO *dso)
|
||||
DSOerr(DSO_F_DL_LOAD,DSO_R_NO_FILENAME);
|
||||
goto err;
|
||||
}
|
||||
ptr = shl_load(filename, BIND_IMMEDIATE|DYNAMIC_PATH, 0L);
|
||||
ptr = shl_load(filename, BIND_IMMEDIATE |
|
||||
(dso->flags&DSO_FLAG_NO_NAME_TRANSLATION?0:DYNAMIC_PATH), 0L);
|
||||
if(ptr == NULL)
|
||||
{
|
||||
DSOerr(DSO_F_DL_LOAD,DSO_R_LOAD_FAILED);
|
||||
|
@ -68,6 +68,25 @@ DSO_METHOD *DSO_METHOD_win32(void)
|
||||
}
|
||||
#else
|
||||
|
||||
#ifdef _WIN32_WCE
|
||||
# if _WIN32_WCE < 300
|
||||
static FARPROC GetProcAddressA(HMODULE hModule,LPCSTR lpProcName)
|
||||
{
|
||||
WCHAR lpProcNameW[64];
|
||||
int i;
|
||||
|
||||
for (i=0;lpProcName[i] && i<64;i++)
|
||||
lpProcNameW[i] = (WCHAR)lpProcName[i];
|
||||
if (i==64) return NULL;
|
||||
lpProcNameW[i] = 0;
|
||||
|
||||
return GetProcAddressW(hModule,lpProcNameW);
|
||||
}
|
||||
# endif
|
||||
# undef GetProcAddress
|
||||
# define GetProcAddress GetProcAddressA
|
||||
#endif
|
||||
|
||||
/* Part of the hack in "win32_load" ... */
|
||||
#define DSO_MAX_TRANSLATED_SIZE 256
|
||||
|
||||
@ -127,7 +146,7 @@ static int win32_load(DSO *dso)
|
||||
DSOerr(DSO_F_WIN32_LOAD,DSO_R_NO_FILENAME);
|
||||
goto err;
|
||||
}
|
||||
h = LoadLibrary(filename);
|
||||
h = LoadLibraryA(filename);
|
||||
if(h == NULL)
|
||||
{
|
||||
DSOerr(DSO_F_WIN32_LOAD,DSO_R_LOAD_FAILED);
|
||||
|
@ -140,7 +140,7 @@ int ec_GFp_nist_group_set_curve(EC_GROUP *group, const BIGNUM *p,
|
||||
group->field_mod_func = BN_nist_mod_192;
|
||||
else if (BN_ucmp(BN_get0_nist_prime_224(), p) == 0)
|
||||
{
|
||||
#if !defined(NO_32_BIT_TYPE) || defined(OPENSSL_NO_ASM)
|
||||
#ifndef NO_32_BIT_TYPE
|
||||
group->field_mod_func = BN_nist_mod_224;
|
||||
#else
|
||||
ECerr(EC_F_EC_GFP_NIST_GROUP_SET_CURVE, EC_R_NOT_A_SUPPORTED_NIST_PRIME);
|
||||
@ -149,7 +149,7 @@ int ec_GFp_nist_group_set_curve(EC_GROUP *group, const BIGNUM *p,
|
||||
}
|
||||
else if (BN_ucmp(BN_get0_nist_prime_256(), p) == 0)
|
||||
{
|
||||
#if !defined(NO_32_BIT_TYPE) || defined(OPENSSL_NO_ASM)
|
||||
#ifndef NO_32_BIT_TYPE
|
||||
group->field_mod_func = BN_nist_mod_256;
|
||||
#else
|
||||
ECerr(EC_F_EC_GFP_NIST_GROUP_SET_CURVE, EC_R_NOT_A_SUPPORTED_NIST_PRIME);
|
||||
@ -158,7 +158,7 @@ int ec_GFp_nist_group_set_curve(EC_GROUP *group, const BIGNUM *p,
|
||||
}
|
||||
else if (BN_ucmp(BN_get0_nist_prime_384(), p) == 0)
|
||||
{
|
||||
#if !defined(NO_32_BIT_TYPE) || defined(OPENSSL_NO_ASM)
|
||||
#ifndef NO_32_BIT_TYPE
|
||||
group->field_mod_func = BN_nist_mod_384;
|
||||
#else
|
||||
ECerr(EC_F_EC_GFP_NIST_GROUP_SET_CURVE, EC_R_NOT_A_SUPPORTED_NIST_PRIME);
|
||||
|
@ -93,7 +93,9 @@ int main(int argc, char * argv[])
|
||||
#include <openssl/bio.h>
|
||||
#include <openssl/evp.h>
|
||||
#include <openssl/ecdsa.h>
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
#include <openssl/engine.h>
|
||||
#endif
|
||||
#include <openssl/err.h>
|
||||
#include <openssl/rand.h>
|
||||
|
||||
|
@ -66,11 +66,14 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#include <openssl/crypto.h>
|
||||
#include <openssl/dso.h>
|
||||
#include <openssl/engine.h>
|
||||
#include <openssl/evp.h>
|
||||
#ifndef OPENSSL_NO_AES
|
||||
#include <openssl/aes.h>
|
||||
#endif
|
||||
#include <openssl/rand.h>
|
||||
|
||||
#ifndef OPENSSL_NO_HW
|
||||
@ -134,7 +137,9 @@ static int padlock_init(ENGINE *e);
|
||||
static RAND_METHOD padlock_rand;
|
||||
|
||||
/* Cipher Stuff */
|
||||
#ifndef OPENSSL_NO_AES
|
||||
static int padlock_ciphers(ENGINE *e, const EVP_CIPHER **cipher, const int **nids, int nid);
|
||||
#endif
|
||||
|
||||
/* Engine names */
|
||||
static const char *padlock_id = "padlock";
|
||||
@ -143,7 +148,9 @@ static char padlock_name[100];
|
||||
/* Available features */
|
||||
static int padlock_use_ace = 0; /* Advanced Cryptography Engine */
|
||||
static int padlock_use_rng = 0; /* Random Number Generator */
|
||||
#ifndef OPENSSL_NO_AES
|
||||
static int padlock_aes_align_required = 1;
|
||||
#endif
|
||||
|
||||
/* ===== Engine "management" functions ===== */
|
||||
|
||||
@ -169,8 +176,9 @@ padlock_bind_helper(ENGINE *e)
|
||||
!ENGINE_set_name(e, padlock_name) ||
|
||||
|
||||
!ENGINE_set_init_function(e, padlock_init) ||
|
||||
|
||||
#ifndef OPENSSL_NO_AES
|
||||
(padlock_use_ace && !ENGINE_set_ciphers (e, padlock_ciphers)) ||
|
||||
#endif
|
||||
(padlock_use_rng && !ENGINE_set_RAND (e, &padlock_rand))) {
|
||||
return 0;
|
||||
}
|
||||
@ -228,6 +236,7 @@ IMPLEMENT_DYNAMIC_BIND_FN (padlock_bind_fn);
|
||||
|
||||
/* ===== Here comes the "real" engine ===== */
|
||||
|
||||
#ifndef OPENSSL_NO_AES
|
||||
/* Some AES-related constants */
|
||||
#define AES_BLOCK_SIZE 16
|
||||
#define AES_KEY_SIZE_128 16
|
||||
@ -264,6 +273,7 @@ struct padlock_cipher_data
|
||||
* so we accept the penatly...
|
||||
*/
|
||||
static volatile struct padlock_cipher_data *padlock_saved_context;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* =======================================================
|
||||
@ -355,6 +365,7 @@ padlock_available(void)
|
||||
return padlock_use_ace + padlock_use_rng;
|
||||
}
|
||||
|
||||
#ifndef OPENSSL_NO_AES
|
||||
/* Our own htonl()/ntohl() */
|
||||
static inline void
|
||||
padlock_bswapl(AES_KEY *ks)
|
||||
@ -367,6 +378,7 @@ padlock_bswapl(AES_KEY *ks)
|
||||
key++;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Force key reload from memory to the CPU microcode.
|
||||
Loading EFLAGS from the stack clears EFLAGS[30]
|
||||
@ -377,6 +389,7 @@ padlock_reload_key(void)
|
||||
asm volatile ("pushfl; popfl");
|
||||
}
|
||||
|
||||
#ifndef OPENSSL_NO_AES
|
||||
/*
|
||||
* This is heuristic key context tracing. At first one
|
||||
* believes that one should use atomic swap instructions,
|
||||
@ -430,6 +443,7 @@ PADLOCK_XCRYPT_ASM(padlock_xcrypt_ecb, ".byte 0xf3,0x0f,0xa7,0xc8") /* rep xcryp
|
||||
PADLOCK_XCRYPT_ASM(padlock_xcrypt_cbc, ".byte 0xf3,0x0f,0xa7,0xd0") /* rep xcryptcbc */
|
||||
PADLOCK_XCRYPT_ASM(padlock_xcrypt_cfb, ".byte 0xf3,0x0f,0xa7,0xe0") /* rep xcryptcfb */
|
||||
PADLOCK_XCRYPT_ASM(padlock_xcrypt_ofb, ".byte 0xf3,0x0f,0xa7,0xe8") /* rep xcryptofb */
|
||||
#endif
|
||||
|
||||
/* The RNG call itself */
|
||||
static inline unsigned int
|
||||
@ -600,6 +614,7 @@ padlock_bswapl(void *key)
|
||||
#endif
|
||||
|
||||
/* ===== AES encryption/decryption ===== */
|
||||
#ifndef OPENSSL_NO_AES
|
||||
|
||||
#if defined(NID_aes_128_cfb128) && ! defined (NID_aes_128_cfb)
|
||||
#define NID_aes_128_cfb NID_aes_128_cfb128
|
||||
@ -1030,6 +1045,8 @@ padlock_aes_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out_arg,
|
||||
return 1;
|
||||
}
|
||||
|
||||
#endif /* OPENSSL_NO_AES */
|
||||
|
||||
/* ===== Random Number Generator ===== */
|
||||
/*
|
||||
* This code is not engaged. The reason is that it does not comply
|
||||
|
@ -313,7 +313,7 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl,
|
||||
/* There will never be more than two '=' */
|
||||
}
|
||||
|
||||
if ((v == B64_EOF) || (n >= 64))
|
||||
if ((v == B64_EOF && (n&3) == 0) || (n >= 64))
|
||||
{
|
||||
/* This is needed to work correctly on 64 byte input
|
||||
* lines. We process the line and then need to
|
||||
|
@ -52,6 +52,7 @@
|
||||
|
||||
#include "../e_os.h"
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#include <openssl/evp.h>
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
#include <openssl/engine.h>
|
||||
@ -395,6 +396,27 @@ int main(int argc,char **argv)
|
||||
if(!test_cipher(cipher,key,kn,iv,in,plaintext,pn,ciphertext,cn,encdec)
|
||||
&& !test_digest(cipher,plaintext,pn,ciphertext,cn))
|
||||
{
|
||||
#ifdef OPENSSL_NO_AES
|
||||
if (strstr(cipher, "AES") == cipher)
|
||||
{
|
||||
fprintf(stdout, "Cipher disabled, skipping %s\n", cipher);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
#ifdef OPENSSL_NO_DES
|
||||
if (strstr(cipher, "DES") == cipher)
|
||||
{
|
||||
fprintf(stdout, "Cipher disabled, skipping %s\n", cipher);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
#ifdef OPENSSL_NO_RC4
|
||||
if (strstr(cipher, "RC4") == cipher)
|
||||
{
|
||||
fprintf(stdout, "Cipher disabled, skipping %s\n", cipher);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
fprintf(stderr,"Can't find %s\n",cipher);
|
||||
EXIT(3);
|
||||
}
|
||||
|
@ -344,9 +344,11 @@
|
||||
#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN)
|
||||
|
||||
#if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__)
|
||||
/* See comment in DATA_ORDER_IS_BIG_ENDIAN section. */
|
||||
# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, l)
|
||||
# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, l)
|
||||
# ifndef B_ENDIAN
|
||||
/* See comment in DATA_ORDER_IS_BIG_ENDIAN section. */
|
||||
# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, l)
|
||||
# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, l)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef HOST_c2l
|
||||
|
@ -69,6 +69,7 @@ void md4_block_host_order (MD4_CTX *c, const void *p,size_t num);
|
||||
void md4_block_data_order (MD4_CTX *c, const void *p,size_t num);
|
||||
|
||||
#if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
|
||||
# if !defined(B_ENDIAN)
|
||||
/*
|
||||
* *_block_host_order is expected to handle aligned data while
|
||||
* *_block_data_order - unaligned. As algorithm and host (x86)
|
||||
@ -90,7 +91,8 @@ void md4_block_data_order (MD4_CTX *c, const void *p,size_t num);
|
||||
*
|
||||
* <appro@fy.chalmers.se>
|
||||
*/
|
||||
#define md4_block_data_order md4_block_host_order
|
||||
# define md4_block_data_order md4_block_host_order
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||
|
@ -67,7 +67,9 @@
|
||||
|
||||
#ifdef MD5_ASM
|
||||
# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) || defined(__x86_64) || defined(__x86_64__)
|
||||
# define md5_block_host_order md5_block_asm_host_order
|
||||
# if !defined(B_ENDIAN)
|
||||
# define md5_block_host_order md5_block_asm_host_order
|
||||
# endif
|
||||
# elif defined(__sparc) && defined(OPENSSL_SYS_ULTRASPARC)
|
||||
void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,size_t num);
|
||||
# define HASH_BLOCK_DATA_ORDER_ALIGNED md5_block_asm_data_order_aligned
|
||||
@ -78,6 +80,7 @@ void md5_block_host_order (MD5_CTX *c, const void *p,size_t num);
|
||||
void md5_block_data_order (MD5_CTX *c, const void *p,size_t num);
|
||||
|
||||
#if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) || defined(__x86_64) || defined(__x86_64__)
|
||||
# if !defined(B_ENDIAN)
|
||||
/*
|
||||
* *_block_host_order is expected to handle aligned data while
|
||||
* *_block_data_order - unaligned. As algorithm and host (x86)
|
||||
@ -99,7 +102,8 @@ void md5_block_data_order (MD5_CTX *c, const void *p,size_t num);
|
||||
*
|
||||
* <appro@fy.chalmers.se>
|
||||
*/
|
||||
#define md5_block_data_order md5_block_host_order
|
||||
# define md5_block_data_order md5_block_host_order
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||
|
@ -252,8 +252,16 @@ long CRYPTO_dbg_get_options(void)
|
||||
/* static int mem_cmp(MEM *a, MEM *b) */
|
||||
static int mem_cmp(const void *a_void, const void *b_void)
|
||||
{
|
||||
#ifdef _WIN64
|
||||
const char *a=(const char *)((const MEM *)a_void)->addr,
|
||||
*b=(const char *)((const MEM *)b_void)->addr;
|
||||
if (a==b) return 0;
|
||||
else if (a>b) return 1;
|
||||
else return -1;
|
||||
#else
|
||||
return((const char *)((const MEM *)a_void)->addr
|
||||
- (const char *)((const MEM *)b_void)->addr);
|
||||
#endif
|
||||
}
|
||||
|
||||
/* static unsigned long mem_hash(MEM *a) */
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -94,11 +94,11 @@
|
||||
#define OBJ_member_body OBJ_iso,2L
|
||||
|
||||
#define SN_identified_organization "identified-organization"
|
||||
#define NID_identified_organization 662
|
||||
#define NID_identified_organization 676
|
||||
#define OBJ_identified_organization OBJ_iso,3L
|
||||
|
||||
#define SN_certicom_arc "certicom-arc"
|
||||
#define NID_certicom_arc 663
|
||||
#define NID_certicom_arc 677
|
||||
#define OBJ_certicom_arc OBJ_identified_organization,132L
|
||||
|
||||
#define SN_international_organizations "international-organizations"
|
||||
@ -107,11 +107,11 @@
|
||||
#define OBJ_international_organizations OBJ_joint_iso_itu_t,23L
|
||||
|
||||
#define SN_wap "wap"
|
||||
#define NID_wap 664
|
||||
#define NID_wap 678
|
||||
#define OBJ_wap OBJ_international_organizations,43L
|
||||
|
||||
#define SN_wap_wsg "wap-wsg"
|
||||
#define NID_wap_wsg 665
|
||||
#define NID_wap_wsg 679
|
||||
#define OBJ_wap_wsg OBJ_wap,13L
|
||||
|
||||
#define SN_selected_attribute_types "selected-attribute-types"
|
||||
@ -164,19 +164,19 @@
|
||||
#define OBJ_X9_62_characteristic_two_field OBJ_X9_62_id_fieldType,2L
|
||||
|
||||
#define SN_X9_62_id_characteristic_two_basis "id-characteristic-two-basis"
|
||||
#define NID_X9_62_id_characteristic_two_basis 666
|
||||
#define NID_X9_62_id_characteristic_two_basis 680
|
||||
#define OBJ_X9_62_id_characteristic_two_basis OBJ_X9_62_characteristic_two_field,3L
|
||||
|
||||
#define SN_X9_62_onBasis "onBasis"
|
||||
#define NID_X9_62_onBasis 667
|
||||
#define NID_X9_62_onBasis 681
|
||||
#define OBJ_X9_62_onBasis OBJ_X9_62_id_characteristic_two_basis,1L
|
||||
|
||||
#define SN_X9_62_tpBasis "tpBasis"
|
||||
#define NID_X9_62_tpBasis 668
|
||||
#define NID_X9_62_tpBasis 682
|
||||
#define OBJ_X9_62_tpBasis OBJ_X9_62_id_characteristic_two_basis,2L
|
||||
|
||||
#define SN_X9_62_ppBasis "ppBasis"
|
||||
#define NID_X9_62_ppBasis 669
|
||||
#define NID_X9_62_ppBasis 683
|
||||
#define OBJ_X9_62_ppBasis OBJ_X9_62_id_characteristic_two_basis,3L
|
||||
|
||||
#define OBJ_X9_62_id_publicKeyType OBJ_ansi_X9_62,2L
|
||||
@ -190,83 +190,83 @@
|
||||
#define OBJ_X9_62_c_TwoCurve OBJ_X9_62_ellipticCurve,0L
|
||||
|
||||
#define SN_X9_62_c2pnb163v1 "c2pnb163v1"
|
||||
#define NID_X9_62_c2pnb163v1 670
|
||||
#define NID_X9_62_c2pnb163v1 684
|
||||
#define OBJ_X9_62_c2pnb163v1 OBJ_X9_62_c_TwoCurve,1L
|
||||
|
||||
#define SN_X9_62_c2pnb163v2 "c2pnb163v2"
|
||||
#define NID_X9_62_c2pnb163v2 671
|
||||
#define NID_X9_62_c2pnb163v2 685
|
||||
#define OBJ_X9_62_c2pnb163v2 OBJ_X9_62_c_TwoCurve,2L
|
||||
|
||||
#define SN_X9_62_c2pnb163v3 "c2pnb163v3"
|
||||
#define NID_X9_62_c2pnb163v3 672
|
||||
#define NID_X9_62_c2pnb163v3 686
|
||||
#define OBJ_X9_62_c2pnb163v3 OBJ_X9_62_c_TwoCurve,3L
|
||||
|
||||
#define SN_X9_62_c2pnb176v1 "c2pnb176v1"
|
||||
#define NID_X9_62_c2pnb176v1 673
|
||||
#define NID_X9_62_c2pnb176v1 687
|
||||
#define OBJ_X9_62_c2pnb176v1 OBJ_X9_62_c_TwoCurve,4L
|
||||
|
||||
#define SN_X9_62_c2tnb191v1 "c2tnb191v1"
|
||||
#define NID_X9_62_c2tnb191v1 674
|
||||
#define NID_X9_62_c2tnb191v1 688
|
||||
#define OBJ_X9_62_c2tnb191v1 OBJ_X9_62_c_TwoCurve,5L
|
||||
|
||||
#define SN_X9_62_c2tnb191v2 "c2tnb191v2"
|
||||
#define NID_X9_62_c2tnb191v2 675
|
||||
#define NID_X9_62_c2tnb191v2 689
|
||||
#define OBJ_X9_62_c2tnb191v2 OBJ_X9_62_c_TwoCurve,6L
|
||||
|
||||
#define SN_X9_62_c2tnb191v3 "c2tnb191v3"
|
||||
#define NID_X9_62_c2tnb191v3 676
|
||||
#define NID_X9_62_c2tnb191v3 690
|
||||
#define OBJ_X9_62_c2tnb191v3 OBJ_X9_62_c_TwoCurve,7L
|
||||
|
||||
#define SN_X9_62_c2onb191v4 "c2onb191v4"
|
||||
#define NID_X9_62_c2onb191v4 677
|
||||
#define NID_X9_62_c2onb191v4 691
|
||||
#define OBJ_X9_62_c2onb191v4 OBJ_X9_62_c_TwoCurve,8L
|
||||
|
||||
#define SN_X9_62_c2onb191v5 "c2onb191v5"
|
||||
#define NID_X9_62_c2onb191v5 678
|
||||
#define NID_X9_62_c2onb191v5 692
|
||||
#define OBJ_X9_62_c2onb191v5 OBJ_X9_62_c_TwoCurve,9L
|
||||
|
||||
#define SN_X9_62_c2pnb208w1 "c2pnb208w1"
|
||||
#define NID_X9_62_c2pnb208w1 679
|
||||
#define NID_X9_62_c2pnb208w1 693
|
||||
#define OBJ_X9_62_c2pnb208w1 OBJ_X9_62_c_TwoCurve,10L
|
||||
|
||||
#define SN_X9_62_c2tnb239v1 "c2tnb239v1"
|
||||
#define NID_X9_62_c2tnb239v1 680
|
||||
#define NID_X9_62_c2tnb239v1 694
|
||||
#define OBJ_X9_62_c2tnb239v1 OBJ_X9_62_c_TwoCurve,11L
|
||||
|
||||
#define SN_X9_62_c2tnb239v2 "c2tnb239v2"
|
||||
#define NID_X9_62_c2tnb239v2 681
|
||||
#define NID_X9_62_c2tnb239v2 695
|
||||
#define OBJ_X9_62_c2tnb239v2 OBJ_X9_62_c_TwoCurve,12L
|
||||
|
||||
#define SN_X9_62_c2tnb239v3 "c2tnb239v3"
|
||||
#define NID_X9_62_c2tnb239v3 682
|
||||
#define NID_X9_62_c2tnb239v3 696
|
||||
#define OBJ_X9_62_c2tnb239v3 OBJ_X9_62_c_TwoCurve,13L
|
||||
|
||||
#define SN_X9_62_c2onb239v4 "c2onb239v4"
|
||||
#define NID_X9_62_c2onb239v4 683
|
||||
#define NID_X9_62_c2onb239v4 697
|
||||
#define OBJ_X9_62_c2onb239v4 OBJ_X9_62_c_TwoCurve,14L
|
||||
|
||||
#define SN_X9_62_c2onb239v5 "c2onb239v5"
|
||||
#define NID_X9_62_c2onb239v5 684
|
||||
#define NID_X9_62_c2onb239v5 698
|
||||
#define OBJ_X9_62_c2onb239v5 OBJ_X9_62_c_TwoCurve,15L
|
||||
|
||||
#define SN_X9_62_c2pnb272w1 "c2pnb272w1"
|
||||
#define NID_X9_62_c2pnb272w1 685
|
||||
#define NID_X9_62_c2pnb272w1 699
|
||||
#define OBJ_X9_62_c2pnb272w1 OBJ_X9_62_c_TwoCurve,16L
|
||||
|
||||
#define SN_X9_62_c2pnb304w1 "c2pnb304w1"
|
||||
#define NID_X9_62_c2pnb304w1 686
|
||||
#define NID_X9_62_c2pnb304w1 700
|
||||
#define OBJ_X9_62_c2pnb304w1 OBJ_X9_62_c_TwoCurve,17L
|
||||
|
||||
#define SN_X9_62_c2tnb359v1 "c2tnb359v1"
|
||||
#define NID_X9_62_c2tnb359v1 687
|
||||
#define NID_X9_62_c2tnb359v1 701
|
||||
#define OBJ_X9_62_c2tnb359v1 OBJ_X9_62_c_TwoCurve,18L
|
||||
|
||||
#define SN_X9_62_c2pnb368w1 "c2pnb368w1"
|
||||
#define NID_X9_62_c2pnb368w1 688
|
||||
#define NID_X9_62_c2pnb368w1 702
|
||||
#define OBJ_X9_62_c2pnb368w1 OBJ_X9_62_c_TwoCurve,19L
|
||||
|
||||
#define SN_X9_62_c2tnb431r1 "c2tnb431r1"
|
||||
#define NID_X9_62_c2tnb431r1 689
|
||||
#define NID_X9_62_c2tnb431r1 703
|
||||
#define OBJ_X9_62_c2tnb431r1 OBJ_X9_62_c_TwoCurve,20L
|
||||
|
||||
#define OBJ_X9_62_primeCurve OBJ_X9_62_ellipticCurve,1L
|
||||
@ -308,173 +308,173 @@
|
||||
#define OBJ_secg_ellipticCurve OBJ_certicom_arc,0L
|
||||
|
||||
#define SN_secp112r1 "secp112r1"
|
||||
#define NID_secp112r1 690
|
||||
#define NID_secp112r1 704
|
||||
#define OBJ_secp112r1 OBJ_secg_ellipticCurve,6L
|
||||
|
||||
#define SN_secp112r2 "secp112r2"
|
||||
#define NID_secp112r2 691
|
||||
#define NID_secp112r2 705
|
||||
#define OBJ_secp112r2 OBJ_secg_ellipticCurve,7L
|
||||
|
||||
#define SN_secp128r1 "secp128r1"
|
||||
#define NID_secp128r1 692
|
||||
#define NID_secp128r1 706
|
||||
#define OBJ_secp128r1 OBJ_secg_ellipticCurve,28L
|
||||
|
||||
#define SN_secp128r2 "secp128r2"
|
||||
#define NID_secp128r2 693
|
||||
#define NID_secp128r2 707
|
||||
#define OBJ_secp128r2 OBJ_secg_ellipticCurve,29L
|
||||
|
||||
#define SN_secp160k1 "secp160k1"
|
||||
#define NID_secp160k1 694
|
||||
#define NID_secp160k1 708
|
||||
#define OBJ_secp160k1 OBJ_secg_ellipticCurve,9L
|
||||
|
||||
#define SN_secp160r1 "secp160r1"
|
||||
#define NID_secp160r1 695
|
||||
#define NID_secp160r1 709
|
||||
#define OBJ_secp160r1 OBJ_secg_ellipticCurve,8L
|
||||
|
||||
#define SN_secp160r2 "secp160r2"
|
||||
#define NID_secp160r2 696
|
||||
#define NID_secp160r2 710
|
||||
#define OBJ_secp160r2 OBJ_secg_ellipticCurve,30L
|
||||
|
||||
#define SN_secp192k1 "secp192k1"
|
||||
#define NID_secp192k1 697
|
||||
#define NID_secp192k1 711
|
||||
#define OBJ_secp192k1 OBJ_secg_ellipticCurve,31L
|
||||
|
||||
#define SN_secp224k1 "secp224k1"
|
||||
#define NID_secp224k1 698
|
||||
#define NID_secp224k1 712
|
||||
#define OBJ_secp224k1 OBJ_secg_ellipticCurve,32L
|
||||
|
||||
#define SN_secp224r1 "secp224r1"
|
||||
#define NID_secp224r1 699
|
||||
#define NID_secp224r1 713
|
||||
#define OBJ_secp224r1 OBJ_secg_ellipticCurve,33L
|
||||
|
||||
#define SN_secp256k1 "secp256k1"
|
||||
#define NID_secp256k1 700
|
||||
#define NID_secp256k1 714
|
||||
#define OBJ_secp256k1 OBJ_secg_ellipticCurve,10L
|
||||
|
||||
#define SN_secp384r1 "secp384r1"
|
||||
#define NID_secp384r1 701
|
||||
#define NID_secp384r1 715
|
||||
#define OBJ_secp384r1 OBJ_secg_ellipticCurve,34L
|
||||
|
||||
#define SN_secp521r1 "secp521r1"
|
||||
#define NID_secp521r1 702
|
||||
#define NID_secp521r1 716
|
||||
#define OBJ_secp521r1 OBJ_secg_ellipticCurve,35L
|
||||
|
||||
#define SN_sect113r1 "sect113r1"
|
||||
#define NID_sect113r1 703
|
||||
#define NID_sect113r1 717
|
||||
#define OBJ_sect113r1 OBJ_secg_ellipticCurve,4L
|
||||
|
||||
#define SN_sect113r2 "sect113r2"
|
||||
#define NID_sect113r2 704
|
||||
#define NID_sect113r2 718
|
||||
#define OBJ_sect113r2 OBJ_secg_ellipticCurve,5L
|
||||
|
||||
#define SN_sect131r1 "sect131r1"
|
||||
#define NID_sect131r1 705
|
||||
#define NID_sect131r1 719
|
||||
#define OBJ_sect131r1 OBJ_secg_ellipticCurve,22L
|
||||
|
||||
#define SN_sect131r2 "sect131r2"
|
||||
#define NID_sect131r2 706
|
||||
#define NID_sect131r2 720
|
||||
#define OBJ_sect131r2 OBJ_secg_ellipticCurve,23L
|
||||
|
||||
#define SN_sect163k1 "sect163k1"
|
||||
#define NID_sect163k1 707
|
||||
#define NID_sect163k1 721
|
||||
#define OBJ_sect163k1 OBJ_secg_ellipticCurve,1L
|
||||
|
||||
#define SN_sect163r1 "sect163r1"
|
||||
#define NID_sect163r1 708
|
||||
#define NID_sect163r1 722
|
||||
#define OBJ_sect163r1 OBJ_secg_ellipticCurve,2L
|
||||
|
||||
#define SN_sect163r2 "sect163r2"
|
||||
#define NID_sect163r2 709
|
||||
#define NID_sect163r2 723
|
||||
#define OBJ_sect163r2 OBJ_secg_ellipticCurve,15L
|
||||
|
||||
#define SN_sect193r1 "sect193r1"
|
||||
#define NID_sect193r1 710
|
||||
#define NID_sect193r1 724
|
||||
#define OBJ_sect193r1 OBJ_secg_ellipticCurve,24L
|
||||
|
||||
#define SN_sect193r2 "sect193r2"
|
||||
#define NID_sect193r2 711
|
||||
#define NID_sect193r2 725
|
||||
#define OBJ_sect193r2 OBJ_secg_ellipticCurve,25L
|
||||
|
||||
#define SN_sect233k1 "sect233k1"
|
||||
#define NID_sect233k1 712
|
||||
#define NID_sect233k1 726
|
||||
#define OBJ_sect233k1 OBJ_secg_ellipticCurve,26L
|
||||
|
||||
#define SN_sect233r1 "sect233r1"
|
||||
#define NID_sect233r1 713
|
||||
#define NID_sect233r1 727
|
||||
#define OBJ_sect233r1 OBJ_secg_ellipticCurve,27L
|
||||
|
||||
#define SN_sect239k1 "sect239k1"
|
||||
#define NID_sect239k1 714
|
||||
#define NID_sect239k1 728
|
||||
#define OBJ_sect239k1 OBJ_secg_ellipticCurve,3L
|
||||
|
||||
#define SN_sect283k1 "sect283k1"
|
||||
#define NID_sect283k1 715
|
||||
#define NID_sect283k1 729
|
||||
#define OBJ_sect283k1 OBJ_secg_ellipticCurve,16L
|
||||
|
||||
#define SN_sect283r1 "sect283r1"
|
||||
#define NID_sect283r1 716
|
||||
#define NID_sect283r1 730
|
||||
#define OBJ_sect283r1 OBJ_secg_ellipticCurve,17L
|
||||
|
||||
#define SN_sect409k1 "sect409k1"
|
||||
#define NID_sect409k1 717
|
||||
#define NID_sect409k1 731
|
||||
#define OBJ_sect409k1 OBJ_secg_ellipticCurve,36L
|
||||
|
||||
#define SN_sect409r1 "sect409r1"
|
||||
#define NID_sect409r1 718
|
||||
#define NID_sect409r1 732
|
||||
#define OBJ_sect409r1 OBJ_secg_ellipticCurve,37L
|
||||
|
||||
#define SN_sect571k1 "sect571k1"
|
||||
#define NID_sect571k1 719
|
||||
#define NID_sect571k1 733
|
||||
#define OBJ_sect571k1 OBJ_secg_ellipticCurve,38L
|
||||
|
||||
#define SN_sect571r1 "sect571r1"
|
||||
#define NID_sect571r1 720
|
||||
#define NID_sect571r1 734
|
||||
#define OBJ_sect571r1 OBJ_secg_ellipticCurve,39L
|
||||
|
||||
#define OBJ_wap_wsg_idm_ecid OBJ_wap_wsg,4L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls1 "wap-wsg-idm-ecid-wtls1"
|
||||
#define NID_wap_wsg_idm_ecid_wtls1 721
|
||||
#define NID_wap_wsg_idm_ecid_wtls1 735
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls1 OBJ_wap_wsg_idm_ecid,1L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls3 "wap-wsg-idm-ecid-wtls3"
|
||||
#define NID_wap_wsg_idm_ecid_wtls3 722
|
||||
#define NID_wap_wsg_idm_ecid_wtls3 736
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls3 OBJ_wap_wsg_idm_ecid,3L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls4 "wap-wsg-idm-ecid-wtls4"
|
||||
#define NID_wap_wsg_idm_ecid_wtls4 723
|
||||
#define NID_wap_wsg_idm_ecid_wtls4 737
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls4 OBJ_wap_wsg_idm_ecid,4L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls5 "wap-wsg-idm-ecid-wtls5"
|
||||
#define NID_wap_wsg_idm_ecid_wtls5 724
|
||||
#define NID_wap_wsg_idm_ecid_wtls5 738
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls5 OBJ_wap_wsg_idm_ecid,5L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls6 "wap-wsg-idm-ecid-wtls6"
|
||||
#define NID_wap_wsg_idm_ecid_wtls6 725
|
||||
#define NID_wap_wsg_idm_ecid_wtls6 739
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls6 OBJ_wap_wsg_idm_ecid,6L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls7 "wap-wsg-idm-ecid-wtls7"
|
||||
#define NID_wap_wsg_idm_ecid_wtls7 726
|
||||
#define NID_wap_wsg_idm_ecid_wtls7 740
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls7 OBJ_wap_wsg_idm_ecid,7L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls8 "wap-wsg-idm-ecid-wtls8"
|
||||
#define NID_wap_wsg_idm_ecid_wtls8 727
|
||||
#define NID_wap_wsg_idm_ecid_wtls8 741
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls8 OBJ_wap_wsg_idm_ecid,8L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls9 "wap-wsg-idm-ecid-wtls9"
|
||||
#define NID_wap_wsg_idm_ecid_wtls9 728
|
||||
#define NID_wap_wsg_idm_ecid_wtls9 742
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls9 OBJ_wap_wsg_idm_ecid,9L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls10 "wap-wsg-idm-ecid-wtls10"
|
||||
#define NID_wap_wsg_idm_ecid_wtls10 729
|
||||
#define NID_wap_wsg_idm_ecid_wtls10 743
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls10 OBJ_wap_wsg_idm_ecid,10L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls11 "wap-wsg-idm-ecid-wtls11"
|
||||
#define NID_wap_wsg_idm_ecid_wtls11 730
|
||||
#define NID_wap_wsg_idm_ecid_wtls11 744
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls11 OBJ_wap_wsg_idm_ecid,11L
|
||||
|
||||
#define SN_wap_wsg_idm_ecid_wtls12 "wap-wsg-idm-ecid-wtls12"
|
||||
#define NID_wap_wsg_idm_ecid_wtls12 731
|
||||
#define NID_wap_wsg_idm_ecid_wtls12 745
|
||||
#define OBJ_wap_wsg_idm_ecid_wtls12 OBJ_wap_wsg_idm_ecid,12L
|
||||
|
||||
#define SN_cast5_cbc "CAST5-CBC"
|
||||
@ -538,22 +538,22 @@
|
||||
|
||||
#define SN_sha256WithRSAEncryption "RSA-SHA256"
|
||||
#define LN_sha256WithRSAEncryption "sha256WithRSAEncryption"
|
||||
#define NID_sha256WithRSAEncryption 732
|
||||
#define NID_sha256WithRSAEncryption 668
|
||||
#define OBJ_sha256WithRSAEncryption OBJ_pkcs1,11L
|
||||
|
||||
#define SN_sha384WithRSAEncryption "RSA-SHA384"
|
||||
#define LN_sha384WithRSAEncryption "sha384WithRSAEncryption"
|
||||
#define NID_sha384WithRSAEncryption 733
|
||||
#define NID_sha384WithRSAEncryption 669
|
||||
#define OBJ_sha384WithRSAEncryption OBJ_pkcs1,12L
|
||||
|
||||
#define SN_sha512WithRSAEncryption "RSA-SHA512"
|
||||
#define LN_sha512WithRSAEncryption "sha512WithRSAEncryption"
|
||||
#define NID_sha512WithRSAEncryption 734
|
||||
#define NID_sha512WithRSAEncryption 670
|
||||
#define OBJ_sha512WithRSAEncryption OBJ_pkcs1,13L
|
||||
|
||||
#define SN_sha224WithRSAEncryption "RSA-SHA224"
|
||||
#define LN_sha224WithRSAEncryption "sha224WithRSAEncryption"
|
||||
#define NID_sha224WithRSAEncryption 735
|
||||
#define NID_sha224WithRSAEncryption 671
|
||||
#define OBJ_sha224WithRSAEncryption OBJ_pkcs1,14L
|
||||
|
||||
#define SN_pkcs3 "pkcs3"
|
||||
@ -1266,7 +1266,7 @@
|
||||
#define OBJ_id_cct OBJ_id_pkix,12L
|
||||
|
||||
#define SN_id_ppl "id-ppl"
|
||||
#define NID_id_ppl 746
|
||||
#define NID_id_ppl 662
|
||||
#define OBJ_id_ppl OBJ_id_pkix,21L
|
||||
|
||||
#define SN_id_ad "id-ad"
|
||||
@ -1386,7 +1386,7 @@
|
||||
|
||||
#define SN_proxyCertInfo "proxyCertInfo"
|
||||
#define LN_proxyCertInfo "Proxy Certificate Information"
|
||||
#define NID_proxyCertInfo 747
|
||||
#define NID_proxyCertInfo 663
|
||||
#define OBJ_proxyCertInfo OBJ_id_pe,14L
|
||||
|
||||
#define SN_id_qt_cps "id-qt-cps"
|
||||
@ -1715,17 +1715,17 @@
|
||||
|
||||
#define SN_id_ppl_anyLanguage "id-ppl-anyLanguage"
|
||||
#define LN_id_ppl_anyLanguage "Any language"
|
||||
#define NID_id_ppl_anyLanguage 748
|
||||
#define NID_id_ppl_anyLanguage 664
|
||||
#define OBJ_id_ppl_anyLanguage OBJ_id_ppl,0L
|
||||
|
||||
#define SN_id_ppl_inheritAll "id-ppl-inheritAll"
|
||||
#define LN_id_ppl_inheritAll "Inherit all"
|
||||
#define NID_id_ppl_inheritAll 749
|
||||
#define NID_id_ppl_inheritAll 665
|
||||
#define OBJ_id_ppl_inheritAll OBJ_id_ppl,1L
|
||||
|
||||
#define SN_Independent "id-ppl-independent"
|
||||
#define LN_Independent "Independent"
|
||||
#define NID_Independent 750
|
||||
#define NID_Independent 667
|
||||
#define OBJ_Independent OBJ_id_ppl,2L
|
||||
|
||||
#define SN_ad_OCSP "OCSP"
|
||||
@ -2096,7 +2096,7 @@
|
||||
|
||||
#define SN_name_constraints "nameConstraints"
|
||||
#define LN_name_constraints "X509v3 Name Constraints"
|
||||
#define NID_name_constraints 736
|
||||
#define NID_name_constraints 666
|
||||
#define OBJ_name_constraints OBJ_id_ce,30L
|
||||
|
||||
#define SN_crl_distribution_points "crlDistributionPoints"
|
||||
@ -2111,12 +2111,12 @@
|
||||
|
||||
#define SN_any_policy "anyPolicy"
|
||||
#define LN_any_policy "X509v3 Any Policy"
|
||||
#define NID_any_policy 737
|
||||
#define NID_any_policy 746
|
||||
#define OBJ_any_policy OBJ_certificate_policies,0L
|
||||
|
||||
#define SN_policy_mappings "policyMappings"
|
||||
#define LN_policy_mappings "X509v3 Policy Mappings"
|
||||
#define NID_policy_mappings 738
|
||||
#define NID_policy_mappings 747
|
||||
#define OBJ_policy_mappings OBJ_id_ce,33L
|
||||
|
||||
#define SN_authority_key_identifier "authorityKeyIdentifier"
|
||||
@ -2136,7 +2136,7 @@
|
||||
|
||||
#define SN_inhibit_any_policy "inhibitAnyPolicy"
|
||||
#define LN_inhibit_any_policy "X509v3 Inhibit Any Policy"
|
||||
#define NID_inhibit_any_policy 739
|
||||
#define NID_inhibit_any_policy 748
|
||||
#define OBJ_inhibit_any_policy OBJ_id_ce,54L
|
||||
|
||||
#define SN_target_information "targetInformation"
|
||||
@ -2420,22 +2420,22 @@
|
||||
|
||||
#define SN_sha256 "SHA256"
|
||||
#define LN_sha256 "sha256"
|
||||
#define NID_sha256 740
|
||||
#define NID_sha256 672
|
||||
#define OBJ_sha256 OBJ_nist_hashalgs,1L
|
||||
|
||||
#define SN_sha384 "SHA384"
|
||||
#define LN_sha384 "sha384"
|
||||
#define NID_sha384 741
|
||||
#define NID_sha384 673
|
||||
#define OBJ_sha384 OBJ_nist_hashalgs,2L
|
||||
|
||||
#define SN_sha512 "SHA512"
|
||||
#define LN_sha512 "sha512"
|
||||
#define NID_sha512 742
|
||||
#define NID_sha512 674
|
||||
#define OBJ_sha512 OBJ_nist_hashalgs,3L
|
||||
|
||||
#define SN_sha224 "SHA224"
|
||||
#define LN_sha224 "sha224"
|
||||
#define NID_sha224 743
|
||||
#define NID_sha224 675
|
||||
#define OBJ_sha224 OBJ_nist_hashalgs,4L
|
||||
|
||||
#define SN_hold_instruction_code "holdInstructionCode"
|
||||
@ -3297,9 +3297,9 @@
|
||||
|
||||
#define SN_ipsec3 "Oakley-EC2N-3"
|
||||
#define LN_ipsec3 "ipsec3"
|
||||
#define NID_ipsec3 744
|
||||
#define NID_ipsec3 749
|
||||
|
||||
#define SN_ipsec4 "Oakley-EC2N-4"
|
||||
#define LN_ipsec4 "ipsec4"
|
||||
#define NID_ipsec4 745
|
||||
#define NID_ipsec4 750
|
||||
|
||||
|
@ -659,92 +659,92 @@ des_ede3_cfb1 658
|
||||
des_ede3_cfb8 659
|
||||
streetAddress 660
|
||||
postalCode 661
|
||||
identified_organization 662
|
||||
certicom_arc 663
|
||||
wap 664
|
||||
wap_wsg 665
|
||||
X9_62_id_characteristic_two_basis 666
|
||||
X9_62_onBasis 667
|
||||
X9_62_tpBasis 668
|
||||
X9_62_ppBasis 669
|
||||
X9_62_c2pnb163v1 670
|
||||
X9_62_c2pnb163v2 671
|
||||
X9_62_c2pnb163v3 672
|
||||
X9_62_c2pnb176v1 673
|
||||
X9_62_c2tnb191v1 674
|
||||
X9_62_c2tnb191v2 675
|
||||
X9_62_c2tnb191v3 676
|
||||
X9_62_c2onb191v4 677
|
||||
X9_62_c2onb191v5 678
|
||||
X9_62_c2pnb208w1 679
|
||||
X9_62_c2tnb239v1 680
|
||||
X9_62_c2tnb239v2 681
|
||||
X9_62_c2tnb239v3 682
|
||||
X9_62_c2onb239v4 683
|
||||
X9_62_c2onb239v5 684
|
||||
X9_62_c2pnb272w1 685
|
||||
X9_62_c2pnb304w1 686
|
||||
X9_62_c2tnb359v1 687
|
||||
X9_62_c2pnb368w1 688
|
||||
X9_62_c2tnb431r1 689
|
||||
secp112r1 690
|
||||
secp112r2 691
|
||||
secp128r1 692
|
||||
secp128r2 693
|
||||
secp160k1 694
|
||||
secp160r1 695
|
||||
secp160r2 696
|
||||
secp192k1 697
|
||||
secp224k1 698
|
||||
secp224r1 699
|
||||
secp256k1 700
|
||||
secp384r1 701
|
||||
secp521r1 702
|
||||
sect113r1 703
|
||||
sect113r2 704
|
||||
sect131r1 705
|
||||
sect131r2 706
|
||||
sect163k1 707
|
||||
sect163r1 708
|
||||
sect163r2 709
|
||||
sect193r1 710
|
||||
sect193r2 711
|
||||
sect233k1 712
|
||||
sect233r1 713
|
||||
sect239k1 714
|
||||
sect283k1 715
|
||||
sect283r1 716
|
||||
sect409k1 717
|
||||
sect409r1 718
|
||||
sect571k1 719
|
||||
sect571r1 720
|
||||
wap_wsg_idm_ecid_wtls1 721
|
||||
wap_wsg_idm_ecid_wtls3 722
|
||||
wap_wsg_idm_ecid_wtls4 723
|
||||
wap_wsg_idm_ecid_wtls5 724
|
||||
wap_wsg_idm_ecid_wtls6 725
|
||||
wap_wsg_idm_ecid_wtls7 726
|
||||
wap_wsg_idm_ecid_wtls8 727
|
||||
wap_wsg_idm_ecid_wtls9 728
|
||||
wap_wsg_idm_ecid_wtls10 729
|
||||
wap_wsg_idm_ecid_wtls11 730
|
||||
wap_wsg_idm_ecid_wtls12 731
|
||||
sha256WithRSAEncryption 732
|
||||
sha384WithRSAEncryption 733
|
||||
sha512WithRSAEncryption 734
|
||||
sha224WithRSAEncryption 735
|
||||
name_constraints 736
|
||||
any_policy 737
|
||||
policy_mappings 738
|
||||
inhibit_any_policy 739
|
||||
sha256 740
|
||||
sha384 741
|
||||
sha512 742
|
||||
sha224 743
|
||||
ipsec3 744
|
||||
ipsec4 745
|
||||
id_ppl 746
|
||||
proxyCertInfo 747
|
||||
id_ppl_anyLanguage 748
|
||||
id_ppl_inheritAll 749
|
||||
Independent 750
|
||||
id_ppl 662
|
||||
proxyCertInfo 663
|
||||
id_ppl_anyLanguage 664
|
||||
id_ppl_inheritAll 665
|
||||
name_constraints 666
|
||||
Independent 667
|
||||
sha256WithRSAEncryption 668
|
||||
sha384WithRSAEncryption 669
|
||||
sha512WithRSAEncryption 670
|
||||
sha224WithRSAEncryption 671
|
||||
sha256 672
|
||||
sha384 673
|
||||
sha512 674
|
||||
sha224 675
|
||||
identified_organization 676
|
||||
certicom_arc 677
|
||||
wap 678
|
||||
wap_wsg 679
|
||||
X9_62_id_characteristic_two_basis 680
|
||||
X9_62_onBasis 681
|
||||
X9_62_tpBasis 682
|
||||
X9_62_ppBasis 683
|
||||
X9_62_c2pnb163v1 684
|
||||
X9_62_c2pnb163v2 685
|
||||
X9_62_c2pnb163v3 686
|
||||
X9_62_c2pnb176v1 687
|
||||
X9_62_c2tnb191v1 688
|
||||
X9_62_c2tnb191v2 689
|
||||
X9_62_c2tnb191v3 690
|
||||
X9_62_c2onb191v4 691
|
||||
X9_62_c2onb191v5 692
|
||||
X9_62_c2pnb208w1 693
|
||||
X9_62_c2tnb239v1 694
|
||||
X9_62_c2tnb239v2 695
|
||||
X9_62_c2tnb239v3 696
|
||||
X9_62_c2onb239v4 697
|
||||
X9_62_c2onb239v5 698
|
||||
X9_62_c2pnb272w1 699
|
||||
X9_62_c2pnb304w1 700
|
||||
X9_62_c2tnb359v1 701
|
||||
X9_62_c2pnb368w1 702
|
||||
X9_62_c2tnb431r1 703
|
||||
secp112r1 704
|
||||
secp112r2 705
|
||||
secp128r1 706
|
||||
secp128r2 707
|
||||
secp160k1 708
|
||||
secp160r1 709
|
||||
secp160r2 710
|
||||
secp192k1 711
|
||||
secp224k1 712
|
||||
secp224r1 713
|
||||
secp256k1 714
|
||||
secp384r1 715
|
||||
secp521r1 716
|
||||
sect113r1 717
|
||||
sect113r2 718
|
||||
sect131r1 719
|
||||
sect131r2 720
|
||||
sect163k1 721
|
||||
sect163r1 722
|
||||
sect163r2 723
|
||||
sect193r1 724
|
||||
sect193r2 725
|
||||
sect233k1 726
|
||||
sect233r1 727
|
||||
sect239k1 728
|
||||
sect283k1 729
|
||||
sect283r1 730
|
||||
sect409k1 731
|
||||
sect409r1 732
|
||||
sect571k1 733
|
||||
sect571r1 734
|
||||
wap_wsg_idm_ecid_wtls1 735
|
||||
wap_wsg_idm_ecid_wtls3 736
|
||||
wap_wsg_idm_ecid_wtls4 737
|
||||
wap_wsg_idm_ecid_wtls5 738
|
||||
wap_wsg_idm_ecid_wtls6 739
|
||||
wap_wsg_idm_ecid_wtls7 740
|
||||
wap_wsg_idm_ecid_wtls8 741
|
||||
wap_wsg_idm_ecid_wtls9 742
|
||||
wap_wsg_idm_ecid_wtls10 743
|
||||
wap_wsg_idm_ecid_wtls11 744
|
||||
wap_wsg_idm_ecid_wtls12 745
|
||||
any_policy 746
|
||||
policy_mappings 747
|
||||
inhibit_any_policy 748
|
||||
ipsec3 749
|
||||
ipsec4 750
|
||||
|
@ -12,7 +12,7 @@
|
||||
* 0.9.3-beta2 0x00903002 (same as ...beta2-dev)
|
||||
* 0.9.3 0x0090300f
|
||||
* 0.9.3a 0x0090301f
|
||||
* 0.9.4 0x0090400f
|
||||
* 0.9.4 0x0090400f
|
||||
* 1.2.3z 0x102031af
|
||||
*
|
||||
* For continuity reasons (because 0.9.5 is already out, and is coded
|
||||
@ -25,11 +25,11 @@
|
||||
* (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
|
||||
* major minor fix final patch/beta)
|
||||
*/
|
||||
#define OPENSSL_VERSION_NUMBER 0x00909000L
|
||||
#define OPENSSL_VERSION_NUMBER 0x0090800fL
|
||||
#ifdef OPENSSL_FIPS
|
||||
#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.9-fips-dev XX xxx XXXX"
|
||||
#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8-fips 05 Jul 2005"
|
||||
#else
|
||||
#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.9-dev XX xxx XXXX"
|
||||
#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8 05 Jul 2005"
|
||||
#endif
|
||||
#define OPENSSL_VERSION_PTEXT " part of " OPENSSL_VERSION_TEXT
|
||||
|
||||
|
@ -168,6 +168,10 @@ my $current_function;
|
||||
# on pros side, this results in more compact code:-)
|
||||
$self->{index} =~ s/^[er](.?[0-9xp])[d]?$/r\1/;
|
||||
$self->{base} =~ s/^[er](.?[0-9xp])[d]?$/r\1/;
|
||||
# Solaris /usr/ccs/bin/as can't handle multiplications
|
||||
# in $self->{label}
|
||||
$self->{label} =~ s/(?<![0-9a-f])(0[x0-9a-f]+)/oct($1)/eg;
|
||||
$self->{label} =~ s/([0-9]+\s*[\*\/\%]\s*[0-9]+)/eval($1)/eg;
|
||||
|
||||
if (defined($self->{index})) {
|
||||
sprintf "%s(%%%s,%%%s,%d)",
|
||||
|
@ -262,8 +262,8 @@ sub using486
|
||||
|
||||
sub main'file
|
||||
{
|
||||
push(@out,".") if ($main'mwerks);
|
||||
push(@out,"section\t.text\n");
|
||||
if ($main'mwerks) { push(@out,".section\t.text\n"); }
|
||||
else { push(@out,"section\t.text use32\n"); }
|
||||
}
|
||||
|
||||
sub main'function_begin
|
||||
|
@ -719,9 +719,9 @@ sub main'initseg
|
||||
$tmp=<<___;
|
||||
.section .init
|
||||
call $under$f
|
||||
jmp 1f
|
||||
jmp .Linitalign
|
||||
.align $align
|
||||
1:
|
||||
.Linitalign:
|
||||
___
|
||||
}
|
||||
elsif ($main'coff)
|
||||
|
@ -148,7 +148,11 @@ PKCS7 *PKCS12_pack_p7data(STACK_OF(PKCS12_SAFEBAG) *sk)
|
||||
/* Unpack SAFEBAGS from PKCS#7 data ContentInfo */
|
||||
STACK_OF(PKCS12_SAFEBAG) *PKCS12_unpack_p7data(PKCS7 *p7)
|
||||
{
|
||||
if(!PKCS7_type_is_data(p7)) return NULL;
|
||||
if(!PKCS7_type_is_data(p7))
|
||||
{
|
||||
PKCS12err(PKCS12_F_PKCS12_UNPACK_P7DATA,PKCS12_R_CONTENT_TYPE_NOT_DATA);
|
||||
return NULL;
|
||||
}
|
||||
return ASN1_item_unpack(p7->d.data, ASN1_ITEM_rptr(PKCS12_SAFEBAGS));
|
||||
}
|
||||
|
||||
@ -211,5 +215,10 @@ int PKCS12_pack_authsafes(PKCS12 *p12, STACK_OF(PKCS7) *safes)
|
||||
|
||||
STACK_OF(PKCS7) *PKCS12_unpack_authsafes(PKCS12 *p12)
|
||||
{
|
||||
if (!PKCS7_type_is_data(p12->authsafes))
|
||||
{
|
||||
PKCS12err(PKCS12_F_PKCS12_UNPACK_AUTHSAFES,PKCS12_R_CONTENT_TYPE_NOT_DATA);
|
||||
return NULL;
|
||||
}
|
||||
return ASN1_item_unpack(p12->authsafes->d.data, ASN1_ITEM_rptr(PKCS12_AUTHSAFES));
|
||||
}
|
||||
|
@ -72,6 +72,12 @@ int PKCS12_gen_mac(PKCS12 *p12, const char *pass, int passlen,
|
||||
unsigned char key[PKCS12_MAC_KEY_LENGTH], *salt;
|
||||
int saltlen, iter;
|
||||
|
||||
if (!PKCS7_type_is_data(p12->authsafes))
|
||||
{
|
||||
PKCS12err(PKCS12_F_PKCS12_GEN_MAC,PKCS12_R_CONTENT_TYPE_NOT_DATA);
|
||||
return 0;
|
||||
}
|
||||
|
||||
salt = p12->mac->salt->data;
|
||||
saltlen = p12->mac->salt->length;
|
||||
if (!p12->mac->iter) iter = 1;
|
||||
|
@ -94,6 +94,8 @@ static ERR_STRING_DATA PKCS12_str_functs[]=
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_PBE_KEYIVGEN), "PKCS12_PBE_keyivgen"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_SETUP_MAC), "PKCS12_setup_mac"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_SET_MAC), "PKCS12_set_mac"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_UNPACK_AUTHSAFES), "PKCS12_unpack_authsafes"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_UNPACK_P7DATA), "PKCS12_unpack_p7data"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS12_VERIFY_MAC), "PKCS12_verify_mac"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS8_ADD_KEYUSAGE), "PKCS8_add_keyusage"},
|
||||
{ERR_FUNC(PKCS12_F_PKCS8_ENCRYPT), "PKCS8_encrypt"},
|
||||
@ -103,6 +105,7 @@ static ERR_STRING_DATA PKCS12_str_functs[]=
|
||||
static ERR_STRING_DATA PKCS12_str_reasons[]=
|
||||
{
|
||||
{ERR_REASON(PKCS12_R_CANT_PACK_STRUCTURE),"cant pack structure"},
|
||||
{ERR_REASON(PKCS12_R_CONTENT_TYPE_NOT_DATA),"content type not data"},
|
||||
{ERR_REASON(PKCS12_R_DECODE_ERROR) ,"decode error"},
|
||||
{ERR_REASON(PKCS12_R_ENCODE_ERROR) ,"encode error"},
|
||||
{ERR_REASON(PKCS12_R_ENCRYPT_ERROR) ,"encrypt error"},
|
||||
|
@ -297,12 +297,15 @@ void ERR_load_PKCS12_strings(void);
|
||||
#define PKCS12_F_PKCS12_PBE_KEYIVGEN 120
|
||||
#define PKCS12_F_PKCS12_SETUP_MAC 122
|
||||
#define PKCS12_F_PKCS12_SET_MAC 123
|
||||
#define PKCS12_F_PKCS12_UNPACK_AUTHSAFES 130
|
||||
#define PKCS12_F_PKCS12_UNPACK_P7DATA 131
|
||||
#define PKCS12_F_PKCS12_VERIFY_MAC 126
|
||||
#define PKCS12_F_PKCS8_ADD_KEYUSAGE 124
|
||||
#define PKCS12_F_PKCS8_ENCRYPT 125
|
||||
|
||||
/* Reason codes. */
|
||||
#define PKCS12_R_CANT_PACK_STRUCTURE 100
|
||||
#define PKCS12_R_CONTENT_TYPE_NOT_DATA 121
|
||||
#define PKCS12_R_DECODE_ERROR 101
|
||||
#define PKCS12_R_ENCODE_ERROR 102
|
||||
#define PKCS12_R_ENCRYPT_ERROR 103
|
||||
|
@ -22,7 +22,7 @@ LIBOBJ=pqueue.o
|
||||
|
||||
SRC= $(LIBSRC)
|
||||
|
||||
EXHEADER= pqueue.h
|
||||
EXHEADER= pqueue.h pq_compat.h
|
||||
HEADER= $(EXHEADER)
|
||||
|
||||
ALL= $(GENERAL) $(SRC) $(HEADER)
|
||||
@ -79,5 +79,6 @@ pqueue.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
pqueue.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
pqueue.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
|
||||
pqueue.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
pqueue.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
pqueue.o: ../../include/openssl/symhacks.h ../cryptlib.h pqueue.c pqueue.h
|
||||
pqueue.o: ../../include/openssl/pq_compat.h ../../include/openssl/safestack.h
|
||||
pqueue.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
|
||||
pqueue.o: ../cryptlib.h pqueue.c pqueue.h
|
||||
|
147
crypto/pqueue/pq_compat.h
Normal file
147
crypto/pqueue/pq_compat.h
Normal file
@ -0,0 +1,147 @@
|
||||
/* crypto/pqueue/pqueue_compat.h */
|
||||
/*
|
||||
* DTLS implementation written by Nagendra Modadugu
|
||||
* (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
|
||||
*/
|
||||
/* ====================================================================
|
||||
* Copyright (c) 1999-2005 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
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* 3. All advertising materials mentioning features or use of this
|
||||
* software must display the following acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"
|
||||
*
|
||||
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
|
||||
* endorse or promote products derived from this software without
|
||||
* prior written permission. For written permission, please contact
|
||||
* openssl-core@OpenSSL.org.
|
||||
*
|
||||
* 5. Products derived from this software may not be called "OpenSSL"
|
||||
* nor may "OpenSSL" appear in their names without prior written
|
||||
* permission of the OpenSSL Project.
|
||||
*
|
||||
* 6. Redistributions of any form whatsoever must retain the following
|
||||
* acknowledgment:
|
||||
* "This product includes software developed by the OpenSSL Project
|
||||
* for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
||||
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
||||
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
* ====================================================================
|
||||
*
|
||||
* This product includes cryptographic software written by Eric Young
|
||||
* (eay@cryptsoft.com). This product includes software written by Tim
|
||||
* Hudson (tjh@cryptsoft.com).
|
||||
*
|
||||
*/
|
||||
|
||||
#include "opensslconf.h"
|
||||
#include <openssl/bn.h>
|
||||
|
||||
/*
|
||||
* The purpose of this header file is for supporting 64-bit integer
|
||||
* manipulation on 32-bit (and lower) machines. Currently the only
|
||||
* such environment is VMS, Utrix and those with smaller default integer
|
||||
* sizes than 32 bits. For all such environment, we fall back to using
|
||||
* BIGNUM. We may need to fine tune the conditions for systems that
|
||||
* are incorrectly configured.
|
||||
*
|
||||
* The only clients of this code are (1) pqueue for priority, and
|
||||
* (2) DTLS, for sequence number manipulation.
|
||||
*/
|
||||
|
||||
#if (defined(THIRTY_TWO_BIT) && !defined(BN_LLONG)) || defined(SIXTEEN_BIT) || defined(EIGHT_BIT)
|
||||
|
||||
#define PQ_64BIT_IS_INTEGER 0
|
||||
#define PQ_64BIT_IS_BIGNUM 1
|
||||
|
||||
#define PQ_64BIT BIGNUM
|
||||
#define PQ_64BIT_CTX BN_CTX
|
||||
|
||||
#define pq_64bit_init(x) BN_init(x)
|
||||
#define pq_64bit_free(x) BN_free(x)
|
||||
|
||||
#define pq_64bit_ctx_new(ctx) BN_CTX_new()
|
||||
#define pq_64bit_ctx_free(x) BN_CTX_free(x)
|
||||
|
||||
#define pq_64bit_assign(x, y) BN_copy(x, y)
|
||||
#define pq_64bit_assign_word(x, y) BN_set_word(x, y)
|
||||
#define pq_64bit_gt(x, y) BN_ucmp(x, y) >= 1 ? 1 : 0
|
||||
#define pq_64bit_eq(x, y) BN_ucmp(x, y) == 0 ? 1 : 0
|
||||
#define pq_64bit_add_word(x, w) BN_add_word(x, w)
|
||||
#define pq_64bit_sub(r, x, y) BN_sub(r, x, y)
|
||||
#define pq_64bit_sub_word(x, w) BN_sub_word(x, w)
|
||||
#define pq_64bit_mod(r, x, n, ctx) BN_mod(r, x, n, ctx)
|
||||
|
||||
#define pq_64bit_bin2num(bn, bytes, len) BN_bin2bn(bytes, len, bn)
|
||||
#define pq_64bit_num2bin(bn, bytes) BN_bn2bin(bn, bytes)
|
||||
#define pq_64bit_get_word(x) BN_get_word(x)
|
||||
#define pq_64bit_is_bit_set(x, offset) BN_is_bit_set(x, offset)
|
||||
#define pq_64bit_lshift(r, x, shift) BN_lshift(r, x, shift)
|
||||
#define pq_64bit_set_bit(x, num) BN_set_bit(x, num)
|
||||
#define pq_64bit_get_length(x) BN_num_bits((x))
|
||||
|
||||
#else
|
||||
|
||||
#define PQ_64BIT_IS_INTEGER 1
|
||||
#define PQ_64BIT_IS_BIGNUM 0
|
||||
|
||||
#if defined(SIXTY_FOUR_BIT)
|
||||
#define PQ_64BIT BN_ULONG
|
||||
#define PQ_64BIT_PRINT "%lld"
|
||||
#elif defined(SIXTY_FOUR_BIT_LONG)
|
||||
#define PQ_64BIT BN_ULONG
|
||||
#define PQ_64BIT_PRINT "%ld"
|
||||
#elif defined(THIRTY_TWO_BIT)
|
||||
#define PQ_64BIT BN_ULLONG
|
||||
#define PQ_64BIT_PRINT "%lld"
|
||||
#endif
|
||||
|
||||
#define PQ_64BIT_CTX void
|
||||
|
||||
#define pq_64bit_init(x)
|
||||
#define pq_64bit_free(x)
|
||||
#define pq_64bit_ctx_new(ctx) (ctx)
|
||||
#define pq_64bit_ctx_free(x)
|
||||
|
||||
#define pq_64bit_assign(x, y) (*(x) = *(y))
|
||||
#define pq_64bit_assign_word(x, y) (*(x) = y)
|
||||
#define pq_64bit_gt(x, y) (*(x) > *(y))
|
||||
#define pq_64bit_eq(x, y) (*(x) == *(y))
|
||||
#define pq_64bit_add_word(x, w) (*(x) = (*(x) + (w)))
|
||||
#define pq_64bit_sub(r, x, y) (*(r) = (*(x) - *(y)))
|
||||
#define pq_64bit_sub_word(x, w) (*(x) = (*(x) - (w)))
|
||||
#define pq_64bit_mod(r, x, n, ctx)
|
||||
|
||||
#define pq_64bit_bin2num(num, bytes, len) bytes_to_long_long(bytes, num)
|
||||
#define pq_64bit_num2bin(num, bytes) long_long_to_bytes(num, bytes)
|
||||
#define pq_64bit_get_word(x) *(x)
|
||||
#define pq_64bit_lshift(r, x, shift) (*(r) = (*(x) << (shift)))
|
||||
#define pq_64bit_set_bit(x, num) do { \
|
||||
PQ_64BIT mask = 1; \
|
||||
mask = mask << (num); \
|
||||
*(x) |= mask; \
|
||||
} while(0)
|
||||
#endif /* OPENSSL_SYS_VMS */
|
@ -68,12 +68,14 @@ typedef struct _pqueue
|
||||
} pqueue_s;
|
||||
|
||||
pitem *
|
||||
pitem_new(BN_ULLONG priority, void *data)
|
||||
pitem_new(PQ_64BIT priority, void *data)
|
||||
{
|
||||
pitem *item = (pitem *) OPENSSL_malloc(sizeof(pitem));
|
||||
if (item == NULL) return NULL;
|
||||
|
||||
item->priority = priority;
|
||||
pq_64bit_init(&(item->priority));
|
||||
pq_64bit_assign(&item->priority, &priority);
|
||||
|
||||
item->data = data;
|
||||
item->next = NULL;
|
||||
|
||||
@ -84,7 +86,8 @@ void
|
||||
pitem_free(pitem *item)
|
||||
{
|
||||
if (item == NULL) return;
|
||||
|
||||
|
||||
pq_64bit_free(&(item->priority));
|
||||
OPENSSL_free(item);
|
||||
}
|
||||
|
||||
@ -121,7 +124,7 @@ pqueue_insert(pqueue_s *pq, pitem *item)
|
||||
next != NULL;
|
||||
curr = next, next = next->next)
|
||||
{
|
||||
if (item->priority < next->priority)
|
||||
if (pq_64bit_gt(&(next->priority), &(item->priority)))
|
||||
{
|
||||
item->next = next;
|
||||
|
||||
@ -133,7 +136,7 @@ pqueue_insert(pqueue_s *pq, pitem *item)
|
||||
return item;
|
||||
}
|
||||
/* duplicates not allowed */
|
||||
if (item->priority == next->priority)
|
||||
if (pq_64bit_eq(&(item->priority), &(next->priority)))
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -161,7 +164,7 @@ pqueue_pop(pqueue_s *pq)
|
||||
}
|
||||
|
||||
pitem *
|
||||
pqueue_find(pqueue_s *pq, BN_ULLONG priority)
|
||||
pqueue_find(pqueue_s *pq, PQ_64BIT priority)
|
||||
{
|
||||
pitem *next, *prev = NULL;
|
||||
pitem *found = NULL;
|
||||
@ -172,7 +175,7 @@ pqueue_find(pqueue_s *pq, BN_ULLONG priority)
|
||||
for ( next = pq->items; next->next != NULL;
|
||||
prev = next, next = next->next)
|
||||
{
|
||||
if ( next->priority == priority)
|
||||
if ( pq_64bit_eq(&(next->priority), &priority))
|
||||
{
|
||||
found = next;
|
||||
break;
|
||||
@ -180,7 +183,7 @@ pqueue_find(pqueue_s *pq, BN_ULLONG priority)
|
||||
}
|
||||
|
||||
/* check the one last node */
|
||||
if ( next->priority == priority)
|
||||
if ( pq_64bit_eq(&(next->priority), &priority))
|
||||
found = next;
|
||||
|
||||
if ( ! found)
|
||||
@ -196,6 +199,7 @@ pqueue_find(pqueue_s *pq, BN_ULLONG priority)
|
||||
return found;
|
||||
}
|
||||
|
||||
#if PQ_64BIT_IS_INTEGER
|
||||
void
|
||||
pqueue_print(pqueue_s *pq)
|
||||
{
|
||||
@ -203,10 +207,11 @@ pqueue_print(pqueue_s *pq)
|
||||
|
||||
while(item != NULL)
|
||||
{
|
||||
printf("item\t%lld\n", item->priority);
|
||||
printf("item\t" PQ_64BIT_PRINT "\n", item->priority);
|
||||
item = item->next;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
pitem *
|
||||
pqueue_iterator(pqueue_s *pq)
|
||||
|
@ -64,18 +64,20 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <openssl/pq_compat.h>
|
||||
|
||||
typedef struct _pqueue *pqueue;
|
||||
|
||||
typedef struct _pitem
|
||||
{
|
||||
BN_ULLONG priority;
|
||||
PQ_64BIT priority;
|
||||
void *data;
|
||||
struct _pitem *next;
|
||||
} pitem;
|
||||
|
||||
typedef struct _pitem *piterator;
|
||||
|
||||
pitem *pitem_new(BN_ULLONG priority, void *data);
|
||||
pitem *pitem_new(PQ_64BIT priority, void *data);
|
||||
void pitem_free(pitem *item);
|
||||
|
||||
pqueue pqueue_new(void);
|
||||
@ -84,7 +86,7 @@ void pqueue_free(pqueue pq);
|
||||
pitem *pqueue_insert(pqueue pq, pitem *item);
|
||||
pitem *pqueue_peek(pqueue pq);
|
||||
pitem *pqueue_pop(pqueue pq);
|
||||
pitem *pqueue_find(pqueue pq, BN_ULLONG priority);
|
||||
pitem *pqueue_find(pqueue pq, PQ_64BIT priority);
|
||||
pitem *pqueue_iterator(pqueue pq);
|
||||
pitem *pqueue_next(piterator *iter);
|
||||
|
||||
|
@ -54,7 +54,11 @@ rx86-out.s: asm/rc4-586.pl ../perlasm/x86asm.pl
|
||||
rc4-x86_64.s: asm/rc4-x86_64.pl; $(PERL) asm/rc4-x86_64.pl $@
|
||||
|
||||
rc4-ia64.s: asm/rc4-ia64.S
|
||||
$(CC) $(CFLAGS) -E asm/rc4-ia64.S > $@
|
||||
@case `awk '/^#define RC4_INT/{print$$NF}' $(TOP)/include/openssl/opensslconf.h` in \
|
||||
int) set -x; $(CC) $(CFLAGS) -DSZ=4 -E asm/rc4-ia64.S > $@ ;; \
|
||||
char) set -x; $(CC) $(CFLAGS) -DSZ=1 -E asm/rc4-ia64.S > $@ ;; \
|
||||
*) exit 1 ;; \
|
||||
esac
|
||||
|
||||
files:
|
||||
$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
|
||||
|
@ -7,7 +7,7 @@
|
||||
// disclaimed.
|
||||
// ====================================================================
|
||||
|
||||
.ident "rc4-ia64.S, Version 1.1"
|
||||
.ident "rc4-ia64.S, Version 2.0"
|
||||
.ident "IA-64 ISA artwork by Andy Polyakov <appro@fy.chalmers.se>"
|
||||
|
||||
// What's wrong with compiler generated code? Because of the nature of
|
||||
@ -27,17 +27,10 @@
|
||||
// Legitimate "collisions" do occur within every 256^2 bytes window.
|
||||
// Fortunately there're enough free instruction slots to keep prior
|
||||
// reference to key[x+1], detect "collision" and compensate for it.
|
||||
// All this without sacrificing a single clock cycle:-)
|
||||
// Furthermore. In order to compress loop body to the minimum, I chose
|
||||
// to deploy deposit instruction, which substitutes for the whole
|
||||
// key->data+((x&255)<<log2(sizeof(key->data[0]))). This unfortunately
|
||||
// requires key->data to be aligned at sizeof(key->data) boundary.
|
||||
// This is why you'll find "RC4_INT pad[512-256-2];" addenum to RC4_KEY
|
||||
// and "d=(RC4_INT *)(((size_t)(d+255))&~(sizeof(key->data)-1));" in
|
||||
// rc4_skey.c [and rc4_enc.c, where it's retained for debugging
|
||||
// purposes]. Throughput is ~210MBps on 900MHz CPU, which is is >3x
|
||||
// faster than gcc generated code and +30% - if compared to HP-UX C.
|
||||
// Unrolling loop below should give >30% on top of that...
|
||||
// All this without sacrificing a single clock cycle:-) Throughput is
|
||||
// ~210MBps on 900MHz CPU, which is is >3x faster than gcc generated
|
||||
// code and +30% - if compared to HP-UX C. Unrolling loop below should
|
||||
// give >30% on top of that...
|
||||
|
||||
.text
|
||||
.explicit
|
||||
@ -48,7 +41,9 @@
|
||||
# define ADDP add
|
||||
#endif
|
||||
|
||||
#ifndef SZ
|
||||
#define SZ 4 // this is set to sizeof(RC4_INT)
|
||||
#endif
|
||||
// SZ==4 seems to be optimal. At least SZ==8 is not any faster, not for
|
||||
// assembler implementation, while SZ==1 code is ~30% slower.
|
||||
#if SZ==1 // RC4_INT is unsigned char
|
||||
@ -101,45 +96,53 @@ RC4:
|
||||
ADDP out=0,in3
|
||||
brp.loop.imp .Ltop,.Lexit-16 };;
|
||||
{ .mmi; LDKEY yy=[key] // load key->y
|
||||
add ksch=(255+1)*SZ,key // as ksch will be used with
|
||||
// deposit instruction only,
|
||||
// I don't have to &~255...
|
||||
add ksch=SZ,key
|
||||
mov ar.lc=in1 }
|
||||
{ .mmi; mov key_y[1]=r0 // guarantee inequality
|
||||
// in first iteration
|
||||
add xx=1,xx
|
||||
mov pr.rot=1<<16 };;
|
||||
{ .mii; nop.m 0
|
||||
dep key_x[1]=xx,ksch,OFF,8
|
||||
dep key_x[1]=xx,r0,OFF,8
|
||||
mov ar.ec=3 };; // note that epilogue counter
|
||||
// is off by 1. I compensate
|
||||
// for this at exit...
|
||||
.Ltop:
|
||||
// The loop is scheduled for 3*(n+2) spin-rate on Itanium 2, which
|
||||
// The loop is scheduled for 4*(n+2) spin-rate on Itanium 2, which
|
||||
// theoretically gives asymptotic performance of clock frequency
|
||||
// divided by 3 bytes per seconds, or 500MBps on 1.5GHz CPU. Measured
|
||||
// performance however is distinctly lower than 1/4:-( The culplrit
|
||||
// seems to be *(out++)=dat, which inadvertently splits the bundle,
|
||||
// even though there is M-port available... Unrolling is due...
|
||||
// Unrolled loop should collect output with variable shift instruction
|
||||
// in order to avoid starvation for integer shifter... It should be
|
||||
// possible to get pretty close to theoretical peak...
|
||||
{ .mmi; (p16) LDKEY tx[0]=[key_x[1]] // tx=key[xx]
|
||||
(p17) LDKEY ty[0]=[key_y[1]] // ty=key[yy]
|
||||
(p18) dep rnd[1]=rnd[1],ksch,OFF,8} // &key[(tx+ty)&255]
|
||||
// divided by 4 bytes per seconds, or 400MBps on 1.6GHz CPU. This is
|
||||
// for sizeof(RC4_INT)==4. For smaller RC4_INT STKEY inadvertently
|
||||
// splits the last bundle and you end up with 5*n spin-rate:-(
|
||||
// Originally the loop was scheduled for 3*n and relied on key
|
||||
// schedule to be aligned at 256*sizeof(RC4_INT) boundary. But
|
||||
// *(out++)=dat, which maps to st1, had same effect [inadvertent
|
||||
// bundle split] and holded the loop back. Rescheduling for 4*n
|
||||
// made it possible to eliminate dependence on specific alignment
|
||||
// and allow OpenSSH keep "abusing" our API. Reaching for 3*n would
|
||||
// require unrolling, sticking to variable shift instruction for
|
||||
// collecting output [to avoid starvation for integer shifter] and
|
||||
// copying of key schedule to controlled place in stack [so that
|
||||
// deposit instruction can serve as substitute for whole
|
||||
// key->data+((x&255)<<log2(sizeof(key->data[0])))]...
|
||||
{ .mmi; (p19) st1 [out]=dat[3],1 // *(out++)=dat
|
||||
(p16) add xx=1,xx // x++
|
||||
(p16) cmp.ne.unc p20,p21=key_x[1],key_y[1] };;
|
||||
(p18) dep rnd[1]=rnd[1],r0,OFF,8 } // ((tx+ty)&255)<<OFF
|
||||
{ .mmi; (p16) add key_x[1]=ksch,key_x[1] // &key[xx&255]
|
||||
(p17) add key_y[1]=ksch,key_y[1] };; // &key[yy&255]
|
||||
{ .mmi; (p16) LDKEY tx[0]=[key_x[1]] // tx=key[xx]
|
||||
(p17) LDKEY ty[0]=[key_y[1]] // ty=key[yy]
|
||||
(p16) dep key_x[0]=xx,r0,OFF,8 } // (xx&255)<<OFF
|
||||
{ .mmi; (p18) add rnd[1]=ksch,rnd[1] // &key[(tx+ty)&255]
|
||||
(p16) cmp.ne.unc p20,p21=key_x[1],key_y[1] };;
|
||||
{ .mmi; (p18) LDKEY rnd[1]=[rnd[1]] // rnd=key[(tx+ty)&255]
|
||||
(p16) ld1 dat[0]=[inp],1 // dat=*(inp++)
|
||||
(p16) dep key_x[0]=xx,ksch,OFF,8 } // &key[xx&255]
|
||||
(p16) ld1 dat[0]=[inp],1 } // dat=*(inp++)
|
||||
.pred.rel "mutex",p20,p21
|
||||
{ .mmi; (p21) add yy=yy,tx[1] // (p16)
|
||||
(p20) add yy=yy,tx[0] // (p16) y+=tx
|
||||
(p21) mov tx[0]=tx[1] };; // (p16)
|
||||
{ .mmi; (p17) STKEY [key_y[1]]=tx[1] // key[yy]=tx
|
||||
(p17) STKEY [key_x[2]]=ty[0] // key[xx]=ty
|
||||
(p16) dep key_y[0]=yy,ksch,OFF,8 } // &key[yy&255]
|
||||
(p16) dep key_y[0]=yy,r0,OFF,8 } // &key[yy&255]
|
||||
{ .mmb; (p17) add rnd[0]=tx[1],ty[0] // tx+=ty
|
||||
(p18) xor dat[2]=dat[2],rnd[1] // dat^=rnd
|
||||
br.ctop.sptk .Ltop };;
|
||||
|
@ -72,10 +72,6 @@ typedef struct rc4_key_st
|
||||
{
|
||||
RC4_INT x,y;
|
||||
RC4_INT data[256];
|
||||
#if defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
/* see crypto/rc4/asm/rc4-ia64.S for further details... */
|
||||
RC4_INT pad[512-256-2];
|
||||
#endif
|
||||
} RC4_KEY;
|
||||
|
||||
|
||||
|
@ -77,10 +77,6 @@ void RC4(RC4_KEY *key, unsigned long len, const unsigned char *indata,
|
||||
x=key->x;
|
||||
y=key->y;
|
||||
d=key->data;
|
||||
#if defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
/* see crypto/rc4/asm/rc4-ia64.S for further details... */
|
||||
d=(RC4_INT *)(((size_t)(d+255))&~(sizeof(key->data)-1));
|
||||
#endif
|
||||
|
||||
#if defined(RC4_CHUNK)
|
||||
/*
|
||||
@ -161,7 +157,7 @@ void RC4(RC4_KEY *key, unsigned long len, const unsigned char *indata,
|
||||
if (!is_endian.little)
|
||||
{ /* BIG-ENDIAN CASE */
|
||||
# define BESHFT(c) (((sizeof(RC4_CHUNK)-(c)-1)*8)&(sizeof(RC4_CHUNK)*8-1))
|
||||
for (;len&-sizeof(RC4_CHUNK);len-=sizeof(RC4_CHUNK))
|
||||
for (;len&~(sizeof(RC4_CHUNK)-1);len-=sizeof(RC4_CHUNK))
|
||||
{
|
||||
ichunk = *(RC4_CHUNK *)indata;
|
||||
otp = RC4_STEP<<BESHFT(0);
|
||||
@ -214,7 +210,7 @@ void RC4(RC4_KEY *key, unsigned long len, const unsigned char *indata,
|
||||
else
|
||||
{ /* LITTLE-ENDIAN CASE */
|
||||
# define LESHFT(c) (((c)*8)&(sizeof(RC4_CHUNK)*8-1))
|
||||
for (;len&-sizeof(RC4_CHUNK);len-=sizeof(RC4_CHUNK))
|
||||
for (;len&~(sizeof(RC4_CHUNK)-1);len-=sizeof(RC4_CHUNK))
|
||||
{
|
||||
ichunk = *(RC4_CHUNK *)indata;
|
||||
otp = RC4_STEP;
|
||||
|
@ -93,10 +93,6 @@ void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data)
|
||||
unsigned int i;
|
||||
|
||||
d= &(key->data[0]);
|
||||
#if defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
/* see crypto/rc4/asm/rc4-ia64.S for further details... */
|
||||
d=(RC4_INT *)(((size_t)(d+255))&~(sizeof(key->data)-1));
|
||||
#endif
|
||||
key->x = 0;
|
||||
key->y = 0;
|
||||
id1=id2=0;
|
||||
|
@ -72,7 +72,9 @@
|
||||
*/
|
||||
#ifdef RMD160_ASM
|
||||
# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
|
||||
# define ripemd160_block_host_order ripemd160_block_asm_host_order
|
||||
# if !defined(B_ENDIAN)
|
||||
# define ripemd160_block_host_order ripemd160_block_asm_host_order
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
@ -80,7 +82,9 @@ void ripemd160_block_host_order (RIPEMD160_CTX *c, const void *p,size_t num);
|
||||
void ripemd160_block_data_order (RIPEMD160_CTX *c, const void *p,size_t num);
|
||||
|
||||
#if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
|
||||
#define ripemd160_block_data_order ripemd160_block_host_order
|
||||
# if !defined(B_ENDIAN)
|
||||
# define ripemd160_block_data_order ripemd160_block_host_order
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||
|
@ -179,6 +179,17 @@ rsa_pk1.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
rsa_pk1.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h
|
||||
rsa_pk1.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
rsa_pk1.o: ../../include/openssl/symhacks.h ../cryptlib.h rsa_pk1.c
|
||||
rsa_pss.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
rsa_pss.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
|
||||
rsa_pss.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
rsa_pss.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
rsa_pss.o: ../../include/openssl/evp.h ../../include/openssl/lhash.h
|
||||
rsa_pss.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
|
||||
rsa_pss.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
|
||||
rsa_pss.o: ../../include/openssl/ossl_typ.h ../../include/openssl/rand.h
|
||||
rsa_pss.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
|
||||
rsa_pss.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
|
||||
rsa_pss.o: ../../include/openssl/symhacks.h ../cryptlib.h rsa_pss.c
|
||||
rsa_saos.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
rsa_saos.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
|
||||
rsa_saos.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
@ -216,3 +227,13 @@ rsa_ssl.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
rsa_ssl.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h
|
||||
rsa_ssl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
rsa_ssl.o: ../../include/openssl/symhacks.h ../cryptlib.h rsa_ssl.c
|
||||
rsa_x931.o: ../../e_os.h ../../include/openssl/asn1.h
|
||||
rsa_x931.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
|
||||
rsa_x931.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
|
||||
rsa_x931.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
|
||||
rsa_x931.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
|
||||
rsa_x931.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
|
||||
rsa_x931.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
|
||||
rsa_x931.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h
|
||||
rsa_x931.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
|
||||
rsa_x931.o: ../../include/openssl/symhacks.h ../cryptlib.h rsa_x931.c
|
||||
|
@ -320,6 +320,12 @@ int RSA_padding_check_X931(unsigned char *to,int tlen,
|
||||
const unsigned char *f,int fl,int rsa_len);
|
||||
int RSA_X931_hash_id(int nid);
|
||||
|
||||
int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
|
||||
const EVP_MD *Hash, const unsigned char *EM, int sLen);
|
||||
int RSA_padding_add_PKCS1_PSS(RSA *rsa, unsigned char *EM,
|
||||
const unsigned char *mHash,
|
||||
const EVP_MD *Hash, int sLen);
|
||||
|
||||
int RSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
|
||||
CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
|
||||
int RSA_set_ex_data(RSA *r,int idx,void *arg);
|
||||
@ -405,7 +411,7 @@ void ERR_load_RSA_strings(void);
|
||||
#define RSA_R_NULL_BEFORE_BLOCK_MISSING 113
|
||||
#define RSA_R_N_DOES_NOT_EQUAL_P_Q 127
|
||||
#define RSA_R_OAEP_DECODING_ERROR 121
|
||||
#define RSA_R_ONE_CHECK_FAILED 135
|
||||
#define RSA_R_SLEN_RECOVERY_FAILED 135
|
||||
#define RSA_R_PADDING_CHECK_FAILED 114
|
||||
#define RSA_R_P_NOT_PRIME 128
|
||||
#define RSA_R_Q_NOT_PRIME 129
|
||||
@ -415,7 +421,7 @@ void ERR_load_RSA_strings(void);
|
||||
#define RSA_R_UNKNOWN_ALGORITHM_TYPE 117
|
||||
#define RSA_R_UNKNOWN_PADDING_TYPE 118
|
||||
#define RSA_R_WRONG_SIGNATURE_LENGTH 119
|
||||
#define RSA_R_ZERO_CHECK_FAILED 136
|
||||
#define RSA_R_SLEN_CHECK_FAILED 136
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -141,7 +141,7 @@ static ERR_STRING_DATA RSA_str_reasons[]=
|
||||
{ERR_REASON(RSA_R_NULL_BEFORE_BLOCK_MISSING),"null before block missing"},
|
||||
{ERR_REASON(RSA_R_N_DOES_NOT_EQUAL_P_Q) ,"n does not equal p q"},
|
||||
{ERR_REASON(RSA_R_OAEP_DECODING_ERROR) ,"oaep decoding error"},
|
||||
{ERR_REASON(RSA_R_ONE_CHECK_FAILED) ,"one check failed"},
|
||||
{ERR_REASON(RSA_R_SLEN_RECOVERY_FAILED) ,"salt length recovery failed"},
|
||||
{ERR_REASON(RSA_R_PADDING_CHECK_FAILED) ,"padding check failed"},
|
||||
{ERR_REASON(RSA_R_P_NOT_PRIME) ,"p not prime"},
|
||||
{ERR_REASON(RSA_R_Q_NOT_PRIME) ,"q not prime"},
|
||||
@ -151,7 +151,7 @@ static ERR_STRING_DATA RSA_str_reasons[]=
|
||||
{ERR_REASON(RSA_R_UNKNOWN_ALGORITHM_TYPE),"unknown algorithm type"},
|
||||
{ERR_REASON(RSA_R_UNKNOWN_PADDING_TYPE) ,"unknown padding type"},
|
||||
{ERR_REASON(RSA_R_WRONG_SIGNATURE_LENGTH),"wrong signature length"},
|
||||
{ERR_REASON(RSA_R_ZERO_CHECK_FAILED) ,"zero check failed"},
|
||||
{ERR_REASON(RSA_R_SLEN_CHECK_FAILED) ,"salt length check failed"},
|
||||
{0,NULL}
|
||||
};
|
||||
|
||||
|
@ -402,6 +402,11 @@ BN_BLINDING *RSA_setup_blinding(RSA *rsa, BN_CTX *in_ctx)
|
||||
|
||||
ret = BN_BLINDING_create_param(NULL, e, rsa->n, ctx,
|
||||
rsa->meth->bn_mod_exp, rsa->_method_mod_n);
|
||||
if (ret == NULL)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_SETUP_BLINDING, ERR_R_BN_LIB);
|
||||
goto err;
|
||||
}
|
||||
BN_BLINDING_set_thread_id(ret, CRYPTO_thread_id());
|
||||
err:
|
||||
BN_CTX_end(ctx);
|
||||
|
@ -71,15 +71,40 @@ int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
|
||||
{
|
||||
int i;
|
||||
int ret = 0;
|
||||
int hLen, maskedDBLen, emBits, emLen;
|
||||
int hLen, maskedDBLen, MSBits, emLen;
|
||||
const unsigned char *H;
|
||||
unsigned char *DB = NULL;
|
||||
EVP_MD_CTX ctx;
|
||||
unsigned char H_[EVP_MAX_MD_SIZE];
|
||||
emBits = BN_num_bits(rsa->n) - 1;
|
||||
emLen = (emBits + 7) >> 3;
|
||||
|
||||
hLen = EVP_MD_size(Hash);
|
||||
if (emLen < (hLen + sLen + 2))
|
||||
/*
|
||||
* Negative sLen has special meanings:
|
||||
* -1 sLen == hLen
|
||||
* -2 salt length is autorecovered from signature
|
||||
* -N reserved
|
||||
*/
|
||||
if (sLen == -1) sLen = hLen;
|
||||
else if (sLen == -2) sLen = -2;
|
||||
else if (sLen < -2)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_SLEN_CHECK_FAILED);
|
||||
goto err;
|
||||
}
|
||||
|
||||
MSBits = (BN_num_bits(rsa->n) - 1) & 0x7;
|
||||
emLen = RSA_size(rsa);
|
||||
if (EM[0] & (0xFF << MSBits))
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_FIRST_OCTET_INVALID);
|
||||
goto err;
|
||||
}
|
||||
if (MSBits == 0)
|
||||
{
|
||||
EM++;
|
||||
emLen--;
|
||||
}
|
||||
if (emLen < (hLen + sLen + 2)) /* sLen can be small negative */
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_DATA_TOO_LARGE);
|
||||
goto err;
|
||||
@ -89,11 +114,6 @@ int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_LAST_OCTET_INVALID);
|
||||
goto err;
|
||||
}
|
||||
if (EM[0] & (0xFF << (emBits & 0x7)))
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_FIRST_OCTET_INVALID);
|
||||
goto err;
|
||||
}
|
||||
maskedDBLen = emLen - hLen - 1;
|
||||
H = EM + maskedDBLen;
|
||||
DB = OPENSSL_malloc(maskedDBLen);
|
||||
@ -105,27 +125,25 @@ int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
|
||||
PKCS1_MGF1(DB, maskedDBLen, H, hLen, Hash);
|
||||
for (i = 0; i < maskedDBLen; i++)
|
||||
DB[i] ^= EM[i];
|
||||
DB[0] &= 0xFF >> (8 - (emBits & 0x7));
|
||||
for (i = 0; i < (emLen - hLen - sLen - 2); i++)
|
||||
if (MSBits)
|
||||
DB[0] &= 0xFF >> (8 - MSBits);
|
||||
for (i = 0; DB[i] == 0 && i < (maskedDBLen-1); i++) ;
|
||||
if (DB[i++] != 0x1)
|
||||
{
|
||||
if (DB[i] != 0)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS,
|
||||
RSA_R_ZERO_CHECK_FAILED);
|
||||
goto err;
|
||||
}
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_SLEN_RECOVERY_FAILED);
|
||||
goto err;
|
||||
}
|
||||
if (DB[i] != 0x1)
|
||||
if (sLen >= 0 && (maskedDBLen - i) != sLen)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_ONE_CHECK_FAILED);
|
||||
RSAerr(RSA_F_RSA_VERIFY_PKCS1_PSS, RSA_R_SLEN_CHECK_FAILED);
|
||||
goto err;
|
||||
}
|
||||
EVP_MD_CTX_init(&ctx);
|
||||
EVP_DigestInit_ex(&ctx, Hash, NULL);
|
||||
EVP_DigestUpdate(&ctx, zeroes, sizeof zeroes);
|
||||
EVP_DigestUpdate(&ctx, mHash, hLen);
|
||||
if (sLen)
|
||||
EVP_DigestUpdate(&ctx, DB + maskedDBLen - sLen, sLen);
|
||||
if (maskedDBLen - i)
|
||||
EVP_DigestUpdate(&ctx, DB + i, maskedDBLen - i);
|
||||
EVP_DigestFinal(&ctx, H_, NULL);
|
||||
EVP_MD_CTX_cleanup(&ctx);
|
||||
if (memcmp(H_, H, hLen))
|
||||
@ -150,15 +168,37 @@ int RSA_padding_add_PKCS1_PSS(RSA *rsa, unsigned char *EM,
|
||||
{
|
||||
int i;
|
||||
int ret = 0;
|
||||
int hLen, maskedDBLen, emBits, emLen;
|
||||
int hLen, maskedDBLen, MSBits, emLen;
|
||||
unsigned char *H, *salt = NULL, *p;
|
||||
EVP_MD_CTX ctx;
|
||||
emBits = BN_num_bits(rsa->n) - 1;
|
||||
emLen = (emBits + 7) >> 3;
|
||||
|
||||
hLen = EVP_MD_size(Hash);
|
||||
if (sLen < 0)
|
||||
sLen = 0;
|
||||
if (emLen < (hLen + sLen + 2))
|
||||
/*
|
||||
* Negative sLen has special meanings:
|
||||
* -1 sLen == hLen
|
||||
* -2 salt length is maximized
|
||||
* -N reserved
|
||||
*/
|
||||
if (sLen == -1) sLen = hLen;
|
||||
else if (sLen == -2) sLen = -2;
|
||||
else if (sLen < -2)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_PADDING_ADD_PKCS1_PSS, RSA_R_SLEN_CHECK_FAILED);
|
||||
goto err;
|
||||
}
|
||||
|
||||
MSBits = (BN_num_bits(rsa->n) - 1) & 0x7;
|
||||
emLen = RSA_size(rsa);
|
||||
if (MSBits == 0)
|
||||
{
|
||||
*EM++ = 0;
|
||||
emLen--;
|
||||
}
|
||||
if (sLen == -2)
|
||||
{
|
||||
sLen = emLen - hLen - 2;
|
||||
}
|
||||
else if (emLen < (hLen + sLen + 2))
|
||||
{
|
||||
RSAerr(RSA_F_RSA_PADDING_ADD_PKCS1_PSS,
|
||||
RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE);
|
||||
@ -203,7 +243,8 @@ int RSA_padding_add_PKCS1_PSS(RSA *rsa, unsigned char *EM,
|
||||
for (i = 0; i < sLen; i++)
|
||||
*p++ ^= salt[i];
|
||||
}
|
||||
EM[0] &= 0xFF >> (8 - (emBits & 0x7));
|
||||
if (MSBits)
|
||||
EM[0] &= 0xFF >> (8 - MSBits);
|
||||
|
||||
/* H is already in place so just set final 0xbc */
|
||||
|
||||
|
@ -105,7 +105,7 @@ int RSA_padding_add_X931(unsigned char *to, int tlen,
|
||||
int RSA_padding_check_X931(unsigned char *to, int tlen,
|
||||
const unsigned char *from, int flen, int num)
|
||||
{
|
||||
int i,j;
|
||||
int i = 0,j;
|
||||
const unsigned char *p;
|
||||
|
||||
p=from;
|
||||
@ -115,9 +115,9 @@ int RSA_padding_check_X931(unsigned char *to, int tlen,
|
||||
return -1;
|
||||
}
|
||||
|
||||
j=flen-3;
|
||||
if (*p++ == 0x6B)
|
||||
{
|
||||
j=flen-3;
|
||||
for (i = 0; i < j; i++)
|
||||
{
|
||||
unsigned char c = *p++;
|
||||
@ -130,15 +130,17 @@ int RSA_padding_check_X931(unsigned char *to, int tlen,
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
j -= i;
|
||||
j -= i;
|
||||
|
||||
if (i == 0)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_PADDING_CHECK_X931, RSA_R_INVALID_PADDING);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (i == 0)
|
||||
{
|
||||
RSAerr(RSA_F_RSA_PADDING_CHECK_X931, RSA_R_INVALID_PADDING);
|
||||
return -1;
|
||||
}
|
||||
else j = flen - 2;
|
||||
|
||||
if (p[j] != 0xCC)
|
||||
{
|
||||
|
@ -56,6 +56,7 @@
|
||||
* [including the GNU Public Licence.]
|
||||
*/
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#if !defined(OPENSSL_NO_SHA1) && !defined(OPENSSL_NO_SHA)
|
||||
|
||||
#undef SHA_0
|
||||
|
@ -4,12 +4,12 @@
|
||||
* according to the OpenSSL license [found in ../../LICENSE].
|
||||
* ====================================================================
|
||||
*/
|
||||
#include <openssl/opensslconf.h>
|
||||
#if !defined(OPENSSL_NO_SHA) && !defined(OPENSSL_NO_SHA256)
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#include <openssl/crypto.h>
|
||||
#include <openssl/sha.h>
|
||||
#include <openssl/opensslv.h>
|
||||
|
@ -4,6 +4,7 @@
|
||||
* according to the OpenSSL license [found in ../../LICENSE].
|
||||
* ====================================================================
|
||||
*/
|
||||
#include <openssl/opensslconf.h>
|
||||
#if !defined(OPENSSL_NO_SHA) && !defined(OPENSSL_NO_SHA512)
|
||||
/*
|
||||
* IMPLEMENTATION NOTES.
|
||||
@ -43,7 +44,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#include <openssl/crypto.h>
|
||||
#include <openssl/sha.h>
|
||||
#include <openssl/opensslv.h>
|
||||
|
@ -56,6 +56,7 @@
|
||||
* [including the GNU Public Licence.]
|
||||
*/
|
||||
|
||||
#include <openssl/opensslconf.h>
|
||||
#if !defined(OPENSSL_NO_SHA0) && !defined(OPENSSL_NO_SHA)
|
||||
|
||||
#undef SHA_1
|
||||
|
@ -115,17 +115,19 @@
|
||||
# endif
|
||||
|
||||
# ifdef SHA1_ASM
|
||||
# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
|
||||
# define sha1_block_host_order sha1_block_asm_host_order
|
||||
# define DONT_IMPLEMENT_BLOCK_HOST_ORDER
|
||||
# define sha1_block_data_order sha1_block_asm_data_order
|
||||
# define DONT_IMPLEMENT_BLOCK_DATA_ORDER
|
||||
# define HASH_BLOCK_DATA_ORDER_ALIGNED sha1_block_asm_data_order
|
||||
# elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
# define sha1_block_host_order sha1_block_asm_host_order
|
||||
# define DONT_IMPLEMENT_BLOCK_HOST_ORDER
|
||||
# define sha1_block_data_order sha1_block_asm_data_order
|
||||
# define DONT_IMPLEMENT_BLOCK_DATA_ORDER
|
||||
# if !defined(B_ENDIAN)
|
||||
# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
|
||||
# define sha1_block_host_order sha1_block_asm_host_order
|
||||
# define DONT_IMPLEMENT_BLOCK_HOST_ORDER
|
||||
# define sha1_block_data_order sha1_block_asm_data_order
|
||||
# define DONT_IMPLEMENT_BLOCK_DATA_ORDER
|
||||
# define HASH_BLOCK_DATA_ORDER_ALIGNED sha1_block_asm_data_order
|
||||
# elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
|
||||
# define sha1_block_host_order sha1_block_asm_host_order
|
||||
# define DONT_IMPLEMENT_BLOCK_HOST_ORDER
|
||||
# define sha1_block_data_order sha1_block_asm_data_order
|
||||
# define DONT_IMPLEMENT_BLOCK_DATA_ORDER
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
void sha1_block_host_order (SHA_CTX *c, const void *p,size_t num);
|
||||
|
@ -59,7 +59,9 @@
|
||||
#include <string.h>
|
||||
#include <openssl/bn.h>
|
||||
#include <openssl/err.h>
|
||||
#ifndef OPENSSL_NO_ENGINE
|
||||
#include <openssl/engine.h>
|
||||
#endif
|
||||
#include <openssl/sha.h>
|
||||
#include <openssl/x509.h>
|
||||
#include "str_locl.h"
|
||||
|
@ -114,7 +114,7 @@ static int dir_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl,
|
||||
{
|
||||
int ret=0;
|
||||
BY_DIR *ld;
|
||||
char *dir;
|
||||
char *dir = NULL;
|
||||
|
||||
ld=(BY_DIR *)ctx->method_data;
|
||||
|
||||
@ -123,17 +123,16 @@ static int dir_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl,
|
||||
case X509_L_ADD_DIR:
|
||||
if (argl == X509_FILETYPE_DEFAULT)
|
||||
{
|
||||
ret=add_cert_dir(ld,X509_get_default_cert_dir(),
|
||||
X509_FILETYPE_PEM);
|
||||
dir=(char *)Getenv(X509_get_default_cert_dir_env());
|
||||
if (dir)
|
||||
ret=add_cert_dir(ld,dir,X509_FILETYPE_PEM);
|
||||
else
|
||||
ret=add_cert_dir(ld,X509_get_default_cert_dir(),
|
||||
X509_FILETYPE_PEM);
|
||||
if (!ret)
|
||||
{
|
||||
X509err(X509_F_DIR_CTRL,X509_R_LOADING_CERT_DIR);
|
||||
}
|
||||
else
|
||||
{
|
||||
dir=(char *)Getenv(X509_get_default_cert_dir_env());
|
||||
ret=add_cert_dir(ld,dir,X509_FILETYPE_PEM);
|
||||
}
|
||||
}
|
||||
else
|
||||
ret=add_cert_dir(ld,argp,(int)argl);
|
||||
|
@ -1081,7 +1081,7 @@ int X509_cmp_time(ASN1_TIME *ctm, time_t *cmp_time)
|
||||
offset=0;
|
||||
else
|
||||
{
|
||||
if ((*str != '+') && (str[5] != '-'))
|
||||
if ((*str != '+') && (*str != '-'))
|
||||
return 0;
|
||||
offset=((str[1]-'0')*10+(str[2]-'0'))*60;
|
||||
offset+=(str[3]-'0')*10+(str[4]-'0');
|
||||
|
@ -113,8 +113,8 @@ static X509V3_EXT_METHOD *standard_exts[] = {
|
||||
&v3_crl_hold,
|
||||
#endif
|
||||
&v3_pci,
|
||||
&v3_policy_mappings,
|
||||
&v3_name_constraints,
|
||||
&v3_policy_mappings,
|
||||
&v3_inhibit_anyp
|
||||
};
|
||||
|
||||
|
@ -70,8 +70,8 @@ print<<___ if(!defined($win64a));
|
||||
.align 16
|
||||
OPENSSL_rdtsc:
|
||||
rdtsc
|
||||
shl \$32,%rdx
|
||||
or %rdx,%rax
|
||||
shlq \$32,%rdx
|
||||
orq %rdx,%rax
|
||||
ret
|
||||
.size OPENSSL_rdtsc,.-OPENSSL_rdtsc
|
||||
|
||||
@ -80,11 +80,11 @@ OPENSSL_rdtsc:
|
||||
.align 16
|
||||
OPENSSL_atomic_add:
|
||||
movl (%rdi),%eax
|
||||
.Lspin: lea (%rsi,%rax),%r8
|
||||
lock; cmpxchg %r8d,(%rdi)
|
||||
.Lspin: leaq (%rsi,%rax),%r8
|
||||
lock; cmpxchgl %r8d,(%rdi)
|
||||
jne .Lspin
|
||||
mov %r8d,%eax
|
||||
cdqe
|
||||
movl %r8d,%eax
|
||||
.byte 0x48,0x98
|
||||
ret
|
||||
.size OPENSSL_atomic_add,.-OPENSSL_atomic_add
|
||||
|
||||
@ -108,28 +108,28 @@ OPENSSL_wipe_cpu:
|
||||
pxor %xmm13,%xmm13
|
||||
pxor %xmm14,%xmm14
|
||||
pxor %xmm15,%xmm15
|
||||
xor %rcx,%rcx
|
||||
xor %rdx,%rdx
|
||||
xor %rsi,%rsi
|
||||
xor %rdi,%rdi
|
||||
xor %r8,%r8
|
||||
xor %r9,%r9
|
||||
xor %r10,%r10
|
||||
xor %r11,%r11
|
||||
lea 8(%rsp),%rax
|
||||
xorq %rcx,%rcx
|
||||
xorq %rdx,%rdx
|
||||
xorq %rsi,%rsi
|
||||
xorq %rdi,%rdi
|
||||
xorq %r8,%r8
|
||||
xorq %r9,%r9
|
||||
xorq %r10,%r10
|
||||
xorq %r11,%r11
|
||||
leaq 8(%rsp),%rax
|
||||
ret
|
||||
.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu
|
||||
|
||||
.globl OPENSSL_ia32_cpuid
|
||||
.align 16
|
||||
OPENSSL_ia32_cpuid:
|
||||
mov %rbx,%r8
|
||||
mov \$1,%eax
|
||||
movq %rbx,%r8
|
||||
movl \$1,%eax
|
||||
cpuid
|
||||
shl \$32,%rcx
|
||||
mov %edx,%eax
|
||||
mov %r8,%rbx
|
||||
or %rcx,%rax
|
||||
shlq \$32,%rcx
|
||||
movl %edx,%eax
|
||||
movq %r8,%rbx
|
||||
orq %rcx,%rax
|
||||
ret
|
||||
.size OPENSSL_ia32_cpuid,.-OPENSSL_ia32_cpuid
|
||||
|
||||
|
@ -130,9 +130,8 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); }
|
||||
&pxor ("xmm7","xmm7");
|
||||
&set_label("no_sse2");
|
||||
}
|
||||
# just a bunch of fldz to zap the fp/mm bank...
|
||||
&data_word(0xeed9eed9,0xeed9eed9,0xeed9eed9,0xeed9eed9);
|
||||
&emms ();
|
||||
# just a bunch of fldz to zap the fp/mm bank followed by finit...
|
||||
&data_word(0xeed9eed9,0xeed9eed9,0xeed9eed9,0xeed9eed9,0x90e3db9b);
|
||||
&set_label("no_x87");
|
||||
&lea ("eax",&DWP(4,"esp"));
|
||||
&ret ();
|
||||
|
@ -211,9 +211,9 @@ Blowfish and RC5 algorithms use a 128 bit key.
|
||||
|
||||
rc2-cbc 128 bit RC2 in CBC mode
|
||||
rc2 Alias for rc2-cbc
|
||||
rc2-cfb 128 bit RC2 in CBC mode
|
||||
rc2-ecb 128 bit RC2 in CBC mode
|
||||
rc2-ofb 128 bit RC2 in CBC mode
|
||||
rc2-cfb 128 bit RC2 in CFB mode
|
||||
rc2-ecb 128 bit RC2 in ECB mode
|
||||
rc2-ofb 128 bit RC2 in OFB mode
|
||||
rc2-64-cbc 64 bit RC2 in CBC mode
|
||||
rc2-40-cbc 40 bit RC2 in CBC mode
|
||||
|
||||
@ -223,9 +223,9 @@ Blowfish and RC5 algorithms use a 128 bit key.
|
||||
|
||||
rc5-cbc RC5 cipher in CBC mode
|
||||
rc5 Alias for rc5-cbc
|
||||
rc5-cfb RC5 cipher in CBC mode
|
||||
rc5-ecb RC5 cipher in CBC mode
|
||||
rc5-ofb RC5 cipher in CBC mode
|
||||
rc5-cfb RC5 cipher in CFB mode
|
||||
rc5-ecb RC5 cipher in ECB mode
|
||||
rc5-ofb RC5 cipher in OFB mode
|
||||
|
||||
=head1 EXAMPLES
|
||||
|
||||
|
@ -442,8 +442,8 @@ will only recognize the last value. This can be worked around by using the form:
|
||||
|
||||
The X509v3 extension code was first added to OpenSSL 0.9.2.
|
||||
|
||||
Policy mappings, name constraints, inhibit any policy and name
|
||||
constraints support was added in OpenSSL 0.9.8
|
||||
Policy mappings, inhibit any policy and name constraints support was added in
|
||||
OpenSSL 0.9.8
|
||||
|
||||
The B<directoryName> and B<otherName> option as well as the B<ASN1> option
|
||||
for arbitrary extensions was added in OpenSSL 0.9.8
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
=head1 NAME
|
||||
|
||||
OPENSSL_Applink
|
||||
OPENSSL_Applink - glue between OpenSSL BIO and Win32 compiler run-time
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
|
@ -35,7 +35,7 @@ calls OPENSSL_add_all_algorithms() by compiling an application with the
|
||||
preprocessor symbol B<OPENSSL_LOAD_CONF> #define'd. In this way configuration
|
||||
can be added without source changes.
|
||||
|
||||
The environment variable B<OPENSSL_CONFIG> can be set to specify the location
|
||||
The environment variable B<OPENSSL_CONF> can be set to specify the location
|
||||
of the configuration file.
|
||||
|
||||
Currently ASN1 OBJECTs and ENGINE configuration can be performed future
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
=head1 NAME
|
||||
|
||||
OPENSSL_ia32cap
|
||||
OPENSSL_ia32cap - finding the IA-32 processor capabilities
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user