crypto: sha256-generic - move to generic glue implementation
[cascardo/linux.git] / include / crypto / sha.h
index 190f8a0..e28c4b5 100644 (file)
 #define SHA512_H7      0x5be0cd19137e2179ULL
 
 struct sha1_state {
-       u64 count;
        u32 state[SHA1_DIGEST_SIZE / 4];
+       u64 count;
        u8 buffer[SHA1_BLOCK_SIZE];
 };
 
 struct sha256_state {
-       u64 count;
        u32 state[SHA256_DIGEST_SIZE / 4];
+       u64 count;
        u8 buf[SHA256_BLOCK_SIZE];
 };
 
 struct sha512_state {
-       u64 count[2];
        u64 state[SHA512_DIGEST_SIZE / 8];
+       u64 count[2];
        u8 buf[SHA512_BLOCK_SIZE];
 };
 
@@ -87,9 +87,15 @@ struct shash_desc;
 extern int crypto_sha1_update(struct shash_desc *desc, const u8 *data,
                              unsigned int len);
 
+extern int crypto_sha1_finup(struct shash_desc *desc, const u8 *data,
+                            unsigned int len, u8 *hash);
+
 extern int crypto_sha256_update(struct shash_desc *desc, const u8 *data,
                              unsigned int len);
 
+extern int crypto_sha256_finup(struct shash_desc *desc, const u8 *data,
+                              unsigned int len, u8 *hash);
+
 extern int crypto_sha512_update(struct shash_desc *desc, const u8 *data,
                              unsigned int len);
 #endif