diff options
author | tb <> | 2024-01-04 17:01:26 +0000 |
---|---|---|
committer | tb <> | 2024-01-04 17:01:26 +0000 |
commit | 28fd80a9189b82d0223c35153f8ed6f9cfb59161 (patch) | |
tree | 352dd8b119595c9dcef2c0b2739e1e98f14a4676 /src/lib/libcrypto/evp/evp_local.h | |
parent | 6ac39f8daa6e59d602f970b08d9bc152a63fd7a5 (diff) | |
download | openbsd-28fd80a9189b82d0223c35153f8ed6f9cfb59161.tar.gz openbsd-28fd80a9189b82d0223c35153f8ed6f9cfb59161.tar.bz2 openbsd-28fd80a9189b82d0223c35153f8ed6f9cfb59161.zip |
Replace .pkey_base_id with a .base_method pointer
Every EVP_PKEY_ASN1_METHOD is either an ASN.1 method or an alias.
As such it resolves to an underlying ASN.1 method (in one step).
This information can be stored in a base_method pointer in allusion
to the pkey_base_id, which is the name for the nid (aka pkey_id aka
type) of the underlying method.
For an ASN.1 method, the base method is itself, so the base method
is set as a pointer to itself. For an alias it is of course a pointer
to the underlying method. Then obviously ameth->pkey_base_id is the
same as ameth->base_method->pkey_id, so rework all ASN.1 methods to
follow that.
ok jsing
Diffstat (limited to 'src/lib/libcrypto/evp/evp_local.h')
-rw-r--r-- | src/lib/libcrypto/evp/evp_local.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/libcrypto/evp/evp_local.h b/src/lib/libcrypto/evp/evp_local.h index eaede4409a..52fa8e1e52 100644 --- a/src/lib/libcrypto/evp/evp_local.h +++ b/src/lib/libcrypto/evp/evp_local.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: evp_local.h,v 1.11 2024/01/01 15:23:00 tb Exp $ */ | 1 | /* $OpenBSD: evp_local.h,v 1.12 2024/01/04 17:01:26 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 2000. | 3 | * project 2000. |
4 | */ | 4 | */ |
@@ -90,8 +90,8 @@ struct ecx_key_st { | |||
90 | }; | 90 | }; |
91 | 91 | ||
92 | struct evp_pkey_asn1_method_st { | 92 | struct evp_pkey_asn1_method_st { |
93 | const EVP_PKEY_ASN1_METHOD *base_method; | ||
93 | int pkey_id; | 94 | int pkey_id; |
94 | int pkey_base_id; | ||
95 | unsigned long pkey_flags; | 95 | unsigned long pkey_flags; |
96 | 96 | ||
97 | char *pem_str; | 97 | char *pem_str; |