Rocknest
c35703825f
Add an error set
2020-09-16 01:58:48 +03:00
Andrew Kelley
b3cc36857e
Merge pull request #6340 from Vexu/fix
...
Fixes
2020-09-15 14:28:16 -04:00
LemonBoy
c1c3212500
std: Fix typo in ELF section header iterator
...
The code accidentally used the phdr offset instead of the shdr one while
iterating over the section headers.
Fixes #6338
2020-09-15 18:14:06 +03:00
Vexu
a3624e94f8
translate-c: determine sizeof using std.meta.sizeof
2020-09-14 23:53:38 +03:00
Vexu
29fd0c6d61
fix meta.cast behavior; add exhaustive tests
2020-09-14 23:21:26 +03:00
Veikka Tuominen
d073836894
Merge pull request #6172 from tadeokondrak/@Type(.Union)
...
Implement @Type for Union
2020-09-14 16:43:49 +03:00
Andrew Kelley
c49435f76b
Merge pull request #6331 from mattnite/bpf-helper-defs
...
BPF: helper definitions
2020-09-14 04:00:00 -04:00
Rocknest
988fc6f9d1
flip condition
2020-09-14 02:27:09 +03:00
Rocknest
73863cf72b
fix build
2020-09-13 23:59:36 +03:00
LemonBoy
61e9e82bdc
std: Make the CRC32 calculation slightly faster
...
Speed up a little the slicing-by-8 code path by replacing the
(load+shift+xor)*4 sequence with a single u32 load plus a xor.
Before:
```
iterative: 1018 MiB/s [000000006c3b110d]
small keys: 1075 MiB/s [0035bf3dcac00000]
```
After:
```
iterative: 1114 MiB/s [000000006c3b110d]
small keys: 1324 MiB/s [0035bf3dcac00000]
```
2020-09-13 16:32:21 -04:00
Rocknest
f6195be997
fix ref
2020-09-13 23:31:59 +03:00
LemonBoy
5e50d145d9
std: Limit the read/write size on Darwin
...
It turns out that the kernel won't read or write more than 0x7fffffff
bytes in a single call, failing with EINVAL when trying to do so.
Adjust the limit and curse whoever is responsible for this.
Closes #6332
2020-09-13 16:31:21 -04:00
Rocknest
d75cbb01db
Reference all crypto declarations
2020-09-13 23:00:33 +03:00
Rocknest
b6385870d0
Convert asserts to errors, make sure nothing overflows
2020-09-13 22:39:54 +03:00
Rocknest
a6d947191e
Merge pull request #2 from rnapier/pbkdf2
...
Pbkdf2
2020-09-13 22:09:45 +03:00
Matt Knight
88dacd3b70
changed to opaque
2020-09-13 09:53:20 -07:00
Matt Knight
1afbf4fb21
removed all those kern aliases
2020-09-13 09:43:49 -07:00
Rob Napier
85366771ea
pbkdf2 offset into dk should be usize, not u64.
2020-09-13 12:36:32 -04:00
Matt Knight
cb5f76bb1c
got booleans wrong
2020-09-13 09:24:56 -07:00
Rocknest
dcd229be92
Merge pull request #1 from rnapier/pbkdf2
...
Pbkdf2
2020-09-13 19:11:29 +03:00
Rob Napier
2f9c9662ba
Use comptime to expose public method to doc system
2020-09-13 11:17:58 -04:00
Rob Napier
8a1a40276f
Extract kdf.zig to provide namespace documentation
2020-09-13 11:08:06 -04:00
Rob Napier
257c5b5348
Explicitly reference std.crypto.kdf in test case
2020-09-13 10:50:46 -04:00
Rob Napier
0f85b85acb
Improve doc text
2020-09-13 09:59:36 -04:00
Matt Knight
b043a31889
added helper definitions
2020-09-12 23:45:35 -07:00
Rob Napier
17156e1775
pbkdf2 "very large dklen test" should just check for crashes
2020-09-12 18:33:53 -04:00
Rob Napier
3f450b7e93
Replace Hash function with Prf. Correct offset bit-width.
2020-09-12 18:17:04 -04:00
Rob Napier
37db93e426
Review comments from pbkdf2.zig
...
Move block definitions inside while loop.
Use usize for offset. (This still crashes on overflow)
Remove unneeded slice syntax.
Add slow test for Very large dkLen
2020-09-12 15:03:42 -04:00
LemonBoy
9fe4c89230
std: Add a gzip decoder
2020-09-11 20:02:41 -04:00
Andrew Kelley
1edf097871
Merge pull request #6323 from LemonBoy/fast-zlib
...
std: Make the DEFLATE decompression routine 3x faster
2020-09-11 17:25:18 -04:00
Rob Napier
c2b02d01d5
Add crypto.kdf.pbkdf2
2020-09-11 17:10:27 -04:00
Andrew Kelley
1eaf0691f9
Merge pull request #6320 from ifreund/prctl
...
std: add prctl and securebits definitions for linux/C
2020-09-11 16:33:57 -04:00
Isaac Freund
1078810cef
std: add prctl definition when linking libc
2020-09-11 22:32:23 +02:00
Isaac Freund
b6f4601545
std: add securebits definitions for linux
2020-09-11 22:32:23 +02:00
Isaac Freund
744b73ab46
std: add prctl wrapper to std.os
2020-09-11 22:32:23 +02:00
Isaac Freund
7b961a876b
std: add prctl definition for linux
2020-09-11 22:32:22 +02:00
Andrew Kelley
42c32dbc7b
Merge pull request #6315 from ifreund/optional-shlib-version
...
std, stage1: make shared library versioning optional
2020-09-11 16:07:13 -04:00
LemonBoy
4b851c7255
Re-enable a compression test
...
It somehow got commented out...
2020-09-11 21:04:08 +02:00
LemonBoy
41f244bd2f
std: Make the DEFLATE decompression routine 3x faster
...
A profiler run showed that the main bottleneck was the naive decoding of
the Huffman codes, replacing it with a nice trick borrowed by Zlib gave
a substantial speedup.
Replacing a `%` with a `and (mask-1)` gave another significant
improvement (yay for low hanging fruits).
A few numbers obtained by decompressing a 22M file:
Before:
```
./decompress 2,39s user 0,00s system 99% cpu 2,400 total
```
After:
```
./decompress 0,79s user 0,00s system 99% cpu 0,798 total
````
2020-09-11 21:00:15 +02:00
Isaac Freund
0a76a9bd73
std, stage1: make shared library versioning optional
...
This commit changes the behavior of stage1 to emit libfoo.so instead
of libfoo.so.0.0.0 when none of the --ver-major, --ver-minor, or
--ver-patch flags are set.
It also makes it possible to create unversioned shared libraries
using the zig build system, changing the version parameter of
addSharedLibrary() to a tagged union.
2020-09-11 10:46:37 +02:00
Isaac Freund
68bf29c31e
std: allow overriding install dir of artifacts
...
This is necessary when, for example, writing a PAM module which should
be installed to lib/security/module_name.so.
2020-09-11 04:32:36 -04:00
Andrew Kelley
c41cd3e13a
std.fs.File: fix typo in writeFileAll
2020-09-10 18:53:20 -07:00
Andrew Kelley
800c5de2ae
update the stack trace test case for lines added to start.zig
2020-09-10 14:40:33 -07:00
Andrew Kelley
2315331d23
Merge pull request #5527 from shawnanastasio/ppc64le
...
Implement support for powerpc64{,le}
2020-09-10 15:56:27 -04:00
Christian Wesselhoeft
ea9b38c93c
fs/file.zig: Update reader to use type alias
...
This is a minor cosmetic change which updates `reader` and `inStream`
to match `writer` and `outStream` below.
2020-09-10 15:42:24 -04:00
Isaac Freund
13b8c63834
std: complete C definitions for uid/gid setters
...
Also:
- correct the definition of setgid
- update the existing definitions to use the uid_t/gid_t types
2020-09-10 15:41:52 -04:00
Isaac Freund
bb9773f695
std: fix errorset of std.os.seteuid/setegid
2020-09-10 15:41:21 -04:00
Isaac Freund
486a774e5f
std: add option to use single-threaded event loop
...
std.event.Loop does not yet work in single threaded builds. However,
using evented io on a single thread can be very convenient. This commit
allows settind @import("root").event_loop_mode to .single_threaded
in order to allow this without reimplementing the startup code in
start.zig
2020-09-10 15:40:38 -04:00
Isaac Freund
4170f3f77f
std: fix bitrot in process.posixGetUserInfo()
2020-09-10 14:30:07 -04:00
Literally Void
78baa16da0
Fix issue #6303 : iterating empty PriorityQueue crashes
2020-09-10 12:00:53 +03:00