From 43e8da2e067c6a2ecbc663bfbae0eafe67dc41e1 Mon Sep 17 00:00:00 2001 From: Beau McCartney Date: Tue, 19 Mar 2024 09:36:49 -0600 Subject: [PATCH] shm_open: comment with notes abt permissions --- core/sys/darwin/xnu_system_call_helpers.odin | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/sys/darwin/xnu_system_call_helpers.odin b/core/sys/darwin/xnu_system_call_helpers.odin index e253a0cd9..19e38ce56 100644 --- a/core/sys/darwin/xnu_system_call_helpers.odin +++ b/core/sys/darwin/xnu_system_call_helpers.odin @@ -206,6 +206,11 @@ sys_shm_open :: proc(name: string, oflag: Open_Flags, mode: Permission) -> (c.in result := syscall_shm_open(cname, cmode, cflags) state := result != -1 + // NOTE(beau): Presently fstat doesn't report any changed permissions + // on the file descriptor even with this fchmod (which fails with a + // non-zero return). I can also reproduce this with the syscalls in c + // so I suspect it's not odin's bug. I've left the fchmod in case the + // underlying issue is fixed. if state && cflags != 0 { state = (syscall_fchmod(result, cflags) != -1) }