From e24b01cc6f090ba9c6ac9c9d1a094c2e4a42114b Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Thu, 12 May 2011 13:10:27 +0000 Subject: [PATCH] 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. (update from HEAD, original from levitte). --- Configure | 3 ++- crypto/ec/ec.h | 2 +- crypto/ec/ecp_nistp224.c | 3 ++- util/libeay.num | 2 +- util/mkdef.pl | 2 ++ 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Configure b/Configure index 9397ca1c4a..56f8c471c2 100755 --- a/Configure +++ b/Configure @@ -667,6 +667,7 @@ my $perl; # 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", @@ -1001,7 +1002,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 6409eee1b3..c95285e597 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 +#ifndef OPENSSL_NO_EC_NISTP224_64_GCC_128 #include #include #include diff --git a/util/libeay.num b/util/libeay.num index 104b187280..c675b03308 100755 --- a/util/libeay.num +++ b/util/libeay.num @@ -4218,4 +4218,4 @@ 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::FUNCTION:EC +EC_GFp_nistp224_method 4592 EXIST::FUNCTION:EC,EC_NISTP224_64_GCC_128 diff --git a/util/mkdef.pl b/util/mkdef.pl index dcd622429f..6a107c1b3c 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", "HMAC", "AES", "CAMELLIA", "SEED", "GOST", + # ECP_NISTP224 + "EC_NISTP224_64_GCC_128", # Envelope "algorithms" "EVP", "X509", "ASN1_TYPEDEFS", # Helper "algorithms" -- 2.25.1