From 679892f56e3fc43049d9e641ca62c17f7312cbe3 Mon Sep 17 00:00:00 2001 From: Anatol Belski Date: Mon, 1 Jun 2026 16:26:30 +0200 Subject: [PATCH] block: qcow: Test rejection of backing file size with zero offset Cover the malformed header case where backing_file_offset is zero but backing_file_size is non zero, which must be rejected with the new dedicated error. Signed-off-by: Anatol Belski --- block/src/formats/qcow/internal/mod.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/block/src/formats/qcow/internal/mod.rs b/block/src/formats/qcow/internal/mod.rs index f4ca2d968..68a0b63b1 100644 --- a/block/src/formats/qcow/internal/mod.rs +++ b/block/src/formats/qcow/internal/mod.rs @@ -2753,6 +2753,12 @@ mod unit_tests { assert!(matches!(err, Error::BackingFileOverlapsHeader(_, _, _))); } + #[test] + fn backing_file_size_without_offset() { + let err = read_header_with_patched_backing(0, 16).unwrap_err(); + assert!(matches!(err, Error::BackingFileSizeWithoutOffset(16))); + } + #[test] fn backing_file_fits_at_cluster_end() { let cluster_size = 1u64 << DEFAULT_CLUSTER_BITS;