diff options
author | tb <> | 2023-04-16 08:55:44 +0000 |
---|---|---|
committer | tb <> | 2023-04-16 08:55:44 +0000 |
commit | b0586cdb4979567771d97bea702186303fc94d64 (patch) | |
tree | c3f5d9c9754bc9c7b25d9b9fb6c87a1d9fea872a /src/lib/libcrypto/ec/ec.h | |
parent | 8d0392a8969eba0e55a21ac340c52b1492dbe912 (diff) | |
download | openbsd-b0586cdb4979567771d97bea702186303fc94d64.tar.gz openbsd-b0586cdb4979567771d97bea702186303fc94d64.tar.bz2 openbsd-b0586cdb4979567771d97bea702186303fc94d64.zip |
Mark public bn_nist and ec_nist API for removal
The faster nist code is rife with problematic C. While this is generally
considered to be a pleonasm nowadays, here it specifically refers to
aliasing issues and other flavors of undefined behavior. With compilers
and standardization committees becoming seemingly more determined about
making C even more unusable than it already is, this code has resulted
in miscompilations and generally is a target rich environment for fuzzers
to feast on. We're better off without it. Go look while it's still there.
It's some of the very worst we have to offer.
ok jsing
Diffstat (limited to 'src/lib/libcrypto/ec/ec.h')
-rw-r--r-- | src/lib/libcrypto/ec/ec.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/libcrypto/ec/ec.h b/src/lib/libcrypto/ec/ec.h index 2e674c424f..f0f2d8cf0c 100644 --- a/src/lib/libcrypto/ec/ec.h +++ b/src/lib/libcrypto/ec/ec.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ec.h,v 1.32 2023/04/16 08:36:13 tb Exp $ */ | 1 | /* $OpenBSD: ec.h,v 1.33 2023/04/16 08:55:44 tb Exp $ */ |
2 | /* | 2 | /* |
3 | * Originally written by Bodo Moeller for the OpenSSL project. | 3 | * Originally written by Bodo Moeller for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -145,10 +145,12 @@ const EC_METHOD *EC_GFp_simple_method(void); | |||
145 | */ | 145 | */ |
146 | const EC_METHOD *EC_GFp_mont_method(void); | 146 | const EC_METHOD *EC_GFp_mont_method(void); |
147 | 147 | ||
148 | #if !defined(LIBRESSL_NEXT_API) || defined(LIBRESSL_INTERNAL) | ||
148 | /** Returns GFp methods using optimized methods for NIST recommended curves | 149 | /** Returns GFp methods using optimized methods for NIST recommended curves |
149 | * \return EC_METHOD object | 150 | * \return EC_METHOD object |
150 | */ | 151 | */ |
151 | const EC_METHOD *EC_GFp_nist_method(void); | 152 | const EC_METHOD *EC_GFp_nist_method(void); |
153 | #endif | ||
152 | 154 | ||
153 | #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 | 155 | #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 |
154 | /** Returns 64-bit optimized methods for nistp224 | 156 | /** Returns 64-bit optimized methods for nistp224 |