#openbsd #security #ffi

sys priv_sep

FFI for pledge(2) and unveil(2) on OpenBSD

14 releases (2 stable)

1.0.1 Mar 27, 2024
0.8.1 Nov 8, 2023
0.4.0 Jul 26, 2023

#359 in Operating systems

Download history 10/week @ 2024-02-06 72/week @ 2024-02-20 88/week @ 2024-02-27 10/week @ 2024-03-12 126/week @ 2024-03-26 24/week @ 2024-04-02

160 downloads per month
Used in 2 crates

MIT/Apache

48KB
897 lines

priv_sep

priv_sep is a library for privilege separation. It is currently designed around pledge(2) and unveil(2) for OpenBSD-stable—that is correct, -stable not -current—but in the future may contain functionality for Linux's seccomp(2).

Pledge

Calls to pledge(2) are done via Promises::pledge and pledge_none.
Note that since the use of execpromises is quite rare, NULL is always used for it.

Unveil

Calls to unveil(2) are done via Permissions::unveil and unveil_no_more.

Errors

Any error returned from the underlying system call is propagated via Error.

Status

This package will be actively maintained to stay in-sync with the latest version of OpenBSD-stable; as a result, the crate is only tested on the x86_64-unknown-openbsd target. While OpenBSD supports both the most recent -release/-stable release as well as the previous version, only the most recent version will be supported by this library. For that reason any removal of promises in subsequent releases of pledge(2) will lead to breaking changes in this library as the corresponding Promise variant will be removed.

Dependencies