dbdir='@DBDIR@'
fi
+ovs_ctl_log () {
+ echo "$@" >> "${logdir}/ovs-ctl.log"
+}
+
ovs_ctl () {
- echo "`date -u`:$@" >> "${logdir}/ovs-ctl.log"
- "${datadir}/scripts/ovs-ctl" "$@" 2>&1 | tee -a "${logdir}/ovs-ctl.log"
+ case "$@" in
+ *"=strace"*)
+ # In case of running the daemon with strace, piping the o/p causes
+ # the script to block (strace probably does not close the inherited
+ # pipe). So, do not log the o/p to ovs-ctl.log.
+ "${datadir}/scripts/ovs-ctl" "$@"
+ ;;
+ "status")
+ # In case of the command 'status', we should return the exit status
+ # of ovs-ctl. It is also useful to document the o/p in ovs-ctl.log.
+ display=`"${datadir}/scripts/ovs-ctl" "$@" 2>&1`
+ rc=$?
+ if test -w "${logdir}/ovs-ctl.log"; then
+ echo "${display}" | tee -a "${logdir}/ovs-ctl.log"
+ else
+ echo "${display}"
+ fi
+ return ${rc}
+ ;;
+ *)
+ echo "`date -u`:$@" >> "${logdir}/ovs-ctl.log"
+ "${datadir}/scripts/ovs-ctl" "$@" 2>&1 | tee -a "${logdir}/ovs-ctl.log"
+ ;;
+ esac
}
VERSION='@VERSION@'
test -d /proc/"$1"
}
+pid_comm_check () {
+ [ "$1" = "`cat /proc/$2/comm`" ]
+}
+
start_daemon () {
priority=$1
wrapper=$2
daemon_is_running () {
pidfile=$rundir/$1.pid
- test -e "$pidfile" && pid=`cat "$pidfile"` && pid_exists "$pid"
+ test -e "$pidfile" && pid=`cat "$pidfile"` && pid_exists "$pid" && pid_comm_check $1 $pid
} >/dev/null 2>&1