diff --git a/src/Common/Language.xml b/src/Common/Language.xml index 32ddae5aeb..0f5b6bb44d 100644 --- a/src/Common/Language.xml +++ b/src/Common/Language.xml @@ -89,6 +89,7 @@ Current pool content (partial) Pass Password: + Outer p&assword: Volume PIM: Volume PIM: Progress: @@ -350,8 +351,8 @@ Speed is affected by CPU load and storage device characteristics.\n\nThese tests take place in RAM. Buffer Size: Cipher: - P&assword to hidden volume:\n(if empty, cache is used) - Hidden Volume Protection + Hidden volume p&assword:\n(if empty, cache is used) + Hidden Volume Protection (Hidden Credentials) Key size: IMPORTANT: Move your mouse as randomly as possible within this window. The longer you move it, the better. This significantly increases the cryptographic strength of the keyfile. WARNING: If you lose a keyfile or if any bit of its first 1024 kilobytes changes, it will be impossible to mount volumes that use the keyfile! @@ -637,6 +638,7 @@ Operation failed due to one or more of the following:\n - Wrong mount mode.\n - Incorrect keyfile(s).\n - Incorrect password.\n - Incorrect Volume PIM number.\n - Incorrect PRF (hash).\n - Not a valid volume.\n - Volume uses an old algorithm that has been removed.\n - TrueCrypt format volumes are no longer supported. Auto-mount failed due to one or more of the following:\n - Incorrect password.\n - Incorrect Volume PIM number.\n - Incorrect PRF (hash).\n - No valid volume found.\n - Volume uses an old algorithm that has been removed.\n - TrueCrypt format volumes are no longer supported. Auto-mount failed due to one or more of the following:\n - Incorrect keyfile(s).\n - Incorrect password.\n - Incorrect Volume PIM number.\n - Incorrect PRF (hash).\n - No valid volume found.\n - Volume uses an old algorithm that has been removed.\n - TrueCrypt format volumes are no longer supported. + Operation failed while hidden volume protection was enabled.\n\nUse the OUTER (decoy) volume password, PIM, PRF, and keyfile(s), if any, in the main password dialog. Use the HIDDEN volume password, PIM, PRF, and keyfile(s), if any, in Mount Options > Hidden Volume Protection.\n\nOne or more credentials may be incorrect, or the selected volume may be invalid or unsupported. \n\nWarning: Caps Lock is on. This may cause you to enter your password incorrectly. Remember Number to Mount Volume Outer Volume PIM diff --git a/src/Mount/Mount.c b/src/Mount/Mount.c index 287a303292..d8049d93d8 100644 --- a/src/Mount/Mount.c +++ b/src/Mount/Mount.c @@ -3572,6 +3572,12 @@ static wchar_t PasswordDlgVolume[MAX_PATH + 1]; static BOOL PasswordDialogDisableMountOptions; static char *PasswordDialogTitleStringId; +static void UpdatePasswordDlgPasswordLabel (HWND hwndDlg) +{ + SetDlgItemTextW (hwndDlg, IDT_PASSWORD, + GetString (!PasswordDialogDisableMountOptions && mountOptions.ProtectHiddenVolume ? "IDT_OUTER_VOL_PASSWORD" : "IDT_PASSWORD")); +} + /* Except in response to the WM_INITDIALOG message, the dialog box procedure should return nonzero if it processes the message, and zero if it does not. - see DialogProc */ @@ -3591,6 +3597,7 @@ BOOL CALLBACK PasswordDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPa pkcs5 = ((PasswordDlgParam *) lParam) -> pkcs5; pim = ((PasswordDlgParam *) lParam) -> pim; LocalizeDialog (hwndDlg, "IDD_PASSWORD_DLG"); + UpdatePasswordDlgPasswordLabel (hwndDlg); DragAcceptFiles (hwndDlg, TRUE); if (PasswordDialogTitleStringId) @@ -3842,6 +3849,7 @@ BOOL CALLBACK PasswordDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPa DialogBoxParamW (hInst, MAKEINTRESOURCEW (IDD_MOUNT_OPTIONS), hwndDlg, (DLGPROC) MountOptionsDlgProc, (LPARAM) &mountOptions); + UpdatePasswordDlgPasswordLabel (hwndDlg); if (!bPrebootPasswordDlgMode && mountOptions.PartitionInInactiveSysEncScope) SendMessage (hwndDlg, TC_APPMSG_PREBOOT_PASSWORD_MODE, 0, 0); @@ -6618,7 +6626,8 @@ static BOOL MountAllDevicesThreadCode (HWND hwndDlg, MountAllDevicesThreadParam* { WCHAR szTmp[4096]; - StringCbPrintfW (szTmp, sizeof(szTmp), GetString (KeyFilesEnable || FirstCmdKeyFile ? "PASSWORD_OR_KEYFILE_WRONG_AUTOMOUNT" : "PASSWORD_WRONG_AUTOMOUNT")); + StringCbPrintfW (szTmp, sizeof(szTmp), + GetString (mountOptions.ProtectHiddenVolume ? "HIDVOL_PROT_PASSWORD_OR_KEYFILE_WRONG" : (KeyFilesEnable || FirstCmdKeyFile ? "PASSWORD_OR_KEYFILE_WRONG_AUTOMOUNT" : "PASSWORD_WRONG_AUTOMOUNT"))); if (CheckCapsLock (hwndDlg, TRUE)) StringCbCatW (szTmp, sizeof(szTmp), GetString ("PASSWORD_WRONG_CAPSLOCK_ON"));