diff options
author | Marcelo Cerri <marcelo.cerri@canonical.com> | 2016-09-28 12:42:09 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2016-10-02 10:26:40 -0400 |
commit | a397ba829d7f8aff4c90af3704573a28ccd61a59 (patch) | |
tree | 624b7edddfc2f334b26478d5b9a9bbc9a73d0406 | |
parent | 0cf43f509f72128196e23f5ade7e512a72152cc6 (diff) |
crypto: ghash-generic - move common definitions to a new header file
Move common values and types used by ghash-generic to a new header file
so drivers can directly use ghash-generic as a fallback implementation.
Fixes: cc333cd68dfa ("crypto: vmx - Adding GHASH routines for VMX module")
Cc: stable@vger.kernel.org
Signed-off-by: Marcelo Cerri <marcelo.cerri@canonical.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r-- | crypto/ghash-generic.c | 13 | ||||
-rw-r--r-- | include/crypto/ghash.h | 23 |
2 files changed, 24 insertions, 12 deletions
diff --git a/crypto/ghash-generic.c b/crypto/ghash-generic.c index bac70995e064..12ad3e3a84e3 100644 --- a/crypto/ghash-generic.c +++ b/crypto/ghash-generic.c | |||
@@ -14,24 +14,13 @@ | |||
14 | 14 | ||
15 | #include <crypto/algapi.h> | 15 | #include <crypto/algapi.h> |
16 | #include <crypto/gf128mul.h> | 16 | #include <crypto/gf128mul.h> |
17 | #include <crypto/ghash.h> | ||
17 | #include <crypto/internal/hash.h> | 18 | #include <crypto/internal/hash.h> |
18 | #include <linux/crypto.h> | 19 | #include <linux/crypto.h> |
19 | #include <linux/init.h> | 20 | #include <linux/init.h> |
20 | #include <linux/kernel.h> | 21 | #include <linux/kernel.h> |
21 | #include <linux/module.h> | 22 | #include <linux/module.h> |
22 | 23 | ||
23 | #define GHASH_BLOCK_SIZE 16 | ||
24 | #define GHASH_DIGEST_SIZE 16 | ||
25 | |||
26 | struct ghash_ctx { | ||
27 | struct gf128mul_4k *gf128; | ||
28 | }; | ||
29 | |||
30 | struct ghash_desc_ctx { | ||
31 | u8 buffer[GHASH_BLOCK_SIZE]; | ||
32 | u32 bytes; | ||
33 | }; | ||
34 | |||
35 | static int ghash_init(struct shash_desc *desc) | 24 | static int ghash_init(struct shash_desc *desc) |
36 | { | 25 | { |
37 | struct ghash_desc_ctx *dctx = shash_desc_ctx(desc); | 26 | struct ghash_desc_ctx *dctx = shash_desc_ctx(desc); |
diff --git a/include/crypto/ghash.h b/include/crypto/ghash.h new file mode 100644 index 000000000000..2a61c9bbab8f --- /dev/null +++ b/include/crypto/ghash.h | |||
@@ -0,0 +1,23 @@ | |||
1 | /* | ||
2 | * Common values for GHASH algorithms | ||
3 | */ | ||
4 | |||
5 | #ifndef __CRYPTO_GHASH_H__ | ||
6 | #define __CRYPTO_GHASH_H__ | ||
7 | |||
8 | #include <linux/types.h> | ||
9 | #include <crypto/gf128mul.h> | ||
10 | |||
11 | #define GHASH_BLOCK_SIZE 16 | ||
12 | #define GHASH_DIGEST_SIZE 16 | ||
13 | |||
14 | struct ghash_ctx { | ||
15 | struct gf128mul_4k *gf128; | ||
16 | }; | ||
17 | |||
18 | struct ghash_desc_ctx { | ||
19 | u8 buffer[GHASH_BLOCK_SIZE]; | ||
20 | u32 bytes; | ||
21 | }; | ||
22 | |||
23 | #endif | ||