2020-11-09 05:23:58 +01:00
|
|
|
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
2013-11-18 16:58:43 +01:00
|
|
|
#pragma once
|
2012-12-23 22:32:48 +01:00
|
|
|
|
2018-05-22 13:10:17 +02:00
|
|
|
#include "conf-parser.h"
|
|
|
|
|
2012-12-23 22:32:48 +01:00
|
|
|
typedef enum HandleAction {
|
|
|
|
HANDLE_IGNORE,
|
|
|
|
HANDLE_POWEROFF,
|
|
|
|
HANDLE_REBOOT,
|
|
|
|
HANDLE_HALT,
|
|
|
|
HANDLE_KEXEC,
|
|
|
|
HANDLE_SUSPEND,
|
|
|
|
HANDLE_HIBERNATE,
|
|
|
|
HANDLE_HYBRID_SLEEP,
|
2018-03-28 18:00:06 +02:00
|
|
|
HANDLE_SUSPEND_THEN_HIBERNATE,
|
2012-12-23 22:32:48 +01:00
|
|
|
HANDLE_LOCK,
|
|
|
|
_HANDLE_ACTION_MAX,
|
|
|
|
_HANDLE_ACTION_INVALID = -1
|
|
|
|
} HandleAction;
|
|
|
|
|
2015-10-24 22:58:24 +02:00
|
|
|
#include "logind-inhibit.h"
|
2015-11-18 22:46:33 +01:00
|
|
|
#include "logind.h"
|
2012-12-23 22:32:48 +01:00
|
|
|
|
|
|
|
int manager_handle_action(
|
|
|
|
Manager *m,
|
|
|
|
InhibitWhat inhibit_key,
|
|
|
|
HandleAction handle,
|
|
|
|
bool ignore_inhibited,
|
|
|
|
bool is_edge);
|
|
|
|
|
2013-05-03 04:51:50 +02:00
|
|
|
const char* handle_action_to_string(HandleAction h) _const_;
|
|
|
|
HandleAction handle_action_from_string(const char *s) _pure_;
|
2012-12-23 22:32:48 +01:00
|
|
|
|
2018-04-10 13:15:00 +02:00
|
|
|
const char* manager_target_for_action(HandleAction handle);
|
2018-05-22 13:10:17 +02:00
|
|
|
|
|
|
|
CONFIG_PARSER_PROTOTYPE(config_parse_handle_action);
|