Commit Graph

9234 Commits

Author SHA1 Message Date
Yawning Angel
41fdcfeecf core/crypto/sha2: Add SHA-512/256 2023-11-17 19:31:51 +09:00
Yawning Angel
70ba4b5321 core/crypto: Add more assertions to the low level API
Assertions here are "fine" and it matches what the code that has the
checks in init/update/final already does.
2023-11-17 19:31:51 +09:00
Yawning Angel
71da3ef925 core/crypto/sha2: Fix overflow for large amounts of hashed data 2023-11-17 19:31:51 +09:00
Yawning Angel
582bd760b7 core/crypto/shake: Add a TODO comment (NFC) 2023-11-17 19:31:51 +09:00
Yawning Angel
e86bb3a795 core/crypto: Change hash asserts to panics
Assertions can be disabled, but at the point where cryptographic
anything is involved, a single branch has an infinitesimally small
performance impact.

The correct thing to do is to punch the caller in the face if they do
something that is blatantly incorrect, especially in a security critical
setting.
2023-11-17 19:31:51 +09:00
Yawning Angel
e3a836f93c core/crypto/sha2: Fix hash_stream_224 and hash_stream_256 2023-11-17 19:31:51 +09:00
Yawning Angel
31b42a53fc core/crypto/siphash: Fix the low-level API
The `update` and `final` routines were written with the assumption that
update will only be called once, and that the underlying data does not
change between the calls.
2023-11-17 19:31:51 +09:00
Yawning Angel
b71d3c739a core/crypto/sm3: Cleanups
- Use `encoding/endian`
- Use `math/bits`
- Add `@(private)` annotations to internals
2023-11-17 19:31:50 +09:00
Yawning Angel
a162b51588 core/crypto/siphash: Cleanups
- Use `encoding/endian`
- Use `math/bits`
- Add `@(private)` annotations to internals
- Minor optimization
2023-11-17 16:53:29 +09:00
Yawning Angel
7c1119f217 core/crypto/_sha3: Cleanups
- Use `math/bits`
2023-11-17 16:53:29 +09:00
Yawning Angel
b0397581db core/crypto/sha2: Cleanups
- Use `encoding/endian`
- Use `math/bits`
- Add `@(private)` annotations to internals
2023-11-17 16:53:29 +09:00
Yawning Angel
c7dc1220b3 core/crypto/sha1: Cleanups
- Use `encoding/endian`
- Use `math/bits`
- Add `@(private)` annotations to internals
2023-11-17 16:53:29 +09:00
Yawning Angel
d16acdc89c core/crypto/md5: Cleanups
- Use `encoding/endian`
- Use `math/bits`
- Add `@(private)` annotations to internals
2023-11-17 16:53:29 +09:00
Yawning Angel
1279ebe948 core/crypto/poly1305: Cleanups
- Use `encoding/endian`
2023-11-17 16:53:29 +09:00
Yawning Angel
aa5a95a4d1 core/crypto/chacha20poly1305: Cleanups
- Use `encoding/endian`
2023-11-17 16:53:29 +09:00
Yawning Angel
fa1cb28c8f core/crypto/chacha20: Cleanups
- Use `encoding/endian`
- Use `math/bits`
2023-11-17 16:53:29 +09:00
Yawning Angel
3902273d68 core/crypto/_blake2: Cleanups
- Use `encoding/endian`
- Add `@(private)` annotations to internals
- Add some descriptive comments in the unrolled compression functions
2023-11-17 16:53:29 +09:00
Yawning Angel
811132ccbd core/crypto/sm3: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
391b3090c9 core/crypto/siphash: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
d50380709d core/crypto/sha3: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
14a46c6d5e core/crypto/sha2: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
b4e3da84c5 core/crypto/sha1: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
9d627e453a core/crypto/md5: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
d6e0e5d3f6 core/crypto/blake2: odinfmt (NFC) 2023-11-17 16:53:29 +09:00
Yawning Angel
12b370ddc1 repo: Add more test binaries to .gitignore 2023-11-17 16:53:29 +09:00
Jeroen van Rijn
8028033513 Merge pull request #2957 from laytan/no-crt-and-compile-assembly-on-darwin
-no-crt on darwin_arm64 and assembly compilation on darwin
2023-11-15 18:46:35 +01:00
Laytan Laats
6b9202dfbf -no-crt and assembly compilation on darwin 2023-11-15 18:06:27 +01:00
Jeroen van Rijn
04c928fb9e Clear up core:container/queue 2023-11-15 15:20:52 +01:00
Jeroen van Rijn
354d00963c Merge pull request #2954 from laytan/add-suggestion-passing-slice-into-variadic-arg
checker: suggest ..[]T when passing a slice to variadic arg ..T
2023-11-14 17:08:24 +01:00
Laytan Laats
9e5e49a65d checker: suggest ..[]T when passing a slice to variadic arg ..T 2023-11-14 16:56:52 +01:00
Jeroen van Rijn
8a849bd1bd Merge pull request #2953 from Yawning/feature/endian-use-intrinsics
feature/endian: use intrinsics
2023-11-14 15:34:04 +01:00
Yawning Angel
1b3fb11a31 core/encoding/endian: Tidy up a comment (NFC) 2023-11-14 23:07:51 +09:00
Yawning Angel
b30ceab864 core/encoding/endian: Use intrinsics for loads/stores
- Use `intrinsics.unaligned_load`/`intrinsics.unaligned_store`
- Make all the routines contextless
- Add unchecked variants for code that "Knows What It Is Doing(TM)"
2023-11-14 23:07:51 +09:00
Jeroen van Rijn
3e1791aa5c Fix typos 2023-11-13 20:54:19 +01:00
Jeroen van Rijn
b9a813a69d Merge pull request #2951 from FourteenBrush/master
Expose strings.ascii_set_* functions
2023-11-12 17:56:44 +01:00
FourteenBrush
e0ac454ed0 Expose strings.ascii_set_* functions 2023-11-12 17:33:33 +01:00
Jeroen van Rijn
dd9b0ae4e5 Make pow2_f{16,32,64} contextless for consistency. 2023-11-11 14:06:48 +01:00
Jeroen van Rijn
3b5d28f0ee Merge pull request #2948 from flysand7/fix-do
[core]: Remove `do` keyword from the core library
2023-11-11 13:16:12 +01:00
flysand7
270348b112 [core]: Remove do keyword from the core library 2023-11-11 20:36:38 +11:00
Jeroen van Rijn
70c1f9d0e1 Merge pull request #2937 from Kelimion/fix_net_split
Fix net.split_url
2023-11-09 17:02:48 +01:00
Jeroen van Rijn
761a079789 Fix net.split_url
Resolves issue #2924
2023-11-09 16:56:54 +01:00
Jeroen van Rijn
4116d66c59 Merge pull request #2936 from laytan/fix-linux-accept
fix linux.accept, addrlen should be a pointer to the length
2023-11-09 14:36:00 +01:00
Laytan
fc6edf65d7 fix linux.accept, addrlen should be a pointer to the length instead of the length itself 2023-11-09 14:17:22 +01:00
Jeroen van Rijn
9834ceed42 Merge pull request #2933 from flga/master
sys/linux: munmap was not using the correct syscall
2023-11-08 00:37:32 +01:00
flga
4266a7c166 sys/linux: munmap was not using the correct syscall 2023-11-07 23:19:14 +00:00
Jeroen van Rijn
639cc9faa8 Merge pull request #2932 from laytan/use-verb-for-fmt-bit-set
allow integer verbs in fmt_bit_set
2023-11-07 21:22:11 +01:00
Laytan Laats
e2cecafa66 allow integer verbs in fmt_bit_set 2023-11-07 21:09:42 +01:00
gingerBill
4bcb68a973 Merge pull request #2919 from jakubtomsu/d3d12-descriptor-heap-type-fix
Tiny fix to `DESCRIPTOR_HEAP_TYPE` from `vendor:directx/d3d12`
2023-11-07 10:47:43 +00:00
gingerBill
7131772754 Merge pull request #2927 from karl-zylinski/raylib-color-fixed-array
Raylib: use fixed array instead of struct for rl.Color
2023-11-07 10:47:28 +00:00
gingerBill
c2e5602ee5 Merge pull request #2929 from divanburger/dial_bug_fix
Fix use of unitialized socket in socket_linux.odin#_dial_tcp_from_endpoint
2023-11-07 10:47:07 +00:00