Commit Graph
4238 Commits
Author SHA1 Message Date
Frank Denis e494ce3e69 Move sodium implementations out of their dedicated directory 2023-09-09 17:24:49 +02:00
Frank Denis 3acf050566 Replace aegis128l implementation with libaegis' implementation 2023-09-09 17:24:46 +02:00
Frank Denis 314f603929 Add support for VisionOS 2023-09-09 10:56:02 +02:00
Frank Denis 0df2340a99 Just refer to "aegis" since we have at least 2 variants 2023-09-09 08:54:53 +02:00
Fergus Baker 5191b40acc Allow other zig projects to use libsodium as a dependency (#1300)
* fix(build.zig): derive cwd from builder

Using fs.cwd() only resolves the libsodium directory when building from
within libsodium. Deriving the absolute path to the libsodium directory
from the builder allows the build script to be invoked from other
projects.

* feat(build.zig): add options for building libsodium

Added the options to build either the static, shared, and/or tests. The
tests depend on the static library, and therefore imply the static
library.

* feat(build.zig): include header files
2023-09-09 00:39:15 +02:00
Frank Denis 94c650ae80 Proper casts for C++ 2023-09-08 23:35:24 +02:00
Frank Denis c3692bbe0f Revert "C++ compat"
This reverts commit 48a679650e.
2023-09-08 23:31:27 +02:00
Frank Denis 4776f392ab Simplify how non-deterministic ed25519 nonces are computed 2023-09-08 23:30:25 +02:00
Frank Denis 258934f5b6 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:01:51 +02:00
Frank Denis 9dc6b80d8c Bump dev version 2023-09-08 21:44:54 +02:00
Frank Denis 48a679650e C++ compat 2023-09-08 20:59:33 +02:00
Scr3amer 18fad78494 Add missing undef in _mm_roti_epi64 definition for blake2b-ssse3 (#1306) 2023-09-02 22:16:15 +02:00
Frank Denis 503a1ef2c3 Simplify _mm_roti_epi64 definition 2023-09-02 15:23:53 +02:00
Scr3amer 4ebe29b2e3 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:22:20 +02:00
Frank Denis 8ad54cb636 Fallback to _Thread_local on C11 regardless of the platform 2023-09-01 23:43:21 +02:00
Scr3amer a04c8687ac Define TLS as _Thread_local is compiler supports C11 (#1304)
This avoids having warnings when compiling with Clang-MinGW on windows.
2023-09-01 23:37:36 +02:00
Frank Denis baa75cd1b8 Indent 2023-09-01 16:32:45 +02:00
Frank Denis 0ea62015f2 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:23:30 +02:00
Frank Denis b828df51dd scrypt_integerify_sse: be consistent with the no_sse version 2023-08-31 23:18:09 +02:00
Frank Denis 30212c0952 scrypt_nosse: no need to use void * in integerify() 2023-08-31 23:08:56 +02:00
Frank Denis a3f200abe6 Manually define __ARM_FEATURE_AES (necessary for CheriOS) 2023-08-23 22:18:11 +02:00
Frank Denis 4dc02ce841 Assume all CPUs supported by ARM Windows have the crypto extensions
RADDI.net said:

"All supported AArch64 CPUs on desktop Windows 10 and 11 have
both AES (crypto) and NEON, no feature testing needed."
2023-08-05 23:15:33 +02:00
Frank Denis e698b1b000 Check _M_ARM64 in addition to __aarch64__ 2023-08-05 23:04:35 +02:00
Frank Denis 5a8f528b81 Copy libsodium.sln from Visual Studio 2019 to Visual Studio 2022x 2023-08-05 22:58:42 +02:00
Frank Denis 32088e822e Update resource.rc 2023-08-05 22:43:58 +02:00
Frank Denis 4c8367de7f Reorder 2023-08-05 11:08:32 +02:00
Frank Denis 22815d222c Only create a shared library where we know it works 2023-08-05 11:07:20 +02:00
Frank Denis 1c2398fb7c Build shared libraries again, even on Windows 2023-08-05 10:38:54 +02:00
Frank Denis 02368730f0 Compile libaesni with CFLAGS_AVX 2023-08-05 09:40:02 +02:00
Frank Denis 6668dc8008 Require/enable AVX for AES-based ciphers 2023-08-05 09:33:04 +02:00
Frank Denis 07a847e7ee Remove fix for ARM 2023-08-04 10:52:17 +02:00
Frank Denis 75e4cef86a Update goto-bus-stop/setup-zig 2023-08-04 10:50:00 +02:00
Frank Denis 71b92ae78b Update for zig 0.11 2023-08-03 07:41:50 +02:00
Frank Denis 6bfcac99d8 Update the goto-bus-stop/setup-zig action 2023-08-03 07:39:10 +02:00
Frank Denis d2ac311e0e Remove WAVM
This is very sad, but what used to be the best WebAssembly runtime
now appears to be abandoned.
2023-07-30 01:02:57 +02:00
Frank Denis 50c2f39b38 Move lut to the data section 2023-07-30 01:02:54 +02:00
Thomas M. DuBuisson e599083fa9 Remove retired Lift (muse) service (#1293) 2023-07-29 19:17:39 +02:00
Frank Denis d0b011f0e3 Remove --experimental-wasm-bigint for the tests using Node 2023-07-27 12:13:21 +02:00
Frank Denis 004c8bee84 Define HAVE_CET_H for zig cc 2023-07-21 05:48:23 +02:00
Frank Denis 890905f946 Add proper CET support (followup to #1290) (#1291) 2023-07-19 18:27:36 +02:00
Frank Denis 81dcedf501 Run cifuzz on stable and next branches 2023-07-18 17:58:52 +02:00
Siddhesh Poyarekar 0bc8e0bdfd 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:18 +02:00
Frank Denis c341b85969 Update build.zig 2023-07-18 17:51:34 +02:00
Frank Denis 6187ebc10f Reorder AES ops on ARM 2023-06-19 12:34:10 +02:00
Frank Denis a3c44aba94 sodium_utils{2,3} are not worth running in benchmarks 2023-06-16 19:01:57 +02:00
Frank Denis c524c7a14b Revert "Leverage aegis*_absorb() when no message is desired"
This reverts commit 2c56be1d77.
2023-06-15 17:15:51 +02:00
Frank Denis 2c56be1d77 Leverage aegis*_absorb() when no message is desired 2023-06-06 23:21:22 +02:00
Frank Denis 759089c5c7 Update msys2 2023-05-26 12:26:36 +02:00
Frank Denis 93a4233e79 Azure Pipelines: remove WASI CI checks for now 2023-05-23 01:36:18 +02:00
Frank Denis d787d2b1cf Define SODIUM_STATIC for static builds on Windows
Fixes #1278
2023-04-27 08:21:13 +02:00