Linux/macOS: Implement missing Argon2 KDF support on Unix

This commit is contained in:
Mounir IDRASSI
2026-04-19 17:52:44 +09:00
parent e07bd19f20
commit e59eb421fb
81 changed files with 848 additions and 226 deletions
+12 -1
View File
@@ -2919,6 +2919,7 @@ BOOL CALLBACK PasswordChangeDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPAR
&& pwdChangeDlgMode == PCDM_CHANGE_PASSWORD)
{
int bootPRF = pkcs5;
int pimValidationValue = pim;
if (bSysEncPwdChangeDlgMode)
{
try
@@ -2930,7 +2931,17 @@ BOOL CALLBACK PasswordChangeDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPAR
catch(...)
{}
}
if (!CheckPasswordLength (hwndDlg, GetWindowTextLength(GetDlgItem (hwndDlg, IDC_PASSWORD)), pim, bSysEncPwdChangeDlgMode, bootPRF, FALSE, FALSE))
else if (bootPRF == 0)
{
bootPRF = old_pkcs5;
if (bootPRF == 0)
{
/* Both current and new KDFs are autodetected. ChangePwd() repeats this
PIM/password-length validation after opening the header with the detected KDF. */
pimValidationValue = 0;
}
}
if (!CheckPasswordLength (hwndDlg, GetWindowTextLength(GetDlgItem (hwndDlg, IDC_PASSWORD)), pimValidationValue, bSysEncPwdChangeDlgMode, bootPRF, FALSE, FALSE))
return 1;
}