1 /* SPDX-License-Identifier: LGPL-2.1-or-later */ 2 #pragma once 3 4 #include <stdbool.h> 5 #include <unistd.h> 6 7 #define SD_LOGIND_ROOT_CHECK_INHIBITORS (UINT64_C(1) << 0) 8 #define SD_LOGIND_REBOOT_VIA_KEXEC (UINT64_C(1) << 1) 9 10 /* For internal use only */ 11 #define SD_LOGIND_INTERACTIVE (UINT64_C(1) << 63) 12 13 #define SD_LOGIND_SHUTDOWN_AND_SLEEP_FLAGS_PUBLIC (SD_LOGIND_ROOT_CHECK_INHIBITORS|SD_LOGIND_REBOOT_VIA_KEXEC) 14 #define SD_LOGIND_SHUTDOWN_AND_SLEEP_FLAGS_ALL (SD_LOGIND_SHUTDOWN_AND_SLEEP_FLAGS_PUBLIC|SD_LOGIND_INTERACTIVE) 15 16 bool session_id_valid(const char *id); 17 logind_running(void)18static inline bool logind_running(void) { 19 return access("/run/systemd/seats/", F_OK) >= 0; 20 } 21