unbound: support copy without dash update
authorEric Luehrsen <ericluehrsen@hotmail.com>
Wed, 22 Mar 2017 01:43:42 +0000 (21:43 -0400)
committerEric Luehrsen <ericluehrsen@hotmail.com>
Wed, 5 Apr 2017 03:03:33 +0000 (23:03 -0400)
Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
net/unbound/Makefile
net/unbound/files/unbound.sh

index d6ded2cf4d2eefec61cba87044ca613cfc496464..57a65045a16b7b9cdfad3b6e840f71216b5299af 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=unbound
 PKG_VERSION:=1.6.1
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 
 PKG_LICENSE:=BSD-3-Clause
 PKG_LICENSE_FILES:=LICENSE
index 5f733fbcb143aadd903b11e6ef3390e9a39abbb0..d918152d7c982ffb686463f218ebd3ed6087d8f3 100644 (file)
@@ -88,6 +88,29 @@ UNBOUND_CONTROL_CFG="$UNBOUND_CONTROL -c $UNBOUND_CONFFILE"
 
 ##############################################################################
 
+copy_dash_update() {
+  # TODO: remove this function and use builtins when this issues is resovled.
+  # Due to OpenWrt/LEDE divergence "cp -u" isn't yet universally available.
+  local filetime keeptime
+
+
+  if [ -f $UNBOUND_KEYFILE.keep ] ; then
+    # root.key.keep is reused if newest
+    filetime=$( date -r $UNBOUND_KEYFILE +%s )
+    keeptime=$( date -r $UNBOUND_KEYFILE.keep +%s )
+
+
+    if [ $keeptime -gt $filetime ] ; then
+      cp $UNBOUND_KEYFILE.keep $UNBOUND_KEYFILE
+    fi
+
+
+    rm -f $UNBOUND_KEYFILE.keep
+  fi
+}
+
+##############################################################################
+
 create_interface_dns() {
   local cfg="$1"
   local ipcommand logint ignore ifname ifdashname
@@ -312,11 +335,7 @@ unbound_mkdir() {
   fi
 
 
-  if [ -f $UNBOUND_KEYFILE.keep ] ; then
-    # root.key.keep is reused if newest
-    cp -u $UNBOUND_KEYFILE.keep $UNBOUND_KEYFILE
-    rm -f $UNBOUND_KEYFILE.keep
-  fi
+  copy_dash_update
 
 
   # Ensure access and prepare to jail