ABI Support Matrix

Status of relibc platform APIs on x86_64-unknown-strat9.

Legend: OK = implemented, Stub = returns ENOSYS, Partial = limited.

POSIX File I/O

APIStatusNotes
open / openatOKVia SYS_OPEN
readOKVia SYS_READ
writeOKVia SYS_WRITE
closeOKVia SYS_CLOSE
lseekOKVia SYS_LSEEK
preadOKVia SYS_PREAD
pwriteOKVia SYS_PWRITE
fstat / fstatatOKVia SYS_FSTAT / SYS_STAT
dup / dup2OKVia SYS_DUP / SYS_DUP2
pipe / pipe2OKVia SYS_PIPE
fcntlOKVia SYS_FCNTL
mkdir / mkdiratOKVia SYS_MKDIR
unlinkOKVia SYS_UNLINK
rmdirOKVia SYS_RMDIR
rename / renameatOKVia SYS_RENAME
linkOKVia SYS_LINK
symlinkOKVia SYS_SYMLINK
readlinkOKVia SYS_READLINK
chmod / fchmodOKVia SYS_CHMOD / SYS_FCHMOD
truncate / ftruncateOKVia SYS_TRUNCATE / SYS_FTRUNCATE
chdir / fchdirOKVia SYS_CHDIR / SYS_FCHDIR
getcwdOKVia SYS_GETCWD
getdentsOKVia SYS_GETDENTS
accessOKOpen + close probe
umaskOKVia SYS_UMASK
fsync / fdatasyncStubENOSYS
flockStubENOSYS
chown / fchown / lchownStubENOSYS
statvfs / fstatvfsStubENOSYS
mknod / mknodat / mkfifoatStubENOSYS

Process Management

APIStatusNotes
exitOKVia SYS_PROC_EXIT
forkOKVia SYS_PROC_FORK
execveOKVia SYS_PROC_EXEC
waitpidOKVia SYS_PROC_WAITPID
getpid / getppid / gettidOK
setsid / setpgid / getpgid / getsidOK
sched_yieldOKVia SYS_PROC_YIELD
nanosleepOKVia SYS_NANOSLEEP
clock_gettimeOKVia SYS_CLOCK_GETTIME
brkOKVia SYS_BRK
mmap / munmapOKVia SYS_MMAP / SYS_MUNMAP
unameOKVia SYS_PROC_UNAME
getuid / geteuid / getgid / getegidPartialReturns 0 (no UID model)
mprotect / mlock / munlockStubENOSYS
getrandomStubENOSYS

Signals

APIStatusNotes
killOKVia SYS_KILL
sigactionOKVia SYS_SIGACTION
sigprocmaskOKVia SYS_SIGPROCMASK
sigsuspendOKVia SYS_SIGSUSPEND
sigtimedwaitOKVia SYS_SIGTIMEDWAIT
getitimer / setitimerOKVia SYS_GETITIMER / SYS_SETITIMER
sigaltstackOKVia SYS_SIGALTSTACK

Network / Sockets

APIStatusNotes
socketpair (AF_UNIX)PartialBacked by pipe (unidirectional)
recvfrom / sendtoPartialDelegates to read/write
socket / bind / listen / accept / connectStubENOSYS
setsockopt / getsockoptStubENOSYS
shutdownStubENOSYS

Epoll

APIStatusNotes
epoll_create1PartialBacked by pipe fd
epoll_ctlStubNo-op
epoll_pwaitPartialSleeps, no real multiplexing