aboutsummaryrefslogtreecommitdiffstats
path: root/libar2_hash.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--libar2_hash.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libar2_hash.c b/libar2_hash.c
index 9d629f6..49bf61a 100644
--- a/libar2_hash.c
+++ b/libar2_hash.c
@@ -423,8 +423,11 @@ initial_hash(unsigned char hash[static 64], void *msg, size_t msglen,
}
if (n == 0) {
off += libblake_blake2b_update(&state, SEGMENT(params->ad, params->adlen, off));
- if (params->adlen - off > 128)
+ if (params->adlen - off > 128) {
+ /* $covered{$ (not really possible, but just to be safe) */
off += libblake_blake2b_force_update(&state, SEGMENT(params->ad, params->adlen, off));
+ /* $covered}$ */
+ }
memcpy(block, SEGMENT(params->ad, params->adlen, off));
n = params->adlen - off;
}