Document reboot.rs

This commit is contained in:
Ryan Zoeller 2022-01-31 22:36:03 -06:00
parent 7c9a7af4fc
commit d3ff2666d6
2 changed files with 8 additions and 2 deletions

View File

@ -91,7 +91,6 @@ feature! {
#[cfg(target_os = "linux")]
feature! {
#![feature = "reboot"]
#[allow(missing_docs)]
pub mod reboot;
}

View File

@ -13,15 +13,22 @@ libc_enum! {
#[repr(i32)]
#[non_exhaustive]
pub enum RebootMode {
/// Halt the system.
RB_HALT_SYSTEM,
/// Execute a kernel that has been loaded earlier with
/// [`kexec_load(2)`](https://man7.org/linux/man-pages/man2/kexec_load.2.html).
RB_KEXEC,
/// Stop the system and switch off power, if possible.
RB_POWER_OFF,
/// Restart the system.
RB_AUTOBOOT,
// we do not support Restart2,
// we do not support Restart2.
/// Suspend the system using software suspend.
RB_SW_SUSPEND,
}
}
/// Reboots or shuts down the system.
pub fn reboot(how: RebootMode) -> Result<Infallible> {
unsafe {
libc::reboot(how as libc::c_int)