Merge pull request #333 from bugaevc/reboot
Linux: add reboot() and constants
This commit is contained in:
commit
16f3a8e96c
|
@ -165,9 +165,11 @@ fn main() {
|
|||
cfg.header("sys/vfs.h");
|
||||
cfg.header("sys/syscall.h");
|
||||
cfg.header("sys/sysinfo.h");
|
||||
cfg.header("sys/reboot.h");
|
||||
if !musl {
|
||||
cfg.header("linux/netlink.h");
|
||||
cfg.header("linux/magic.h");
|
||||
cfg.header("linux/reboot.h");
|
||||
|
||||
if !mips {
|
||||
cfg.header("linux/quota.h");
|
||||
|
|
|
@ -486,6 +486,21 @@ pub const RTLD_DEFAULT: *mut ::c_void = -1isize as *mut ::c_void;
|
|||
|
||||
pub const SEM_FAILED: *mut sem_t = 0 as *mut sem_t;
|
||||
|
||||
pub const LINUX_REBOOT_MAGIC1: ::c_int = 0xfee1dead;
|
||||
pub const LINUX_REBOOT_MAGIC2: ::c_int = 672274793;
|
||||
pub const LINUX_REBOOT_MAGIC2A: ::c_int = 85072278;
|
||||
pub const LINUX_REBOOT_MAGIC2B: ::c_int = 369367448;
|
||||
pub const LINUX_REBOOT_MAGIC2C: ::c_int = 537993216;
|
||||
|
||||
pub const LINUX_REBOOT_CMD_RESTART: ::c_int = 0x01234567;
|
||||
pub const LINUX_REBOOT_CMD_HALT: ::c_int = 0xCDEF0123;
|
||||
pub const LINUX_REBOOT_CMD_CAD_ON: ::c_int = 0x89ABCDEF;
|
||||
pub const LINUX_REBOOT_CMD_CAD_OFF: ::c_int = 0x00000000;
|
||||
pub const LINUX_REBOOT_CMD_POWER_OFF: ::c_int = 0x4321FEDC;
|
||||
pub const LINUX_REBOOT_CMD_RESTART2: ::c_int = 0xA1B2C3D4;
|
||||
pub const LINUX_REBOOT_CMD_SW_SUSPEND: ::c_int = 0xD000FCE2;
|
||||
pub const LINUX_REBOOT_CMD_KEXEC: ::c_int = 0x45584543;
|
||||
|
||||
f! {
|
||||
pub fn sigemptyset(set: *mut sigset_t) -> ::c_int {
|
||||
*set = 0;
|
||||
|
|
|
@ -527,6 +527,21 @@ pub const RTLD_DEEPBIND: ::c_int = 0x10;
|
|||
pub const RTLD_GLOBAL: ::c_int = 0x4;
|
||||
pub const RTLD_NOLOAD: ::c_int = 0x8;
|
||||
|
||||
pub const LINUX_REBOOT_MAGIC1: ::c_int = 0xfee1dead;
|
||||
pub const LINUX_REBOOT_MAGIC2: ::c_int = 672274793;
|
||||
pub const LINUX_REBOOT_MAGIC2A: ::c_int = 85072278;
|
||||
pub const LINUX_REBOOT_MAGIC2B: ::c_int = 369367448;
|
||||
pub const LINUX_REBOOT_MAGIC2C: ::c_int = 537993216;
|
||||
|
||||
pub const LINUX_REBOOT_CMD_RESTART: ::c_int = 0x01234567;
|
||||
pub const LINUX_REBOOT_CMD_HALT: ::c_int = 0xCDEF0123;
|
||||
pub const LINUX_REBOOT_CMD_CAD_ON: ::c_int = 0x89ABCDEF;
|
||||
pub const LINUX_REBOOT_CMD_CAD_OFF: ::c_int = 0x00000000;
|
||||
pub const LINUX_REBOOT_CMD_POWER_OFF: ::c_int = 0x4321FEDC;
|
||||
pub const LINUX_REBOOT_CMD_RESTART2: ::c_int = 0xA1B2C3D4;
|
||||
pub const LINUX_REBOOT_CMD_SW_SUSPEND: ::c_int = 0xD000FCE2;
|
||||
pub const LINUX_REBOOT_CMD_KEXEC: ::c_int = 0x45584543;
|
||||
|
||||
pub const SYS_gettid: ::c_long = 4222; // Valid for O32
|
||||
|
||||
#[link(name = "util")]
|
||||
|
|
|
@ -468,6 +468,14 @@ pub const LOG_NFACILITIES: ::c_int = 24;
|
|||
|
||||
pub const SEM_FAILED: *mut ::sem_t = 0 as *mut sem_t;
|
||||
|
||||
pub const RB_AUTOBOOT: ::c_int = 0x01234567;
|
||||
pub const RB_HALT_SYSTEM: ::c_int = 0xcdef0123;
|
||||
pub const RB_ENABLE_CAD: ::c_int = 0x89abcdef;
|
||||
pub const RB_DISABLE_CAD: ::c_int = 0;
|
||||
pub const RB_POWER_OFF: ::c_int = 0x4321fedc;
|
||||
pub const RB_SW_SUSPEND: ::c_int = 0xd000fce2;
|
||||
pub const RB_KEXEC: ::c_int = 0x45584543;
|
||||
|
||||
f! {
|
||||
pub fn CPU_ZERO(cpuset: &mut cpu_set_t) -> () {
|
||||
for slot in cpuset.bits.iter_mut() {
|
||||
|
@ -639,6 +647,7 @@ extern {
|
|||
remote_iov: *const ::iovec,
|
||||
riovcnt: ::c_ulong,
|
||||
flags: ::c_ulong) -> isize;
|
||||
pub fn reboot(how_to: ::c_int) -> ::c_int;
|
||||
|
||||
// Not available now on Android
|
||||
pub fn mkfifoat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
|
|
|
@ -474,6 +474,21 @@ pub const RTLD_DEEPBIND: ::c_int = 0x8;
|
|||
pub const RTLD_GLOBAL: ::c_int = 0x100;
|
||||
pub const RTLD_NOLOAD: ::c_int = 0x4;
|
||||
|
||||
pub const LINUX_REBOOT_MAGIC1: ::c_int = 0xfee1dead;
|
||||
pub const LINUX_REBOOT_MAGIC2: ::c_int = 672274793;
|
||||
pub const LINUX_REBOOT_MAGIC2A: ::c_int = 85072278;
|
||||
pub const LINUX_REBOOT_MAGIC2B: ::c_int = 369367448;
|
||||
pub const LINUX_REBOOT_MAGIC2C: ::c_int = 537993216;
|
||||
|
||||
pub const LINUX_REBOOT_CMD_RESTART: ::c_int = 0x01234567;
|
||||
pub const LINUX_REBOOT_CMD_HALT: ::c_int = 0xCDEF0123;
|
||||
pub const LINUX_REBOOT_CMD_CAD_ON: ::c_int = 0x89ABCDEF;
|
||||
pub const LINUX_REBOOT_CMD_CAD_OFF: ::c_int = 0x00000000;
|
||||
pub const LINUX_REBOOT_CMD_POWER_OFF: ::c_int = 0x4321FEDC;
|
||||
pub const LINUX_REBOOT_CMD_RESTART2: ::c_int = 0xA1B2C3D4;
|
||||
pub const LINUX_REBOOT_CMD_SW_SUSPEND: ::c_int = 0xD000FCE2;
|
||||
pub const LINUX_REBOOT_CMD_KEXEC: ::c_int = 0x45584543;
|
||||
|
||||
cfg_if! {
|
||||
if #[cfg(any(target_arch = "arm", target_arch = "x86",
|
||||
target_arch = "x86_64"))] {
|
||||
|
|
|
@ -847,19 +847,19 @@ extern {
|
|||
pub fn linkat(olddirfd: ::c_int, oldpath: *const ::c_char,
|
||||
newdirfd: ::c_int, newpath: *const ::c_char,
|
||||
flags: ::c_int) -> ::c_int;
|
||||
pub fn mkdirat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
mode: ::mode_t) -> ::c_int;
|
||||
pub fn mknodat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
mode: ::mode_t, dev: dev_t) -> ::c_int;
|
||||
pub fn readlinkat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
buf: *mut ::c_char, bufsiz: ::size_t) -> ::ssize_t;
|
||||
pub fn renameat(olddirfd: ::c_int, oldpath: *const ::c_char,
|
||||
newdirfd: ::c_int, newpath: *const ::c_char)
|
||||
-> ::c_int;
|
||||
pub fn symlinkat(target: *const ::c_char, newdirfd: ::c_int,
|
||||
linkpath: *const ::c_char) -> ::c_int;
|
||||
pub fn unlinkat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
flags: ::c_int) -> ::c_int;
|
||||
pub fn mkdirat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
mode: ::mode_t) -> ::c_int;
|
||||
pub fn mknodat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
mode: ::mode_t, dev: dev_t) -> ::c_int;
|
||||
pub fn readlinkat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
buf: *mut ::c_char, bufsiz: ::size_t) -> ::ssize_t;
|
||||
pub fn renameat(olddirfd: ::c_int, oldpath: *const ::c_char,
|
||||
newdirfd: ::c_int, newpath: *const ::c_char)
|
||||
-> ::c_int;
|
||||
pub fn symlinkat(target: *const ::c_char, newdirfd: ::c_int,
|
||||
linkpath: *const ::c_char) -> ::c_int;
|
||||
pub fn unlinkat(dirfd: ::c_int, pathname: *const ::c_char,
|
||||
flags: ::c_int) -> ::c_int;
|
||||
}
|
||||
|
||||
cfg_if! {
|
||||
|
|
Loading…
Reference in New Issue