<?xml version="1.0" encoding="utf-8" ?>
<!-- 0 /// elogind does not has any of these but KILL_USER_PROCESSES.
-<!ENTITY MOUNT_PATH @MOUNT_PATH@>
-<!ENTITY UMOUNT_PATH @UMOUNT_PATH@>
-<!ENTITY systemgeneratordir @SYSTEM_GENERATOR_PATH@>
-<!ENTITY usergeneratordir @USER_GENERATOR_PATH@>
-<!ENTITY systemenvgeneratordir @SYSTEM_ENV_GENERATOR_PATH@>
-<!ENTITY userenvgeneratordir @USER_ENV_GENERATOR_PATH@>
-<!ENTITY CERTIFICATE_ROOT @CERTIFICATE_ROOT@>
-<!ENTITY MEMORY_ACCOUNTING_DEFAULT @MEMORY_ACCOUNTING_DEFAULT_YES_NO@>
+# <!ENTITY MOUNT_PATH @MOUNT_PATH@>
+# <!ENTITY UMOUNT_PATH @UMOUNT_PATH@>
+# <!ENTITY systemgeneratordir @SYSTEM_GENERATOR_PATH@>
+# <!ENTITY usergeneratordir @USER_GENERATOR_PATH@>
+# <!ENTITY systemenvgeneratordir @SYSTEM_ENV_GENERATOR_PATH@>
+# <!ENTITY userenvgeneratordir @USER_ENV_GENERATOR_PATH@>
+# <!ENTITY CERTIFICATE_ROOT @CERTIFICATE_ROOT@>
+# <!ENTITY MEMORY_ACCOUNTING_DEFAULT @MEMORY_ACCOUNTING_DEFAULT_YES_NO@>
// 0 -->
<!ENTITY KILL_USER_PROCESSES @KILL_USER_PROCESSES_YES_NO@>
#####################################################################
+#if 1 /// These are not needed by elogind, but meson wants them although they are commented out.
+conf.set_quoted('CERTIFICATE_ROOT', '/dev/null')
+conf.set_quoted('MEMORY_ACCOUNTING_DEFAULT_YES_NO', 'N/A')
+conf.set_quoted('MOUNT_PATH', '/dev/null')
+conf.set_quoted('SYSTEM_ENV_GENERATOR_PATH', '/dev/null')
+conf.set_quoted('SYSTEM_GENERATOR_PATH', '/dev/null')
+conf.set_quoted('UMOUNT_PATH', '/dev/null')
+conf.set_quoted('USER_ENV_GENERATOR_PATH', '/dev/null')
+conf.set_quoted('USER_GENERATOR_PATH', '/dev/null')
+#####################################################################
+
+#endif // 1
+
config_h = configure_file(
output : 'config.h',
configuration : conf)
-Subproject commit 2bee2d8292d4cfb3bfdfd6ac7db3a5ca75aca306
+Subproject commit d50863bb69d4fd2c59070f2fc931ff113a68c6b6
}
finish:
-
return sd_bus_reply_method_return(message, "s", result);
}
}
FOREACH_STRING(p, "suspend", "hibernate") {
+#if 0 /// elogind must transport a pointer to its managers instance
+ r = can_sleep(p);
+#else
r = can_sleep(m, p);
+#endif // 0
if (IN_SET(r, 0, -ENOSPC)) {
log_debug("Unable to %s system.", p);
return false;
assert(STR_IN_SET(verb, "suspend", "hibernate", "hybrid-sleep", "suspend-then-hibernate"));
if (streq(verb, "suspend-then-hibernate"))
+#if 0 /// elogind must transport a pointer to its managers instance
+ return can_s2h();
+#else
return can_s2h(m);
+#endif // 0
#if 0 /// already parsed by elogind config
r = parse_sleep_config(verb, &modes, &states, NULL);
r = execute_s2h(delay);
else
r = execute(modes, states);
+finish:
return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
}
#else