openntpd: add SysV initscript and user
authorGustavo Zacarias <gustavo@zacarias.com.ar>
Wed, 11 Jun 2014 11:33:15 +0000 (08:33 -0300)
committerPeter Korsgaard <peter@korsgaard.com>
Tue, 8 Jul 2014 12:16:51 +0000 (14:16 +0200)
Add the _ntp user that the daemon requires to work in any way.
Add a SysV-style initscript as well, but not with '-s' (set time
immediately after startup) because it can make the boot process stall
for a few seconds if there's no proper network connectivity/dns setup.
Make ntp and openntpd mutually exclusive since they overstep each other.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/openntpd/Config.in
package/openntpd/S49ntp [new file with mode: 0755]
package/openntpd/openntpd.mk

index 4dd9a297d5642f58ac114c11981dbe44dd39e301..a8ef807e6237cd1a82045f2cb0bf892d3de840cf 100644 (file)
@@ -1,7 +1,7 @@
 config BR2_PACKAGE_OPENNTPD
        bool "openntpd"
-       # fork()
-       depends on BR2_USE_MMU
+       depends on BR2_USE_MMU # fork ()
+       depends on !BR2_PACKAGE_NTP # conflicting binaries
        help
          OpenNTPD is an easy to use implementation of the Network Time
          Protocol. It provides the ability to sync the local clock
diff --git a/package/openntpd/S49ntp b/package/openntpd/S49ntp
new file mode 100755 (executable)
index 0000000..99e0f68
--- /dev/null
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+[ -x /usr/sbin/ntpd ] || exit 0
+[ -f /etc/ntpd.conf ] || exit 0
+
+case "$1" in
+       start)
+               echo -n "Starting openntpd: "
+               start-stop-daemon -S -x /usr/sbin/ntpd
+               [ $? == 0 ] && echo "OK" || echo "FAIL"
+               ;;
+       stop)
+               echo -n "Stopping openntpd: "
+               start-stop-daemon -K -x /usr/sbin/ntpd
+               [ $? == 0 ] && echo "OK" || echo "FAIL"
+               ;;
+       restart)
+               "$0" stop
+               sleep 1
+               "$0" start
+               ;;
+       *)
+               echo "Usage: $0 {start|stop|restart}"
+               ;;
+esac
index f0e4f199972c934948d2a9e1f2cd276a823cc47c..0fe61799fa7a0d0b7c7521f0ea06fa2b708e8ac8 100644 (file)
@@ -10,4 +10,13 @@ OPENNTPD_CONF_OPT = --with-builtin-arc4random --disable-strip
 OPENNTPD_LICENSE = MIT-like, BSD-2c, BSD-3c
 OPENNTPD_LICENSE_FILES = LICENCE
 
+define OPENNTPD_INSTALL_INIT_SYSV
+       $(INSTALL) -m 0755 -D package/openntpd/S49ntp \
+               $(TARGET_DIR)/etc/init.d/S49ntp
+endef
+
+define OPENNTPD_USERS
+_ntp -1 _ntp -1 * - - - Network Time Protocol daemon
+endef
+
 $(eval $(autotools-package))