diff options
Diffstat (limited to 'digest-openssl.c')
-rw-r--r-- | digest-openssl.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/digest-openssl.c b/digest-openssl.c index 02b170341..bb58ff226 100644 --- a/digest-openssl.c +++ b/digest-openssl.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: digest-openssl.c,v 1.4 2014/07/03 03:26:43 djm Exp $ */ | 1 | /* $OpenBSD: digest-openssl.c,v 1.5 2014/12/21 22:27:56 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2013 Damien Miller <djm@mindrot.org> | 3 | * Copyright (c) 2013 Damien Miller <djm@mindrot.org> |
4 | * | 4 | * |
@@ -74,6 +74,26 @@ ssh_digest_by_alg(int alg) | |||
74 | return &(digests[alg]); | 74 | return &(digests[alg]); |
75 | } | 75 | } |
76 | 76 | ||
77 | int | ||
78 | ssh_digest_alg_by_name(const char *name) | ||
79 | { | ||
80 | int alg; | ||
81 | |||
82 | for (alg = 0; digests[alg].id != -1; alg++) { | ||
83 | if (strcasecmp(name, digests[alg].name) == 0) | ||
84 | return digests[alg].id; | ||
85 | } | ||
86 | return -1; | ||
87 | } | ||
88 | |||
89 | const char * | ||
90 | ssh_digest_alg_name(int alg) | ||
91 | { | ||
92 | const struct ssh_digest *digest = ssh_digest_by_alg(alg); | ||
93 | |||
94 | return digest == NULL ? NULL : digest->name; | ||
95 | } | ||
96 | |||
77 | size_t | 97 | size_t |
78 | ssh_digest_bytes(int alg) | 98 | ssh_digest_bytes(int alg) |
79 | { | 99 | { |