1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef _CRYPTO_CAST5_H |
3 | #define _CRYPTO_CAST5_H |
4 | |
5 | #include <linux/types.h> |
6 | #include <linux/crypto.h> |
7 | #include <crypto/cast_common.h> |
8 | |
9 | #define CAST5_BLOCK_SIZE 8 |
10 | #define CAST5_MIN_KEY_SIZE 5 |
11 | #define CAST5_MAX_KEY_SIZE 16 |
12 | |
13 | struct cast5_ctx { |
14 | u32 Km[16]; |
15 | u8 Kr[16]; |
16 | int rr; /* rr ? rounds = 12 : rounds = 16; (rfc 2144) */ |
17 | }; |
18 | |
19 | int cast5_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen); |
20 | |
21 | void __cast5_encrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); |
22 | void __cast5_decrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); |
23 | |
24 | #endif |
25 | |