summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2014-01-29 13:17:03 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2014-01-29 13:17:03 +0000
commitb7cd6a3fca5237ea3c4949cdd75343f480919712 (patch)
tree6e2d38711b1723d6090945741bef8ddaab64c80e /package
parent25a825dfe880af41546e58673d857b3e4473e2bd (diff)
Add sysfixtime init script, replacement of luci_fixtime
Simply scan for the most recent file in /etc and set system time to this file modification time if it's in the future It allow some time dependent program to work immediatly without waiting for ntpd to sync v1: v2: bad approach v3: simply scan /etc, thanks to Bastian Bittorf for the idea v4: use sort -n, thanks to Catalin Patulea v5: use [] instead of [[]], thanks to Andreas Mohr v6: use openwrt style, thanks to Bastian Bittorf Signed-off-by: Etienne CHAMPETIER <etienne.champetier@free.fr> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39422 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rwxr-xr-xpackage/base-files/files/etc/init.d/sysfixtime13
1 files changed, 13 insertions, 0 deletions
diff --git a/package/base-files/files/etc/init.d/sysfixtime b/package/base-files/files/etc/init.d/sysfixtime
new file mode 100755
index 0000000000..525d765758
--- /dev/null
+++ b/package/base-files/files/etc/init.d/sysfixtime
@@ -0,0 +1,13 @@
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2013-2014 OpenWrt.org
+
+START=00
+
+boot() {
+ local curtime="$(date +%s)"
+ local maxtime="$(find /etc -type f -exec date +%s -r {} \; | sort -nr | head -n1)"
+ [ $curtime -lt $maxtime ] && \
+ date -s @$maxtime && \
+ logger -t sysfixtime -p daemon.notice "Time fixed"
+}
+