Make changes in token unlock for further changes in reencrypt action.

The token preference condition is moved outside the
try_token_unlock routine body.
This commit is contained in:
Ondrej Kozina
2025-04-25 18:31:39 +02:00
committed by Milan Broz
parent 5f48657f4d
commit 8fcd8a78d8
3 changed files with 24 additions and 12 deletions

View File

@@ -875,10 +875,12 @@ static int action_resize(void)
if (isLUKS2(crypt_get_type(cd))) {
/* try load VK in kernel keyring using token */
r = luks_try_token_unlock(cd, ARG_INT32(OPT_KEY_SLOT_ID),
ARG_INT32(OPT_TOKEN_ID_ID), NULL,
ARG_STR(OPT_TOKEN_TYPE_ID),
CRYPT_ACTIVATE_KEYRING_KEY,1, true,
ARG_SET(OPT_TOKEN_ONLY_ID));
ARG_INT32(OPT_TOKEN_ID_ID),
NULL, ARG_STR(OPT_TOKEN_TYPE_ID),
CRYPT_ACTIVATE_KEYRING_KEY,
1, true,
ARG_SET(OPT_TOKEN_ONLY_ID) || ARG_SET(OPT_TOKEN_ID_ID) || ARG_SET(OPT_TOKEN_TYPE_ID),
NULL);
if (r >= 0 || quit || ARG_SET(OPT_TOKEN_ONLY_ID))
goto out;
@@ -1829,7 +1831,9 @@ static int action_open_luks(void)
r = luks_try_token_unlock(cd, ARG_INT32(OPT_KEY_SLOT_ID),
ARG_INT32(OPT_TOKEN_ID_ID), activated_name,
ARG_STR(OPT_TOKEN_TYPE_ID), activate_flags,
set_tries_tty(false), true, ARG_SET(OPT_TOKEN_ONLY_ID));
set_tries_tty(false), true,
ARG_SET(OPT_TOKEN_ONLY_ID) || ARG_SET(OPT_TOKEN_ID_ID) || ARG_SET(OPT_TOKEN_TYPE_ID),
NULL);
if (r >= 0 || r == -EEXIST || quit || ARG_SET(OPT_TOKEN_ONLY_ID))
goto out;
@@ -2707,7 +2711,9 @@ static int action_luksResume(void)
/* try to resume LUKS2 device by token first */
r = luks_try_token_unlock(cd, ARG_INT32(OPT_KEY_SLOT_ID), ARG_INT32(OPT_TOKEN_ID_ID),
action_argv[0], ARG_STR(OPT_TOKEN_TYPE_ID), 0,
set_tries_tty(false), false, ARG_SET(OPT_TOKEN_ONLY_ID));
set_tries_tty(false), false,
ARG_SET(OPT_TOKEN_ONLY_ID) || ARG_SET(OPT_TOKEN_ID_ID) || ARG_SET(OPT_TOKEN_TYPE_ID),
NULL);
if (r >= 0 || quit || ARG_SET(OPT_TOKEN_ONLY_ID))
goto out;