]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
dissect-image: generate better log message for EUCLEAN dissect error 34820/head
authorLennart Poettering <lennart@poettering.net>
Fri, 18 Oct 2024 12:16:53 +0000 (14:16 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 18 Oct 2024 12:16:53 +0000 (14:16 +0200)
Fixes: #31799
src/shared/dissect-image.c

index 9c2f35d58bb7075dca03a8bc7c137418aef6f316..86fd1ef865d55fc1cb24ee59b9da21fc6bcd62a4 100644 (file)
@@ -708,7 +708,9 @@ static int dissect_image(
          * Returns -ERFKILL if image doesn't match image policy
          * Returns -EBADR if verity data was provided externally for an image that has a GPT partition table (i.e. is not just a naked fs)
          * Returns -EPROTONOSUPPORT if DISSECT_IMAGE_ADD_PARTITION_DEVICES is set but the block device does not have partition logic enabled
-         * Returns -ENOMSG if we didn't find a single usable partition (and DISSECT_IMAGE_REFUSE_EMPTY is set) */
+         * Returns -ENOMSG if we didn't find a single usable partition (and DISSECT_IMAGE_REFUSE_EMPTY is set)
+         * Returns -EUCLEAN if some file system had an ambiguous file system superblock signature
+         */
 
         uint64_t diskseq = m->loop ? m->loop->diskseq : 0;
 
@@ -1664,6 +1666,9 @@ int dissect_log_error(int log_level, int r, const char *name, const VeritySettin
         case -ENOMSG:
                 return log_full_errno(log_level, r, "%s: No suitable partitions found.", name);
 
+        case -EUCLEAN:
+                return log_full_errno(log_level, r, "%s: Partition with ambiguous file system superblock signature found.", name);
+
         default:
                 return log_full_errno(log_level, r, "%s: Cannot dissect image: %m", name);
         }