From 9e6d962250aab6e5319215f15b0201ef233c46cd Mon Sep 17 00:00:00 2001 From: Stephan Wurm Date: Wed, 7 Jan 2026 14:37:34 +0100 Subject: [PATCH] dm-verity-img.bbclass: filter units from value part This is necessary for cryptsetup starting from v2.8.0 which introduced "[units]" in its output breaking the parsing of veritysetup output. VERITY header information for image-poky-20250701085433.squashfs-zst.verity. UUID: 5dc16c55-79b8-4988-9d79-900f8e143f98 Hash type: 1 Data blocks: 40091 Data block size: 4096 [bytes] Hash blocks: 318 Hash block size: 4096 [bytes] Hash algorithm: sha256 Salt: f670bf67a32f4f5a22e052d7bf84830f8d35ea24e2d52f585f6275207899153b Root hash: a7eab55b7933e347650671611e4b2a10571f2a28a1fb0fc8eae409f7a0d86693 This extends the value filter to remove the "[units]" from the .env file, while retaining compatibility to older cryptsetup releases. Signed-off-by: Stephan Wurm Signed-off-by: Scott Murray --- classes/dm-verity-img.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/dm-verity-img.bbclass b/classes/dm-verity-img.bbclass index 47f698c..48557e9 100644 --- a/classes/dm-verity-img.bbclass +++ b/classes/dm-verity-img.bbclass @@ -71,12 +71,12 @@ process_verity() { # two parts into separate variables and process them separately. For the # key part: convert the names to upper case and replace spaces with # underscores to create correct shell variable names. For the value part: - # just trim all white-spaces. + # just trim all white-spaces and remove units. IFS=":" while read KEY VAL; do printf '%s=%s\n' \ "$(echo "$KEY" | tr '[:lower:]' '[:upper:]' | sed 's/ /_/g')" \ - "$(echo "$VAL" | tr -d ' \t')" >> $ENV + "$(echo "$VAL" | tr -d ' \t' | sed 's/\[.*\]//')" >> $ENV done # Add partition size