set -e
+fix () {
+ n=$1
+ while :; do
+ case $n in
+ 0) break ;;
+ 0*) n=${n#0} ;;
+ *) break ;;
+ esac
+ done
+ echo $n
+}
+min=$(fix ${1-0}) max=$(fix ${2-99})
+
exec 4>&1
rc=0
for check in check.d/[!#]*[!~]; do
+ base=${check##*/}
+ seq=${base%%[!0-9]*}
+ if [ $min -gt $seq -o $seq -gt $max ]; then continue; fi
+
nrc=$(
exec 5>&1
{ { { set +e; "$check"; rc=$?; set -e
--- /dev/null
+#! /bin/sh
+
+rc=0
+
+check () {
+ path=$1
+ if [ -x $path ] && ! pgrep -x ${path##*/} >/dev/null; then
+ echo >&2 $path not running
+ rc=1
+ fi
+}
+
+check /usr/sbin/ekeyd
+check /usr/sbin/ekeyd-egd-linux
+check /usr/sbin/yaid
+
+exit $rc
prog=$(readlink "${prog##*/}")
done
+args=""
+usage () {
+ echo "usage: ${0##*/} [-[MIN-][MAX]] [HOST...]"
+}
+while :; do
+ case $# in 0) break ;; esac
+ case $1 in
+ -) break ;;
+ --) shift; break ;;
+ -*[!0-9]*-* | -*-*[!0-9]*) usage >&2; exit 1 ;;
+ -*-) a=${1#-}; a=${a%-}; args="$a" ;;
+ -*-*) a=${1#-}; b=${a#*-}; a=${a%-*}; args="$a $b" ;;
+ -*[!0-9]*) usage >&2; exit 1 ;;
+ -*) a=${1#-}; args="0 $a" ;;
+ *) break ;;
+ esac
+ shift
+done
case $# in 0) set -- $(expand-list /etc/slaves :rcheck_hosts) ;; esac
exec 4>&1
rc=0
for host in "$@"; do
-
nrc=$(
exec 5>&1
{ { { set +e
cd $tmpdir
tar xzf -
-./check'
+./check'" $args"
rc=$?; set -e; echo $rc >&5
case $rc in
0) ;;