summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorbcook <>2014-08-11 13:29:43 +0000
committerbcook <>2014-08-11 13:29:43 +0000
commit061d595d7859c456aec41e57ebdd900e4087395c (patch)
treea4f8bfaf958a94c17a62073b4dac40939b15d3d8 /src/lib
parent1461f93ca3a5c598009914d6c1e1518f66f3c119 (diff)
downloadopenbsd-061d595d7859c456aec41e57ebdd900e4087395c.tar.gz
openbsd-061d595d7859c456aec41e57ebdd900e4087395c.tar.bz2
openbsd-061d595d7859c456aec41e57ebdd900e4087395c.zip
Guard RSA / RC4-5 ASM when NO_ASM is not defined
Most assembly blocks remain inactive if OPENSSL_NO_ASM is not defined, only enabling inline assembly, but the RSA / RC4-5 blocks (used only in amd64 systems) turn on implicitly. Guard these two as well. This simplifies enabling just inline ASM in portable, no effective change in OpenBSD.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libcrypto/arch/amd64/Makefile.inc4
-rw-r--r--src/lib/libcrypto/crypto/arch/amd64/Makefile.inc4
-rw-r--r--src/lib/libcrypto/engine/eng_rsax.c7
-rw-r--r--src/lib/libcrypto/evp/e_rc4_hmac_md5.c4
-rw-r--r--src/lib/libssl/src/crypto/engine/eng_rsax.c7
-rw-r--r--src/lib/libssl/src/crypto/evp/e_rc4_hmac_md5.c4
6 files changed, 18 insertions, 12 deletions
diff --git a/src/lib/libcrypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/arch/amd64/Makefile.inc
index 24f16d0a81..fe7e17df0e 100644
--- a/src/lib/libcrypto/arch/amd64/Makefile.inc
+++ b/src/lib/libcrypto/arch/amd64/Makefile.inc
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile.inc,v 1.2 2014/05/06 19:55:06 miod Exp $ 1# $OpenBSD: Makefile.inc,v 1.3 2014/08/11 13:29:43 bcook Exp $
2 2
3# amd64-specific libcrypto build rules 3# amd64-specific libcrypto build rules
4 4
@@ -15,6 +15,7 @@ SSLASM+= aes aesni-sha1-x86_64
15SRCS+= bf_enc.c 15SRCS+= bf_enc.c
16# bn 16# bn
17CFLAGS+= -DOPENSSL_IA32_SSE2 17CFLAGS+= -DOPENSSL_IA32_SSE2
18CFLAGS+= -DRSA_ASM
18SSLASM+= bn modexp512-x86_64 19SSLASM+= bn modexp512-x86_64
19CFLAGS+= -DOPENSSL_BN_ASM_MONT 20CFLAGS+= -DOPENSSL_BN_ASM_MONT
20SSLASM+= bn x86_64-mont 21SSLASM+= bn x86_64-mont
@@ -31,6 +32,7 @@ SSLASM+= md5 md5-x86_64
31CFLAGS+= -DGHASH_ASM 32CFLAGS+= -DGHASH_ASM
32SSLASM+= modes ghash-x86_64 33SSLASM+= modes ghash-x86_64
33# rc4 34# rc4
35CFLAGS+= -DRC4_MD5_ASM
34SSLASM+= rc4 rc4-x86_64 36SSLASM+= rc4 rc4-x86_64
35SSLASM+= rc4 rc4-md5-x86_64 37SSLASM+= rc4 rc4-md5-x86_64
36# ripemd 38# ripemd
diff --git a/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc
index 24f16d0a81..fe7e17df0e 100644
--- a/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc
+++ b/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile.inc,v 1.2 2014/05/06 19:55:06 miod Exp $ 1# $OpenBSD: Makefile.inc,v 1.3 2014/08/11 13:29:43 bcook Exp $
2 2
3# amd64-specific libcrypto build rules 3# amd64-specific libcrypto build rules
4 4
@@ -15,6 +15,7 @@ SSLASM+= aes aesni-sha1-x86_64
15SRCS+= bf_enc.c 15SRCS+= bf_enc.c
16# bn 16# bn
17CFLAGS+= -DOPENSSL_IA32_SSE2 17CFLAGS+= -DOPENSSL_IA32_SSE2
18CFLAGS+= -DRSA_ASM
18SSLASM+= bn modexp512-x86_64 19SSLASM+= bn modexp512-x86_64
19CFLAGS+= -DOPENSSL_BN_ASM_MONT 20CFLAGS+= -DOPENSSL_BN_ASM_MONT
20SSLASM+= bn x86_64-mont 21SSLASM+= bn x86_64-mont
@@ -31,6 +32,7 @@ SSLASM+= md5 md5-x86_64
31CFLAGS+= -DGHASH_ASM 32CFLAGS+= -DGHASH_ASM
32SSLASM+= modes ghash-x86_64 33SSLASM+= modes ghash-x86_64
33# rc4 34# rc4
35CFLAGS+= -DRC4_MD5_ASM
34SSLASM+= rc4 rc4-x86_64 36SSLASM+= rc4 rc4-x86_64
35SSLASM+= rc4 rc4-md5-x86_64 37SSLASM+= rc4 rc4-md5-x86_64
36# ripemd 38# ripemd
diff --git a/src/lib/libcrypto/engine/eng_rsax.c b/src/lib/libcrypto/engine/eng_rsax.c
index 358dac2088..728b89d5f3 100644
--- a/src/lib/libcrypto/engine/eng_rsax.c
+++ b/src/lib/libcrypto/engine/eng_rsax.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: eng_rsax.c,v 1.10 2014/07/12 16:03:37 miod Exp $ */ 1/* $OpenBSD: eng_rsax.c,v 1.11 2014/08/11 13:29:43 bcook Exp $ */
2/* Copyright (c) 2010-2010 Intel Corp. 2/* Copyright (c) 2010-2010 Intel Corp.
3 * Author: Vinodh.Gopal@intel.com 3 * Author: Vinodh.Gopal@intel.com
4 * Jim Guilford 4 * Jim Guilford
@@ -81,8 +81,9 @@
81/* RSAX is available **ONLY* on x86_64 CPUs */ 81/* RSAX is available **ONLY* on x86_64 CPUs */
82#undef COMPILE_RSAX 82#undef COMPILE_RSAX
83 83
84#if (defined(__x86_64) || defined(__x86_64__) || \ 84#if !defined(OPENSSL_NO_ASM) && defined(RSA_ASM) && \
85 defined(_M_AMD64) || defined (_M_X64)) && !defined(OPENSSL_NO_ASM) 85 (defined(__x86_64) || defined(__x86_64__) || \
86 defined(_M_AMD64) || defined (_M_X64))
86#define COMPILE_RSAX 87#define COMPILE_RSAX
87static ENGINE *ENGINE_rsax (void); 88static ENGINE *ENGINE_rsax (void);
88#endif 89#endif
diff --git a/src/lib/libcrypto/evp/e_rc4_hmac_md5.c b/src/lib/libcrypto/evp/e_rc4_hmac_md5.c
index 05c79ff09d..1f085af403 100644
--- a/src/lib/libcrypto/evp/e_rc4_hmac_md5.c
+++ b/src/lib/libcrypto/evp/e_rc4_hmac_md5.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: e_rc4_hmac_md5.c,v 1.4 2014/07/10 22:45:57 jsing Exp $ */ 1/* $OpenBSD: e_rc4_hmac_md5.c,v 1.5 2014/08/11 13:29:43 bcook Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 2011 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 2011 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -99,7 +99,7 @@ rc4_hmac_md5_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *inkey,
99 return 1; 99 return 1;
100} 100}
101 101
102#if !defined(OPENSSL_NO_ASM) && ( \ 102#if !defined(OPENSSL_NO_ASM) && defined(RC4_MD5_ASM) && ( \
103 defined(__x86_64) || defined(__x86_64__) || \ 103 defined(__x86_64) || defined(__x86_64__) || \
104 defined(_M_AMD64) || defined(_M_X64) || \ 104 defined(_M_AMD64) || defined(_M_X64) || \
105 defined(__INTEL__) ) && \ 105 defined(__INTEL__) ) && \
diff --git a/src/lib/libssl/src/crypto/engine/eng_rsax.c b/src/lib/libssl/src/crypto/engine/eng_rsax.c
index 358dac2088..728b89d5f3 100644
--- a/src/lib/libssl/src/crypto/engine/eng_rsax.c
+++ b/src/lib/libssl/src/crypto/engine/eng_rsax.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: eng_rsax.c,v 1.10 2014/07/12 16:03:37 miod Exp $ */ 1/* $OpenBSD: eng_rsax.c,v 1.11 2014/08/11 13:29:43 bcook Exp $ */
2/* Copyright (c) 2010-2010 Intel Corp. 2/* Copyright (c) 2010-2010 Intel Corp.
3 * Author: Vinodh.Gopal@intel.com 3 * Author: Vinodh.Gopal@intel.com
4 * Jim Guilford 4 * Jim Guilford
@@ -81,8 +81,9 @@
81/* RSAX is available **ONLY* on x86_64 CPUs */ 81/* RSAX is available **ONLY* on x86_64 CPUs */
82#undef COMPILE_RSAX 82#undef COMPILE_RSAX
83 83
84#if (defined(__x86_64) || defined(__x86_64__) || \ 84#if !defined(OPENSSL_NO_ASM) && defined(RSA_ASM) && \
85 defined(_M_AMD64) || defined (_M_X64)) && !defined(OPENSSL_NO_ASM) 85 (defined(__x86_64) || defined(__x86_64__) || \
86 defined(_M_AMD64) || defined (_M_X64))
86#define COMPILE_RSAX 87#define COMPILE_RSAX
87static ENGINE *ENGINE_rsax (void); 88static ENGINE *ENGINE_rsax (void);
88#endif 89#endif
diff --git a/src/lib/libssl/src/crypto/evp/e_rc4_hmac_md5.c b/src/lib/libssl/src/crypto/evp/e_rc4_hmac_md5.c
index 05c79ff09d..1f085af403 100644
--- a/src/lib/libssl/src/crypto/evp/e_rc4_hmac_md5.c
+++ b/src/lib/libssl/src/crypto/evp/e_rc4_hmac_md5.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: e_rc4_hmac_md5.c,v 1.4 2014/07/10 22:45:57 jsing Exp $ */ 1/* $OpenBSD: e_rc4_hmac_md5.c,v 1.5 2014/08/11 13:29:43 bcook Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 2011 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 2011 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -99,7 +99,7 @@ rc4_hmac_md5_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *inkey,
99 return 1; 99 return 1;
100} 100}
101 101
102#if !defined(OPENSSL_NO_ASM) && ( \ 102#if !defined(OPENSSL_NO_ASM) && defined(RC4_MD5_ASM) && ( \
103 defined(__x86_64) || defined(__x86_64__) || \ 103 defined(__x86_64) || defined(__x86_64__) || \
104 defined(_M_AMD64) || defined(_M_X64) || \ 104 defined(_M_AMD64) || defined(_M_X64) || \
105 defined(__INTEL__) ) && \ 105 defined(__INTEL__) ) && \