diff options
author | Dirkjan Bussink <d.bussink@gmail.com> | 2014-04-20 10:04:21 +0000 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2014-04-22 10:56:46 +0200 |
commit | 164b8e99cce70c83d2ef3e2c2b832a514a0ac908 (patch) | |
tree | d748e7afc7447354c9493bb7957f264d1140affa /src/wrapper.c | |
parent | 4a089026647073be32ddb0885c12f47496bc709b (diff) | |
download | libssh-164b8e99cce70c83d2ef3e2c2b832a514a0ac908.tar.gz libssh-164b8e99cce70c83d2ef3e2c2b832a514a0ac908.tar.xz libssh-164b8e99cce70c83d2ef3e2c2b832a514a0ac908.zip |
Add logic to support SHA2 HMAC algorithms
BUG: https://red.libssh.org/issues/91
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/wrapper.c')
-rw-r--r-- | src/wrapper.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/wrapper.c b/src/wrapper.c index 94175d0e..3b411a4c 100644 --- a/src/wrapper.c +++ b/src/wrapper.c @@ -48,6 +48,23 @@ #include "libssh/wrapper.h" #include "libssh/pki.h" +size_t hmac_digest_len(enum ssh_hmac_e type) { + switch(type) { + case SSH_HMAC_SHA1: + return SHA_DIGEST_LEN; + case SSH_HMAC_SHA256: + return SHA256_DIGEST_LEN; + case SSH_HMAC_SHA384: + return SHA384_DIGEST_LEN; + case SSH_HMAC_SHA512: + return SHA512_DIGEST_LEN; + case SSH_HMAC_MD5: + return MD5_DIGEST_LEN; + default: + return 0; + } +} + /* it allocates a new cipher structure based on its offset into the global table */ static struct ssh_cipher_struct *cipher_new(int offset) { struct ssh_cipher_struct *cipher = NULL; |