shithub: blake2

Download patch

ref: de31f550f3aef856472a7e70a6481136553d5097
parent: cb19577245324bbcda774adaec9c5307e2d9280a
author: Samuel Neves <sneves@dei.uc.pt>
date: Tue Oct 11 18:12:43 EDT 2016

replace some c99isms

--- a/ref/blake2.h
+++ b/ref/blake2.h
@@ -123,13 +123,13 @@
 
   typedef struct blake2b_param__ blake2b_param;
 
-  typedef struct blake2xs_state__ 
+  typedef struct blake2xs_state__
   {
     blake2s_state S[1];
     blake2s_param P[1];
   } blake2xs_state;
 
-  typedef struct blake2xb_state__ 
+  typedef struct blake2xb_state__
   {
     blake2b_state S[1];
     blake2b_param P[1];
--- a/ref/blake2sp-ref.c
+++ b/ref/blake2sp-ref.c
@@ -51,8 +51,8 @@
   P->fanout = PARALLELISM_DEGREE;
   P->depth = 2;
   store32( &P->leaf_length, 0 );
-  store32( &P->node_offset, 0ULL );
-  store16( &P->xof_length, 0ULL );
+  store32( &P->node_offset, 0 );
+  store16( &P->xof_length, 0 );
   P->node_depth = 1;
   P->inner_length = BLAKE2S_OUTBYTES;
   memset( P->salt, 0, sizeof( P->salt ) );
--- a/ref/blake2xb-ref.c
+++ b/ref/blake2xb-ref.c
@@ -164,11 +164,11 @@
 #if defined(BLAKE2XB_SELFTEST)
 #include <string.h>
 #include "blake2-kat.h"
-int main( int argc, char **argv )
+int main( void )
 {
   uint8_t key[BLAKE2B_KEYBYTES];
   uint8_t buf[BLAKE2_KAT_LENGTH];
-  size_t i, step;
+  size_t i, step, outlen;
 
   for( i = 0; i < BLAKE2B_KEYBYTES; ++i ) {
     key[i] = ( uint8_t )i;
@@ -182,12 +182,13 @@
   /* (Test of input lengths mostly covered by blake2s tests) */
 
   /* Test simple API */
-  for( size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
+  for( outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
   {
       uint8_t hash[BLAKE2_KAT_LENGTH] = {0};
-      blake2xb( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2B_KEYBYTES );
+      if( blake2xb( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2B_KEYBYTES ) < 0 ) {
+        goto fail;
+      }
 
-
       if( 0 != memcmp( hash, blake2xb_keyed_kat[outlen-1], outlen ) )
       {
         goto fail;
@@ -196,7 +197,7 @@
 
   /* Test streaming API */
   for(step = 1; step < BLAKE2B_BLOCKBYTES; ++step) {
-    for (size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
+    for (outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
       uint8_t hash[BLAKE2_KAT_LENGTH];
       blake2xb_state S;
       uint8_t * p = buf;
--- a/ref/blake2xs-ref.c
+++ b/ref/blake2xs-ref.c
@@ -166,7 +166,7 @@
 {
   uint8_t key[BLAKE2S_KEYBYTES];
   uint8_t buf[BLAKE2_KAT_LENGTH];
-  size_t i, step;
+  size_t i, step, outlen;
 
   for( i = 0; i < BLAKE2S_KEYBYTES; ++i ) {
     key[i] = ( uint8_t )i;
@@ -180,10 +180,12 @@
   /* (Test of input lengths mostly covered by blake2s tests) */
 
   /* Test simple API */
-  for( size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
+  for( outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
   {
       uint8_t hash[BLAKE2_KAT_LENGTH] = {0};
-      blake2xs( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2S_KEYBYTES );
+      if( blake2xs( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2S_KEYBYTES ) < 0 ) {
+        goto fail;
+      }
 
       if( 0 != memcmp( hash, blake2xs_keyed_kat[outlen-1], outlen ) )
       {
@@ -193,7 +195,7 @@
 
   /* Test streaming API */
   for(step = 1; step < BLAKE2S_BLOCKBYTES; ++step) {
-    for (size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
+    for (outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
       uint8_t hash[BLAKE2_KAT_LENGTH];
       blake2xs_state S;
       uint8_t * p = buf;
--- a/sse/blake2xb.c
+++ b/sse/blake2xb.c
@@ -1,17 +1,17 @@
 /*
    BLAKE2 reference source code package - reference C implementations
-  
-   Copyright 2016, JP Aumasson <jeanphilippe.aumasson@gmail.com>.  
-   Copyright 2016, Samuel Neves <sneves@dei.uc.pt>.  
-   
+
+   Copyright 2016, JP Aumasson <jeanphilippe.aumasson@gmail.com>.
+   Copyright 2016, Samuel Neves <sneves@dei.uc.pt>.
+
    You may use this under the terms of the CC0, the OpenSSL Licence, or
    the Apache Public License 2.0, at your option.  The terms of these
    licenses can be found at:
-  
+
    - CC0 1.0 Universal : http://creativecommons.org/publicdomain/zero/1.0
    - OpenSSL license   : https://www.openssl.org/source/license.html
    - Apache 2.0        : http://www.apache.org/licenses/LICENSE-2.0
-  
+
    More information about the BLAKE2 hash function can be found at
    https://blake2.net.
 */
@@ -164,11 +164,11 @@
 #if defined(BLAKE2XB_SELFTEST)
 #include <string.h>
 #include "blake2-kat.h"
-int main( int argc, char **argv )
+int main( void )
 {
   uint8_t key[BLAKE2B_KEYBYTES];
   uint8_t buf[BLAKE2_KAT_LENGTH];
-  size_t i, step;
+  size_t i, step, outlen;
 
   for( i = 0; i < BLAKE2B_KEYBYTES; ++i ) {
     key[i] = ( uint8_t )i;
@@ -182,7 +182,7 @@
   /* (Test of input lengths mostly covered by blake2s tests) */
 
   /* Test simple API */
-  for( size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
+  for( outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
   {
       uint8_t hash[BLAKE2_KAT_LENGTH] = {0};
       blake2xb( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2B_KEYBYTES );
@@ -196,7 +196,7 @@
 
   /* Test streaming API */
   for(step = 1; step < BLAKE2B_BLOCKBYTES; ++step) {
-    for (size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
+    for (outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
       uint8_t hash[BLAKE2_KAT_LENGTH];
       blake2xb_state S;
       uint8_t * p = buf;
--- a/sse/blake2xs.c
+++ b/sse/blake2xs.c
@@ -1,17 +1,17 @@
 /*
    BLAKE2 reference source code package - reference C implementations
-  
-   Copyright 2016, JP Aumasson <jeanphilippe.aumasson@gmail.com>.  
-   Copyright 2016, Samuel Neves <sneves@dei.uc.pt>.  
-   
+
+   Copyright 2016, JP Aumasson <jeanphilippe.aumasson@gmail.com>.
+   Copyright 2016, Samuel Neves <sneves@dei.uc.pt>.
+
    You may use this under the terms of the CC0, the OpenSSL Licence, or
    the Apache Public License 2.0, at your option.  The terms of these
    licenses can be found at:
-  
+
    - CC0 1.0 Universal : http://creativecommons.org/publicdomain/zero/1.0
    - OpenSSL license   : https://www.openssl.org/source/license.html
    - Apache 2.0        : http://www.apache.org/licenses/LICENSE-2.0
-  
+
    More information about the BLAKE2 hash function can be found at
    https://blake2.net.
 */
@@ -166,7 +166,7 @@
 {
   uint8_t key[BLAKE2S_KEYBYTES];
   uint8_t buf[BLAKE2_KAT_LENGTH];
-  size_t i, step;
+  size_t i, step, outlen;
 
   for( i = 0; i < BLAKE2S_KEYBYTES; ++i ) {
     key[i] = ( uint8_t )i;
@@ -180,7 +180,7 @@
   /* (Test of input lengths mostly covered by blake2s tests) */
 
   /* Test simple API */
-  for( size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
+  for( outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen )
   {
       uint8_t hash[BLAKE2_KAT_LENGTH] = {0};
       blake2xs( hash, outlen, buf, BLAKE2_KAT_LENGTH, key, BLAKE2S_KEYBYTES );
@@ -193,7 +193,7 @@
 
   /* Test streaming API */
   for(step = 1; step < BLAKE2S_BLOCKBYTES; ++step) {
-    for (size_t outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
+    for (outlen = 1; outlen <= BLAKE2_KAT_LENGTH; ++outlen) {
       uint8_t hash[BLAKE2_KAT_LENGTH];
       blake2xs_state S;
       uint8_t * p = buf;
--