diff options
author | Paul Duncan <pabs@pablotron.org> | 2019-07-19 16:19:33 -0400 |
---|---|---|
committer | Paul Duncan <pabs@pablotron.org> | 2019-07-19 16:19:33 -0400 |
commit | 49ae79d294ac27ba837c4d734f396b5cb4bd182e (patch) | |
tree | 3e7c55468f6db831dcc4fd5e30bd66725fc01406 /sha2.h | |
parent | 8f1738bfca64236a5973a717f22d4eb6555c448b (diff) | |
download | sha2-49ae79d294ac27ba837c4d734f396b5cb4bd182e.tar.bz2 sha2-49ae79d294ac27ba837c4d734f396b5cb4bd182e.zip |
sprinkle void * and restrict, support upper sha512/sha384 lengths, remove cruft
Diffstat (limited to 'sha2.h')
-rw-r--r-- | sha2.h | 29 |
1 files changed, 15 insertions, 14 deletions
@@ -6,7 +6,7 @@ extern "C" { #endif /* __cplusplus */ #include <stdint.h> // uint32_t, uint8_t -#include <stdlib.h> // size_t +#include <stddef.h> // size_t #define SHA256_HASH_SIZE 32 @@ -17,9 +17,9 @@ typedef struct { } sha256_t; void sha256_init(sha256_t * const); -void sha256_push(sha256_t * const, const uint8_t *, size_t); -void sha256_fini(sha256_t * const, uint8_t * const); -void sha256(const uint8_t * const, const size_t, uint8_t * const); +void sha256_push(sha256_t * const, const void *, size_t); +void sha256_fini(sha256_t * const, void * const); +void sha256(const void * const restrict, const size_t, void * const restrict); #define SHA224_HASH_SIZE 28 @@ -28,9 +28,9 @@ typedef struct { } sha224_t; void sha224_init(sha224_t * const); -void sha224_push(sha224_t * const, const uint8_t *, size_t); -void sha224_fini(sha224_t * const, uint8_t * const); -void sha224(const uint8_t * const, const size_t, uint8_t * const); +void sha224_push(sha224_t * const, const void *, size_t); +void sha224_fini(sha224_t * const, void * const); +void sha224(const void * const restrict, const size_t, void * const restrict); #define SHA512_HASH_SIZE 64 @@ -38,13 +38,14 @@ void sha224(const uint8_t * const, const size_t, uint8_t * const); typedef struct { uint8_t buf[128]; uint64_t h[8]; - uint64_t num_bytes; + uint64_t num_bytes_lo, + num_bytes_hi; } sha512_t; void sha512_init(sha512_t * const); -void sha512_push(sha512_t * const, const uint8_t *, size_t); -void sha512_fini(sha512_t * const, uint8_t * const); -void sha512(const uint8_t * const, const size_t, uint8_t * const); +void sha512_push(sha512_t * const, const void *, size_t); +void sha512_fini(sha512_t * const, void * const); +void sha512(const void * const restrict, const size_t, void * const restrict); #define SHA384_HASH_SIZE 48 @@ -53,9 +54,9 @@ typedef struct { } sha384_t; void sha384_init(sha384_t * const); -void sha384_push(sha384_t * const, const uint8_t *, size_t); -void sha384_fini(sha384_t * const, uint8_t * const); -void sha384(const uint8_t * const, const size_t, uint8_t * const); +void sha384_push(sha384_t * const, const void *, size_t); +void sha384_fini(sha384_t * const, void * const); +void sha384(const void * const restrict, const size_t, void * restrict const); #ifdef __cplusplus }; |