]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/basic/raw-reboot.h
socket-util.h: include string.h
[thirdparty/systemd.git] / src / basic / raw-reboot.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4 #include <linux/reboot.h>
5 #include <sys/reboot.h>
6 #include <sys/syscall.h>
7
8 /* glibc defines the reboot() API call, which is a wrapper around the system call of the same name, but without the
9 * extra "arg" parameter. Since we need that parameter for some calls, let's add a "raw" wrapper that is defined the
10 * same way, except it takes the additional argument. */
11
12 static inline int raw_reboot(int cmd, const void *arg) {
13 return (int) syscall(SYS_reboot, LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, arg);
14 }