]> git.tuebingen.mpg.de Git - osl.git/blobdiff - hash.h
Add sha3 implementation, introduce version-2 tables.
[osl.git] / hash.h
diff --git a/hash.h b/hash.h
index 08153383218a36bdd664508b920e2725153656b4..6d6cb8f3911f40e65f2037f57fd90420c69d8120 100644 (file)
--- a/hash.h
+++ b/hash.h
 /** Size of the hash value in bytes. */
 #define HASH_SIZE 20
 
-void sha1_hash(const char *data, unsigned long len, unsigned char *sha1);
+void sha1_hash(const char *data, unsigned long len, unsigned char *result);
+void sha3_hash(const char *data, unsigned long len, unsigned char *result);
 
 static inline void hash_function(uint8_t table_version, const char *data,
                unsigned long len, unsigned char *result)
 {
-       assert(table_version == 1);
-       sha1_hash(data, len, result);
+       if (table_version == 1)
+               return sha1_hash(data, len, result);
+       if (table_version == 2)
+               return sha3_hash(data, len, result);
+       assert(0);
 }
 
 /**