diff options
author | Hans de Goede <hdegoede@redhat.com> | 2019-09-01 16:35:31 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2019-09-05 00:54:54 -0400 |
commit | 34d6245fbc81e764806a65fceaeb3ab3274a1e63 (patch) | |
tree | ec464144e0cea02d4d998e6d07777fcf78fa63d9 /include/crypto | |
parent | 527aa8958f6e112e10479a8a8989c94164e090c0 (diff) |
crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h
The generic sha256 implementation from lib/crypto/sha256.c uses data
structs defined in crypto/sha.h, so lets move the function prototypes
there too.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto')
-rw-r--r-- | include/crypto/sha.h | 21 | ||||
-rw-r--r-- | include/crypto/sha256.h | 34 |
2 files changed, 21 insertions, 34 deletions
diff --git a/include/crypto/sha.h b/include/crypto/sha.h index 8a46202b1857..535955c84187 100644 --- a/include/crypto/sha.h +++ b/include/crypto/sha.h | |||
@@ -112,4 +112,25 @@ extern int crypto_sha512_update(struct shash_desc *desc, const u8 *data, | |||
112 | 112 | ||
113 | extern int crypto_sha512_finup(struct shash_desc *desc, const u8 *data, | 113 | extern int crypto_sha512_finup(struct shash_desc *desc, const u8 *data, |
114 | unsigned int len, u8 *hash); | 114 | unsigned int len, u8 *hash); |
115 | |||
116 | /* | ||
117 | * Stand-alone implementation of the SHA256 algorithm. It is designed to | ||
118 | * have as little dependencies as possible so it can be used in the | ||
119 | * kexec_file purgatory. In other cases you should generally use the | ||
120 | * hash APIs from include/crypto/hash.h. Especially when hashing large | ||
121 | * amounts of data as those APIs may be hw-accelerated. | ||
122 | * | ||
123 | * For details see lib/crypto/sha256.c | ||
124 | */ | ||
125 | |||
126 | extern int sha256_init(struct sha256_state *sctx); | ||
127 | extern int sha256_update(struct sha256_state *sctx, const u8 *input, | ||
128 | unsigned int length); | ||
129 | extern int sha256_final(struct sha256_state *sctx, u8 *hash); | ||
130 | |||
131 | extern int sha224_init(struct sha256_state *sctx); | ||
132 | extern int sha224_update(struct sha256_state *sctx, const u8 *input, | ||
133 | unsigned int length); | ||
134 | extern int sha224_final(struct sha256_state *sctx, u8 *hash); | ||
135 | |||
115 | #endif | 136 | #endif |
diff --git a/include/crypto/sha256.h b/include/crypto/sha256.h deleted file mode 100644 index a75998d65a41..000000000000 --- a/include/crypto/sha256.h +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | /* SPDX-License-Identifier: GPL-2.0-only */ | ||
2 | /* | ||
3 | * Copyright (C) 2014 Red Hat Inc. | ||
4 | * | ||
5 | * Author: Vivek Goyal <vgoyal@redhat.com> | ||
6 | */ | ||
7 | |||
8 | #ifndef SHA256_H | ||
9 | #define SHA256_H | ||
10 | |||
11 | #include <linux/types.h> | ||
12 | #include <crypto/sha.h> | ||
13 | |||
14 | /* | ||
15 | * Stand-alone implementation of the SHA256 algorithm. It is designed to | ||
16 | * have as little dependencies as possible so it can be used in the | ||
17 | * kexec_file purgatory. In other cases you should generally use the | ||
18 | * hash APIs from include/crypto/hash.h. Especially when hashing large | ||
19 | * amounts of data as those APIs may be hw-accelerated. | ||
20 | * | ||
21 | * For details see lib/crypto/sha256.c | ||
22 | */ | ||
23 | |||
24 | extern int sha256_init(struct sha256_state *sctx); | ||
25 | extern int sha256_update(struct sha256_state *sctx, const u8 *input, | ||
26 | unsigned int length); | ||
27 | extern int sha256_final(struct sha256_state *sctx, u8 *hash); | ||
28 | |||
29 | extern int sha224_init(struct sha256_state *sctx); | ||
30 | extern int sha224_update(struct sha256_state *sctx, const u8 *input, | ||
31 | unsigned int length); | ||
32 | extern int sha224_final(struct sha256_state *sctx, u8 *hash); | ||
33 | |||
34 | #endif /* SHA256_H */ | ||