chiark / gitweb /
timedate: fall back to /etc/sysconfig/clock on Fedora, for compatibility with legacy
authorLennart Poettering <lennart@poettering.net>
Tue, 11 Oct 2011 02:23:35 +0000 (04:23 +0200)
committerLennart Poettering <lennart@poettering.net>
Tue, 11 Oct 2011 02:23:35 +0000 (04:23 +0200)
TODO
src/timedated.c

diff --git a/TODO b/TODO
index f662104b2cdf10462eb260e7d0f741654211680a..aa51332c05bd0d6b792890e68903d7d109706e65 100644 (file)
--- 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
index f6fe2d83b646429c5ca04c45d137664a00d9eea9..16f54b59d263ecdd9b43cc9919b2fa1550a8fb5b 100644 (file)
@@ -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();