mirror of https://gitee.com/openkylin/linux.git
[CRYPTO] digest: Remove unnecessary zeroing during init
Various digest algorithms operate one block at a time and therefore keep a temporary buffer of partial blocks. This buffer does not need to be initialised since there is a counter which indicates what is and isn't valid in it. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
8b55ba0303
commit
43600106e3
|
@ -40,19 +40,20 @@ struct crypt_s390_sha1_ctx {
|
||||||
u8 buffer[2 * SHA1_BLOCK_SIZE];
|
u8 buffer[2 * SHA1_BLOCK_SIZE];
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void sha1_init(void *ctx_arg)
|
||||||
sha1_init(void *ctx)
|
|
||||||
{
|
{
|
||||||
static const struct crypt_s390_sha1_ctx initstate = {
|
struct crypt_s390_sha1_ctx *ctx = ctx_arg;
|
||||||
.state = {
|
static const u32 initstate[5] = {
|
||||||
0x67452301,
|
0x67452301,
|
||||||
0xEFCDAB89,
|
0xEFCDAB89,
|
||||||
0x98BADCFE,
|
0x98BADCFE,
|
||||||
0x10325476,
|
0x10325476,
|
||||||
0xC3D2E1F0
|
0xC3D2E1F0
|
||||||
},
|
|
||||||
};
|
};
|
||||||
memcpy(ctx, &initstate, sizeof(initstate));
|
|
||||||
|
ctx->count = 0;
|
||||||
|
memcpy(ctx->state, &initstate, sizeof(initstate));
|
||||||
|
ctx->buf_len = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -44,7 +44,6 @@ static void sha256_init(void *ctx)
|
||||||
sctx->state[6] = 0x1f83d9ab;
|
sctx->state[6] = 0x1f83d9ab;
|
||||||
sctx->state[7] = 0x5be0cd19;
|
sctx->state[7] = 0x5be0cd19;
|
||||||
sctx->count = 0;
|
sctx->count = 0;
|
||||||
memset(sctx->buf, 0, sizeof(sctx->buf));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sha256_update(void *ctx, const u8 *data, unsigned int len)
|
static void sha256_update(void *ctx, const u8 *data, unsigned int len)
|
||||||
|
|
|
@ -242,7 +242,6 @@ static void sha256_init(void *ctx)
|
||||||
sctx->state[6] = H6;
|
sctx->state[6] = H6;
|
||||||
sctx->state[7] = H7;
|
sctx->state[7] = H7;
|
||||||
sctx->count[0] = sctx->count[1] = 0;
|
sctx->count[0] = sctx->count[1] = 0;
|
||||||
memset(sctx->buf, 0, sizeof(sctx->buf));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sha256_update(void *ctx, const u8 *data, unsigned int len)
|
static void sha256_update(void *ctx, const u8 *data, unsigned int len)
|
||||||
|
|
|
@ -173,7 +173,6 @@ sha512_init(void *ctx)
|
||||||
sctx->state[6] = H6;
|
sctx->state[6] = H6;
|
||||||
sctx->state[7] = H7;
|
sctx->state[7] = H7;
|
||||||
sctx->count[0] = sctx->count[1] = sctx->count[2] = sctx->count[3] = 0;
|
sctx->count[0] = sctx->count[1] = sctx->count[2] = sctx->count[3] = 0;
|
||||||
memset(sctx->buf, 0, sizeof(sctx->buf));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -189,7 +188,6 @@ sha384_init(void *ctx)
|
||||||
sctx->state[6] = HP6;
|
sctx->state[6] = HP6;
|
||||||
sctx->state[7] = HP7;
|
sctx->state[7] = HP7;
|
||||||
sctx->count[0] = sctx->count[1] = sctx->count[2] = sctx->count[3] = 0;
|
sctx->count[0] = sctx->count[1] = sctx->count[2] = sctx->count[3] = 0;
|
||||||
memset(sctx->buf, 0, sizeof(sctx->buf));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -500,7 +500,6 @@ static void tgr192_init(void *ctx)
|
||||||
{
|
{
|
||||||
struct tgr192_ctx *tctx = ctx;
|
struct tgr192_ctx *tctx = ctx;
|
||||||
|
|
||||||
memset (tctx->hash, 0, 64);
|
|
||||||
tctx->a = 0x0123456789abcdefULL;
|
tctx->a = 0x0123456789abcdefULL;
|
||||||
tctx->b = 0xfedcba9876543210ULL;
|
tctx->b = 0xfedcba9876543210ULL;
|
||||||
tctx->c = 0xf096a5b4c3b2e187ULL;
|
tctx->c = 0xf096a5b4c3b2e187ULL;
|
||||||
|
|
Loading…
Reference in New Issue