diff options
author | Hans Nilsson <[email protected]> | 2017-03-09 17:41:38 +0100 |
---|---|---|
committer | Hans Nilsson <[email protected]> | 2017-03-09 17:41:38 +0100 |
commit | ce6040f651c081f4cb7dfafe5c4bf49bfee7812f (patch) | |
tree | 4b36debfa69c1e9c10289f5f68dc26560a365e00 /lib/public_key/src | |
parent | 219610ef3434e4462d8f9d8f9e22edda8424b327 (diff) | |
parent | ac29623c38bb07fcdacdf8a340a692314fb4b821 (diff) | |
download | otp-ce6040f651c081f4cb7dfafe5c4bf49bfee7812f.tar.gz otp-ce6040f651c081f4cb7dfafe5c4bf49bfee7812f.tar.bz2 otp-ce6040f651c081f4cb7dfafe5c4bf49bfee7812f.zip |
Merge branch 'hans/public_key/generate_key_namedCurve_bug/OTP-14258'
Diffstat (limited to 'lib/public_key/src')
-rw-r--r-- | lib/public_key/src/public_key.erl | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/public_key/src/public_key.erl b/lib/public_key/src/public_key.erl index 50d4d82d15..95202282fb 100644 --- a/lib/public_key/src/public_key.erl +++ b/lib/public_key/src/public_key.erl @@ -1198,8 +1198,11 @@ ec_curve_spec( #'ECParameters'{fieldID = FieldId, curve = PCurve, base = Base, o FieldId#'FieldID'.parameters}, Curve = {PCurve#'Curve'.a, PCurve#'Curve'.b, none}, {Field, Curve, Base, Order, CoFactor}; -ec_curve_spec({namedCurve, OID}) -> - pubkey_cert_records:namedCurves(OID). +ec_curve_spec({namedCurve, OID}) when is_tuple(OID), is_integer(element(1,OID)) -> + ec_curve_spec({namedCurve, pubkey_cert_records:namedCurves(OID)}); +ec_curve_spec({namedCurve, Name}) when is_atom(Name) -> + crypto:ec_curve(Name). + ec_key({PubKey, PrivateKey}, Params) -> #'ECPrivateKey'{version = 1, |