ref: d0bf1ed303f05b74ee7033111869f7393965f333
parent: cfc536848ab8aca62961c7ee446006d53814132f
author: Samuel Neves <sneves@dei.uc.pt>
date: Tue Jan 19 19:53:36 EST 2016
Consistent checks at blake2x_final (reported by Bill Cox)
--- a/ref/blake2b-ref.c
+++ b/ref/blake2b-ref.c
@@ -312,7 +312,7 @@
{
uint8_t buffer[BLAKE2B_OUTBYTES] = {0};
- if( outlen > BLAKE2B_OUTBYTES )
+ if( out == NULL || outlen == 0 || outlen > BLAKE2B_OUTBYTES )
return -1;
if( S->buflen > BLAKE2B_BLOCKBYTES )
--- a/ref/blake2s-ref.c
+++ b/ref/blake2s-ref.c
@@ -301,7 +301,7 @@
{
uint8_t buffer[BLAKE2S_OUTBYTES] = {0};
- if( outlen > BLAKE2S_OUTBYTES )
+ if( out == NULL || outlen == 0 || outlen > BLAKE2S_OUTBYTES )
return -1;
if( S->buflen > BLAKE2S_BLOCKBYTES )
--
⑨