]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
KEYS: trusted: fix DCP blob payload length assignment
authorDavid Gstir <david@sigma-star.at>
Wed, 17 Jul 2024 11:28:44 +0000 (13:28 +0200)
committerJarkko Sakkinen <jarkko@kernel.org>
Thu, 15 Aug 2024 19:01:14 +0000 (22:01 +0300)
The DCP trusted key type uses the wrong helper function to store
the blob's payload length which can lead to the wrong byte order
being used in case this would ever run on big endian architectures.

Fix by using correct helper function.

Cc: stable@vger.kernel.org # v6.10+
Fixes: 2e8a0f40a39c ("KEYS: trusted: Introduce NXP DCP-backed trusted keys")
Suggested-by: Richard Weinberger <richard@nod.at>
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202405240610.fj53EK0q-lkp@intel.com/
Signed-off-by: David Gstir <david@sigma-star.at>
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
security/keys/trusted-keys/trusted_dcp.c

index b5f81a05be3676457fee411b753ac64588eaf4de..b0947f072a98c87469c41f48d388093e1c376631 100644 (file)
@@ -222,7 +222,7 @@ static int trusted_dcp_seal(struct trusted_key_payload *p, char *datablob)
                return ret;
        }
 
-       b->payload_len = get_unaligned_le32(&p->key_len);
+       put_unaligned_le32(p->key_len, &b->payload_len);
        p->blob_len = blen;
        return 0;
 }