summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2011-03-25 09:29:46 +0000
committerRichard Levitte <levitte@openssl.org>2011-03-25 09:29:46 +0000
commit30fafdebf34ba8823bc3e528e0a310fc0384b188 (patch)
tree7846e4e2203ba2e9c311d711e26442ee2d72f192
parente775bbc46476b2808ce48eed598c874d8676340e (diff)
* Configure, crypto/ec/ec.h, crypto/ec/ecp_nistp224.c, util/mkdef.pl:
Have EC_NISTP224_64_GCC_128 treated like any algorithm, and have disabled by default. If we don't do it this way, it screws up libeay.num. * util/libeay.num: make update
-rwxr-xr-xConfigure3
-rw-r--r--crypto/ec/ec.h2
-rw-r--r--crypto/ec/ecp_nistp224.c3
-rwxr-xr-xutil/libeay.num2
-rwxr-xr-xutil/mkdef.pl2
5 files changed, 8 insertions, 4 deletions
diff --git a/Configure b/Configure
index ad3e51f01c..16fcadb600 100755
--- a/Configure
+++ b/Configure
@@ -696,6 +696,7 @@ my $fips=0;
# All of the following is disabled by default (RC5 was enabled before 0.9.8):
my %disabled = ( # "what" => "comment" [or special keyword "experimental"]
+ "ec-nistp224-64-gcc-218" => "default",
"gmp" => "default",
"jpake" => "experimental",
"md2" => "default",
@@ -1074,7 +1075,7 @@ foreach (sort (keys %disabled))
else
{
my ($ALGO, $algo);
- ($ALGO = $algo = $_) =~ tr/[a-z]/[A-Z]/;
+ ($ALGO = $algo = $_) =~ tr/[\-a-z]/[_A-Z]/;
if (/^asm$/ || /^err$/ || /^hw$/ || /^hw-/)
{
diff --git a/crypto/ec/ec.h b/crypto/ec/ec.h
index 3ea033356e..69d78642cc 100644
--- a/crypto/ec/ec.h
+++ b/crypto/ec/ec.h
@@ -151,7 +151,7 @@ const EC_METHOD *EC_GFp_mont_method(void);
*/
const EC_METHOD *EC_GFp_nist_method(void);
-#ifdef EC_NISTP224_64_GCC_128
+#ifndef OPENSSL_NO_EC_NISTP224_64_GCC_128
/** Returns 64-bit optimized methods for nistp224
* \return EC_METHOD object
*/
diff --git a/crypto/ec/ecp_nistp224.c b/crypto/ec/ecp_nistp224.c
index e0ca2dca17..90c3589bdf 100644
--- a/crypto/ec/ecp_nistp224.c
+++ b/crypto/ec/ecp_nistp224.c
@@ -62,7 +62,8 @@
* Inspired by Daniel J. Bernstein's public domain nistp224 implementation
* and Adam Langley's public domain 64-bit C implementation of curve25519
*/
-#ifdef EC_NISTP224_64_GCC_128
+#include <openssl/opensslconf.h>
+#ifndef OPENSSL_NO_EC_NISTP224_64_GCC_128
#include <stdint.h>
#include <string.h>
#include <openssl/err.h>
diff --git a/util/libeay.num b/util/libeay.num
index 9046bcab46..a23555333d 100755
--- a/util/libeay.num
+++ b/util/libeay.num
@@ -4218,7 +4218,7 @@ EVP_PKEY_meth_copy 4588 EXIST::FUNCTION:
ERR_add_error_vdata 4589 EXIST::FUNCTION:
EVP_aes_128_ctr 4590 EXIST::FUNCTION:AES
EVP_aes_256_ctr 4591 EXIST::FUNCTION:AES
-EC_GFp_nistp224_method 4592 EXIST:!WIN32:FUNCTION:EC
+EC_GFp_nistp224_method 4592 EXIST:!WIN32:FUNCTION:EC,EC_NISTP224_64_GCC_128
FIPS_selftest 4593 EXIST:OPENSSL_FIPS:FUNCTION:
FIPS_set_error_callbacks 4594 EXIST:OPENSSL_FIPS:FUNCTION:
FIPS_corrupt_drbg 4595 EXIST:OPENSSL_FIPS:FUNCTION:
diff --git a/util/mkdef.pl b/util/mkdef.pl
index 4a01fcb1c8..9d53046278 100755
--- a/util/mkdef.pl
+++ b/util/mkdef.pl
@@ -86,6 +86,8 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
"SHA256", "SHA512", "RIPEMD",
"MDC2", "WHIRLPOOL", "RSA", "DSA", "DH", "EC", "ECDH", "ECDSA", "EC2M",
"HMAC", "AES", "CAMELLIA", "SEED", "GOST",
+ # ECP_NISTP224
+ "EC_NISTP224_64_GCC_128",
# Envelope "algorithms"
"EVP", "X509", "ASN1_TYPEDEFS",
# Helper "algorithms"