1/* SPDX-License-Identifier: LGPL-2.1-or-later */
2%{
3#if __GNUC__ >= 7
4_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
5#endif
6#include <stddef.h>
7#include "conf-parser.h"
8#include "logind.h"
9%}
10struct ConfigPerfItem;
11%null_strings
12%language=ANSI-C
13%define slot-name section_and_lvalue
14%define hash-function-name logind_gperf_hash
15%define lookup-function-name logind_gperf_lookup
16%readonly-tables
17%omit-struct-type
18%struct-type
19%includes
20%%
21Login.NAutoVTs,                     config_parse_n_autovts,             0, offsetof(Manager, n_autovts)
22Login.ReserveVT,                    config_parse_unsigned,              0, offsetof(Manager, reserve_vt)
23Login.KillUserProcesses,            config_parse_bool,                  0, offsetof(Manager, kill_user_processes)
24Login.KillOnlyUsers,                config_parse_strv,                  0, offsetof(Manager, kill_only_users)
25Login.KillExcludeUsers,             config_parse_strv,                  0, offsetof(Manager, kill_exclude_users)
26Login.InhibitDelayMaxSec,           config_parse_sec,                   0, offsetof(Manager, inhibit_delay_max)
27Login.UserStopDelaySec,             config_parse_sec,                   0, offsetof(Manager, user_stop_delay)
28Login.HandlePowerKey,               config_parse_handle_action,         0, offsetof(Manager, handle_power_key)
29Login.HandlePowerKeyLongPress,      config_parse_handle_action,         0, offsetof(Manager, handle_power_key_long_press)
30Login.HandleRebootKey,              config_parse_handle_action,         0, offsetof(Manager, handle_reboot_key)
31Login.HandleRebootKeyLongPress,     config_parse_handle_action,         0, offsetof(Manager, handle_reboot_key_long_press)
32Login.HandleSuspendKey,             config_parse_handle_action,         0, offsetof(Manager, handle_suspend_key)
33Login.HandleSuspendKeyLongPress,    config_parse_handle_action,         0, offsetof(Manager, handle_suspend_key_long_press)
34Login.HandleHibernateKey,           config_parse_handle_action,         0, offsetof(Manager, handle_hibernate_key)
35Login.HandleHibernateKeyLongPress,  config_parse_handle_action,         0, offsetof(Manager, handle_hibernate_key_long_press)
36Login.HandleLidSwitch,              config_parse_handle_action,         0, offsetof(Manager, handle_lid_switch)
37Login.HandleLidSwitchExternalPower, config_parse_handle_action,         0, offsetof(Manager, handle_lid_switch_ep)
38Login.HandleLidSwitchDocked,        config_parse_handle_action,         0, offsetof(Manager, handle_lid_switch_docked)
39Login.PowerKeyIgnoreInhibited,      config_parse_bool,                  0, offsetof(Manager, power_key_ignore_inhibited)
40Login.SuspendKeyIgnoreInhibited,    config_parse_bool,                  0, offsetof(Manager, suspend_key_ignore_inhibited)
41Login.HibernateKeyIgnoreInhibited,  config_parse_bool,                  0, offsetof(Manager, hibernate_key_ignore_inhibited)
42Login.LidSwitchIgnoreInhibited,     config_parse_bool,                  0, offsetof(Manager, lid_switch_ignore_inhibited)
43Login.RebootKeyIgnoreInhibited,     config_parse_bool,                  0, offsetof(Manager, reboot_key_ignore_inhibited)
44Login.HoldoffTimeoutSec,            config_parse_sec,                   0, offsetof(Manager, holdoff_timeout_usec)
45Login.IdleAction,                   config_parse_handle_action,         0, offsetof(Manager, idle_action)
46Login.IdleActionSec,                config_parse_sec,                   0, offsetof(Manager, idle_action_usec)
47Login.RuntimeDirectorySize,         config_parse_tmpfs_size,            0, offsetof(Manager, runtime_dir_size)
48Login.RuntimeDirectoryInodesMax,    config_parse_iec_uint64,            0, offsetof(Manager, runtime_dir_inodes)
49Login.RemoveIPC,                    config_parse_bool,                  0, offsetof(Manager, remove_ipc)
50Login.InhibitorsMax,                config_parse_uint64,                0, offsetof(Manager, inhibitors_max)
51Login.SessionsMax,                  config_parse_uint64,                0, offsetof(Manager, sessions_max)
52Login.UserTasksMax,                 config_parse_compat_user_tasks_max, 0, 0
53