mirror of
https://github.com/systemd/systemd.git
synced 2026-11-08 06:16:55 +00:00
tpm2-util: Align tpm2_import with tpm2_load to report on foreign keys
When we encounter a key for a foreign TPM we report that as EREMOTE in tpm2_load but not yet in tpm2_import. This causes cryptsetup to give up on using the TPM instead of being able to continue with out tokens. Do the same mapping as in tpm2_load in tpm2_import to report EREMOTE on foreign keys. (cherry picked from commit93bc6a3415) (cherry picked from commit793efd3553) (cherry picked from commit87da838051) (cherry picked from commitfd5221a9ea)
This commit is contained in:
1 parent
dbacc324fc
commit
2cd7161fd6
1 file changed
+3
@@ -2460,6 +2460,9 @@ static int tpm2_import(
|
||||
seed,
|
||||
symmetric ?: &(TPMT_SYM_DEF_OBJECT){ .algorithm = TPM2_ALG_NULL, },
|
||||
ret_private);
|
||||
if ((rc & ~(TPM2_RC_N_MASK|TPM2_RC_P)) == TPM2_RC_INTEGRITY) /* Return a recognizable error if this key does not belong to the local TPM */
|
||||
return log_debug_errno(SYNTHETIC_ERRNO(EREMOTE),
|
||||
"Key invalid or does not belong to current TPM.");
|
||||
if (rc != TSS2_RC_SUCCESS)
|
||||
return log_debug_errno(SYNTHETIC_ERRNO(ENOTRECOVERABLE),
|
||||
"Failed to import key into TPM: %s", sym_Tss2_RC_Decode(rc));
|
||||
|
||||
Reference in new issue
Block a user