zig/lib/std
Pat Tullmann 14c046fc07 lib/std: PermissionDenied/AccessDenied cleanup and fallout
This PR consistently maps .ACCES into AccessDenied and .PERM into
PermissionDenied.  AccessDenied is returned if the file mode bit
(user/group/other rwx bits) disallow access (errno was `EACCES`).
PermissionDenied is returned if something else denies access (errno was
`EPERM`) (immutable bit, SELinux, capabilities, etc).  This somewhat
subtle distinction is a POSIX thing.

Most of the change is updating std.posix Error Sets to contain both
errors, and then propagating the pair up through caller Error Sets.

Fixes #16782
2025-03-24 16:20:45 +01:00
..
Build DepTokenizer: allow space between target and colon 2025-03-24 15:31:03 +01:00
c std.c: Add definitions for SerenityOS 2025-03-11 14:59:29 +00:00
compress std: remove dependencies on legacy coercion 2025-02-26 00:17:09 +00:00
crypto typo: was issues -> was issued 2025-03-15 12:14:00 +01:00
debug stdlib: handle EEXIST in mmap with FIXED_NOREPLACE. Fixes #21475 2025-02-24 04:36:14 -05:00
dwarf Dwarf: remove redundant debug info 2024-12-19 17:10:03 -05:00
fmt std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
fs lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
hash Add rapidhash (#22085) 2025-02-22 14:32:48 -08:00
heap update std.heap.PageAllocator Windows implementation to remove race condition and utilize NtAllocateVirtualMemory / NtFreeVirtualMemory instead of VirtualAlloc and VirtualFree 2025-03-04 22:01:08 -06:00
http lib/std/http/Client.zig: Ignore empty proxy environment variables (#23223) 2025-03-14 21:20:42 +01:00
io lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
json std.ArrayList: initial capacity based on cache line size 2025-02-13 00:19:03 -08:00
math std.math: Add least common multiple (lcm) 2025-03-24 16:07:40 +01:00
mem std.mem.Allocator.remap: fix incorrect doc comment (part 2) 2025-03-11 22:15:43 +00:00
meta all: update to std.builtin.Type.{Pointer,Array,StructField} field renames 2025-01-16 12:49:58 +00:00
net zig fmt 2025-02-22 22:21:24 -08:00
os lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
posix std/lib: {fs,io,posix} test clean up 2025-03-09 07:41:06 +01:00
process windows: Use AccessDenied for ACCESS_DENIED on Windows 2025-03-24 16:20:45 +01:00
Random
sort compiler,lib,test,langref: migrate @setCold to @branchHint 2024-08-27 00:44:35 +01:00
tar Remove old deprecated symbols in std (#21584) 2024-10-04 13:50:25 -07:00
Target spirv: require int8/int16 capabilities 2025-03-18 07:05:50 +03:30
testing std.testing.FailingAllocator: flatten namespace 2025-02-06 14:23:23 -08:00
Thread std.Target: Remove functions that just wrap component functions. 2025-02-17 19:18:19 +01:00
time std.time.epoch: change getDaysInMonth to accept the year as an argument 2025-03-08 14:25:28 -05:00
tz
unicode
valgrind std.valgrind: Fix some compile errors. 2024-11-04 10:56:32 +01:00
zig lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
zip std.zip: Add ZIP64 support for local file header extra field 2025-01-17 22:55:55 +01:00
zon std.zig.Ast: improve type safety 2025-03-07 22:22:01 +01:00
array_hash_map.zig fix ArrayHashMap setKey when store_hash=true 2025-02-22 00:44:35 -05:00
array_list.zig std/containers: improve consistency using gpa parameter name for allocator. 2025-03-09 07:39:20 +01:00
ascii.zig Updated ascii.zig's isWhitespace function to use switch instead of for loop. (#22094) 2024-11-29 12:26:23 -08:00
atomic.zig std.atomic: make cache_line const a comptime_int 2025-02-22 03:48:09 +01:00
base64.zig docs(std.base64): Add references to RFC 4648 2025-03-24 11:42:28 +00:00
bit_set.zig std: add bit_set.findLastSet() (#22411) 2025-03-24 16:12:23 +01:00
BitStack.zig
bounded_array.zig std.BoundedArray: popOrNull() -> pop() [v2] (#22723) 2025-02-09 11:46:15 +00:00
buf_map.zig
buf_set.zig
Build.zig Revert "Merge pull request #22898 from kristoff-it/deprecated-proposal" 2025-02-28 01:37:10 -08:00
builtin.zig compiler: Support more GCC code models and fix the mapping to LLVM code models. 2025-03-19 03:15:16 +01:00
c.zig std.c: fix sysconf names (std.c._SC) for android api 2025-03-11 21:41:58 +01:00
coff.zig std.{coff,elf}: Remove the {MachineType,EM}.toTargetCpuArch() functions. 2024-08-23 19:56:24 +02:00
compress.zig fix typo of anytype to type 2025-02-05 13:58:15 +01:00
crypto.zig Merge pull request #19976 from clickingbuttons/asn1 2025-02-22 20:21:09 -05:00
debug.zig Lower @returnAddress to a constant 0 in Emscripten release builds 2025-03-23 17:13:19 -04:00
dwarf.zig Dwarf: cleanup emitted debug info 2024-08-22 08:44:08 +02:00
dynamic_library.zig std.DynLib: fix proper type of chain_ptr on GnuHashSection32 2025-03-03 20:01:05 +01:00
elf.zig std.DynLib: add support for DT_GNU_HASH sections in elf files 2025-02-22 17:33:49 -05:00
enums.zig std.enums.tagName: preserve sentinel in return value 2025-03-06 08:41:51 +01:00
fifo.zig runtime page size detection 2025-02-06 14:23:23 -08:00
fmt.zig fix(std/fmt.zig): fix overflow in fmtDurationSigned 2025-03-24 11:40:19 +00:00
fs.zig std: Add support for SerenityOS in various places 2025-03-11 14:59:42 +00:00
gpu.zig spirv: lower more types in assembler 2025-03-17 21:56:17 +03:30
hash.zig Add rapidhash (#22085) 2025-02-22 14:32:48 -08:00
hash_map.zig std.hash_map: placeholder for doc comments 2025-02-06 14:23:23 -08:00
heap.zig add parentheses in std.heap.page_size_min 2025-03-02 22:27:57 +01:00
http.zig
io.zig all: update to std.builtin.Type.{Pointer,Array,StructField} field renames 2025-01-16 12:49:58 +00:00
json.zig
leb128.zig std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
linked_list.zig
log.zig std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
macho.zig
math.zig std.math: Add least common multiple (lcm) 2025-03-24 16:07:40 +01:00
mem.zig std.mem.indexOfSentinel: don't ask the OS the page size 2025-02-25 11:22:33 -08:00
meta.zig deprecate O(n) union field type helpers in std.meta 2025-03-24 11:13:58 +00:00
multi_array_list.zig std/containers: improve consistency using gpa parameter name for allocator. 2025-03-09 07:39:20 +01:00
net.zig std.net: Fix IPv6 address format compression for long zero runs (#22441) 2025-02-22 19:52:47 -08:00
once.zig compiler,lib,test,langref: migrate @setCold to @branchHint 2024-08-27 00:44:35 +01:00
os.zig lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
pdb.zig std.pdb: obey naming conventions 2024-08-29 23:43:52 +01:00
posix.zig lib/std: PermissionDenied/AccessDenied cleanup and fallout 2025-03-24 16:20:45 +01:00
priority_dequeue.zig
priority_queue.zig std.priority_queue: add useful functions from ArrayList API 2025-02-01 19:02:39 +01:00
process.zig std: Add support for SerenityOS in various places 2025-03-11 14:59:42 +00:00
Progress.zig all: update to std.builtin.Type.Pointer.Size field renames 2025-01-16 12:46:29 +00:00
Random.zig Allocator/Random: document that comparing ptr may result in illegal behavior 2025-02-03 17:07:28 -08:00
RingBuffer.zig
segmented_list.zig std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
SemanticVersion.zig compiler: remove anonymous struct types, unify all tuples 2024-10-31 20:42:53 +00:00
simd.zig x86_64: implement switch jump tables 2025-01-16 20:42:08 -05:00
sort.zig std.equalRange: Compute lower and upper bounds simultaneously 2024-09-23 13:03:06 -07:00
start.zig adjust runtime page size APIs 2025-02-06 14:23:23 -08:00
static_string_map.zig
std.zig move libubsan to lib/ and integrate it into -fubsan-rt 2025-02-25 11:22:33 -08:00
tar.zig Remove old deprecated symbols in std (#21584) 2024-10-04 13:50:25 -07:00
Target.zig std: Abi.default: only require an os tag 2025-03-09 09:44:11 +01:00
testing.zig std.testing: improve compile error on untagged union equality 2025-02-16 15:51:40 +01:00
Thread.zig std: Add support for SerenityOS in various places 2025-03-11 14:59:42 +00:00
time.zig std.time: Make Instant.since() work on UEFI 2025-03-02 23:16:34 +00:00
treap.zig
tz.zig
unicode.zig std: update eval branch quotas after bdbc485 2024-08-21 01:30:46 +01:00
Uri.zig
valgrind.zig std.valgrind: Port doClientRequest() to all archs supported by Valgrind. 2024-11-04 12:39:48 +01:00
wasm.zig wasm linker: implement @tagName for sparse enums 2025-01-15 15:11:36 -08:00
zig.zig Move the compiler's LLVM bitcode builder to std.zig.llvm. 2025-02-27 01:32:49 -05:00
zip.zig runtime page size detection 2025-02-06 14:23:23 -08:00
zon.zig compiler,std: implement ZON support 2025-02-03 09:14:37 +00:00