summaryrefslogtreecommitdiffstats
path: root/vendor/rustix/src/param/init.rs
blob: e66ff82bba496723ef1be24ee6971df73e1dc191 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//! rustix's `init` function.
//!
//! # Safety
//!
//! On mustang, or on any non-glibc non-musl platform, the `init` function must
//! be called before any other function in this module. It is unsafe because it
//! operates on raw pointers.
#![allow(unsafe_code)]

use crate::imp;

/// Initialize process-wide state.
///
/// # Safety
///
/// This must be passed a pointer to the original environment variable block
/// set up by the OS at process startup, and it must be called before any
/// other rustix functions are called.
#[inline]
#[doc(hidden)]
pub unsafe fn init(envp: *mut *mut u8) {
    imp::param::auxv::init(envp)
}