meta-virtualization/recipes-networking/openvswitch/files/openvswitch-switch
David Nyström 5ac786971c Added openvswitch recipe
Signed-off-by: David Nyström <david.nystrom@enea.com>
Reviewed-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-12-07 15:32:31 +01:00

2.5 KiB

#! /bin/sh

Copyright (C) 2011 Nicira Networks, Inc.

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at:

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

BEGIN INIT INFO

Provides: openvswitch-switch

Required-Start: $network $named $remote_fs $syslog

Required-Stop: $remote_fs

Default-Start: 2 3 4 5

Default-Stop: 0 1 6

Short-Description: Open vSwitch switch

END INIT INFO

(test -x /usr/sbin/ovs-vswitchd && test -x /usr/sbin/ovsdb-server) || exit 0

. /usr/share/openvswitch/scripts/ovs-lib test -e /etc/default/openvswitch-switch && . /etc/default/openvswitch-switch

if test X"$BRCOMPAT" = Xyes && test ! -x /usr/sbin/ovs-brcompatd; then BRCOMPAT=no log_warning_msg "ovs-brcompatd missing, disabling bridge compatibility" fi

ovs_ctl () { set /usr/share/openvswitch/scripts/ovs-ctl "$@" if test X"$BRCOMPAT" = Xyes; then set "$@" --brcompat fi "$@" }

load_kmod () { ovs_ctl load-kmod || exit $? }

start () { if ovs_ctl load-kmod; then : else echo "Module has probably not been built for this kernel." if ! test -d /usr/share/doc/openvswitch-datapath-source; then echo "Install the openvswitch-datapath-source package, then read" else echo "For instructions, read" fi echo "/usr/share/doc/openvswitch-datapath-source/README.Debian" fi set ovs_ctl ${1-start} --system-id=random if test X"$FORCE_COREFILES" != X; then set "$@" --force-corefiles="$FORCE_COREFILES" fi "@" || exit ?

ovs_ctl --protocol=gre enable-protocol

}

stop () { ovs_ctl stop }

case $1 in start) start ;; stop | force-stop) stop ;; reload | force-reload) # The OVS daemons keep up-to-date. ;; restart) stop start ;; status) ovs_ctl status ;; force-reload-kmod) start force-reload-kmod ;; load-kmod) load_kmod ;; *) echo "Usage: $0 {start|stop|restart|force-reload|status|force-stop|force-reload-kmod|load-kmod}" >&2 exit 1 ;; esac

exit 0