components/openssl/openssl-1.0.0/patches/openssl-1.0.0d-aesni-v4.i386-patch
branchs11-update
changeset 2593 b92e6df5eaf0
parent 2592 a7d8d41eeab2
child 2594 27f414f634e9
--- a/components/openssl/openssl-1.0.0/patches/openssl-1.0.0d-aesni-v4.i386-patch	Fri May 03 15:46:38 2013 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-#
-# Engine aesni patch openssl-1.0.0d-aesni-v4.i386-patch.
-# openssl-1.0.0-aesni-v4.patch updated for openssl-1.0.0d.
-# This engine is X86-only.
-#
-Index: Configure
-===================================================================
-diff -ru openssl-1.0.0d/Configure openssl-1.0.0d/Configure
---- openssl-1.0.0d/Configure	2010-11-30 14:19:26.000000000 -0800
-+++ openssl-1.0.0d/Configure	2011-05-20 10:32:38.598770000 -0700
-@@ -123,11 +123,11 @@
- my $bits1="THIRTY_TWO_BIT ";
- my $bits2="SIXTY_FOUR_BIT ";
- 
--my $x86_asm="x86cpuid.o:bn-586.o co-586.o x86-mont.o:des-586.o crypt586.o:aes-586.o:bf-586.o:md5-586.o:sha1-586.o sha256-586.o sha512-586.o:cast-586.o:rc4-586.o:rmd-586.o:rc5-586.o:wp_block.o wp-mmx.o:cmll-x86.o";
-+my $x86_asm="x86cpuid.o:bn-586.o co-586.o x86-mont.o:des-586.o crypt586.o:aes-586.o aesni-x86.o:bf-586.o:md5-586.o:sha1-586.o sha256-586.o sha512-586.o:cast-586.o:rc4-586.o:rmd-586.o:rc5-586.o:wp_block.o wp-mmx.o:cmll-x86.o";
- 
- my $x86_elf_asm="$x86_asm:elf";
- 
--my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o";
-+my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o aesni-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o";
- my $ia64_asm="ia64cpuid.o:bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o:::::void";
- my $sparcv9_asm="sparcv9cap.o sparccpuid.o:bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o:des_enc-sparc.o fcrypt_b.o:aes_core.o aes_cbc.o aes-sparcv9.o:::sha1-sparcv9.o sha256-sparcv9.o sha512-sparcv9.o:::::::void";
- my $sparcv8_asm=":sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::::void";
-@@ -491,7 +491,7 @@
- #
- # Win64 targets, WIN64I denotes IA-64 and WIN64A - AMD64
- "VC-WIN64I","cl:-W3 -Gs0 -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64I::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:ia64cpuid.o:ia64.o::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o:::::::ias:win32",
--"VC-WIN64A","cl:-W3 -Gs0 -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64A::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:x86_64cpuid.o:bn_asm.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o:auto:win32",
-+"VC-WIN64A","cl:-W3 -Gs0 -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64A::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:x86_64cpuid.o:bn_asm.o x86_64-mont.o::aes-x86_64.o aesni-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o:auto:win32",
- "debug-VC-WIN64I","cl:-W3 -Gs0 -Gy -Zi -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64I::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:ia64cpuid.o:ia64.o::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o:::::::ias:win32",
- "debug-VC-WIN64A","cl:-W3 -Gs0 -Gy -Zi -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64A::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:x86_64cpuid.o:bn_asm.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o:auto:win32",
- # x86 Win32 target defaults to ANSI API, if you want UNICODE, complement
-@@ -1410,6 +1410,7 @@
- if ($aes_obj =~ /\.o$/)
- 	{
- 	$cflags.=" -DAES_ASM";
-+	$aes_obj =~ s/\s*aesni\-x86\.o// if ($no_sse2);
- 	}
- else	{
- 	$aes_obj=$aes_enc;
-Index: crypto/aes/Makefile
-===================================================================
-diff -ru openssl-1.0.0d/crypto/aes/Makefile openssl-1.0.0d/crypto/aes/Makefile
---- openssl-1.0.0d/crypto/aes/Makefile	2008-12-23 03:33:00.000000000 -0800
-+++ openssl-1.0.0d/crypto/aes/Makefile	2011-06-30 16:52:09.000000000 -0700
-@@ -50,9 +50,16 @@
- 
- aes-586.s:	asm/aes-586.pl ../perlasm/x86asm.pl
- 	$(PERL) asm/aes-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
-+aesni-x86.s:	asm/aesni-x86.pl ../perlasm/x86asm.pl
-+	$(PERL) asm/aesni-x86.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
-+aesni-x86.o:	aesni-x86.s
-+	$(CC) $(CFLAGS) -o $@ -c $<
-+	elfedit -e 'cap:hw1 -and -cmp aes' $@
- 
- aes-x86_64.s: asm/aes-x86_64.pl
- 	$(PERL) asm/aes-x86_64.pl $(PERLASM_SCHEME) > $@
-+aesni-x86_64.s: asm/aesni-x86_64.pl
-+	$(PERL) asm/aesni-x86_64.pl $(PERLASM_SCHEME) > $@
- 
- aes-sparcv9.s: asm/aes-sparcv9.pl
- 	$(PERL) asm/aes-sparcv9.pl $(CFLAGS) > $@
-Index: crypto/engine/Makefile
-===================================================================
-diff -ru openssl-1.0.0d/crypto/engine/Makefile openssl-1.0.0d/crypto/engine/Makefile
---- openssl-1.0.0d/crypto/engine/Makefile	2010-12-02 10:26:11.000000000 -0800
-+++ openssl-1.0.0d/crypto/engine/Makefile	2011-05-20 10:37:14.716792000 -0700
-@@ -22,6 +22,7 @@
- 	tb_rsa.c tb_dsa.c tb_ecdsa.c tb_dh.c tb_ecdh.c tb_rand.c tb_store.c \
- 	tb_cipher.c tb_digest.c tb_pkmeth.c tb_asnmth.c \
- 	eng_openssl.c eng_cnf.c eng_dyn.c eng_cryptodev.c \
-+	eng_aesni.c \
- 	hw_pk11.c hw_pk11_pub.c hw_pk11_uri.c
- LIBOBJ= eng_err.o eng_lib.o eng_list.o eng_init.o eng_ctrl.o \
- 	eng_table.o eng_pkey.o eng_fat.o eng_all.o \
-@@ -28,6 +29,7 @@
- 	tb_rsa.o tb_dsa.o tb_ecdsa.o tb_dh.o tb_ecdh.o tb_rand.o tb_store.o \
- 	tb_cipher.o tb_digest.o tb_pkmeth.o tb_asnmth.o \
- 	eng_openssl.o eng_cnf.o eng_dyn.o eng_cryptodev.o \
-+	eng_aesni.o \
- 	hw_pk11.o hw_pk11_pub.o hw_pk11_uri.o
- 
- SRC= $(LIBSRC)
-Index: crypto/engine/eng_all.c
-===================================================================
-diff -ru openssl-1.0.0d/crypto/engine/eng_all.c openssl-1.0.0d/crypto/engine/eng_all.c
---- openssl-1.0.0d/crypto/engine/eng_all.c	2009-07-01 07:55:58.000000000 -0700
-+++ openssl-1.0.0d/crypto/engine/eng_all.c	2011-06-22 17:34:25.145829355 -0700
-@@ -61,6 +61,8 @@
- 
- void ENGINE_load_builtin_engines(void)
- 	{
-+	/* Engines may depend on CPU capabilities */
-+	OPENSSL_cpuid_setup();
- #if 0
- 	/* There's no longer any need for an "openssl" ENGINE unless, one day,
- 	 * it is the *only* way for standard builtin implementations to be be
-@@ -71,6 +73,10 @@
- #if !defined(OPENSSL_NO_HW) && (defined(__OpenBSD__) || defined(__FreeBSD__) || defined(HAVE_CRYPTODEV))
- 	ENGINE_load_cryptodev();
- #endif
-+#if !defined(OPENSSL_NO_HW) && !defined(OPENSSL_NO_HW_AESNI)
-+	ENGINE_load_aesni();
-+	ENGINE_register_all_complete();
-+#endif
- 	ENGINE_load_dynamic();
- #ifndef OPENSSL_NO_HW_PKCS11
- 	ENGINE_load_pk11();
-Index: crypto/engine/engine.h
-===================================================================
-diff -ru openssl-1.0.0d/crypto/engine/engine.h openssl-1.0.0d/crypto/engine/engine.h
---- openssl-1.0.0d/crypto/engine/engine.h	2011-01-29 17:05:37.000000000 -0800
-+++ openssl-1.0.0d/crypto/engine/engine.h	2011-05-20 10:55:13.878159000 -0700
-@@ -344,6 +344,7 @@
- #endif
- #endif
- void ENGINE_load_cryptodev(void);
-+void ENGINE_load_aesni(void);
- void ENGINE_load_pk11(void);
- void ENGINE_load_builtin_engines(void);
- 
-Index: crypto/evp/evp.h
-===================================================================
-diff -ru openssl-1.0.0d/crypto/evp/evp.h openssl-1.0.0d/crypto/evp/evp.h
---- openssl-1.0.0d/crypto/evp/evp.h	2010-03-27 12:27:50.000000000 -0700
-+++ openssl-1.0.0d/crypto/evp/evp.h	2011-05-20 10:55:56.075662000 -0700
-@@ -1190,6 +1190,7 @@
- /* Error codes for the EVP functions. */
- 
- /* Function codes. */
-+#define EVP_F_AESNI_INIT_KEY				 165
- #define EVP_F_AES_INIT_KEY				 133
- #define EVP_F_CAMELLIA_INIT_KEY				 159
- #define EVP_F_D2I_PKEY					 100
-Index: crypto/evp/evp_err.c
-===================================================================
-diff -ru openssl-1.0.0d/crypto/evp/evp_err.c openssl-1.0.0d/crypto/evp/evp_err.c
---- openssl-1.0.0d/crypto/evp/evp_err.c	2010-02-07 05:41:23.000000000 -0800
-+++ openssl-1.0.0d/crypto/evp/evp_err.c	2011-05-20 10:56:21.674385000 -0700
-@@ -70,6 +70,7 @@
- 
- static ERR_STRING_DATA EVP_str_functs[]=
- 	{
-+{ERR_FUNC(EVP_F_AESNI_INIT_KEY),	"AESNI_INIT_KEY"},
- {ERR_FUNC(EVP_F_AES_INIT_KEY),	"AES_INIT_KEY"},
- {ERR_FUNC(EVP_F_CAMELLIA_INIT_KEY),	"CAMELLIA_INIT_KEY"},
- {ERR_FUNC(EVP_F_D2I_PKEY),	"D2I_PKEY"},
-Index: util/libeay.num
-===================================================================
-diff -ru openssl-1.0.0d/util/libeay.num openssl-1.0.0d/util/libeay.num
---- openssl-1.0.0d/util/libeay.num	2010-07-25 09:56:06.000000000 -0700
-+++ openssl-1.0.0d/util/libeay.num	2011-05-20 11:01:11.198890000 -0700
-@@ -4178,6 +4178,7 @@
- UI_method_set_prompt_constructor        4551	EXIST:!VMS:FUNCTION:
- UI_method_set_prompt_constructr         4551	EXIST:VMS:FUNCTION:
- EVP_read_pw_string_min                  4552	EXIST::FUNCTION:
-+ENGINE_load_aesni                       4553	EXIST::FUNCTION:ENGINE
- CRYPTO_cts128_encrypt                   4553	EXIST::FUNCTION:
- CRYPTO_cts128_decrypt_block             4554	EXIST::FUNCTION:
- CRYPTO_cfb128_1_encrypt                 4555	EXIST::FUNCTION: