Jeroen van Rijn
6d9f84ba03
[tests] Make test runners exit with errorlevel 1 if a test fails.
2022-03-03 15:16:16 +01:00
zhibog
e7be9493ba
Added SipHash + tests and fixed remaining semicolons in vendor/botan
2022-02-22 19:56:07 +01:00
gingerBill
f5697dd7f2
Merge branch 'master' into odin-global-constants-as-enums
2022-02-15 15:47:24 +00:00
NoahR02
accb35506f
Ports OpenSimplex2 from https://github.com/KdotJPG/OpenSimplex2 to Odin. Adds tests for the noise procedures.
2022-02-08 06:25:07 -05:00
NoahR02
817bc7434d
Ports OpenSimplex2 from https://github.com/KdotJPG/OpenSimplex2 to Odin. Adds tests for the noise procedures.
2022-02-08 06:16:10 -05:00
gingerBill
6223f48c3f
Update tests
2022-01-20 20:08:24 +00:00
gingerBill
2a325b3da0
Update ODIN_ENDIAN usage
2022-01-16 12:25:39 +00:00
Jeroen van Rijn
938744b276
[math/big] Rename internal_int_shl_digit to _private_int_shl_leg.
...
Same for the SHR variant. These are pure implementation details to shift by a leg/word at a time.
Prevent accidental usage.
2021-12-11 15:22:24 +01:00
Jeroen van Rijn
c94098c2ab
[math/big] Fix int_set and int_get.
2021-12-09 16:14:04 +01:00
Yawning Angel
6bafa21bee
crypto: Add rand_bytes
...
This adds `rand_bytes(dst: []byte)` which fills the destination buffer
with entropy from the cryptographic random number generator. This takes
the "simple is best" approach and just directly returns the OS CSPRNG
output instead of doing anything fancy (a la OpenBSD's arc4random).
2021-11-17 14:00:00 +00:00
Yawning Angel
6c4c9aef61
core/crypto: Add chacha20poly1305
...
This package implements the chacha20poly1305 AEAD construct as specified
in RFC 8439.
2021-11-17 13:59:53 +00:00
Yawning Angel
7bed317636
core/crypto: Add chacha20
...
This package implements the ChaCha20 stream cipher as specified in
RFC 8439, and the somewhat non-standard XChaCha20 variant that supports
a 192-bit nonce.
While an IETF draft for XChaCha20 standardization exists,
implementations that pre-date the draft use a 64-bit counter, instead of
the IETF-style 32-bit one. This implementation opts for the latter as
compatibility with libsodium is more important than compatibility with
an expired IETF draft.
2021-11-17 13:59:53 +00:00
Yawning Angel
64db286582
core/crypto: Add poly1305
...
This package implements the Poly1305 MAC algorithm as specified in RFC
8439, using routines taked from fiat-crypto and poly1305-donna.
2021-11-17 13:59:53 +00:00
Yawning Angel
1a7a6a9116
core/crypto: Add x25519
...
This package implements the X25519 key agreement scheme as specified in
RFC 7748, using routines taken from fiat-crypto and Monocypher.
2021-11-17 13:59:53 +00:00
zhibog
8aadcacc0b
Add tests to Linux and Mac and add vendor tests
2021-11-10 15:22:12 +01:00
zhibog
c24454ae70
Removed context switching system from the crypto library to simplify the code
2021-11-09 16:50:13 +01:00
Daniel Gavin
5b074ceee5
Add json encoding test + fix enum not being set on success.
2021-11-07 14:35:52 +01:00
zhibog
8876328e4d
Move botan.dll to correct directory
2021-10-14 23:03:55 +02:00
zhibog
f4ff11a7ff
Added botan.dll for tests
2021-10-14 22:58:20 +02:00
zhibog
77be7144c3
Add crypto library. Additional information is included in the README.md
2021-10-14 22:20:55 +02:00
Jeroen van Rijn
c4b4a841d6
png: Move metadata.
2021-10-06 22:43:33 +02:00
Jeroen van Rijn
8fcd1794a6
png: Add sane compile-time maximums for dimensions + chunk sizes.
2021-10-06 21:48:22 +02:00
Jeroen van Rijn
9b5ae95677
png + compress: Rearrange error unions.
2021-10-06 20:45:29 +02:00
Jeroen van Rijn
21c6d691d8
Add additional error checking to helpers.
2021-10-06 20:10:37 +02:00
gingerBill
1e7c60e171
Minor style change
2021-10-02 14:05:26 +01:00
Jeroen van Rijn
6e22a6dfa5
hash: Smaller CRC-64 ISO 3306 table.
2021-09-21 16:28:35 +02:00
Jeroen van Rijn
181eabcffc
hash: Add CRC-64 (ISO 3306) and inverse.
2021-09-21 16:17:01 +02:00
Jeroen van Rijn
b600ffba3b
Correct CRC-64 (ECMA 182) & add CRC-64 (XZ) and tests.
2021-09-21 15:17:23 +02:00
Daniel Gavin
46d99395ce
typo in filename
2021-09-20 20:53:39 +02:00
Daniel Gavin
50ee65ea9e
Make default_parser use the optional_semicolons and add odin parser test.
2021-09-20 20:50:01 +02:00
Jeroen van Rijn
b6d0a8fe0c
xxhash: Add tests for streaming input.
2021-09-15 23:32:48 +02:00
Jeroen van Rijn
a641ef95c0
Add XXH3-64 + tests.
2021-09-13 20:58:26 +02:00
Jeroen van Rijn
ada3be05fb
xxhash: typo.
2021-09-12 12:14:49 +02:00
Jeroen van Rijn
36a2cf0369
xxhash: Add custom secret tests.
2021-09-12 12:11:39 +02:00
Jeroen van Rijn
00c1d34108
xxhash: Extra (generated) tests.
2021-09-11 23:45:08 +02:00
Jeroen van Rijn
f978e74773
LLVM 12 big math test workaround.
2021-09-11 20:36:09 +02:00
Jeroen van Rijn
5f920414d7
xxhash: Disable prefetch on Linux.
2021-09-11 15:45:17 +02:00
Jeroen van Rijn
72782d9035
xxhash: Fix test on Linux.
2021-09-11 15:39:11 +02:00
Jeroen van Rijn
eaefbc43cb
xxhash: Add XXH3_128 + test vectors.
2021-09-11 15:28:49 +02:00
Jeroen van Rijn
e5652da6da
Fix typo.
2021-09-09 16:57:58 +02:00
Jeroen van Rijn
637685316d
Add xxhash tests to CI.
2021-09-09 16:01:44 +02:00
Jeroen van Rijn
66ead6cf09
Also use custom test runner on Linux.
2021-09-08 21:21:36 +02:00
Jeroen van Rijn
e6905f8657
Custom test runner.
2021-09-08 21:17:16 +02:00
Jeroen van Rijn
e831e919a6
Try to address test timeouts.
2021-09-08 14:30:11 +02:00
Jeroen van Rijn
ce2f926ff7
Separate math/big test.
2021-09-07 20:24:02 +02:00
Jeroen van Rijn
fcb23abce4
Tests: Integrate strings into CI.
2021-09-07 19:57:08 +02:00
Jeroen van Rijn
f7601a759b
Move math/big tests under tests/.
2021-09-07 19:51:56 +02:00
Ricardo Silva
f6d496c81d
Fix strings.index_any on small strings
2021-09-07 18:38:10 +01:00
Jeroen van Rijn
78e923b6b0
Add Makefile for tests.
2021-09-07 19:11:06 +02:00
Jeroen van Rijn
1ab6a765da
Set relative path for Odin.
2021-09-07 18:30:54 +02:00