summaryrefslogtreecommitdiffstats
path: root/src/sha256.h
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2013-08-17 09:37:27 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2013-08-17 09:37:27 +0200
commit00d7406fe26bbcbad2945a0b4e3666dd991daac4 (patch)
treed25d86d49d7b1ed4de036865630ebb8123085b0c /src/sha256.h
parentf12681b09b381e6a61926c3af2b81842b6f0396d (diff)
downloadfastd-00d7406fe26bbcbad2945a0b4e3666dd991daac4.tar
fastd-00d7406fe26bbcbad2945a0b4e3666dd991daac4.zip
Slightly improve the SHA256 API
Diffstat (limited to 'src/sha256.h')
-rw-r--r--src/sha256.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/sha256.h b/src/sha256.h
index acafe7e..7f29593 100644
--- a/src/sha256.h
+++ b/src/sha256.h
@@ -42,8 +42,14 @@
#define FASTD_HMACSHA256_KEY_BYTES (4*FASTD_HMACSHA256_KEY_WORDS)
-void fastd_sha256_blocks(uint32_t out[FASTD_SHA256_HASH_WORDS], ...);
-void fastd_hmacsha256_blocks(uint32_t out[FASTD_SHA256_HASH_WORDS], const uint32_t key[FASTD_HMACSHA256_KEY_WORDS], ...);
+typedef union fastd_sha256 {
+ uint32_t w[FASTD_SHA256_HASH_WORDS];
+ uint8_t b[FASTD_SHA256_HASH_BYTES];
+} fastd_sha256_t;
+
+
+void fastd_sha256_blocks(fastd_sha256_t *out, ...);
+void fastd_hmacsha256_blocks(fastd_sha256_t *out, const uint32_t key[FASTD_HMACSHA256_KEY_WORDS], ...);
bool fastd_hmacsha256_blocks_verify(const uint8_t mac[FASTD_SHA256_HASH_BYTES], const uint32_t key[FASTD_HMACSHA256_KEY_WORDS], ...);
#endif /* _FASTD_SHA256_H_ */