commit 5527aef56f0d9a443d94f51d2a7f50ddc50c61cc parent 0bd4cd8101422e0f3604cdf80e28ec4e8ac67877 Author: David Goulet <dgoulet@torproject.org> Date: Thu, 17 Dec 2020 08:25:29 -0500 Merge branch 'maint-0.4.5' Diffstat:
| A | changes/bug40210 | | | 5 | +++++ |
| M | src/ext/keccak-tiny/keccak-tiny.h | | | 2 | +- |
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/changes/bug40210 b/changes/bug40210 @@ -0,0 +1,5 @@ + o Minor features (crypto): + - Fix undefined behavior on our Keccak library. The bug only appears on + platforms with 32-byte CPU cache lines (e.g. armv5tel) and would result + in wrong digests. Fixes bug 40210; bugfix on 0.2.8.1-alpha. Thanks to + Bernhard Übelacker, Arnd Bergmann and weasel for diagnosing this. diff --git a/src/ext/keccak-tiny/keccak-tiny.h b/src/ext/keccak-tiny/keccak-tiny.h @@ -21,7 +21,7 @@ typedef struct keccak_state { size_t offset; uint8_t finalized : 1; -} keccak_state; +} __attribute__((aligned(8))) keccak_state; /* Initialize a Keccak instance suitable for SHA-3 hash functions. */ int keccak_digest_init(keccak_state *s, size_t bits);