Commit Graph

3998 Commits

Author SHA1 Message Date
Frank Denis
5e4affe9d8 Support gcc-like and C11-like memory fences 2023-09-09 09:01:51 +02:00
Frank Denis
e95d437f84 Add memory fences where supported 2023-09-09 09:01:44 +02:00
Frank Denis
3a6a6025cc Backport aarch64 support for aes256-gcm 2023-09-09 01:04:48 +02:00
Frank Denis
a12afb7b9d Sync build.zig with 1.0.19 and 1.0.20 2023-09-09 00:43:27 +02:00
Frank Denis
2a72d4501b Simplify how non-deterministic ed25519 nonces are computed 2023-09-08 23:37:55 +02:00
Frank Denis
a77269a21b Regen 2023-09-08 22:03:03 +02:00
Frank Denis
9683141c86 Update m4 scripts
Update ax_check_define.m4
Update ax_check_gnu_make.m4
Update ax_pthread.m4
Update ax_valgrind_check.m4
Update ax_add_fortify_source.m4
2023-09-08 22:02:33 +02:00
Scr3amer
375a01d722 Add missing undef in _mm_roti_epi64 definition for blake2b-ssse3 (#1306) 2023-09-02 22:16:26 +02:00
Scr3amer
4322f15012 Do not redefine _mm_roti_epi64 if xop target feature is enabled. (#1305)
Undefine compiler macro if present and XOP not enable to avoid preprocessor warnings due to macro redefinition
2023-09-02 15:26:00 +02:00
Scr3amer
52b90532f6 Define TLS as _Thread_local if the compiler supports C11 (#1304) 2023-09-01 23:47:12 +02:00
Frank Denis
6256e097c9 scrypt_nosse: Remove the 64-bit version of blkxor()
It broke strict aliasing.

Also remove ARCH_BITS that is not required any longer.

Fixes #1301
2023-08-31 23:27:46 +02:00
Frank Denis
9e42094343 scrypt_integerify_sse: be consistent with the no_sse version 2023-08-31 23:25:52 +02:00
Frank Denis
1913882616 scrypt_nosse: no need to use void * in integerify() 2023-08-31 23:25:47 +02:00
Frank Denis
d569fe35b3 Copy libsodium.sln from Visual Studio 2019 to Visual Studio 2022x 2023-08-05 23:10:55 +02:00
Frank Denis
29f8978f78 Update resource.rc 2023-08-05 22:44:15 +02:00
Frank Denis
411905f83b Reorder 2023-08-05 11:08:44 +02:00
Frank Denis
c298d1a8c6 Only create a shared library where we know it works 2023-08-05 11:07:50 +02:00
Frank Denis
4936130b91 Build shared libraries again, even on Windows 2023-08-05 10:38:39 +02:00
Frank Denis
4388ef37db Require/enable AVX for AES256-GCM 2023-08-05 09:39:11 +02:00
Frank Denis
1686b524ab Remove fix for ARM 2023-08-04 10:53:13 +02:00
Frank Denis
70f5c8f767 Update CI for Zig 0.11.0 2023-08-03 22:39:31 +02:00
Frank Denis
2300119c4f Update for Zig 0.11 2023-08-03 22:35:07 +02:00
Frank Denis
bfc88823e3 config.sub update 2023-08-03 22:33:10 +02:00
Frank Denis
dd7f1ce488 Remove --experimental-wasm-bigint for the tests using Node 2023-07-27 12:13:36 +02:00
Frank Denis
4f099fc593 Add proper CET support (followup to #1290) (#1291) 2023-07-19 18:31:55 +02:00
Frank Denis
f3bd149feb Revert "Build correctly with IBT and Shadow Stack (#1289)"
This reverts commit 5fe02c89a7.
2023-07-19 15:10:52 +02:00
Siddhesh Poyarekar
5fe02c89a7 Build correctly with IBT and Shadow Stack (#1289)
Add .gnu.property notes to indicate support for IBT and shadow stacks
when libsodium is built with it.  There's no stack switching code in
here, so this should not need any other codegen changes.
2023-07-18 17:56:45 +02:00
Frank Denis
da27f75b1c config.sub update 2023-07-18 17:42:40 +02:00
Frank Denis
f58e91061e Merge branch 'stable' of github.com:jedisct1/libsodium into stable
* 'stable' of github.com:jedisct1/libsodium:
  build: do not define the sodium target when not found by CMake (#1287)
2023-06-16 19:01:40 +02:00
Frank Denis
e4fd497b98 sodium_utils{2,3} are not worth running in benchmarks 2023-06-16 19:01:20 +02:00
Amin Yahyaabadi
a1348978e6
build: do not define the sodium target when not found by CMake (#1287) 2023-06-15 13:59:56 +02:00
Frank Denis
609f089764 Azure Pipelines: remove WASI CI checks for now 2023-05-23 01:36:44 +02:00
Frank Denis
adef28f318 Define SODIUM_STATIC for Windows static builds 2023-04-27 08:24:28 +02:00
Frank Denis
8cc84df466 Add CITATION.cff 2023-04-14 23:24:50 +02:00
Frank Denis
0c5ac65576 build.zig don't strip in Debug mode 2023-03-01 17:05:26 +01:00
Frank Denis
135d7ef047 Remove redundant strip 2023-02-16 22:00:45 +01:00
Frank Denis
41e93e96c0 emscripten: use different settings for wasm and js builds 2023-02-16 20:08:23 +01:00
Frank Denis
81f58a5c58 emscripten: remove pwhash_* from non-sumo builds 2023-02-16 19:36:15 +01:00
Frank Denis
b9b0c62e46 emscripten: EXTRA_EXPORTED_RUNTIME_METHODS -> EXPORTED_RUNTIME_METHODS 2023-02-16 19:21:16 +01:00
Frank Denis
ebcc2a6636 pwhash: fill output buffer with junk prior to running the actual KDF
These functions are a little bit special, because unlike everything
else, they do dynamic memory allocations, and are more likely to fail.

Applications are expected to check the return code, and these functions
are tagged with ((warn_unused_result)) but applications may still
ignore these.

This is also an issue with JavaScript, when total memory hasn't been
properly configured.

To be safe, fill the buffer with non-deterministic bytes, that are
unlikely to ever verify later.
2023-02-16 18:22:19 +01:00
Frank Denis
b166dbfb2b Regen autoconf 2023-02-15 20:02:04 +01:00
Frank Denis
6318c8c6af emscripten: setting Module.TOTAL_MEMORY doesn't do anything 2023-02-15 20:02:04 +01:00
Frank Denis
abfbcab412 Use CLOCK_MONOTONIC for benchmarking, if possible 2023-02-15 19:53:33 +01:00
Frank Denis
39b4300cf2 Update config.sub 2023-02-07 18:36:08 +01:00
Frank Denis
ec51ee03f8 Azure Pipelines: use the recommended way to add wasmer to env 2023-02-07 18:35:25 +01:00
Frank Denis
410d0a38b7 Check for iwasm existence before trying to use it 2023-02-07 18:35:25 +01:00
Frank Denis
5f32a74e1a The --stack-first link option doesn't exist any more 2023-02-07 13:01:40 +01:00
Frank Denis
cadf901940 Azure: update to zig 0.10.1 2023-02-07 12:57:21 +01:00
Frank Denis
800c31d9fa Use Zig 0.10.1 2023-02-07 12:38:20 +01:00
Frank Denis
4275023f16 On Windows, a ".LIB" file can be either shared or static
We were overwriting the static library with the shared one.
2023-01-18 23:04:24 +01:00