X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=debian%2Fopenvswitch-switch.init;h=ddd303256454e326f73a9456bc18e4fcf8505135;hb=1d63efc45b9ae5b723f9a8f0d81c7f002b48c39d;hp=301bc73d2264fc5535b3dec1614f77c626161199;hpb=8b6ff72912871a8101a8427be1c38941326332ad;p=sliver-openvswitch.git diff --git a/debian/openvswitch-switch.init b/debian/openvswitch-switch.init index 301bc73d2..ddd303256 100755 --- a/debian/openvswitch-switch.init +++ b/debian/openvswitch-switch.init @@ -35,6 +35,13 @@ if test X"$BRCOMPAT" = Xyes && test ! -x /usr/sbin/ovs-brcompatd; then log_warning_msg "ovs-brcompatd missing, disabling bridge compatibility" fi +network_interfaces () { + INTERFACES="/etc/network/interfaces" + [ -e "${INTERFACES}" ] || return + bridges=`awk '{ if ($1 == "allow-ovs") { print $2; } }' "${INTERFACES}"` + [ -n "${bridges}" ] && $1 --allow=ovs ${bridges} +} + ovs_ctl () { set /usr/share/openvswitch/scripts/ovs-ctl "$@" if test X"$BRCOMPAT" = Xyes; then @@ -72,9 +79,11 @@ start () { fi set "$@" $OVS_CTL_OPTS "$@" || exit $? + [ "$2" = "start" ] && network_interfaces ifup } stop () { + network_interfaces ifdown ovs_ctl stop }