libc_spawn/optional_const/
mod.rs

1use libc;
2
3extern "C" {
4    fn libc_spawn_helper_environ() -> *const *const libc::c_char;
5    fn libc_spawn_helper_try_get_posix_spawn_usevfork(val: *mut libc::c_short) -> libc::c_int;
6}
7
8pub fn environ() -> *const *const libc::c_char {
9    unsafe { libc_spawn_helper_environ() }
10}
11
12pub fn posix_spawn_usevfork() -> Option<libc::c_short> {
13    let mut val: libc::c_short = 0;
14    unsafe {
15        if libc_spawn_helper_try_get_posix_spawn_usevfork(&mut val as _) != 0 {
16            Some(val)
17        } else {
18            None
19        }
20    }
21}