posish

Safe Rust bindings to POSIX-ish libc APIs and syscalls

A Bytecode Alliance project

Github Actions CI Status crates.io page docs.rs docs

posish provides safe wrappers to POSIX-ish libc APIs and syscalls.

posish is focused on functionality that isn't already provided by [std] or other low-level crates such as [getrandom] and [errno]. It prioritizes safe interfaces, including considering raw file descriptors to be equivalent to pointers in terms of making APIs unsafe, in the spirit of [std::os::unix::io::FromRawFd::from_raw_fd] being unsafe and [RawFd not implementing AsRawFd/IntoRawFd].

posish is relatively low-level and does not support Windows; for higher-level and portable APIs to this functionality, see the [system-interface], [cap-std], and [fs-set-times] crates.