147d762ebc
Implemented modified and somewhat faster initialization code.
...
As this unavoidably breaks compatibility with pre-1.3.x versions, added a new flag to 'slunkparam_t' that enables backwards compatibility mode.
Also extended the self-test code to test the new initialization, in addition to the "legacy" initialization.
2022-10-13 02:26:51 +02:00
e4c3343d0c
Fixed detection of 32-Bit (x86) version of Haiku OS.
2022-09-29 22:44:19 +02:00
d988fd0a56
Added flag to indicate multi-thread support to the public API.
2022-09-23 22:21:01 +02:00
cc4b9c8af3
Enable the "-pedantic" option for GCC + fixed a few warnings.
2022-09-20 21:53:57 +02:00
0c91cac7e4
Clean up includes in "front-end" application.
2022-09-20 21:52:23 +02:00
5e7b6ebb09
Updated Linux build script to better match the officially supported Debian platforms.
2022-06-18 22:30:45 +02:00
17018e4f86
Added support for building SlunkCrypt for the Windows on ARM64 platform.
2022-05-24 22:31:40 +02:00
f6cd289725
Support for MIPS architecture + small improvement to Linux cross-build script.
2022-05-21 17:32:18 +02:00
3901bd6a1d
Small fix to make error messages in encrypt() and decrypt() more consistent.
2022-05-10 20:36:07 +02:00
69e549aafd
Added support for the Haiku operating system.
2022-04-26 22:03:08 +02:00
afdce47caa
Small code clean-up + improved the Makefile + detect GNU/Hurd operating system.
2022-04-23 20:25:58 +02:00
e78b144413
Enable the GUI to use the "AVX2" binary, if supported on the current machine.
2022-04-18 18:52:55 +02:00
86b4f64f86
Updated pthreads libraries for the Windows platform (pthread4w) to version 3.0.0.
2022-04-17 01:49:03 +02:00
2cee77b108
Adjust I/O buffer size according to file size + allow slightly bigger maximum buffer size.
2022-04-17 00:43:21 +02:00
50955210ac
Small improvement to platform detection.
2022-04-08 23:10:27 +02:00
70e9d2d3b5
Fixed slunkcrypt_reset() when no thread pool is allocated, e.g. when thread count is 1.
2022-04-07 00:15:07 +02:00
7359ce3673
Enhanced self-test routine + added macro to "safely" free SlunkCrypt instance.
2022-04-02 17:27:48 +02:00
69df385d57
Detect the number of available CPU cores by using either sched_getaffinity(), GetProcessAffinityMask() or sysconf(), depending on the target platform.
2022-04-01 20:33:46 +02:00
fdc1c8b0d8
Refactored progress indicator update + increase file I/O buffer size.
2022-03-29 22:58:47 +02:00
f70ccb6a14
Some code refactoring in the thread pool module.
2022-03-24 21:59:43 +01:00
d0be7ad5a5
Make it possible to set number of threads in the front-end + updated the README file.
2022-03-24 00:06:01 +01:00
a4aec9f3fe
Updated pthreads library for the Windows platform (pthreads4w).
2022-03-24 00:06:01 +01:00
c32c85d8c9
Much improved threading support.
2022-03-22 23:01:19 +01:00
ddefc8c142
Initial thread support.
2022-03-21 21:11:46 +01:00
c607046831
Implemented improved method for detecting identical files.
2022-03-04 20:56:20 +01:00
ca16052112
Some code refactoring.
2022-03-01 23:34:50 +01:00
b95e578e33
Print the system error message, if the input or output file could not be opened.
2022-02-27 19:38:10 +01:00
65c17e6759
Make sure that input file name and output file name are distinct (to the extent possible).
2022-02-25 00:12:52 +01:00
65f08d43a5
Replaced clock() function by clock_gettime() on Linux and QueryPerformanceFrequency() on Windows.
2022-02-11 21:52:22 +01:00
b39b7cafaa
Small improvement to the password generator.
2022-02-08 22:53:02 +01:00
1c587be39b
Gracefully handle an *empty* argument array (argc < 1), which apparently is possible on Linux and maybe others.
2022-01-27 00:21:28 +01:00
9e29561707
Refactored project/solution files.
2021-11-10 19:38:35 +01:00
17d807bbb3
Added runtime CPU detection for SSE2 capability to the GUI front-end.
2021-11-09 23:23:43 +01:00
0e65355d2f
Workaround for bug in older version of the UCRT on Windows XP: Explicitly link UCRT version 10.0.14393.0 and force the minimum required OS version to 5.1.
2021-05-10 21:21:47 +02:00
61fa41c888
GUI: Added button to generate a random password to the "Encrypt" tab.
2021-05-08 19:53:15 +02:00
502e92ee09
Added a simple GUI front-end for Windows platform.
2021-05-04 21:35:30 +02:00
7f643ad566
Do not request more than 256 bytes of random data from getentropy() at once.
2021-04-21 16:02:25 +02:00
b7e32f5f0a
Refactored passphrase generator into a separate file.
2021-04-18 22:19:17 +02:00
46dc28f3ca
Refactored encryption/decryption routines as well as the self-test routine into separate files.
2021-04-18 15:32:37 +02:00
102233a237
Fold the hash at the very end of the keygen loop (effectively), instead of already in the hash function.
2021-04-15 22:51:35 +02:00
ff48e473a9
Print a warning when ignoring excess command-line arguments.
2021-04-11 20:55:39 +02:00
772c88a387
Workaround for Intel® oneAPI DPC++/C++ Compiler detection.
2021-04-11 18:26:44 +02:00
a9e1974149
Improved test cases to also verify the checksum of the ciphertext.
2021-04-10 16:37:09 +02:00
3cdfc9d9ab
Small tweak to self-test routine.
2021-04-08 02:38:01 +02:00
0e75e05fda
Small code simplification in open_files() function.
2021-04-07 02:28:26 +02:00
13e9420ca1
Added MSVC configurations "Release with SSE2" and "Release with debug information".
2021-04-04 20:22:46 +02:00
4ce6e5b828
Remove an incomplete (or corrupted) output file by default.
2021-04-03 19:26:15 +02:00
06f57ca483
Clean up function names.
2021-04-02 16:37:19 +02:00
471e08737b
Replaced separate encrypt() and decrypt() functions with a single process() function + added 'mode' parameter to alloc() and reset() functions.
2021-04-01 01:58:39 +02:00
163dee5e9d
Only check current clock() on every 32-th cycle, in order to limit the overhead.
2021-03-28 16:17:06 +02:00