mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-14 04:41:26 +00:00
[CRYPTO] aead: Return EBADMSG for ICV mismatch
This patch changes gcm/authenc to return EBADMSG instead of EINVAL for ICV mismatches. This convention has already been adopted by IPsec. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
6160b28992
commit
fe70f5dfe1
@ -200,7 +200,7 @@ auth_unlock:
|
||||
|
||||
authsize = crypto_aead_authsize(authenc);
|
||||
scatterwalk_map_and_copy(ihash, src, cryptlen, authsize, 0);
|
||||
return memcmp(ihash, ohash, authsize) ? -EINVAL : 0;
|
||||
return memcmp(ihash, ohash, authsize) ? -EBADMSG: 0;
|
||||
}
|
||||
|
||||
static void crypto_authenc_decrypt_done(struct crypto_async_request *req,
|
||||
|
@ -327,7 +327,7 @@ static int crypto_gcm_decrypt(struct aead_request *req)
|
||||
|
||||
scatterwalk_map_and_copy(iauth_tag, req->src, cryptlen, authsize, 0);
|
||||
if (memcmp(iauth_tag, auth_tag, authsize))
|
||||
return -EINVAL;
|
||||
return -EBADMSG;
|
||||
|
||||
return crypto_ablkcipher_decrypt(&abreq);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user