X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsrc%2Fhash.h;h=09b65944d393f3ee6e392edc7b539062d41e1058;hb=cab0c27721a3c1f3a146e44bcc6462eefb9eb9e7;hp=89bedb926ebd804ee44d48f2f8f158231992564b;hpb=5fb822fc4839e253d2f839ba7966bc25a5329ac1;p=exim.git diff --git a/src/src/hash.h b/src/src/hash.h index 89bedb926..09b65944d 100644 --- a/src/src/hash.h +++ b/src/src/hash.h @@ -29,9 +29,19 @@ /* Hash context for the exim_sha_* routines */ +typedef enum hashmethod { + HASH_BADTYPE, + HASH_SHA1, + HASH_SHA256, + HASH_SHA3_224, + HASH_SHA3_256, + HASH_SHA3_384, + HASH_SHA3_512, +} hashmethod; + typedef struct { - BOOL is_sha1; - int hashlen; + hashmethod method; + int hashlen; #ifdef SHA_OPENSSL union { @@ -57,7 +67,7 @@ typedef struct { } hctx; -extern void exim_sha_init(hctx *, BOOL); +extern BOOL exim_sha_init(hctx *, hashmethod); extern void exim_sha_update(hctx *, const uschar *a, int); extern void exim_sha_finish(hctx *, blob *); extern int exim_sha_hashlen(hctx *);