mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 04:08:46 +07:00
ebeea983dd
The XTS template now wraps an ECB mode algorithm rather than the block cipher directly. Therefore it is now redundant for crypto modules to wrap their ECB code with generic XTS code themselves via xts_crypt(). Remove the xts-twofish-3way algorithm which did this. Users who request xts(twofish) and previously would have gotten xts-twofish-3way will now get xts(ecb-twofish-3way) instead, which is just as fast. Signed-off-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
29 lines
996 B
C
29 lines
996 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef ASM_X86_TWOFISH_H
|
|
#define ASM_X86_TWOFISH_H
|
|
|
|
#include <linux/crypto.h>
|
|
#include <crypto/twofish.h>
|
|
#include <crypto/b128ops.h>
|
|
|
|
/* regular block cipher functions from twofish_x86_64 module */
|
|
asmlinkage void twofish_enc_blk(struct twofish_ctx *ctx, u8 *dst,
|
|
const u8 *src);
|
|
asmlinkage void twofish_dec_blk(struct twofish_ctx *ctx, u8 *dst,
|
|
const u8 *src);
|
|
|
|
/* 3-way parallel cipher functions */
|
|
asmlinkage void __twofish_enc_blk_3way(struct twofish_ctx *ctx, u8 *dst,
|
|
const u8 *src, bool xor);
|
|
asmlinkage void twofish_dec_blk_3way(struct twofish_ctx *ctx, u8 *dst,
|
|
const u8 *src);
|
|
|
|
/* helpers from twofish_x86_64-3way module */
|
|
extern void twofish_dec_blk_cbc_3way(void *ctx, u128 *dst, const u128 *src);
|
|
extern void twofish_enc_blk_ctr(void *ctx, u128 *dst, const u128 *src,
|
|
le128 *iv);
|
|
extern void twofish_enc_blk_ctr_3way(void *ctx, u128 *dst, const u128 *src,
|
|
le128 *iv);
|
|
|
|
#endif /* ASM_X86_TWOFISH_H */
|