X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fopenssl%2Fdigest.h;h=420b11e04ba4edb7104f35eb75978eaeed4a5c50;hb=7761a6992025ef06bf8dbf88d39a3bf9e459346a;hp=24562b6b856770c96794b91a0bb15eea3fe382a5;hpb=483c5dcfb43719e5fd50902641252e28a04fd74e;p=tinc diff --git a/src/openssl/digest.h b/src/openssl/digest.h index 24562b6b..420b11e0 100644 --- a/src/openssl/digest.h +++ b/src/openssl/digest.h @@ -1,6 +1,9 @@ +#ifndef TINC_OPENSSL_DIGEST_H +#define TINC_OPENSSL_DIGEST_H + /* digest.h -- header file digest.c - Copyright (C) 2007 Guus Sliepen + Copyright (C) 2013 Guus Sliepen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,30 +20,14 @@ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#ifndef __TINC_DIGEST_H__ -#define __TINC_DIGEST_H__ - #include +#include -#define DIGEST_MAX_SIZE EVP_MAX_MD_SIZE - -typedef struct digest { +struct digest { const EVP_MD *digest; + HMAC_CTX *hmac_ctx; + EVP_MD_CTX *md_ctx; int maclength; - int keylength; - char *key; -} digest_t; - -extern bool digest_open_by_name(struct digest *, const char *name, int maclength); -extern bool digest_open_by_nid(struct digest *, int nid, int maclength); -extern bool digest_open_sha1(struct digest *, int maclength); -extern void digest_close(struct digest *); -extern bool digest_create(struct digest *, const void *indata, size_t inlen, void *outdata); -extern bool digest_verify(struct digest *, const void *indata, size_t inlen, const void *digestdata); -extern bool digest_set_key(struct digest *, const void *key, size_t len); -extern int digest_get_nid(const struct digest *); -extern size_t digest_keylength(const struct digest *); -extern size_t digest_length(const struct digest *); -extern bool digest_active(const struct digest *); +}; #endif