|
@@ -33,10 +33,6 @@
|
|
|
#define SKEIN512_DIGEST_BIT_SIZE 512
|
|
|
#define SKEIN1024_DIGEST_BIT_SIZE 1024
|
|
|
|
|
|
-#ifndef rotl_64
|
|
|
-#define rotl_64(x, N) (((x) << (N)) | ((x) >> (64-(N))))
|
|
|
-#endif
|
|
|
-
|
|
|
/* below two prototype assume we are handed aligned data */
|
|
|
#define skein_put64_lsb_first(dst08, src64, b_cnt) memcpy(dst08, src64, b_cnt)
|
|
|
#define skein_get64_lsb_first(dst64, src08, w_cnt) \
|
|
@@ -49,12 +45,12 @@ enum {
|
|
|
SKEIN_BAD_HASHLEN = 2
|
|
|
};
|
|
|
|
|
|
-#define SKEIN_MODIFIER_WORDS (2) /* number of modifier (tweak) words */
|
|
|
+#define SKEIN_MODIFIER_WORDS 2 /* number of modifier (tweak) words */
|
|
|
|
|
|
-#define SKEIN_256_STATE_WORDS (4)
|
|
|
-#define SKEIN_512_STATE_WORDS (8)
|
|
|
-#define SKEIN_1024_STATE_WORDS (16)
|
|
|
-#define SKEIN_MAX_STATE_WORDS (16)
|
|
|
+#define SKEIN_256_STATE_WORDS 4
|
|
|
+#define SKEIN_512_STATE_WORDS 8
|
|
|
+#define SKEIN_1024_STATE_WORDS 16
|
|
|
+#define SKEIN_MAX_STATE_WORDS 16
|
|
|
|
|
|
#define SKEIN_256_STATE_BYTES (8*SKEIN_256_STATE_WORDS)
|
|
|
#define SKEIN_512_STATE_BYTES (8*SKEIN_512_STATE_WORDS)
|
|
@@ -92,6 +88,11 @@ struct skein_1024_ctx { /* 1024-bit Skein hash context structure */
|
|
|
u8 b[SKEIN_1024_BLOCK_BYTES]; /* partial block buf (8-byte aligned) */
|
|
|
};
|
|
|
|
|
|
+static inline int rotl_64(int x, int N)
|
|
|
+{
|
|
|
+ return (x << N) | (x >> (64 - N));
|
|
|
+}
|
|
|
+
|
|
|
/* Skein APIs for (incremental) "straight hashing" */
|
|
|
int skein_256_init(struct skein_256_ctx *ctx, size_t hash_bit_len);
|
|
|
int skein_512_init(struct skein_512_ctx *ctx, size_t hash_bit_len);
|