mirror of
https://gitlab.com/cryptsetup/cryptsetup.git
synced 2025-12-05 16:00:05 +01:00
keyring_find_key_id_by_name does not return negative values on error.
It returns 0 on error even if keyring support is compiled out. There are valid negative constants for thread keyring, process keyring, etc.
This commit is contained in:
@@ -7557,14 +7557,7 @@ int crypt_keyring_get_key_by_name(struct crypt_device *cd,
|
|||||||
log_dbg(cd, "Searching for kernel key by name %s.", key_description);
|
log_dbg(cd, "Searching for kernel key by name %s.", key_description);
|
||||||
|
|
||||||
kid = keyring_find_key_id_by_name(key_description);
|
kid = keyring_find_key_id_by_name(key_description);
|
||||||
if (kid == -ENOTSUP) {
|
if (kid == 0) {
|
||||||
log_dbg(cd, "Kernel keyring features disabled.");
|
|
||||||
return -ENOTSUP;
|
|
||||||
} else if (kid < 0) {
|
|
||||||
log_dbg(cd, "keyring_find_key_id_by_name failed with errno %d.", errno);
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
else if (kid == 0) {
|
|
||||||
log_dbg(cd, "keyring_find_key_id_by_name failed with errno %d.", ENOENT);
|
log_dbg(cd, "keyring_find_key_id_by_name failed with errno %d.", ENOENT);
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user