diff options
| author | tb <> | 2024-11-25 06:51:39 +0000 |
|---|---|---|
| committer | tb <> | 2024-11-25 06:51:39 +0000 |
| commit | 9b6f67fd1d0975062609168d617e567a8304ed32 (patch) | |
| tree | c538c6d04f98723eabc7002148b5b0c899de84da /src | |
| parent | 0728d360c0069733084919589222cffd52b67eaa (diff) | |
| download | openbsd-9b6f67fd1d0975062609168d617e567a8304ed32.tar.gz openbsd-9b6f67fd1d0975062609168d617e567a8304ed32.tar.bz2 openbsd-9b6f67fd1d0975062609168d617e567a8304ed32.zip | |
Unify checking for the asn1_flag
There are only two flag values that libcrypto understands and the default
value is 1 while, helpfully, the undesirable non-default is 0. The few
existing callers set OPENSSL_EC_NAMED_CURVE or OPENSSL_EC_EXPLICIT_CURVE.
Nevertheless, the flag should be checked properly as a flag. The recent
upstream checks for EC_GROUP_get_asn1_flag(group) == OPENSSL_EC_NAMED_CURVE
don't look right either...
ok jsing
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/ec/ec_ameth.c | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/ec/eck_prn.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/lib/libcrypto/ec/ec_ameth.c b/src/lib/libcrypto/ec/ec_ameth.c index 754fabfb4d..903b18a8db 100644 --- a/src/lib/libcrypto/ec/ec_ameth.c +++ b/src/lib/libcrypto/ec/ec_ameth.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ec_ameth.c,v 1.72 2024/10/29 06:36:58 tb Exp $ */ | 1 | /* $OpenBSD: ec_ameth.c,v 1.73 2024/11/25 06:51:39 tb Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 2006. | 3 | * project 2006. |
| 4 | */ | 4 | */ |
| @@ -104,7 +104,7 @@ eckey_get_curve_name(const EC_KEY *eckey, int *nid) | |||
| 104 | ECerror(EC_R_MISSING_PARAMETERS); | 104 | ECerror(EC_R_MISSING_PARAMETERS); |
| 105 | return 0; | 105 | return 0; |
| 106 | } | 106 | } |
| 107 | if (EC_GROUP_get_asn1_flag(group) != 0) | 107 | if ((EC_GROUP_get_asn1_flag(group) & OPENSSL_EC_NAMED_CURVE) != 0) |
| 108 | *nid = EC_GROUP_get_curve_name(group); | 108 | *nid = EC_GROUP_get_curve_name(group); |
| 109 | 109 | ||
| 110 | return 1; | 110 | return 1; |
diff --git a/src/lib/libcrypto/ec/eck_prn.c b/src/lib/libcrypto/ec/eck_prn.c index 012391c803..98e1a7e7bd 100644 --- a/src/lib/libcrypto/ec/eck_prn.c +++ b/src/lib/libcrypto/ec/eck_prn.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: eck_prn.c,v 1.39 2024/11/14 10:27:59 tb Exp $ */ | 1 | /* $OpenBSD: eck_prn.c,v 1.40 2024/11/25 06:51:39 tb Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Written by Nils Larsch for the OpenSSL project. | 3 | * Written by Nils Larsch for the OpenSSL project. |
| 4 | */ | 4 | */ |
| @@ -330,7 +330,7 @@ ECPKParameters_print(BIO *bio, const EC_GROUP *group, int off) | |||
| 330 | return 0; | 330 | return 0; |
| 331 | } | 331 | } |
| 332 | 332 | ||
| 333 | if (EC_GROUP_get_asn1_flag(group)) | 333 | if ((EC_GROUP_get_asn1_flag(group) & OPENSSL_EC_NAMED_CURVE) != 0) |
| 334 | return ecpk_print_asn1_parameters(bio, group, off); | 334 | return ecpk_print_asn1_parameters(bio, group, off); |
| 335 | 335 | ||
| 336 | return ecpk_print_explicit_parameters(bio, group, off); | 336 | return ecpk_print_explicit_parameters(bio, group, off); |
