examples/var_service/: use "svc" for service commands, other tweaks
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/examples/var_service/dhcp_if/dhcp_handler b/examples/var_service/dhcp_if/dhcp_handler
index 3d44a60..6a97e85 100755
--- a/examples/var_service/dhcp_if/dhcp_handler
+++ b/examples/var_service/dhcp_if/dhcp_handler
@@ -52,7 +52,7 @@
rm "$file_ntpconf"
rm "$dir_ipconf/$file_ipconf"
rm "$dir_ntpconf/$file_ntpconf"
- sv u /var/service/fw
+ svc -u fw
exit
fi
@@ -67,10 +67,10 @@
echo "Reconfiguring fw"
mkdir -p "$dir_ipconf" 2>/dev/null
cp "$file_ipconf" "$dir_ipconf/$file_ipconf"
- sv u /var/service/fw
+ svc -u fw
fi
-if test -d /var/service/ntpd; then
+if test -d ../ntpd; then
./convert2ntpconf "$file_ntpconf"
# Reconfigure ntp server addresses if needed
diff --brief "$file_ntpconf" "$dir_ntpconf/$file_ntpconf" >/dev/null 2>&1
@@ -78,7 +78,7 @@
echo "Reconfiguring ntp"
mkdir -p "$dir_ntpconf" 2>/dev/null
cp "$file_ntpconf" "$dir_ntpconf/$file_ntpconf"
- sv t /var/service/ntpd
- sv u /var/service/ntpd
+ svc -t ntpd
+ svc -u ntpd
fi
fi
diff --git a/examples/var_service/dhcp_if/finish b/examples/var_service/dhcp_if/finish
index 5e7667a..8ce1883 100755
--- a/examples/var_service/dhcp_if/finish
+++ b/examples/var_service/dhcp_if/finish
@@ -14,4 +14,4 @@
rm "$file_ntpconf"
rm "$dir_ipconf/$file_ipconf"
rm "$dir_ntpconf/$file_ntpconf"
-sv u /var/service/fw
+svc -u fw
diff --git a/examples/var_service/dhcp_if_pinger/run b/examples/var_service/dhcp_if_pinger/run
index 8aca90c..2534124 100755
--- a/examples/var_service/dhcp_if_pinger/run
+++ b/examples/var_service/dhcp_if_pinger/run
@@ -21,9 +21,9 @@
mv "$0.log.new" "$0.log"
fi
-test -f "/var/service/dhcp_$if/env.out" || exec env - sleep "$ping_time"
+test -f "../dhcp_$if/env.out" || exec env - sleep "$ping_time"
-. "/var/service/dhcp_$if/env.out"
+. "../dhcp_$if/env.out"
test x"$router" != x"" || exec env - sleep "$ping_time"
#msg "Pinging $router"
@@ -36,12 +36,12 @@
env - sleep "$retry_time"
done
-test -d "/var/service/dhcp_$if" && {
- msg "Restarting /var/service/dhcp_$if"
- sv t "/var/service/dhcp_$if"
+test -d "../dhcp_$if" && {
+ msg "Restarting dhcp_$if"
+ svc -t "dhcp_$if"
}
-test -d "/var/service/supplicant_$if" && {
- msg "Restarting /var/service/supplicant_$if"
- sv t "/var/service/supplicant_$if"
+test -d "../supplicant_$if" && {
+ msg "Restarting supplicant_$if"
+ svc -t "supplicant_$if"
}
exec env - sleep "$ping_time"
diff --git a/examples/var_service/fw/etc/dnsmasq_servers.conf b/examples/var_service/fw/etc/dnsmasq_servers.conf
index 6831360..c39fe6e 100644
--- a/examples/var_service/fw/etc/dnsmasq_servers.conf
+++ b/examples/var_service/fw/etc/dnsmasq_servers.conf
@@ -35,4 +35,4 @@
$empty && echo "server=8.8.4.4"
# SIGHUP: make dnsmasq reload config
-sv h dnsmasq
+svc -h dnsmasq
diff --git a/examples/var_service/fw/run b/examples/var_service/fw/run
index 1fd71cc..41078d0 100755
--- a/examples/var_service/fw/run
+++ b/examples/var_service/fw/run
@@ -8,7 +8,7 @@
ext_open_tcp="22 80 88" # space-separated
# Make ourself one-shot
-sv o .
+svc -o .
# Debug
#date '+%Y-%m-%d %H:%M:%S' >>"$0.log"
diff --git a/examples/var_service/ntpd/run b/examples/var_service/ntpd/run
index 6f2a681..5c90aad 100755
--- a/examples/var_service/ntpd/run
+++ b/examples/var_service/ntpd/run
@@ -6,12 +6,22 @@
exec </dev/null
user=root
+start_delay=15
+net_down_delay=5
pool="us.pool.ntp.org" # replace "us" with your country code
service="${PWD##*/}"
rundir="/var/run/service/$service"
default_p_opt="-p 0.$pool -p 1.$pool -p 2.$pool -p 3.$pool"
+echo "* Checking network"
+test -f /var/run/service/fw/up || exec sleep $net_down_delay
+
+# With multiple interfaces (e.g. wired+wireless) going up,
+# networking scripts may restart ntpd service several times
+# in quick succession. Do not be too eager to start sending
+# NTP requests:
+sleep $start_delay
# Make sure rundir/ exists
mkdir -p "$rundir" 2>/dev/null
@@ -20,30 +30,25 @@
rm -rf rundir 2>/dev/null
ln -s "$rundir" rundir
-
-echo "* Checking network"
-test -f /var/run/service/fw/up || exec sleep 7
-sleep 5 # to let it settle
-
# Grab config from dhcp
cfg=-1
for f in rundir/*.ntpconf; do
- test -f "$f" || continue
- . "$f"
+ test -f "$f" || continue
+ . "$f"
done
# Select peers
p_opt=""
cfg=0
while test x"${ntpip[$cfg]}" != x""; do
- p_opt="$p_opt -p ${ntpip[$cfg]}"
- let cfg=cfg+1
+ p_opt="$p_opt -p ${ntpip[$cfg]}"
+ let cfg=cfg+1
done
test x"$p_opt" == x"" && p_opt="$default_p_opt"
if test x"$p_opt" == x""; then
echo "* No NTP peers configured, stopping"
- sv o .
+ svc -o .
exec sleep 1
fi
diff --git a/examples/var_service/zcip_if/finish b/examples/var_service/zcip_if/finish
index 95995cf..7955cf3 100755
--- a/examples/var_service/zcip_if/finish
+++ b/examples/var_service/zcip_if/finish
@@ -1,5 +1,5 @@
#!/bin/sh
-# executed when service is taken down ("sv d .")
+# executed when service is taken down
service=${PWD##*/}
file_ipconf="$service.ipconf"
@@ -10,4 +10,4 @@
rm "env.out"
rm "$file_ipconf"
rm "$dir_ipconf/$file_ipconf"
-sv u /var/service/fw
+svc -u fw
diff --git a/examples/var_service/zcip_if/zcip_handler b/examples/var_service/zcip_if/zcip_handler
index 3c6ca78..625450f 100755
--- a/examples/var_service/zcip_if/zcip_handler
+++ b/examples/var_service/zcip_if/zcip_handler
@@ -28,7 +28,7 @@
echo "Deconfiguring"
rm "$file_ipconf"
rm "$dir_ipconf/$file_ipconf"
- sv u /var/service/fw
+ svc -u fw
exit
fi
@@ -43,5 +43,5 @@
echo "Reconfiguring fw"
mkdir -p "$dir_ipconf" 2>/dev/null
cp "$file_ipconf" "$dir_ipconf/$file_ipconf"
- sv u /var/service/fw
+ svc -u fw
fi