summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2011-10-11 04:23:35 +0200
committerLennart Poettering <lennart@poettering.net>2011-10-11 04:23:35 +0200
commita724d2ed799a8985193ba70c5c3e76f621815e10 (patch)
treeb597388ccf24a0a9f53d45ead892838e569d5f5c
parent8266f984df0b069a345bf959628bac70877ce5e1 (diff)
timedate: fall back to /etc/sysconfig/clock on Fedora, for compatibility with legacy
-rw-r--r--TODO6
-rw-r--r--src/timedated.c20
2 files changed, 19 insertions, 7 deletions
diff --git a/TODO b/TODO
index f662104b2c..aa51332c05 100644
--- a/TODO
+++ b/TODO
@@ -17,21 +17,17 @@ Bugfixes:
* make polkit checks async
-* logind is leaking fifos?
+* fail gracefully if logind reaches it RLIMIT_NFILES for fifos
Features:
* ConditionCapability=
-* order network mounts after network-fs-ready.target or so
-
* read fedora style timezone name config for compat
* if we can not get user quota for tmpfs, mount a separate tmpfs instance
for every user in /run/user/$USER with a configured maximum size
-* bind mounts should be ordered after remount-root-fs.service
-
* default to actual 32bit PIDs, via /proc/sys/kernel/pid_max
* increase RLIMIT_NOFILE for logind, logger by default
diff --git a/src/timedated.c b/src/timedated.c
index f6fe2d83b6..16f54b59d2 100644
--- a/src/timedated.c
+++ b/src/timedated.c
@@ -170,8 +170,24 @@ static int read_data(void) {
free_data();
r = read_one_line_file("/etc/timezone", &zone);
- if (r < 0 && r != -ENOENT)
- return r;
+ if (r < 0) {
+ if (r != -ENOENT)
+ log_warning("Failed to read /etc/timezone: %s", strerror(-r));
+
+#ifdef TARGET_FEDORA
+ r = parse_env_file("/etc/sysconfig/clock", NEWLINE,
+ "ZONE", &zone,
+ NULL);
+
+ if (r < 0 && r != -ENOENT)
+ log_warning("Failed to read /etc/sysconfig/clock: %s", strerror(-r));
+#endif
+ }
+
+ if (isempty(zone)) {
+ free(zone);
+ zone = NULL;
+ }
verify_timezone();