mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
[CRYPTO] all: Pass tfm instead of ctx to algorithms
Up until now algorithms have been happy to get a context pointer since they know everything that's in the tfm already (e.g., alignment, block size). However, once we have parameterised algorithms, such information will be specific to each tfm. So the algorithm API needs to be changed to pass the tfm structure instead of the context pointer. This patch is basically a text substitution. The only tricky bit is the assembly routines that need to get the context pointer offset through asm-offsets.h. Signed-off-by: Herbert Xu <[email protected]>
This commit is contained in:
parent
43600106e3
commit
6c2bb98bc3
37 changed files with 349 additions and 331 deletions
12
crypto/md5.c
12
crypto/md5.c
|
|
@ -147,9 +147,9 @@ static inline void md5_transform_helper(struct md5_ctx *ctx)
|
|||
md5_transform(ctx->hash, ctx->block);
|
||||
}
|
||||
|
||||
static void md5_init(void *ctx)
|
||||
static void md5_init(struct crypto_tfm *tfm)
|
||||
{
|
||||
struct md5_ctx *mctx = ctx;
|
||||
struct md5_ctx *mctx = crypto_tfm_ctx(tfm);
|
||||
|
||||
mctx->hash[0] = 0x67452301;
|
||||
mctx->hash[1] = 0xefcdab89;
|
||||
|
|
@ -158,9 +158,9 @@ static void md5_init(void *ctx)
|
|||
mctx->byte_count = 0;
|
||||
}
|
||||
|
||||
static void md5_update(void *ctx, const u8 *data, unsigned int len)
|
||||
static void md5_update(struct crypto_tfm *tfm, const u8 *data, unsigned int len)
|
||||
{
|
||||
struct md5_ctx *mctx = ctx;
|
||||
struct md5_ctx *mctx = crypto_tfm_ctx(tfm);
|
||||
const u32 avail = sizeof(mctx->block) - (mctx->byte_count & 0x3f);
|
||||
|
||||
mctx->byte_count += len;
|
||||
|
|
@ -188,9 +188,9 @@ static void md5_update(void *ctx, const u8 *data, unsigned int len)
|
|||
memcpy(mctx->block, data, len);
|
||||
}
|
||||
|
||||
static void md5_final(void *ctx, u8 *out)
|
||||
static void md5_final(struct crypto_tfm *tfm, u8 *out)
|
||||
{
|
||||
struct md5_ctx *mctx = ctx;
|
||||
struct md5_ctx *mctx = crypto_tfm_ctx(tfm);
|
||||
const unsigned int offset = mctx->byte_count & 0x3f;
|
||||
char *p = (char *)mctx->block + offset;
|
||||
int padding = 56 - (offset + 1);
|
||||
|
|
|
|||
Loading…
Reference in a new issue