diff options
Diffstat (limited to 'main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch')
-rw-r--r-- | main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch | 34 |
1 files changed, 12 insertions, 22 deletions
diff --git a/main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch b/main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch index c508c9c5a2..74fc3d8e74 100644 --- a/main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch +++ b/main/openssl/0002-engines-e_padlock-backport-cvs-head-changes.patch @@ -1,22 +1,11 @@ -From 6e182155643a6aeb07cbba1e7f79ac1adfcddad2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> -Date: Wed, 28 Jul 2010 08:29:09 +0300 -Subject: [PATCH 2/4] engines/e_padlock: backport cvs head changes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - +Backport changes from upstream padlock module. Includes support for VIA Nano 64-bit mode. Signed-off-by: Timo Teräs <timo.teras@iki.fi> ---- - engines/e_padlock.c | 140 +++++++++++++++++++++++++++++++++++++++++++++------- - 1 file changed, 122 insertions(+), 18 deletions(-) -diff --git a/engines/e_padlock.c b/engines/e_padlock.c -index 9f7a85a..6ab42d2 100644 ---- a/engines/e_padlock.c -+++ b/engines/e_padlock.c +diff -ru openssl-1.0.1k.orig/engines/e_padlock.c openssl-1.0.1k/engines/e_padlock.c +--- openssl-1.0.1k.orig/engines/e_padlock.c 2015-01-08 16:00:56.000000000 -0200 ++++ openssl-1.0.1k/engines/e_padlock.c 2015-01-09 08:08:35.421516799 -0200 @@ -101,7 +101,10 @@ compiler choice is limited to GCC and Microsoft C. */ #undef COMPILE_HW_PADLOCK @@ -29,7 +18,7 @@ index 9f7a85a..6ab42d2 100644 (defined(_MSC_VER) && defined(_M_IX86)) # define COMPILE_HW_PADLOCK # endif -@@ -304,6 +307,7 @@ static volatile struct padlock_cipher_data *padlock_saved_context; +@@ -304,6 +307,7 @@ * ======================================================= */ #if defined(__GNUC__) && __GNUC__>=2 @@ -37,11 +26,12 @@ index 9f7a85a..6ab42d2 100644 /* * As for excessive "push %ebx"/"pop %ebx" found all over. * When generating position-independent code GCC won't let -@@ -383,21 +387,6 @@ padlock_available(void) +@@ -383,23 +387,6 @@ return padlock_use_ace + padlock_use_rng; } -#ifndef OPENSSL_NO_AES +-#ifndef AES_ASM -/* Our own htonl()/ntohl() */ -static inline void -padlock_bswapl(AES_KEY *ks) @@ -55,11 +45,12 @@ index 9f7a85a..6ab42d2 100644 - } -} -#endif +-#endif - /* Force key reload from memory to the CPU microcode. Loading EFLAGS from the stack clears EFLAGS[30] which does the trick. */ -@@ -455,12 +444,127 @@ static inline void *name(size_t cnt, \ +@@ -457,12 +444,129 @@ : "edx", "cc", "memory"); \ return iv; \ } @@ -172,6 +163,7 @@ index 9f7a85a..6ab42d2 100644 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 */ + ++#ifndef AES_ASM +/* Our own htonl()/ntohl() */ +static inline void +padlock_bswapl(AES_KEY *ks) @@ -184,10 +176,11 @@ index 9f7a85a..6ab42d2 100644 + key++; + } +} ++#endif #endif /* The RNG call itself */ -@@ -491,8 +595,8 @@ padlock_xstore(void *addr, unsigned int edx_in) +@@ -493,8 +597,8 @@ static inline unsigned char * padlock_memcpy(void *dst,const void *src,size_t n) { @@ -198,6 +191,3 @@ index 9f7a85a..6ab42d2 100644 n /= sizeof(*d); do { *d++ = *s++; } while (--n); --- -1.7.11.3 - |