gingerBill
79173ef119
Merge pull request #3136 from Yawning/feature/crypto-hash
...
core:crypto/hash - Add and refactor
2024-02-06 17:40:45 +00:00
Yawning Angel
44758f2a60
core/crypto: Stop using context.temp_allocator
...
The max digest size for the foreseeable future will be 512 bits, and the
max block size is currently 1152 bits (SHA3-224). If people add more
exotic hash algorithms without bumping the constants when required,
tests will fail.
The stream buffer will currently be 576 bytes, which is "fine" to just
stick on the stack, and is a sensible multiple of the more common block
size of 64 bytes.
2024-02-07 02:33:53 +09:00
gingerBill
1f0b24b735
Remove unneeded casts
2024-02-06 17:22:13 +00:00
gingerBill
a6878fcd91
Clean up code for initialize_symbols
2024-02-06 17:20:07 +00:00
Yawning Angel
56516ee8b2
core/crypto/poly1305: Relax the tag length check on the verify helper
2024-02-07 00:42:01 +09:00
Yawning Angel
1cc639bc93
core/crypto/hmac: Initial import
2024-02-07 00:42:01 +09:00
Yawning Angel
2357293e05
core/crypto/hash: Make the low level interface allocator-less
...
Just (ab)using reflect to victory is probably fine.
2024-02-07 00:37:18 +09:00
Yawning Angel
7a8b1669b0
core/crypto: Expose the block sizes for every hash algorithm
...
While I just went and made this private, this information is required
for keying HMAC.
2024-02-07 00:37:18 +09:00
Yawning Angel
b02b85d242
core/crypto/shake: SHAKE is an XOF, not a hash
2024-02-07 00:37:18 +09:00
Yawning Angel
899fab64d9
core/crypto: Documentation cleanups
2024-02-07 00:37:18 +09:00
Yawning Angel
00ab3beed9
core:crypto/hash: Add a generic higher level hash interface
...
There is a lot of code duplicated in convenience methods in each hash
implementation, and having a generic hash type makes implementing
higher-level constructs such as HMAC significantly easier down the road.
2024-02-07 00:37:18 +09:00
gingerBill
b0675358c3
Add angle_between and matrix2_rotate
2024-02-06 14:09:05 +00:00
gingerBill
4685cf1085
Merge pull request #3140 from JustinRyanH/master
...
Implement `last_write_time` and `last_write_time_by_name` for Darwin
2024-02-05 13:57:28 +00:00
gingerBill
dd7c65a89c
Merge pull request #2998 from laytan/os-improvements
...
OS improvements
2024-02-03 12:29:39 +00:00
Justin Hurstwright
8a63b6dff7
fix: remove returns ErrNo for Windows, FreeBSD, Unix
2024-02-02 09:10:25 -06:00
Justin Hurstwright
829654e3a2
steal the last_write from freebsd implementation
2024-02-02 09:10:25 -06:00
gingerBill
539cec7496
Move Tracking_Allocator to its own file.
2024-02-01 13:01:38 +00:00
gingerBill
000709b594
Make file_console_logger.odin be ignored on freestanding targets
2024-01-31 22:01:35 +00:00
gingerBill
6736205723
Merge pull request #3138 from FourteenBrush/master
...
Add a testing.expectf proc as a way to avoid a tprintf call.
2024-01-29 17:33:29 +00:00
gingerBill
a626adac8e
Use long-form names and alias with short-form UNIX-like names
2024-01-29 13:33:39 +00:00
gingerBill
3a4c82abf8
Move core:(builtin|intrinsics) to base:
2024-01-29 11:46:16 +00:00
gingerBill
6da82e038d
Fix types for BSD
2024-01-28 23:27:30 +00:00
gingerBill
535b8a9483
Remove core:os dependency completely from base:runtime
2024-01-28 23:11:38 +00:00
gingerBill
038086d1d9
Alias heap calls from base:runtime is core:os
2024-01-28 22:47:55 +00:00
gingerBill
9a16bc5fc5
Remove core:os dependency for base:runtime
2024-01-28 22:40:46 +00:00
gingerBill
3e7e779abf
Replace core:* to base:* where appropriate
2024-01-28 22:18:51 +00:00
gingerBill
f67691c457
Move matrix related procedures to the different linalg packages
2024-01-28 21:28:54 +00:00
gingerBill
09fa1c29cd
Move core:runtime to base:runtime; keep alias around
2024-01-28 21:05:53 +00:00
gingerBill
ddcaa0de53
Remove core:mem dependency from core:reflect
2024-01-28 20:52:01 +00:00
gingerBill
621b3c7829
Add missing clone for Struct_Type
2024-01-28 17:34:32 +00:00
gingerBill
68df35b378
Add #field_align(N)
...
It sets the minimum alignment for the fields within a struct. This cannot be used with `#packed`, but can be used with `#align(N)`.
If `#align(N)` is less than `#field_align(N)`, then a warning will be printed.
2024-01-28 17:33:29 +00:00
gingerBill
c1d853a24e
Remove dead code
2024-01-28 17:32:34 +00:00
gingerBill
30636f5114
Change return values from Struct_Tag to string
2024-01-28 15:48:19 +00:00
gingerBill
da6edb3764
Merge pull request #3139 from flysand7/file-attrib
...
sys/windows: Make `INVALID_FILE_ATTRIBUTES` a `u32` constant
2024-01-26 15:05:23 +00:00
gingerBill
9a9625f885
Fix #3053
2024-01-26 13:04:47 +00:00
flysand7
d5b0ec712b
os/os2: Remove file attribute casting from core:os2
2024-01-26 09:07:12 +11:00
FourteenBrush
766d6aa946
Fix typo
2024-01-25 12:05:19 +01:00
FourteenBrush
895ebb95d5
Need to unpack args
2024-01-25 11:44:53 +01:00
flysand7
af636eedde
os: Fix casting errors in other files
2024-01-25 21:32:24 +11:00
flysand7
57b7822e12
Merge branch 'master' into unsigned-file-attrib
2024-01-25 20:57:18 +11:00
flysand7
03736d8bcb
sys/windows: Make INVALID_FILE_ATTRIBUTES a u32 constant
2024-01-25 20:52:39 +11:00
FourteenBrush
3a5d80b291
Forgot to include loc param
2024-01-25 10:20:23 +01:00
FourteenBrush
967ccfc7cc
Merge branch 'master' of https://github.com/FourteenBrush/Odin
2024-01-25 10:15:25 +01:00
FourteenBrush
712ae1c5ac
Add testing.expectf
2024-01-25 10:08:09 +01:00
Kyle Burke
14e2cc17d6
Remove mention of map in builtin resize proc group
2024-01-24 09:39:47 -06:00
gingerBill
5f41741e8c
Merge pull request #3126 from DanielGavin/parser-fix-paran
...
Improve recovery from faulty parameters in parse_proc_type
2024-01-24 11:23:49 +00:00
gingerBill
cfdf2bfb77
Merge pull request #3129 from DragosPopse/assert-fix
...
`fmt.assertf` now correctly gets disabled on `-disable-assert`. `log.assert/f` procs. `@cold` trick on everything fixed.
2024-01-24 11:21:37 +00:00
flysand7
a660098106
os2: Add .Resize_Non_Zeroed allocation mode to os2/heap_windows
2024-01-24 15:51:47 +11:00
Dragos Popescu
90d1f9ab27
Removed return value of assertf. assertf now correctly responds to -disable-assert. Added log.assert and log.assertf. All asserts now do the @cold trick, first added to builtin.assert
2024-01-23 20:56:13 +02:00
DanielGavin
f63f28302e
Recover from faulty parameter in parse_proc_type
2024-01-22 20:35:26 +01:00