[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v14 16/20] cryptodisk: Fallback to passphrase
From: |
Gary Lin |
Subject: |
[PATCH v14 16/20] cryptodisk: Fallback to passphrase |
Date: |
Fri, 3 May 2024 14:48:52 +0800 |
From: Patrick Colp <patrick.colp@oracle.com>
If a protector is specified, but it fails to unlock the disk, fall back
to asking for the passphrase. However, an error was set indicating that
the protector(s) failed. Later code (e.g., LUKS code) fails as
`grub_errno` is now set. Print the existing errors out first, before
proceeding with the passphrase.
Signed-off-by: Patrick Colp <patrick.colp@oracle.com>
Signed-off-by: Gary Lin <glin@suse.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
---
grub-core/disk/cryptodisk.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/grub-core/disk/cryptodisk.c b/grub-core/disk/cryptodisk.c
index b7648ffb7..8f00f22a8 100644
--- a/grub-core/disk/cryptodisk.c
+++ b/grub-core/disk/cryptodisk.c
@@ -1191,11 +1191,16 @@ grub_cryptodisk_scan_device_real (const char *name,
source->name, source->partition != NULL ? "," : "",
part != NULL ? part : N_("UNKNOWN"), dev->uuid);
grub_free (part);
- goto error;
}
if (!cargs->key_len)
{
+ if (grub_errno)
+ {
+ grub_print_error ();
+ grub_errno = GRUB_ERR_NONE;
+ }
+
/* Get the passphrase from the user, if no key data. */
askpass = 1;
part = grub_partition_get_name (source->partition);
--
2.35.3
- [PATCH v14 05/20] libtasn1: fix the potential buffer overrun, (continued)
- [PATCH v14 05/20] libtasn1: fix the potential buffer overrun, Gary Lin, 2024/05/03
- [PATCH v14 03/20] libtasn1: disable code not needed in grub, Gary Lin, 2024/05/03
- [PATCH v14 07/20] asn1_test: test module for libtasn1, Gary Lin, 2024/05/03
- [PATCH v14 04/20] libtasn1: changes for grub compatibility, Gary Lin, 2024/05/03
- [PATCH v14 06/20] libtasn1: compile into asn1 module, Gary Lin, 2024/05/03
- [PATCH v14 17/20] cryptodisk: wipe out the cached keys from protectors, Gary Lin, 2024/05/03
- [PATCH v14 08/20] libtasn1: Add the documentation, Gary Lin, 2024/05/03
- [PATCH v14 11/20] key_protector: Add TPM2 Key Protector, Gary Lin, 2024/05/03
- [PATCH v14 14/20] tpm2: Support authorized policy, Gary Lin, 2024/05/03
- [PATCH v14 13/20] util/grub-protect: Add new tool, Gary Lin, 2024/05/03
- [PATCH v14 16/20] cryptodisk: Fallback to passphrase,
Gary Lin <=
- [PATCH v14 18/20] diskfilter: look up cryptodisk devices first, Gary Lin, 2024/05/03
- [PATCH v14 09/20] key_protector: Add key protectors framework, Gary Lin, 2024/05/03
- [PATCH v14 10/20] tpm2: Add TPM Software Stack (TSS), Gary Lin, 2024/05/03
- [PATCH v14 15/20] tpm2: Implement NV index, Gary Lin, 2024/05/03
- [PATCH v14 12/20] cryptodisk: Support key protectors, Gary Lin, 2024/05/03
- [PATCH v14 19/20] tpm2: Enable tpm2 module for grub-emu, Gary Lin, 2024/05/03
- [PATCH v14 20/20] tests: Add tpm2_test, Gary Lin, 2024/05/03