[PATCH v6 2/9] keys/trusted_keys: fix PKWM output buffer cleanup

From: Srish Srinivasan

Date: Thu Nov 05 2026 - 09:49:46 EST


The PKWM seal and unseal paths unconditionally free their output buffers,
but the PLPKS helpers can return without initializing those pointers.

Initialize the output buffer pointers to NULL to make cleanup safe on early
failure paths.

Fixes: c99fcb0d735b ("keys/trusted_keys: establish PKWM as a trusted source")
Cc: stable@xxxxxxxxxxxxxxx # 7.0
Signed-off-by: Srish Srinivasan <ssrish@xxxxxxxxxxxxx>
---
security/keys/trusted-keys/trusted_pkwm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/security/keys/trusted-keys/trusted_pkwm.c b/security/keys/trusted-keys/trusted_pkwm.c
index 422f752598e1..97ffec0ce1b7 100644
--- a/security/keys/trusted-keys/trusted_pkwm.c
+++ b/security/keys/trusted-keys/trusted_pkwm.c
@@ -82,7 +82,7 @@ static int trusted_pkwm_seal(struct trusted_key_payload *p, char *datablob)
{
struct trusted_key_options *options = NULL;
struct trusted_pkwm_options *pkwm = NULL;
- u8 *input_buf, *output_buf;
+ u8 *input_buf, *output_buf = NULL;
u32 output_len, input_len;
int rc;

@@ -129,7 +129,7 @@ static int trusted_pkwm_seal(struct trusted_key_payload *p, char *datablob)

static int trusted_pkwm_unseal(struct trusted_key_payload *p, char *datablob)
{
- u8 *input_buf, *output_buf;
+ u8 *input_buf, *output_buf = NULL;
u32 input_len, output_len;
int rc;

--
2.52.0