You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
compiler: use variadic wrappers for darwin FuncPCABI0 trampolines
The standard library's function-based trampoline pattern has the same
variadic problem as the address-global pattern: of the libc functions
darwin's zsyscall wrappers import, open, openat, fcntl, and ioctl are
variadic, but createDarwinFuncPCABI0Call only routed open through a
fixed-signature wrapper. As a result syscall.SetNonblock (fcntl F_SETFL
with the new flags in the variadic slot) observably wrote garbage file
flags on darwin/arm64, and the stdlib ioctl and openat paths were
equally unsound.
Use the shared darwinVariadicImports table for this path too, replacing
the open-only special case.
Signed-off-by: Evan Wies <evan@neomantra.net>
0 commit comments