Merge git://github.com/herbertx/crypto
* git://github.com/herbertx/crypto: crypto: ghash - Avoid null pointer dereference if no key is set
This commit is contained in:
commit
2efd7c0fdc
|
@ -67,6 +67,9 @@ static int ghash_update(struct shash_desc *desc,
|
||||||
struct ghash_ctx *ctx = crypto_shash_ctx(desc->tfm);
|
struct ghash_ctx *ctx = crypto_shash_ctx(desc->tfm);
|
||||||
u8 *dst = dctx->buffer;
|
u8 *dst = dctx->buffer;
|
||||||
|
|
||||||
|
if (!ctx->gf128)
|
||||||
|
return -ENOKEY;
|
||||||
|
|
||||||
if (dctx->bytes) {
|
if (dctx->bytes) {
|
||||||
int n = min(srclen, dctx->bytes);
|
int n = min(srclen, dctx->bytes);
|
||||||
u8 *pos = dst + (GHASH_BLOCK_SIZE - dctx->bytes);
|
u8 *pos = dst + (GHASH_BLOCK_SIZE - dctx->bytes);
|
||||||
|
@ -119,6 +122,9 @@ static int ghash_final(struct shash_desc *desc, u8 *dst)
|
||||||
struct ghash_ctx *ctx = crypto_shash_ctx(desc->tfm);
|
struct ghash_ctx *ctx = crypto_shash_ctx(desc->tfm);
|
||||||
u8 *buf = dctx->buffer;
|
u8 *buf = dctx->buffer;
|
||||||
|
|
||||||
|
if (!ctx->gf128)
|
||||||
|
return -ENOKEY;
|
||||||
|
|
||||||
ghash_flush(ctx, dctx);
|
ghash_flush(ctx, dctx);
|
||||||
memcpy(dst, buf, GHASH_BLOCK_SIZE);
|
memcpy(dst, buf, GHASH_BLOCK_SIZE);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue