mirror of
https://gitlab.com/cryptsetup/cryptsetup.git
synced 2025-12-11 19:00:02 +01:00
drop keyring key after successful crypt_suspend
due to wrong sequence of function calls the volume key (if present) in keyring was never dropped properly.
This commit is contained in:
committed by
Milan Broz
parent
7c34ac6f6d
commit
583fbfdb2a
@@ -2383,17 +2383,16 @@ int crypt_suspend(struct crypt_device *cd,
|
||||
goto out;
|
||||
}
|
||||
|
||||
key_desc = crypt_get_device_key_description(name);
|
||||
|
||||
r = dm_suspend_and_wipe_key(cd, name);
|
||||
if (r == -ENOTSUP)
|
||||
log_err(cd, _("Suspend is not supported for device %s.\n"), name);
|
||||
else if (r)
|
||||
log_err(cd, _("Error during suspending device %s.\n"), name);
|
||||
|
||||
if (!r) {
|
||||
key_desc = crypt_get_device_key_description(name);
|
||||
else
|
||||
crypt_drop_keyring_key(cd, key_desc);
|
||||
free(key_desc);
|
||||
}
|
||||
out:
|
||||
dm_backend_exit();
|
||||
return r;
|
||||
|
||||
Reference in New Issue
Block a user