diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/crypto/xts.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/crypto/xts.h b/include/crypto/xts.h new file mode 100644 index 000000000000..72c09eb56437 --- /dev/null +++ b/include/crypto/xts.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | #ifndef _CRYPTO_XTS_H | ||
| 2 | #define _CRYPTO_XTS_H | ||
| 3 | |||
| 4 | #include <crypto/b128ops.h> | ||
| 5 | |||
| 6 | struct scatterlist; | ||
| 7 | struct blkcipher_desc; | ||
| 8 | |||
| 9 | #define XTS_BLOCK_SIZE 16 | ||
| 10 | |||
| 11 | struct xts_crypt_req { | ||
| 12 | be128 *tbuf; | ||
| 13 | unsigned int tbuflen; | ||
| 14 | |||
| 15 | void *tweak_ctx; | ||
| 16 | void (*tweak_fn)(void *ctx, u8* dst, const u8* src); | ||
| 17 | void *crypt_ctx; | ||
| 18 | void (*crypt_fn)(void *ctx, u8 *blks, unsigned int nbytes); | ||
| 19 | }; | ||
| 20 | |||
| 21 | #define XTS_TWEAK_CAST(x) ((void (*)(void *, u8*, const u8*))(x)) | ||
| 22 | |||
| 23 | int xts_crypt(struct blkcipher_desc *desc, struct scatterlist *dst, | ||
| 24 | struct scatterlist *src, unsigned int nbytes, | ||
| 25 | struct xts_crypt_req *req); | ||
| 26 | |||
| 27 | #endif /* _CRYPTO_XTS_H */ | ||
