From e1ff5cc788f1f418e75d63b8e4c4fe5554fbe2c8 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Thu, 17 Feb 2022 19:43:51 +0100 Subject: Some fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libar2_hash.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'libar2_hash.c') diff --git a/libar2_hash.c b/libar2_hash.c index 4ccbf18..5704ac4 100644 --- a/libar2_hash.c +++ b/libar2_hash.c @@ -725,7 +725,7 @@ libar2_hash(void *hash, void *msg, size_t msglen, struct libar2_argon2_parameter #ifndef USING_LITTLE_ENDIAN unsigned char block[1024 + 128]; #endif - unsigned char hash0[256]; + _Alignas(4) unsigned char hash0[256]; uint_least32_t blocks, seglen, lanelen; struct block *memory; size_t i, p, s, nthreads, ts[16], ti, tn, bufsize; @@ -760,7 +760,8 @@ libar2_hash(void *hash, void *msg, size_t msglen, struct libar2_argon2_parameter return -1; if (params->type == LIBAR2_ARGON2DS) { - sbox = ctx->allocate(1024, sizeof(*sbox), ALIGNOF(uint_least64_t), ctx); + alignment = MAX(ALIGNOF(uint_least64_t), MAX_SIMD_ALIGNMENT); + sbox = ctx->allocate(1024, sizeof(*sbox), alignment, ctx); if (!sbox) { ctx->deallocate(memory, ctx); return -1; -- cgit v1.2.3-70-g09d2