Commit Graph

1773 Commits

Author SHA1 Message Date
Mounir IDRASSI
f15052e68d
Windows: Add link in keyfiles dialog to documentation page for risks of third-party file extensions usage. 2023-09-08 09:38:51 +02:00
TigerxWood
d74ea60436
Update Language.xml (#1192)
Corected a typo
2023-09-08 09:34:44 +02:00
Mounir IDRASSI
0ad5c43eb4
Windows: remove recommendation of keyfiles files extensions and update documentation to mention risks of third-party file extensions.
This commit also adds red color to the warning text about keyfiles in keyfiles dialogs.
2023-09-06 01:42:23 +02:00
Mounir IDRASSI
2a6726b00e
Windows: Replace legacy file/dir selection APIs with modern IFileDialog interface
We remove usage of GetOpenFileNameW/GetSaveFileNameW/SHBrowseForFolderW which are deprecated by Microsoft
2023-09-03 23:42:41 +02:00
Mounir IDRASSI
201d09ff5a
Windows: remove legacy code (XP, Vista). Simplify code since Windows 7 is now minimal OS version. 2023-09-03 16:47:41 +02:00
Mounir IDRASSI
d68b9546bd
Windows: simpler and more robust safe dll loading combined with delay loading thanks to Windows 7 being minimum supported version.
We also block execution on Windows versions older than Windows 7.
A lot of code was removed thanks to this.
2023-09-03 00:58:34 +02:00
Mounir IDRASSI
14fee0da1a
Linux/macOS: preserve unknown entries in configuration file
This helps to preserve unknown entries that may be used by future
versions of VeraCrypt (forward compatibility) or entries used by old
versions that were removed from current version (backward compatibility)
2023-09-02 01:37:52 +02:00
Unit 193
d49c75370a
Allow cross compilation. (#1182) 2023-08-21 11:24:25 +02:00
Mounir IDRASSI
fd0d2e3353
Windows: Set minimum build target to Windows 7 2023-08-20 09:59:47 +02:00
Mounir IDRASSI
0dc4754c63
Windows: delay load bcrypt.dll to reduce startup dependency loading until setting safe dll loading 2023-08-20 09:57:38 +02:00
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
Mounir IDRASSI
df62c0227c
Linux: Fix wrong size for hidden volume when selecting the option to use all free space (fix by @Jertzukka) 2023-06-29 23:24:47 +02:00
Mounir IDRASSI
417ff5564e
Linux/FreeBSD: Make pcsclite a dependency of the packages and the generic installer 2023-06-29 23:15:03 +02:00
Jertzukka
364f3be41b
Linux: Add libpcsclite dependency into compilation guide (#1136)
After the EMV support commits, the project won't build anymore
without the new dependency of libpcsclite.
2023-06-29 20:53:25 +02:00
Mounir IDRASSI
034b64f415
EMV keyfile support: Overall code improvements and bug fixes 2023-06-29 00:06:20 +02:00
mmauv
502ab9112a
Add EMV functionality (#1080)
* Add basic strcture needed for EMV implementation

* Add demo EMV functionality with C code pasted in a very dirty and unsafe way. NOT FINAL

* Refactor IccExtractor Structure

* Fix Makefile

* fix include file

* move global variables from h to c

* revert to memcpy

* fix icc data recovery functions

* Add EMV functionalities on windows

* Make EMVToken structures like SecurityToken

* Define constants instead of hard coded values

* Token structures created with inheritance

* refactor TokenKeyfile to use inherit. + polymor.

* add Token.h + Token.cpp in modules in VS2010

* Add a comment at each use of SecurityToken class or objects

* SecurityTokenKeyfilesDialog preparation

* Implemennt GetAvailableTokens in Token class on windows

* merge

* up (patching for Windows)

* foreach Token.cpp corrected

* Display EMV keyfiles on first window in graphic interface

* Add token to Windows UI

* EMVToken selection on OKButton on Linux

* Keyfile.cpp optimization

* Move getKeyfileData in the token class

* EMV::Token GetAvailableKeyfiles() base

* Move getKeyfileData in the token class on unix

* Remove test comments

* Warnings resolved

* RemoveeSecurityTokenLibraryNotInitialized exception if at least one emv token is detected

* Adding new files

* Remove old files and add the new version to the windows project

* Change make_shared to shared_ptr constructor

* IccExtractor integration working on linux

* Throwing card not EMV execption

* catch error when not EMV type in EMVToken::GetAvailableKeyfiles

* Change types to compile on windows

* list all keyfiles, security keyfiles and emv keyfiles in command line

* Change type to be coherent and remove old todo comments

* Remove todo comments

* Change indentation and resolve a bug from previous commit

* Use polymorphism for GetKeyfileData and add export option for EMVTokens on Linux

* Linux : Allow to export EMV Tokens in command lines, Windows : Disable the delete button when EMV Keyfiles are selected

* Remove SlotId from TokenInfo as it is already in Token

* Correct errors on Linux

* Disable delete option if one EMV Token is selected on Linux

* Fix bug enabling delete button if nothing is selected

* emv data used as reference then burnt

* use of normal files in linux corrected

* help updated

* help updated for export functionnality

* option EMV added to graphic interface but not yet working

* Bug fix : Allow to use multiple EMV on windows

* EMV Option added to UserPreferences

* EMV Option working for Linux

* EMV option added to Windows (not working yet)

* [NOT TESTED] EMV option for Windows

* Working EMV option on Windows

* EMV Option for data extraction working for volume creation

* EMV Option for data extraction working for Mount

* EMV Option for data extraction working for mounting favorites volumes

* EMV Option for extraction working for Changing volume password, Set Derivation Key Algorithm and Add or remove keyfile from volume

* Windows : re-checking EMV Option when getting data

* Removing error catches in the IccDataExtractor classe (It only throws error now). Changing GetPan signature to resemble the other functions signatures more

* Changing EMV errors

- Only throwing ICCExtractionException from outside of the ICC module.
- Catching all TLVExceptions and PCSCExceptions to throw the right ICCExtractionException

- Deleting APDU exceptions.

* First version of the documentation

* Adding function pointers for winscard library (but it crashes VeraCrypt)

* Debugging function pointers

* The import of the library on windows work as expected now

* Reverting EMVToken.cpp changes used to test to library import

* Searching for the System32 path instead of hard codding it

* Fixing the bug were VeraCrypt crashes if there is no readers when  "add Token files" is clicked

* Winscard library not initialized in object constructor anymore to delay it after EMVOption check

* Remove winscard lib from windows dependencies

* Properly displaying errors

* Adding a dot in Language.xml

* Catching TLVException

* Removing unused code

* Remove unusefull comments

* Trying to fix 0x1f error

* Update IccDataExtractor.cpp

* Delete History.xml

* Fix get data without get pan

* Cleanup code

* changes for linux compilation but linking not working

* error handling for linux

* erasing emv data

* Burn PAN

* Burn PAN from memory

* Uncomment selfcheck before merging master

* burn corrected

* EMV errors handling for Linux

* EMV working for Linux CLI

* Doc : Winscard Linux package and VeraCrypt versions

---------

Co-authored-by: doriandu45 <d45.poubelle@gmail.com>
Co-authored-by: red4game <redemgaiming@gmail.com>
Co-authored-by: Brice.Namy <brice.namy@insa-rennes.fr>
Co-authored-by: vocthor <pieceo108@gmail.com>
Co-authored-by: vocthor <67202139+vocthor@users.noreply.github.com>
Co-authored-by: Andrei COCAN <andrei.cocan@insa-rennes.fr>
Co-authored-by: AndreiCocan <95496161+AndreiCocan@users.noreply.github.com>
Co-authored-by: francoisLEROUX <francois3443@gmail.com>
2023-06-28 22:51:43 +02:00
Mounir IDRASSI
342f78c090
Increment version to 1.26.3. Update Release Notes 2023-06-28 19:18:35 +02:00
Mounir IDRASSI
47c081792c
Windows: Add comboxbox to Format wizard to choose QuickFormat/FastCreate/FullFormat
This required changes to internal logic and addition of new UI strings
2023-06-28 18:12:17 +02:00
Mounir IDRASSI
579ce2fd31
Windows: Better handling of quick format for file container
We write a zeroed sector every 128 MiB, leaving other sectors untouched
This helps users visualize the progress of actual file creation while forcing Windows to allocate the disk space of each 128 MiB chunk immediately, otherwise, Windows would delay the allocation until we write the backup header at the end of the volume which would make the user think that the format process has stalled after progress bar reaches 100%.
2023-06-28 00:47:58 +02:00
Mounir IDRASSI
78d22e569b
Windows: 100% localization of Expander UI strings 2023-06-25 18:08:59 +02:00
Mounir IDRASSI
394ed5d867
Windows: Better language localization support for Expander.
More work is needed to localize remaining string resources
2023-06-25 00:41:02 +02:00
Mounir IDRASSI
52b3e0113a
Windows: Add 7zWindows.h file to Lzma project files 2023-06-24 22:01:12 +02:00
DLL125
097cfa947e
Dll125 lzma (#1120)
* Update LZMA to latest

* Add missing file
2023-06-23 21:19:50 +02:00
Mounir IDRASSI
bb55343f63
Windows: if /fastCreateFile set, request SE_MANAGE_VOLUME_NAME privileges (credits: @xnoreq)
Display a warning if request failed and allow to continue without fast creation
2023-06-23 00:36:07 +02:00
Mounir IDRASSI
0e4f1ecee3
Windows: Make SetPrivilege return error if AdjustTokenPrivileges cannot adjust privileges 2023-06-23 00:32:24 +02:00
Mounir IDRASSI
fbb1d18034
Windows: Allow selecting size unit (KB/MB/GB) for generated keyfiles
This change also makes it possible to generate keyfiles larger than 1 MiB although only the first 1 MiB will be taken into account by VeraCrypt.
Update strings in XML files
2023-06-20 23:15:46 +02:00
Mounir IDRASSI
2bfeba160c
Windows: make Expander first check file existence before proceeding further 2023-06-18 23:31:18 +02:00
Mounir IDRASSI
031748a988
Linux: make .deb package compatible with Debian 12 2023-06-18 00:28:08 +02:00
Mounir IDRASSI
36a055f669
Linux/macOS: only wipe password/PIM text controls if they are not empty
This fixes a crash on macOS with latest wxWidgets 3.2.2.1 where
GetLineLength returns -1
2023-06-14 00:31:46 +02:00
Mounir IDRASSI
440df02355
Linux: Fix compatibility of generic installers with old Linux distros
In old Linux distributions, tar command doesn't support
"--keep-directory-symlink" so we now dynamically detect if this switch
is support and then we use it if it is available
2023-06-13 23:34:04 +02:00
Mounir IDRASSI
4cc203e7b3
Crypto: Fix detection of SSSE3 intrinsics in compiler
We use correct define CRYPTOPP_BOOL_SSSE3_INTRINSICS_AVAILABLE
2023-06-13 23:26:02 +02:00
Mounir IDRASSI
41516242d5
Linux: use wxWidgets 3.2.2.1 for official VeraCrypt Linux packages 2023-06-13 23:23:18 +02:00
Mounir IDRASSI
2639e39976
Linux: fix static build against wxWidgets 3.2.2.1
libcurl support must be explicitely disabled
GKT2 must be explicitely set as defaut in VeraCrypt Makefile since
wxWidgets 3.2.2.1 uses GKT3 as default
2023-06-13 23:16:39 +02:00
Jertzukka
444152b286
Fix WXSTATIC building on latest wxWidgets stable 3.2.2.1 (#1103)
Changes to be able to build latest wxWidgets stable 3.2.2.1.

Removed in 3.1.5, needs to be removed.
--disable-webkit

Added in 3.1.0, needs to be added.
--disable-addremovectrl
2023-06-13 23:11:23 +02:00
Jertzukka
0ffd61a55c
Linux/FreeBSD: Fix privilege escalation prompts being ignored (#1100)
Currently if you fail the privilege escalation prompt, the second
one and consecutively every second will be ignored. This is because
if we do not --use-dummy-sudo-password and are on Linux/FreeBSD,
we will be prompted for password twice for one evaluation in the
while(!ElevatedServiceAvailable) loop.

For the fix, we make sure that we run the prompt only once for each
case.
2023-06-10 01:07:27 +02:00
Mounir IDRASSI
5ced64881c
Update copyright on various files 2023-06-06 00:03:12 +02:00
Mounir IDRASSI
b25ebeb7b4
Linux/macOS: Fix error during creation of installation package
"-R" switch was missing from the "cp" command
2023-06-05 22:46:20 +02:00
Mounir IDRASSI
4b46bdc253
Update copyrights in Readme.txt 2023-06-04 17:18:53 +02:00
Mounir IDRASSI
9086232d17
Increment version to 1.26.2. Update Release Notes 2023-06-04 17:17:54 +02:00
Mounir IDRASSI
22466535f1
Windows: Possible workaround for logarithmic slowdown for Encrypt-In-Place on large volumes (relates to #1063)
We replace absolute file pointer moving by relative moving with respect to current position. This was implemented as a workaround to address the performance issues related to in-place encryption. When using SetFilePointerEx() with FILE_BEGIN as the reference point, reaching the end of large drives during in-place encryption can cause significant slowdowns. By moving the file pointer relatively, these performance issues are mitigated.
2023-06-04 16:25:55 +02:00
Mounir IDRASSI
5e4e2e0483
Windows: Add dropdown menu to Mount button to allow mounting without cache 2023-06-02 09:39:14 +02:00
Jertzukka
6ced991d98
Fix issues launching fsck via terminal on Linux (#1086)
Currently on a system without xterm or konsole (like fresh
Ubuntu install) the fsck check will not launch. Added
gnome-terminal as an alternative and fixed an issue where
konsole will always error out as --title and --caption are
no longer valid arguments.

Previously the error message was simply "xterm not found", so
new LangString LINUX_EX2MSG_TERMINALNOTFOUND was added to let the
user knows which programs they need to get the feature working.
2023-06-01 09:01:53 +02:00
Passw
1fe7340f4b
fix wrong URL to clone EDK2 repo (#1084) 2023-05-29 09:26:00 +02:00
Mounir IDRASSI
f58a796ae6
Pkcs5.c: Fix typos where SHA256 is mentionned instead of Blake2s
This didn't cause any issue because SHA256_DIGESTSIZE is equal to
BLAKE2S_DIGESTSIZE
2023-05-28 17:36:29 +02:00
Jertzukka
4e5529bee0
Prevent failing fs options being shown in --text --create (#1078)
Removes the options exFAT and Btrfs being shown when creating a
volume in text mode when the system does not support them and will
end up erroring out at the end. Hide Btrfs option when the volume
is too small, as we will anyways fail right after.

Hardcoded numbering changed to dynamic as the available options
are not necessarily consecutive.
2023-05-27 18:08:51 +02:00
Mounir IDRASSI
7ae63335ac
Linux/macOS: Make RNG implementation match documentation and the Windows implementation 2023-05-27 17:24:11 +02:00
Mounir IDRASSI
f4b310b23f
Linux/macOS: explicitely initialize hash algo before hashing random pool
The lack of explicit hash initialization was causing issue with Blake2s
because it doesn't allow further processing once a digest value was
returned.
Other hash algorithms don't have this restriction.
Not we explicitely initialize all hash algorithms which is the correct
way to do things.
2023-05-27 10:25:56 +02:00
Mounir IDRASSI
40caafdb1b
Windows: Add missing Blake2s source files to VS 2019 crypto project 2023-05-26 00:36:05 +02:00
Mounir IDRASSI
28aff67293
Windows: Add missing update of libzip zip_err_str.c and fix libzip related project configuration 2023-05-26 00:35:58 +02:00
DLL125
1fc4168b81
Update Libzip to latest 1.9.2 (#1071)
* Libzip 1.9.2

Updated Libzip to latest version 1.9.2 and changed version number in the config.h from 1.7.3 to 1.9.2. Not sure if anything else needs to be tweaked :)

* Modified Libzip to work with Visual studio

* Update README.md

Update libzip copyright.

* Added the missing files.

I've added the missing files zipconf.h and config.h, I've missed those sorry for that!
2023-05-25 12:52:53 +02:00
Mounir IDRASSI
b872702309
Linux: Fix printing error when checking freespace during volume creation
No parent directory specified in the path, we assume current directory
We first check if parent directory exists before checking its free space
using wxgetDiskSpace

Based on idea proposed by @bogdro in PR#1025
2023-05-22 01:05:17 +02:00
Mounir IDRASSI
eb61010ce2
Linux/macOS: Better handling of wrong PIM value in text mode (enhances PR#1026) 2023-05-21 17:27:33 +02:00
Bogdan Drozdowski
b05b18928f
Keep PIM secret and re-ask when user entered a wrong value (#1026)
Co-authored-by: Bogdan Drozdowski <>
2023-05-21 17:21:21 +02:00
Marius Kjærstad
2b6ed5a582
Added line breaks between new copyright holders (#963) 2023-05-19 23:28:40 +02:00
Wendigo
8fc866df40
update zlib to latest version 1.2.13 (#986) 2023-05-19 22:15:01 +02:00
Es
e59581918f
wxWidget assert failure bug (#999)
* Removal of any of the any of `wxALIGN_RIGHT`/`wxALIGN_CENTRE_HORIZONTAL`/`wxALIGN_BOTTOM`/`wxALIGN_CENTRE_VERTICAL` when used in conjunction with `wxEXPAND`

wxWidget has an "assert" that gets triggered anytime `wxEXPAND` gets used with an alignment property (useless override). This leads to a popup backtrace everytime a non-compliant widget is opened.

* Removal of missed `wxALIGN_RIGHT`/`wxALIGN_CENTRE_HORIZONTAL`/`wxALIGN_BOTTOM`/`wxALIGN_CENTRE_VERTICAL` when used in conjunction with `wxEXPAND`

* Removed property 'label' for wxMenuBar as no longer used (wxFormBuilder)

* Removed redundant 'wxALIGN_RIGHT' for the "OK" button in the preference panel (there is a spacer already in-place that pushes the buttons to the right)

* Removed redundant 'wxALIGN_RIGHT' for items in the wizard panel's (`WizardFrameBase`) button bar and added width spacing for the 2 spacers between the buttons to make up for the change.

* Changed constructor signature for the `WizardPage` and all subclasses

 The addition of the wxString 'name' arg brings it inline with the new wxFromBuilder v3.10.1 output so that editing+generating the forms from it won't brake the build now.

* Removed remaining redundant 'wxALIGN_*' that were paired with 'wxEXPAND'.

* Added missing default flags to wxFileName::Normalize(..) method

The old empty initialization which was fine up to v2.8.12 of wxWidget gives off a compile warning. Since the default `wxPATH_NORM_ALL` is now depreciated (v3.x) the equivalent individual flags must be explicitly given.

* Changed spaces to tabs to bring last commit inline with the rest of the src code
2023-05-19 00:44:13 +02:00
ZhanYF
b6513d82f8
OpenBSD vnconfig no longer needs -c option (#1002)
Co-authored-by: Your Name <you@example.com>
2023-05-19 00:29:59 +02:00
David
ecb5ea9671
Fix compiler warnings (#1030)
Fixing the following compiler warnings:

FuseService.cpp: In function ‘int VeraCrypt::fuse_service_read(const char*, char*, size_t, off_t, fuse_file_info*)’:
FuseService.cpp:233:12: warning: catching polymorphic type ‘struct VeraCrypt::MissingVolumeData’ by value [-Wcatch-value=]
  233 |     catch (MissingVolumeData)
      |            ^~~~~~~~~~~~~~~~~
FuseService.cpp: In static member function ‘static int VeraCrypt::FuseService::ExceptionToErrorCode()’:
FuseService.cpp:362:15: warning: catching polymorphic type ‘class std::bad_alloc’ by value [-Wcatch-value=]
  362 |   catch (std::bad_alloc)
      |               ^~~~~~~~~

Apart from warnings, the current code creates unnecessary copies of the exception object in debug mode. (But not in -O3)
2023-05-18 23:12:01 +02:00
Jertzukka
1043bff967
Fix mount.veracrypt (#1064)
Reverses order of --non-interactive and --text to actually make it work, also fix --pim working.
2023-05-18 23:09:32 +02:00
Jertzukka
8072207eb6
Add a new LangString 'LINUX_VOL_MOUNTED' to show when volume mounted. Fixes (#1029)
the issue of 'LINUX_VOL_DISMOUNTED' being shown even when not dismounting.
2023-05-18 22:59:36 +02:00
Mounir IDRASSI
8e443c25cc
Linux/macOS: Suppress asserts displayed by wxWidgets 3.1.6+ for sizer flags until we fix all sizer flags in our UI. 2023-05-18 21:25:07 +02:00
Mounir IDRASSI
0fdf2edda7
Linux: Fix .deb package compatibility with Ubuntu 23.04 2023-05-18 21:22:24 +02:00
Mounir IDRASSI
49de3de994
Windows MSI: fix failure to create MSI because of missing html files during packaging 2022-12-11 23:04:02 +01:00
Mounir IDRASSI
13dc3da6a6
Windows MSI: Add reference to newly added documentation files. Remove reference to RIPEMD-160 html file. 2022-12-11 21:26:58 +01:00
Mounir IDRASSI
4056f58add
Documentation: remove usage of CSS collapsible to avoid breaking CHM generation. Add new entries to CHM. Remove example script file since its content is described inline in the documentation
We need to generate CHM from the same HTML files as the documentation and so we are limited by CHM compatibility
2022-12-11 18:40:33 +01:00
Mounir IDRASSI
44c9c077f3
Revert "New sys enc wizard (#957)"
This reverts commit c0ff7a7c52.
2022-12-11 13:01:14 +01:00
Felix Reichmann
c0ff7a7c52
New sys enc wizard (#957)
* New VeraCrypt interface (for system encryption) with improved usability

* System Encryption: translate password to US keyboard layout + improved new interface

* Windows: Fix build error following merge

* Windows: Remove unused variable

* Windows: Add missing string in Language.xml

* Windows: fix buffer overrun caused by wrong use of wmemset

* Do not delete password file

Since the file is only available in \Release\Setup Files\ it would be fully deleted after running this script the first time.

* Correct return code

Originally the function would have always returned the return-code 1 resulting that the user is not able to change the location for the rescue zip.

* Added hint for sysenc

Added a hint why the field for repeating the password is initially greyed out within the system encryption.

* Corrected spelling mistake

Corrected spelling mistake

* Removed not working copy job

The file to be copied was stored at the source location. Therefore the copyjob will not work. Instead the file is already in the target folder.

* Removed RIPEMD-160 from Product64.wxs

See commit from 21.03.2022

* Added german translation for new interface

* Fixed PIM bug

* Corrected translation file based on the guidelines within the pull request

* Fixing merge conflicts

* Fixed Compiling issues. Reverted keyboard translation

* Removed artifacts of password translation

* Corrected language.xml

* Fixed order within german language file

* Corrected positions

Co-authored-by: Bruna2803 <bruna.radeljak@hotmail.com>
Co-authored-by: felixreichmann <30237956+felixreichmann@users.noreply.github.com>
Co-authored-by: Mounir IDRASSI <mounir.idrassi@idrix.fr>
2022-08-25 09:46:58 +02:00
Mounir IDRASSI
99c3cda01a
Windows: use newer MEMORYSTATUSEX structure in call to GlobalMemoryStatusEx 2022-08-25 09:38:49 +02:00
Wendigo
46ecb1a66d
Minor bugfixes (#950)
* Update Dlgcode.c

minor bugfixes

* GlobalMemoryStatus x64 bugfix

GlobalMemoryStatus deprecated in x64
2022-08-25 08:57:34 +02:00
Kenneth Chew
a23d4392fb
Fix incorrect text color in dark mode (#920) 2022-08-21 17:58:08 +02:00
Matteo Baccan
53b4019d1f
Fixed a typo error (#929)
Hi

I have fixed a little typo error: a double semicolon at the end of one line

ciao
matteo
2022-08-21 17:56:31 +02:00
Felix Reichmann
cc5212fdb1
Documentation overwork (#953)
Github PR: https://github.com/veracrypt/VeraCrypt/pull/953

* Create CompilingGuidelinerh

* Initial Upload Windows Compiling Guide

* Removed RIPEMD-160 from Product64.wxs. See commit from 21.03.2022

* Completed Win compiling guideline

* Added link to detailed compiling guide

* Added link to detailed compiling guide

* Restructured docu main page

* Added sourceforge link

* Added compiling guide for Linux

* References to detailed instructions

* Revert "Removed RIPEMD-160 from Product64.wxs. See commit from 21.03.2022"

This reverts commit 024ae2a465.

* Correction of a div box
2022-08-16 08:21:55 +02:00
Mounir IDRASSI
0871695403
Update zlib to version 1.2.12 2022-03-31 00:52:40 +02:00
Mounir IDRASSI
762065917f
Windows: Add various checks to address Coverity reported issues. 2022-03-26 21:15:11 +01:00
Mounir IDRASSI
a0809fe85c
Windows: check result of WriteFile and don't block if it is failing (Coverity) 2022-03-26 21:15:04 +01:00
Mounir IDRASSI
05fd14006d
Remove dead code from chacha_ECRYPT_encrypt_bytes (Coverity) 2022-03-26 21:14:57 +01:00
Mounir IDRASSI
533269ca9a
Windows: Fix wrong parameter to CloseHandle function in case of failure of CreateEvent (Coverity) 2022-03-26 21:14:49 +01:00
Mounir IDRASSI
69a9c6b394
Update release notes for 1.26.0 and set its date to March 21st 2022 2022-03-22 00:56:54 +01:00
Mounir IDRASSI
5124775236
Windows: Add latest 1.26 EFI bootloader files that are signed by Microsoft that come with the following modifications: - Fix bug in PasswordTimeout value handling that caused it to be limited to 255 seconds. - Rescue Disk: enhance "Boot Original Windows Loader" by using embedded backup of original Windows loader if it is missing from disk - Addition of Blake2s and removal of RIPEMD160 & GOST89 2022-03-21 01:19:09 +01:00
Mounir IDRASSI
67acba4b4f
Increment version to 1.26 and update windows driver and MBR bootloader files 2022-03-21 01:19:02 +01:00
Mounir IDRASSI
a239789317
Add missing Blake2s source files 2022-03-21 01:18:55 +01:00
Mounir IDRASSI
03e29434e8
Windows: Display message to recreate Rescue Disk when upgrading from version 1.25 or earlier because of the changes in the supported algorithms 2022-03-21 01:18:34 +01:00
Mounir IDRASSI
5383190518
Windows: Block upgrade of VeraCrypt is the system is encrypted using RIPEMD-160 or GOST89 since they are not supported anymore. 2022-03-21 01:18:27 +01:00
Mounir IDRASSI
dd0f3cd167
Windows: use "HMAC-BLAKE2s-256" instead of "HMAC-BLAKE2s" for BLAKE2s PRF name 2022-03-21 01:18:20 +01:00
Mounir IDRASSI
36795a688f
Implement support of Blake2s-256 hash algorithm and remove deprecated algorithms RIPEMD-160 and GOST89. 2022-03-08 00:29:26 +01:00
Mounir IDRASSI
3cab3ce37a
Increment version to 1.25.9 and update Release Notes. 2022-02-19 22:54:59 +01:00
Mounir IDRASSI
c145b337cb
Linux/MacOSX: Fix hidden volume settings not correctly displayed when enabling hidden volume protection in mount options window 2022-02-19 22:35:34 +01:00
Mounir IDRASSI
b52ce86040
Linux: Fix code dump when built with -D_GLIBCXX_ASSERTIONS caused by an assert in libstdc++.
The variable has enough capacity so pointer &buffer[0] is valid but since clear method was called, we are not supposed to access element at index 0.
Related to Github issue #896
2022-02-18 01:24:32 +01:00
Mounir IDRASSI
662bb60fe4
Windows: Fix wrong Debug reference in VS2019 solution file 2022-02-16 23:44:18 +01:00
Mounir IDRASSI
8a1f6d904b
Update Release Notes and release date 2022-02-16 23:22:32 +01:00
Mounir IDRASSI
c2b2f80d4f
Increment version to 1.25.8.2 and update signed Windows drivers 2022-02-16 23:22:22 +01:00
Mounir IDRASSI
d417b2806c
Linux/FreeBSD: Enable building without AESNI support by setting environment variable DISABLE_AESNI to 1 during build or passing NOAESNI=1 to make command
This comes following Github issue #892 and which should be solved thanks to this.
2022-02-13 18:42:27 +01:00
Mounir IDRASSI
5ef553d18f
Windows: remove debugging left over call to MessageBox 2022-02-11 00:37:39 +01:00
Mounir IDRASSI
11800e429d
Windows: Activate lzma project build for x64 target 2022-02-11 00:37:33 +01:00
Mounir IDRASSI
b1ae5f4740
Update copyrights following integration of LZMA SDK 2022-02-11 00:37:25 +01:00
Mounir IDRASSI
b5b252107d
Update Release Notes and set release date to February 10th. 2022-02-11 00:37:17 +01:00
Mounir IDRASSI
e925dd2f1a
Windows: Increment version to 1.25.8.1 and update signed Windows drivers 2022-02-11 00:37:09 +01:00
Mounir IDRASSI
aebb099da2
Windows Driver: Don't cache the password if outer volume mounting succeeds but hidden volume mounting fails 2022-02-10 01:21:25 +01:00
Mounir IDRASSI
1ef05f24e2
Windows: Reduce the size of installers by almost 50% by using LZMA compression instead of DEFLATE 2022-02-10 01:21:17 +01:00
Mounir IDRASSI
302dc37fb9
Windows: Make Travel Disk contains 32-bit and arm64 binaries when VeraCrypt installed using MSI 2022-02-10 01:20:25 +01:00
Mounir IDRASSI
2da115ffb4
Update Release Notes and add signed Windows driver. 2022-02-06 09:53:07 +01:00