mirror of
https://github.com/torvalds/linux.git
synced 2026-11-06 21:58:01 +01:00
tpm: Fix auth session leak in tpm2_get_random() error path
When tpm_buf_fill_hmac_session() fails in tpm2_get_random(), the error
path returns without calling tpm2_end_auth_session(), leaking the auth
session. All other error paths in the function handle this correctly.
Fixes: 3d9e043dab ("tpm-buf: Memory-safe allocations")
Cc: stable@vger.kernel.orga # v6.12+
Signed-off-by: Jiangshan Yi <yijiangshan@kylinos.cn>
Link: https://lore.kernel.org/r/20260902074839.417419-1-yijiangshan@kylinos.cn
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
This commit is contained in:
parent
1a70f0b718
commit
1e2f9a611b
|
|
@ -281,8 +281,10 @@ int tpm2_get_random(struct tpm_chip *chip, u8 *dest, size_t max)
|
|||
}
|
||||
tpm_buf_append_u16(buf, num_bytes);
|
||||
err = tpm_buf_fill_hmac_session(chip, buf);
|
||||
if (err)
|
||||
if (err) {
|
||||
tpm2_end_auth_session(chip);
|
||||
return err;
|
||||
}
|
||||
|
||||
err = tpm_transmit_cmd(chip, buf,
|
||||
offsetof(struct tpm2_get_random_out,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user