diff options
author | Jussi Kivilinna <jussi.kivilinna@iki.fi> | 2013-09-21 13:54:38 +0300 |
---|---|---|
committer | Jussi Kivilinna <jussi.kivilinna@iki.fi> | 2013-09-21 13:54:38 +0300 |
commit | 592c2ab3deeeccbb6d3b078ed7bf0e6627c8e1fb (patch) | |
tree | 067ff9ba60af04b9570da3f54c3ff6c992650a90 /cipher/hash-common.h | |
parent | 902ea6052c11108bd19333c31b03e084bed1fb86 (diff) | |
download | libgcrypt-592c2ab3deeeccbb6d3b078ed7bf0e6627c8e1fb.tar.gz |
Use hash transform function return type for passing burn stack depth
* cipher/gostr4311-94.c (transform): Return stack burn depth.
* cipher/hash-common.c (_gcry_md_block_write): Use stack burn depth
returned by 'hd->bwrite'.
* cipher/hash-common.h (_gcry_md_block_write_t): Change return type to
'unsigned int'.
(gry_md_block_ctx_t): Remove 'stack_burn'.
* cipher/md4.c (transform): Return stack burn depth.
(md4_final): Use stack burn depth from transform.
* cipher/md5.c (transform): Return stack burn depth.
(md5_final): Use stack burn depth from transform.
* cipher/rmd160.c (transform): Return stack burn depth.
(rmd160_final): Use stack burn depth from transform.
* cipher/sha1.c (transform): Return stack burn depth.
(sha1_final): Use stack burn depth from transform.
* cipher/sha256.c (transform): Return stack burn depth.
(sha256_final): Use stack burn depth from transform.
* cipher/sha512.c (__transform, transform): Return stack burn depth.
(sha512_final): Use stack burn depth from transform.
* cipher/stribog.c (transform64): Return stack burn depth.
* cipher/tiger.c (transform): Return stack burn depth.
(tiger_final): Use stack burn depth from transform.
--
Transform function might want different depth of stack burn depending on
detected CPU features (like in SHA-512 on ARM with NEON). So return
stack burn depth from transform functions as a request or a hint to
calling function.
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
Diffstat (limited to 'cipher/hash-common.h')
-rw-r--r-- | cipher/hash-common.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/cipher/hash-common.h b/cipher/hash-common.h index 4dd54411..3caf0a78 100644 --- a/cipher/hash-common.h +++ b/cipher/hash-common.h @@ -29,7 +29,8 @@ const char * _gcry_hash_selftest_check_one const void *expect, size_t expectlen); /* Type for the md_write helper function. */ -typedef void (*_gcry_md_block_write_t) (void *c, const unsigned char *buf); +typedef unsigned int (*_gcry_md_block_write_t) (void *c, + const unsigned char *buf); #if defined(HAVE_U64_TYPEDEF) && defined(USE_SHA512) /* SHA-512 needs u64 and larger buffer. */ @@ -47,7 +48,6 @@ typedef struct gcry_md_block_ctx int count; size_t blocksize; _gcry_md_block_write_t bwrite; - size_t stack_burn; } gcry_md_block_ctx_t; |