Commit Graph

1663 Commits

Author SHA1 Message Date
DLL125
4f92ba5484
Update zlib to latest (#1181)
* Update zlib to latest

* Update copyright

Updated copyright of zlib.
2023-08-20 09:21:54 +02:00
Mounir IDRASSI
34ef189a92
Linux: try use IOCTL BLKGETSIZE64 to get size of device instead of lseek 2023-08-19 20:47:43 +02:00
Mounir IDRASSI
9d8afdad93
Linux: Fix wrong max size for hidden volume in CLI direct mode creation
There was a logical bug that made the code check the filesystem size of
the device path "/dev" instead of using the actual size of the device

Fix #1180
2023-08-19 20:44:32 +02:00
Mounir IDRASSI
9bd6a46785
Windows: Update MBR bootloader files to 1.26.5 build 2023-08-15 10:17:04 +02:00
Mounir IDRASSI
e47f6e900c
Update Release Notes and set date of 1.26.5 to August 15th 2023-08-15 09:48:51 +02:00
Mounir IDRASSI
fcf0cb94f1
Increment version to 1.26.5. Update signed Windows drivers. 2023-08-14 01:45:37 +02:00
Mounir IDRASSI
f84d235cf1
Windows: Implement support for mounting partially encrypted system partitions
For now, we force ReadOnly mounting for such partitions.
2023-08-13 22:50:37 +02:00
Mounir IDRASSI
8c7962bda7
Windows: Better way to enable required privileges for FastCreate Options
If we can set required privilege, we ask the user using UAC to enable them.
2023-08-13 00:56:49 +02:00
Jertzukka
eb2f5f33c9
Linux: Flush stdout explicitly when reading stdin (#1172)
Rules of automatic flushing of stdout buffer is implementation-defined
behaviour. In glibc this is automatically flushed, but we can't rely
on it for other implementations such as musl.
2023-08-12 09:18:57 +02:00
Jertzukka
5c9e135c9e
Linux: Typo fix and consistency in help command (#1169) 2023-08-12 09:17:18 +02:00
Mounir IDRASSI
c15b84b32d
Windows: Fix failure creating Traveler Disk caused by outdated hardcoded value of MS certificate
We also rename the variables gpbSha256CodeSignCertFingerprint and gpbSha256MSCodeSignCertFingerprint to gpbSha512CodeSignCertFingerprint and gpbSha512MSCodeSignCertFingerprint respectively to reflect the fact that they are actually SHA512 hash values and not SHA256 ones.
2023-08-10 01:23:24 +02:00
Deniz Türkoglu
8f3082c3ef
Call EnsureVisible() for OSX in OnActivate (#1167)
When using multiple monitors, the resolution can change in OSX,
during plug-in/off off the display(s). To avoid window becoming
non-usable, there is EnsureVisible, that is called in several
places.

However, if you minimize VeraCrypt on the bigger screen, and
restore it in the main screen of a MacBook, after unplugging, the
window will become unusable (unless you know that clicking 'About'
calls EnsureVisible :-)).

Call EnsureVisible OnActivate so MainFrame is always functional
across screens, even when minimized.
2023-08-07 22:53:19 +02:00
Mounir IDRASSI
fba1943d87
Linux/macOS: Add explicit include of <sys/types.h> to define ssize_t
Some systems (e.g. Alpine Linux) seems to require this.
2023-08-06 10:28:42 +02:00
Mounir IDRASSI
dab261c694
Linux: capture both stdout and stderr in popen call to avoid printing anything
If an error happens, error message will be read from popen pipe and so
libpcsclite.so will not be found. This is the same outcome as when
stdout is empty.
2023-08-06 01:06:19 +02:00
Mounir IDRASSI
16bb1de3a6
Security: ensure that XTS primary key is different from secondary key when creating volumes
This is unlikely to happen thanks to random generator properties but we much add this check to prevent an attack described in page 3 of https://csrc.nist.gov/csrc/media/Projects/crypto-publication-review-project/documents/initial-comments/sp800-38e-initial-public-comments-2021.pdf
2023-08-05 10:55:46 +02:00
Mounir IDRASSI
e8f83544ea
Windows: Fix false positive detection of new device insertion when clear keys option is enable
When this option is enabled, we first build the list of currently inserted devices then we start listening to insertion events.
When a device insertion occurs, we check if this device is on our list and if yes, we ignore its insertion.
We also ignore devices whose Device ID starts with "SWD\" and "ROOT\" since these are not real devices.
2023-08-05 00:45:39 +02:00
kovalev0
5a6b445f0e
fix warnings and UB (#1164)
* Crypto: fix warning mismatched bound

../Crypto/cpu.c:67:32: warning: argument 2 of type 'uint32[4]'
{aka 'unsigned int[4]'} with mismatched bound [-Warray-parameter=]
   67 | int CpuId(uint32 input, uint32 output[4])
      |                         ~~~~~~~^~~~~~~~~
In file included from ../Crypto/cpu.c:3:
../Crypto/cpu.h:236:33: note: previously declared as 'uint32 *'
{aka 'unsigned int *'}
  236 | int CpuId(uint32 input, uint32 *output);

Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>

* Core/Unix: fix warning ignoring return value

Unix/CoreUnix.cpp: In member function 'virtual std::shared_ptr<VeraCrypt:\
:VolumeInfo> VeraCrypt::CoreUnix::MountVolume(VeraCrypt::MountOptions&)':
Unix/CoreUnix.cpp:682:55: warning: ignoring return value of
'int chown(const char*, __uid_t, __gid_t)' declared with attribute
'warn_unused_result' [-Wunused-result]
  682 |     chown (mountPoint.c_str(), GetRealUserId(), GetRealGroupId());
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>

* Main/Forms: fix warning cast to pointer from integer of different size

Forms/MainFrame.cpp: In member function 'void VeraCrypt::MainFrame:\
:UpdateVolumeList()':

Forms/MainFrame.cpp:1718:106: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
 1718 |       Gui->InsertToListCtrl (SlotListCtrl, ++prevItemIndex,
        fields, 0, (void *) volume->SlotNumber);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~

Forms/MainFrame.cpp:1753:114: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
 1753 |       Gui->InsertToListCtrl (SlotListCtrl, ++prevItemIndex,
        fields, 0, (void *) slotNumber);
      |            ^~~~~~~~~~~~~~~~~~~

Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>

* Crypto: fix undefined behavior signed integer overflow

In function 'twofish_set_key':
cc1: warning: iteration 4 invokes undefined behavior
[-Waggressive-loop-optimizations]
../Crypto/Twofish.c:626:23: note: within this loop
  626 |         for (i = 0; i != 40; i += 2)
      |                     ~~^~~~~

Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>

---------

Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
Co-authored-by: Vasiliy Kovalev <kovalev@altlinux.org>
2023-08-04 23:49:11 +02:00
Jertzukka
9b29eadc41
Windows: Add installer language support for rest of the translations (#1160)
Currently there are a lot of translated strings that are never seen
anywhere as the installer doesn't offer all the available languages
as options in the installer wizard (sans Burmese).
2023-07-29 16:31:40 +02:00
Mounir IDRASSI
b7fc6897b9
Linux/macOS: Increment version to 1.26.4 in installation packages 2023-07-25 22:25:46 +02:00
Mounir IDRASSI
e80dd29c0d
Windows: remove unused variable 2023-07-24 09:20:43 +02:00
Mounir IDRASSI
d4fdba1d29
Update Release Notes and set date of 1.26.4 to July 24th 2023-07-24 09:13:34 +02:00
Mounir IDRASSI
3f976c24d2
Linux/macOS: Remove TrueCrypt support 2023-07-24 08:48:52 +02:00
Mounir IDRASSI
ba74b9d5b8
Linux/macOS:Add EMV option checkbox to the fbp file. Remove TrueCrypt checkboxes.
We also update to wxFormBuilder 3.10.1
2023-07-23 21:45:16 +02:00
Mounir IDRASSI
b28cf591c0
XML Language files: remove \r from new entries as it is automatically added by code 2023-07-23 12:00:34 +02:00
Mounir IDRASSI
5b1ed38659
Windows: update signed drivers 2023-07-23 11:15:58 +02:00
Mounir IDRASSI
2111084fc6
Windows: Update driver inf file to meet new requirements for Microsoft driver submission 2023-07-23 11:15:05 +02:00
Mounir IDRASSI
334ea9c0b9
Windows: Make Expander progress messages translatable 2023-07-23 10:00:45 +02:00
Springfield Data Recovery
f037dae413
Update UserInterface.cpp (#1155)
Docs specify cascading encryption should be specified as "AES(Twofish)" but on Linux it requires "AES-Twofish".
2023-07-23 09:13:03 +02:00
Mounir IDRASSI
fa6359d424
Windows: Remove TrueCrypt support. Increment version to 1.26.4. 2023-07-22 10:25:22 +02:00
Mounir IDRASSI
34b00fa825
Windows: Fix compiler warnings 2023-07-18 08:38:02 +02:00
Mounir IDRASSI
c0785aa1d4
Windows: Fix buffer overrun caused by bug in UpperCaseCopy function 2023-07-17 14:28:45 +02:00
Mounir IDRASSI
9607b9708c
Windows: Fix link error with latest libzip by adding new file zip_source_pass_to_lower_layer.c tp VS projects 2023-07-17 14:26:53 +02:00
DLL125
65765798d8
Libzip (#1152)
* Update LZMA to latest

* Update Libzip

Libzip updated to latest.
2023-07-17 14:11:12 +02:00
Mounir IDRASSI
6267b91931
Windows: fix issue with fastCreate by requesting SE_MANAGE_VOLUME_NAME privilege before calling CreateFile
This ensures that the returned handle inherits the privilege
2023-07-16 11:08:24 +02:00
Mounir IDRASSI
7ada94d36b
Windows: enhance secure desktop handling to try to workaround Windows 11 issue
Several enhancements implemented:
 - replace CreateThread by _beginthreadex to avoid potential issues when using C runtime
 - use an event to notify monitoring thread to stop instead of a volatile boolean
 - perform switch to the regular desktop in the main thread and not in the secure desktop thread
2023-07-15 02:59:13 +02:00
Mounir IDRASSI
014ed77130
Windows: when overwriting an existing file container, add its current size to the available free space 2023-07-11 21:21:18 +02:00
Jertzukka
232d3290b0
Linux: Overwriting file container allows you to use its space (#1147)
When replacing a file container, we increase the `diskSpace`
by the file container's size. This doesn't affect the hidden volume
space logic, as in that case we use `MaxVolumeSize` when
`MaxVolumeSizeValid` is true instead of `AvailableDiskSpace`.
2023-07-05 19:00:37 +09:00
Jertzukka
aa49278673
Updates on WinCompiling docs and script (#1146) 2023-07-05 17:40:57 +09:00
Mounir IDRASSI
0e49b7bc33
Windows: Fix regression when creating multiple keyfiles with a fixed size 2023-07-02 22:36:33 +02:00
Jertzukka
3b80c8416b
Renormalize 7zWindows.h from CRLF to LF line separator as intended (#1144) 2023-07-02 21:51:44 +02:00
Mounir IDRASSI
d2caa77207
Fix compiler type-cast warnings 2023-07-02 15:25:21 +02:00
Mounir IDRASSI
fe30ebe3f3
Update Release Notes with latest changes. 2023-07-02 15:01:28 +02:00
Mounir IDRASSI
2a728dec88
Windows: Use full list of supported cluster sizes for NTFS, ReFS and exFAT filesystems
We keep FAT32 list of supported cluster sizes as it is today for compatibility with existing FAT code
2023-07-01 23:36:05 +02:00
Mounir IDRASSI
580423b5dd
Windows: Add missing header changes needed for previous commit 2023-07-01 23:32:44 +02:00
Mounir IDRASSI
7a3daa389c
Windows: Make API formatting fallback to format.com in case of elevation. remove dead code from ExternalFormatFs
We also modify UacFormatNtfs/UacFormatFs to return actual error code in case of failure
2023-07-01 22:46:01 +02:00
Mounir IDRASSI
a388262a2e
Windows: fix compilation warnings 2023-07-01 15:17:24 +02:00
Mounir IDRASSI
0bfed6553d
Windows: Fix formatting issue during volume creation by using /Y for format.com and specifying removal parameter in FormatEx
The usage of /Y parameter in format.com simplifies the logic and makes the code robust since we don't need to send \n to the format.com process.
Specifying RemovableMedia parameter to FormatEx fixes its failure in Windows 10 and later to perform quick format. This is also more adequate since we are mounting the volume as removable media for the formatting process.
We also add better error management in order to display adequate error message to the user in case of failure
2023-07-01 15:16:46 +02:00
Mounir IDRASSI
17dcd73936
Windows: Don't make Mount button split button if it is for dismounting
If the currently selected item in the drive list is a mounted volume that can be dismounted, the Mount button displays "Dismount" and so we should not add the popup menu of "mount without cache" to it.
2023-07-01 09:58:36 +02:00
Mounir IDRASSI
a438e19f61
Windows: Support drag-n-drop of files in Expander for mounting. Fix drag-n-drop of keyfiles.
To fix drag-n-drop of keyfiles, we remove the password drop target since it was blocking the standard drop of files and drop target doesn't work because of UIPI restrictions across privilege levels since Expander is started elevated
2023-06-30 23:03:56 +02:00
Mounir IDRASSI
d2efeaffe7
Correctly detect ARM builds when listing CPU features in headers 2023-06-30 00:34:16 +02:00