summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
authorSven Eden <yamakuzure@gmx.net>2017-05-19 13:18:31 +0200
committerSven Eden <yamakuzure@gmx.net>2017-05-19 13:18:31 +0200
commit57095c3830fb5600442f3d3e92773096061bc263 (patch)
tree226f4e526b9c8532d9329e36b1d35dff0dc83c77 /src/shared
parent5b8c30572ce1f288670b48c1409806b9b6e6eb95 (diff)
Prep v229: elogind should honor its Sleep configuration.
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/sleep-config.c15
-rw-r--r--src/shared/sleep-config.h2
2 files changed, 16 insertions, 1 deletions
diff --git a/src/shared/sleep-config.c b/src/shared/sleep-config.c
index a0aef66bc..e8998d6ff 100644
--- a/src/shared/sleep-config.c
+++ b/src/shared/sleep-config.c
@@ -39,8 +39,12 @@
#define USE(x, y) do{ (x) = (y); (y) = NULL; } while(0)
+#if 0 /// UNNEEDED by elogind
int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
-
+#else
+/// really only used in here.
+static int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
+#endif // 0
_cleanup_strv_free_ char
**suspend_mode = NULL, **suspend_state = NULL,
**hibernate_mode = NULL, **hibernate_state = NULL,
@@ -57,10 +61,19 @@ int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
{}
};
+#if 0 /// elogind has its own config file
config_parse_many(PKGSYSCONFDIR "/sleep.conf",
CONF_PATHS_NULSTR("systemd/sleep.conf.d"),
"Sleep\0", config_item_table_lookup, items,
false, NULL);
+#else
+ const char* logind_conf = getenv("ELOGIND_CONF_FILE");
+ if (!logind_conf)
+ logind_conf = PKGSYSCONFDIR "/logind.conf";
+ config_parse(NULL, logind_conf, NULL, "Sleep\0",
+ config_item_table_lookup, items, false,
+ false, true, NULL);
+#endif // 0
if (streq(verb, "suspend")) {
/* empty by default */
diff --git a/src/shared/sleep-config.h b/src/shared/sleep-config.h
index 51f462184..0bfbaeff3 100644
--- a/src/shared/sleep-config.h
+++ b/src/shared/sleep-config.h
@@ -19,7 +19,9 @@
#pragma once
+#if 0 /// UNNEEDED by elogind
int parse_sleep_config(const char *verb, char ***modes, char ***states);
+#endif // 0
int can_sleep(const char *verb);
int can_sleep_disk(char **types);