Commit Graph

2229 Commits

Author SHA1 Message Date
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
Matthaiks
4defec4aeb
Update Polish translation (#1137) 2023-06-30 01:13:37 +02:00
Mounir IDRASSI
14eef978ad
Increment version to 1.26.3 in XML language files 2023-06-30 00:35:48 +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
Mounir IDRASSI
b750c67810
Translations: Add new messages related to EMV to XML files 2023-06-29 21:30:40 +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
Patriccollu
a2bc852c4d
Update Corsican translation on 2023-06 (7th) (#1135) 2023-06-29 20:39:27 +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
Matthaiks
f4e109afcf
Update Polish translation (#1132) 2023-06-28 20:44:02 +02:00
Dr-Jordi-W
166bf8a67f
Update Language.fr.xml (#1130)
French translation for the ADMIN_PRIVILEGES_WARN_MANAGE_VOLUME key
2023-06-28 20:17:59 +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
e0e043157f
Documentation: Fix typos 2023-06-28 09:39:52 +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
Matthaiks
db12703e9b
Update Polish translation (#1129) 2023-06-27 17:48:46 +02:00
Mounir IDRASSI
9836fdccd9
Translations: Add new messages to XML files where it was missing 2023-06-27 15:40:38 +02:00
Thomas De Rocker
72fa43662c
Update Language.nl.xml (#1125) 2023-06-27 15:25:28 +02:00
Patriccollu
9a3fd52062
Update Corsican translation on 2023-06 (6th) (#1124) 2023-06-25 23:05:15 +02:00
Matthaiks
49af509deb
Update Polish translation (#1123) 2023-06-25 23:04:20 +02:00
Mounir IDRASSI
83064d6cec
Update language XML files with new Expander entries 2023-06-25 18:30:20 +02:00
Mounir IDRASSI
78d22e569b
Windows: 100% localization of Expander UI strings 2023-06-25 18:08:59 +02:00
Matthaiks
aff54ffcba
Update Polish translation (#1122) 2023-06-25 09:08:39 +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
Patriccollu
9e1c0e5b22
Update Corsican translation on 2023-06 (5th) (#1117) 2023-06-23 20:53:49 +02:00
nkh0472
c6a3902538
Update Language.zh-cn.xml (#1114)
for commit bb55343f63
2023-06-23 20:53:06 +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
nkh0472
d4ae2ce893
Update Language.zh-cn.xml (#1113) 2023-06-22 23:11:46 +02:00
Patriccollu
1afa81eef9
Update Corsican translation on 2023-06 (4th) (#1112) 2023-06-21 17:13:01 +02:00
Matthaiks
3c25fbdc79
Update Polish translation (#1111) 2023-06-21 09:31:41 +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
Mounir IDRASSI
b0d0fbbcfd
Documentation: Clarify various points in the documentation 2023-06-13 00:32:41 +02:00
Thomas De Rocker
569e7b91ab
Update Language.nl.xml (#1099) 2023-06-10 01:08:55 +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
9ad75aaa0f
Translations: restore lost change in Language.fr.xml. Translate two strings. 2023-06-10 00:51:33 +02:00