diff options
author | tb <> | 2024-10-11 18:34:20 +0000 |
---|---|---|
committer | tb <> | 2024-10-11 18:34:20 +0000 |
commit | 0d3914979e2bded1fd7ab4d9d4a0d94da715eb69 (patch) | |
tree | f5265a6ebfde94dbd0a74f189587aa14afbec769 /src | |
parent | 9904c0f85e20078c1afa1a36fbd7326a67a30455 (diff) | |
download | openbsd-0d3914979e2bded1fd7ab4d9d4a0d94da715eb69.tar.gz openbsd-0d3914979e2bded1fd7ab4d9d4a0d94da715eb69.tar.bz2 openbsd-0d3914979e2bded1fd7ab4d9d4a0d94da715eb69.zip |
Use defines for the CHOICE variants of ECPKPARAMETERS
ok jsing
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/ec/ec_asn1.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/lib/libcrypto/ec/ec_asn1.c b/src/lib/libcrypto/ec/ec_asn1.c index 18cf856e80..c27257bdbb 100644 --- a/src/lib/libcrypto/ec/ec_asn1.c +++ b/src/lib/libcrypto/ec/ec_asn1.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ec_asn1.c,v 1.64 2024/10/11 18:32:03 tb Exp $ */ | 1 | /* $OpenBSD: ec_asn1.c,v 1.65 2024/10/11 18:34:20 tb Exp $ */ |
2 | /* | 2 | /* |
3 | * Written by Nils Larsch for the OpenSSL project. | 3 | * Written by Nils Larsch for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -124,6 +124,10 @@ typedef struct ec_parameters_st { | |||
124 | ASN1_INTEGER *cofactor; | 124 | ASN1_INTEGER *cofactor; |
125 | } ECPARAMETERS; | 125 | } ECPARAMETERS; |
126 | 126 | ||
127 | #define ECPK_PARAM_NAMED_CURVE 0 | ||
128 | #define ECPK_PARAM_EXPLICIT 1 | ||
129 | #define ECPK_PARAM_IMPLICITLY_CA 2 | ||
130 | |||
127 | typedef struct ecpk_parameters_st { | 131 | typedef struct ecpk_parameters_st { |
128 | int type; | 132 | int type; |
129 | union { | 133 | union { |
@@ -804,12 +808,12 @@ ec_asn1_group2pkparameters(const EC_GROUP *group) | |||
804 | goto err; | 808 | goto err; |
805 | if ((aobj = OBJ_nid2obj(nid)) == NULL) | 809 | if ((aobj = OBJ_nid2obj(nid)) == NULL) |
806 | goto err; | 810 | goto err; |
807 | pkparameters->type = 0; | 811 | pkparameters->type = ECPK_PARAM_NAMED_CURVE; |
808 | pkparameters->value.named_curve = aobj; | 812 | pkparameters->value.named_curve = aobj; |
809 | } else { | 813 | } else { |
810 | if ((parameters = ec_asn1_group2parameters(group)) == NULL) | 814 | if ((parameters = ec_asn1_group2parameters(group)) == NULL) |
811 | goto err; | 815 | goto err; |
812 | pkparameters->type = 1; | 816 | pkparameters->type = ECPK_PARAM_EXPLICIT; |
813 | pkparameters->value.parameters = parameters; | 817 | pkparameters->value.parameters = parameters; |
814 | parameters = NULL; | 818 | parameters = NULL; |
815 | } | 819 | } |
@@ -964,7 +968,7 @@ ec_asn1_pkparameters2group(const ECPKPARAMETERS *params) | |||
964 | EC_GROUP *group; | 968 | EC_GROUP *group; |
965 | int nid; | 969 | int nid; |
966 | 970 | ||
967 | if (params->type == 0) {/* the curve is given by an OID */ | 971 | if (params->type == ECPK_PARAM_NAMED_CURVE) { |
968 | if ((nid = OBJ_obj2nid(params->value.named_curve)) == NID_undef) { | 972 | if ((nid = OBJ_obj2nid(params->value.named_curve)) == NID_undef) { |
969 | ECerror(EC_R_UNKNOWN_GROUP); | 973 | ECerror(EC_R_UNKNOWN_GROUP); |
970 | return NULL; | 974 | return NULL; |
@@ -974,15 +978,14 @@ ec_asn1_pkparameters2group(const ECPKPARAMETERS *params) | |||
974 | return NULL; | 978 | return NULL; |
975 | } | 979 | } |
976 | EC_GROUP_set_asn1_flag(group, OPENSSL_EC_NAMED_CURVE); | 980 | EC_GROUP_set_asn1_flag(group, OPENSSL_EC_NAMED_CURVE); |
977 | } else if (params->type == 1) { /* the parameters are given by a | 981 | } else if (params->type == ECPK_PARAM_EXPLICIT) { |
978 | * ECPARAMETERS structure */ | ||
979 | group = ec_asn1_parameters2group(params->value.parameters); | 982 | group = ec_asn1_parameters2group(params->value.parameters); |
980 | if (group == NULL) { | 983 | if (group == NULL) { |
981 | ECerror(ERR_R_EC_LIB); | 984 | ECerror(ERR_R_EC_LIB); |
982 | return NULL; | 985 | return NULL; |
983 | } | 986 | } |
984 | EC_GROUP_set_asn1_flag(group, 0); | 987 | EC_GROUP_set_asn1_flag(group, 0); |
985 | } else if (params->type == 2) { /* implicitlyCA */ | 988 | } else if (params->type == ECPK_PARAM_IMPLICITLY_CA) { |
986 | return NULL; | 989 | return NULL; |
987 | } else { | 990 | } else { |
988 | ECerror(EC_R_ASN1_ERROR); | 991 | ECerror(EC_R_ASN1_ERROR); |