Commit Graph

100 Commits

Author SHA1 Message Date
Mounir IDRASSI
a21b2270e8 Windows: Implement TESTSIGNING build configuration that allows running under Windows Vista,7, 8 and 8.1. 2021-12-04 23:59:01 +01:00
Mounir IDRASSI
0944b68933 Revert "Windows: Don't check for availability of 32KB of free space for bootloader in UEFI boot mode"
More work is needed to reduce the 32KB free space requirement without creating regressions.
2021-01-02 01:16:48 +01:00
Mounir IDRASSI
9881744c95 Windows: Add support for ARM64 platform (e.g. Microsoft Surface Pro X). System encryption still not implemented on ARM64 2021-01-02 01:16:31 +01:00
Mounir IDRASSI
cb7adbfa26 Windows: Don't check for availability of 32KB of free space for bootloader in UEFI boot mode since in this case bootloader will be stored in EFI partition and not in the unallocated space at the beginning of the drive 2020-12-11 02:12:07 +01:00
Mounir IDRASSI
9da8fc669b Windows: Use correct parameters for 2nd call to SetStartExec in BootEncryption::InstallBootLoader 2020-08-03 15:13:03 +02:00
Mounir IDRASSI
587e6db4f1 Windows: Warn about Fast Startup if it is enabled during system encryption or volume creation and propose to disable it 2020-07-22 17:27:59 +02:00
Mounir IDRASSI
9a804654f5 Windows: Don't allow to encrypt the system drive if it is already encrypted by BitLocker 2020-07-02 02:20:58 +02:00
Mounir IDRASSI
b270a453aa Windows: remove unused code targeting Windows 2000. 2020-06-28 01:06:14 +02:00
Mounir IDRASSI
14a477026d Windows: compatibility with multi-OS boot configuration by only setting VeraCrypt as first bootloader of the system if the current first bootloader is Windows one. 2019-11-27 00:15:51 +01:00
Mounir IDRASSI
79eea6e5b1 Windows: Don't restore MBR to VeraCrypt value if it is coming from a loader different from us or different from Microsoft one. 2019-11-27 00:15:43 +01:00
Mounir IDRASSI
9741c9209d Windows: Add new registry flags for SystemFavoritesService to control updating of EFI BIOS boot menu on shutdown. This will help better manage multi-boot scenarios where we should not mess up with boot order (e.g. grub2 case) 2019-11-22 00:11:55 +01:00
Mounir IDRASSI
94084525b1 Windows: fix failure to create rescue and thus to encrypt the system if the Windows username contains a UNICODE non-ASCII character (cf https://github.com/veracrypt/VeraCrypt/issues/441) 2019-10-27 02:30:15 +02:00
Mounir IDRASSI
2722b46530 Windows: code refactoring and convert NTSTATUS error code to WIN32 equivalent before displaying error message. 2019-10-27 02:04:51 +02:00
Mounir IDRASSI
89e2547851 Windows: Make EFI System Encryption PostOOBE code more robust to failure to access "\\\\?\\GLOBALROOT" disk namespace 2019-10-27 02:04:43 +02:00
Mounir IDRASSI
ca46cf928a Windows: Update EFI NVRAM variable only if changed or doesn't exist and add configuration to force setting EFI BootNext to veraCrypt bootloader before each shutdown 2019-10-27 02:04:34 +02:00
Mounir IDRASSI
f22abf93dd Windows: Restore veraCrypt boot meny entry for system encryption more often, especially during PostOOBE calls, and handle additional corner cases. 2019-10-26 22:09:27 +02:00
Mounir IDRASSI
28fc65e479 Windows: Fix test of GetPrivateProfileString output since this function discards double quotation marks 2019-10-25 18:25:29 +02:00
Mounir IDRASSI
343d1a95dc Windows: only update MBR first 512 bytes if they have changed and don't update full MBR bootload in case of PostOOBE 2019-10-25 14:47:51 +02:00
Mounir IDRASSI
318b00b6a2 Windows: Avoid unnecessarily update of system encryption SetupConfig related files if there content didn't change 2019-10-25 14:47:37 +02:00
Mounir IDRASSI
9b394ddc49 Windows: Avoid unnecessary write operations when copying/modifying EFI bootloader files in order to avoid leaking modification timestamp 2019-10-20 22:17:12 +02:00
Mounir IDRASSI
31a87c2e5f Windows: add more checks to correctly identify Microsoft original bootloader. 2019-10-20 22:17:04 +02:00
Mounir IDRASSI
cca08e1ed5 Windows: Add checks that the System Favorites service is running. Warn user if he enabled option to clear RAM encryption keys and the service is stopped. 2019-10-20 22:16:57 +02:00
Mounir IDRASSI
5b88a183ac Windows: handle case of DcsProp configuration file for EFI system encryption contains wrong "ActionSuccess" entry that points towards bootmgfw.efi which is now our bootloader and not Microsoft one. 2019-10-18 00:56:39 +02:00
Mounir IDRASSI
f56a8c49f9 Windows: Fix regression that causes system favorites not to mount if VeraCrypt 1.24 is freshly installed and not updated. 2019-10-14 01:08:43 +02:00
Mounir IDRASSI
a20b3083b0 Windows: Add a build configuration containing EFI bootloader signed with custom SecureBoot key instead 2019-01-26 01:20:51 +01:00
Mounir IDRASSI
202caea3a9 Windows: enhancements to EFI system encryption, like handling of Multi-Boot and better compatibility with Windows Upgrade process. 2019-01-15 15:05:19 +01:00
Mounir IDRASSI
07f6793bd2 Windows: enhance support of new behavior of favorite service which is now always running in case of system encryption 2019-01-14 10:49:13 +01:00
Mounir IDRASSI
d3e7ed96f3 Windows: Implement feature that enables clearing of encryption keys when a new device is inserted. Better implementation for update of EFI bootloader without usage of drive letters (this can fix random issues encountered during Windows upgrade). 2019-01-14 10:49:05 +01:00
Mounir IDRASSI
4fea208958 Windows: zero TC_IOCTL_GET_SYSTEM_DRIVE_CONFIG input/output parameter as it is done for other IOCTLs 2018-10-10 09:31:38 +02:00
Mounir IDRASSI
8f47adfff1 Windows: handle case of inconsistencies in EFI system partition content during system encryption wizard caused by older VeraCrypt system encryption not properly uninstalled (e.g. reinstall Windows without decryption first). 2018-09-03 01:00:55 +02:00
Mounir IDRASSI
deef2031c7 Windows: add define to support case of using EFI bootloader signed by Microsoft (no check on custom keys in BIOS + removal of DcsBml EFI driver since it can not be signed). 2018-09-03 01:00:38 +02:00
Mounir IDRASSI
c2b69b248c Windows: Add various checks and replace STL code after Coverity report 2018-08-15 14:44:34 +02:00
Mounir IDRASSI
6c9adee646 Windows: Fix hidden OS boot after upgrade to version 1.23 by explicitly specifying the new name for the bootloader to launch after password validation. 2018-08-06 00:13:14 +02:00
Mounir IDRASSI
98ff65045e Windows: Support machines without "EFI\Boot" folder for EFI system encryption (e.g. Windows LTSB). Compatibility enhancements for EFI system encryption. 2018-05-03 08:25:22 +02:00
Mounir IDRASSI
4f0d1c02bd Windows: Don't start EFI system encryption process if SecureBoot is enabled and VeraCrypt-DCS custom keys were not loaded in the machine firmware. 2018-04-23 16:59:40 +02:00
Mounir IDRASSI
17d9c1c6ec Windows: Fix system encryption issues on machines that always force booting on Microsoft bootloader (e.g. HP). 2018-04-23 16:59:37 +02:00
Mounir IDRASSI
3659ddd70c Windows: enhance ReflectDrivers mechanism by persisting it across major Windows upgrades. 2018-04-23 16:59:36 +02:00
Mounir IDRASSI
f4edd72662 Windows: code refactoring 2018-04-23 16:59:35 +02:00
Mounir IDRASSI
8e4497de2a Windows: remove ending backslash from installation path written to SetupConfig.ini 2018-04-23 16:59:34 +02:00
Mounir IDRASSI
4519bb494e Windows: implement compatibility for Windows 10 major updates using ReflectDrivers mechanism whose support started from Windows 10 version 1607. 2018-04-23 16:59:33 +02:00
Mounir IDRASSI
806c86bd19 Windows: use the same default value for EFI system encryption password prompt as in the one used in the bootloader. 2018-03-28 16:49:55 +02:00
Mounir IDRASSI
3021745f67 Windows: better workaround for cases where ERROR_INVALID_PARAMETER is returned during system encryption which is due to 4096-bytes alignment of disk. 2017-07-20 23:23:18 +02:00
Mounir IDRASSI
840756ead1 Windows: workaround for some cases where the system return ERROR_INVALID_PARAMETER when we try to write EFI bootloader files into ESP partition. 2017-07-03 01:55:45 +02:00
Mounir IDRASSI
0b1b8b479f Windows: reduce size of 64-bit binaries by not embedding 32-bit EFI bootloader files in their resources. 2017-06-29 00:43:14 +02:00
Mounir IDRASSI
0ebc26e125 Update IDRIX copyright year 2017-06-23 22:15:59 +02:00
Mounir IDRASSI
ee5c1784ea Windows EFI Bootloader: Add new attributes "DcsBmlDriver" and "DcsBmlLockFlags" to EFI configuration DcsProp. Set their values to 0 to disable DcsBml functionality. 2017-06-21 01:39:54 +02:00
Mounir IDRASSI
ce2aa639f4 Windows: various fixes following Coverity analysis. 2017-06-11 17:28:22 +02:00
Mounir IDRASSI
5c9aff0c54 Windows: Remove unused method ReadEfiConfig 2017-06-11 17:28:20 +02:00
Mounir IDRASSI
46a3fe1458 Windows: fix compiler warnings 2017-06-11 17:28:19 +02:00
Mounir IDRASSI
4208b43581 Windows: code refactoring for handling of ESP files (DcsProp and PlatformInfo). 2017-06-11 01:28:42 +02:00