shithub: blake2

Download patch

ref: 802c795b4340ff69e2e14cdd326565d0a8372cf4
parent: fb714d2c830ec524bd3cbb5a45fe70fd90fe5c84
author: Samuel Neves <sneves@dei.uc.pt>
date: Tue Jan 14 13:59:52 EST 2014

Fix BLAKE2sp and BLAKEbp's inner_length bug.

--- a/ref/blake2bp-ref.c
+++ b/ref/blake2bp-ref.c
@@ -35,7 +35,7 @@
   store32( &P->leaf_length, 0 );
   store64( &P->node_offset, offset );
   P->node_depth = 0;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2B_OUTBYTES;
   memset( P->reserved, 0, sizeof( P->reserved ) );
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
@@ -52,7 +52,7 @@
   store32( &P->leaf_length, 0 );
   store64( &P->node_offset, 0 );
   P->node_depth = 1;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2B_OUTBYTES;
   memset( P->reserved, 0, sizeof( P->reserved ) );
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
--- a/ref/blake2sp-ref.c
+++ b/ref/blake2sp-ref.c
@@ -34,7 +34,7 @@
   store32( &P->leaf_length, 0 );
   store48( P->node_offset, offset );
   P->node_depth = 0;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2S_OUTBYTES;
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
   return blake2s_init_param( S, P );
@@ -50,7 +50,7 @@
   store32( &P->leaf_length, 0 );
   store48( P->node_offset, 0ULL );
   P->node_depth = 1;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2S_OUTBYTES;
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
   return blake2s_init_param( S, P );
--- a/sse/blake2bp.c
+++ b/sse/blake2bp.c
@@ -35,7 +35,7 @@
   P->leaf_length = 0;
   P->node_offset = offset;
   P->node_depth = 0;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2B_OUTBYTES;
   memset( P->reserved, 0, sizeof( P->reserved ) );
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
@@ -52,7 +52,7 @@
   P->leaf_length = 0;
   P->node_offset = 0;
   P->node_depth = 1;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2B_OUTBYTES;
   memset( P->reserved, 0, sizeof( P->reserved ) );
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
--- a/sse/blake2sp.c
+++ b/sse/blake2sp.c
@@ -34,7 +34,7 @@
   P->leaf_length = 0;
   store48( P->node_offset, offset );
   P->node_depth = 0;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2S_OUTBYTES;
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
   return blake2s_init_param( S, P );
@@ -50,7 +50,7 @@
   P->leaf_length = 0;
   store48( P->node_offset, 0ULL );
   P->node_depth = 1;
-  P->inner_length = outlen;
+  P->inner_length = BLAKE2S_OUTBYTES;
   memset( P->salt, 0, sizeof( P->salt ) );
   memset( P->personal, 0, sizeof( P->personal ) );
   return blake2s_init_param( S, P );
--