mirror of
https://gitlab.com/cryptsetup/cryptsetup.git
synced 2025-12-05 16:00:05 +01:00
tests: Use only PBKDF2 in api-test-2 images (FIPS with OpenSSL 3.2+)
For compatimage2 also add keyslot 1 that uses Argon2id PBKDF2 to keep check for compatibility on non-fips system.
This commit is contained in:
@@ -687,6 +687,17 @@ static void UseLuks2Device(void)
|
|||||||
OK_(crypt_deactivate(cd, CDEVICE_1));
|
OK_(crypt_deactivate(cd, CDEVICE_1));
|
||||||
FAIL_(crypt_deactivate(cd, CDEVICE_1), "no such device");
|
FAIL_(crypt_deactivate(cd, CDEVICE_1), "no such device");
|
||||||
|
|
||||||
|
if (!_fips_mode) {
|
||||||
|
/* keyslot 0 is PBKDF2, keyslot 1 is Argon2id */
|
||||||
|
OK_(crypt_activate_by_passphrase(cd, NULL, 0, KEY1, strlen(KEY1), 0));
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, NULL, 1, KEY2, strlen(KEY2), 0), 1);
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 1, KEY2, strlen(KEY2), 0), 1);
|
||||||
|
FAIL_(crypt_activate_by_passphrase(cd, CDEVICE_1, 1, KEY2, strlen(KEY2), 0), "already open");
|
||||||
|
GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE);
|
||||||
|
OK_(crypt_deactivate(cd, CDEVICE_1));
|
||||||
|
FAIL_(crypt_deactivate(cd, CDEVICE_1), "no such device");
|
||||||
|
}
|
||||||
|
|
||||||
#if KERNEL_KEYRING
|
#if KERNEL_KEYRING
|
||||||
// repeat previous tests and check kernel keyring is released when not needed
|
// repeat previous tests and check kernel keyring is released when not needed
|
||||||
if (t_dm_crypt_keyring_support()) {
|
if (t_dm_crypt_keyring_support()) {
|
||||||
@@ -701,6 +712,21 @@ static void UseLuks2Device(void)
|
|||||||
OK_(crypt_activate_by_passphrase(cd, NULL, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0));
|
OK_(crypt_activate_by_passphrase(cd, NULL, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0));
|
||||||
OK_(crypt_deactivate(cd, CDEVICE_1));
|
OK_(crypt_deactivate(cd, CDEVICE_1));
|
||||||
FAIL_(_volume_key_in_keyring(cd, 0), "");
|
FAIL_(_volume_key_in_keyring(cd, 0), "");
|
||||||
|
|
||||||
|
if (!_fips_mode) {
|
||||||
|
/* keyslot 0 is PBKDF2, keyslot 1 is Argon2id */
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, NULL, 1, KEY2, strlen(KEY2), 0), 1);
|
||||||
|
FAIL_(_drop_keyring_key(cd, 0), "");
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, NULL, 1, KEY2, strlen(KEY2), CRYPT_ACTIVATE_KEYRING_KEY), 1);
|
||||||
|
OK_(_drop_keyring_key(cd, 0));
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 1, KEY2, strlen(KEY2), 0), 1);
|
||||||
|
OK_(_drop_keyring_key(cd, 0));
|
||||||
|
FAIL_(crypt_activate_by_passphrase(cd, CDEVICE_1, 1, KEY2, strlen(KEY2), 0), "already open");
|
||||||
|
FAIL_(_volume_key_in_keyring(cd, 0), "");
|
||||||
|
EQ_(crypt_activate_by_passphrase(cd, NULL, 1, KEY2, strlen(KEY2), 0), 1);
|
||||||
|
OK_(crypt_deactivate(cd, CDEVICE_1));
|
||||||
|
FAIL_(_volume_key_in_keyring(cd, 0), "");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user