diff options
Diffstat (limited to 'kexecdh.c')
-rw-r--r-- | kexecdh.c | 14 |
1 files changed, 11 insertions, 3 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kexecdh.c,v 1.1 2010/08/31 11:54:45 djm Exp $ */ | 1 | /* $OpenBSD: kexecdh.c,v 1.2 2010/09/09 10:45:45 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2001 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2001 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2010 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2010 Damien Miller. All rights reserved. |
@@ -48,15 +48,23 @@ kex_ecdh_name_to_nid(const char *kexname) | |||
48 | { | 48 | { |
49 | int ret; | 49 | int ret; |
50 | 50 | ||
51 | if (strlen(kexname) < sizeof(KEX_ECDH_SHA256) - 1) | 51 | if (strlen(kexname) < sizeof(KEX_ECDH_SHA2_STEM) - 1) |
52 | fatal("%s: kexname too short \"%s\"", __func__, kexname); | 52 | fatal("%s: kexname too short \"%s\"", __func__, kexname); |
53 | ret = key_curve_name_to_nid(kexname + sizeof(KEX_ECDH_SHA256) - 1); | 53 | ret = key_curve_name_to_nid(kexname + sizeof(KEX_ECDH_SHA2_STEM) - 1); |
54 | if (ret == -1) | 54 | if (ret == -1) |
55 | fatal("%s: unsupported curve negotiated \"%s\"", __func__, | 55 | fatal("%s: unsupported curve negotiated \"%s\"", __func__, |
56 | kexname); | 56 | kexname); |
57 | return ret; | 57 | return ret; |
58 | } | 58 | } |
59 | 59 | ||
60 | const EVP_MD * | ||
61 | kex_ecdh_name_to_evpmd(const char *kexname) | ||
62 | { | ||
63 | int nid = kex_ecdh_name_to_nid(kexname); | ||
64 | |||
65 | return key_ec_nid_to_evpmd(nid); | ||
66 | } | ||
67 | |||
60 | void | 68 | void |
61 | kex_ecdh_hash( | 69 | kex_ecdh_hash( |
62 | const EVP_MD *evp_md, | 70 | const EVP_MD *evp_md, |