]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
cryptenroll: show better log message if slot to wipe does not exist
authorAntonio Alvarez Feijoo <antonio.feijoo@suse.com>
Tue, 19 Nov 2024 10:26:49 +0000 (11:26 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 19 Nov 2024 11:00:50 +0000 (12:00 +0100)
```
$ systemd-cryptenroll /dev/vda3
SLOT TYPE
   0 password
$ systemd-cryptenroll --wipe-slot 1 /dev/vda3
Failed to wipe slot 1, continuing: No such file or directory
```

src/cryptenroll/cryptenroll-wipe.c

index 703342f75825c77d577f1e4f3ea6c695daf37edd..67c3795d346630fa8599e20989589f4dd025d9c9 100644 (file)
@@ -427,7 +427,10 @@ int wipe_slots(struct crypt_device *cd,
         for (size_t i = n_ordered_slots; i > 0; i--) {
                 r = crypt_keyslot_destroy(cd, ordered_slots[i - 1]);
                 if (r < 0) {
-                        log_warning_errno(r, "Failed to wipe slot %i, continuing: %m", ordered_slots[i - 1]);
+                        if (r == -ENOENT)
+                                log_warning_errno(r, "Failed to wipe non-existent slot %i, continuing.", ordered_slots[i - 1]);
+                        else
+                                log_warning_errno(r, "Failed to wipe slot %i, continuing: %m", ordered_slots[i - 1]);
                         if (ret == 0)
                                 ret = r;
                 } else