#!/bin/bash #============================================================================ # ${XEN_SCRIPT_DIR}/vif-bridge # # Script for configuring a vif in bridged mode. # The hotplugging system will call this script if it is specified either in # the device configuration given to Xend, or the default Xend configuration # in ${XEN_CONFIG_DIR}/xend-config.sxp. If the script is specified in # neither of those places, then this script is the default. # # Usage: # vif-bridge (add|remove|online|offline) # # Environment vars: # vif vif interface name (required). # XENBUS_PATH path to this device's details in the XenStore (required). # # Read from the store: # bridge bridge to add the vif to (optional). Defaults to searching for the # bridge itself. # ip list of IP networks for the vif, space-separated (optional). # # up: # Enslaves the vif interface to the bridge and adds iptables rules # for its ip addresses (if any). # # down: # Removes the vif interface from the bridge and removes the iptables # rules for its ip addresses (if any). #============================================================================ dir=$(dirname "$0") . "$dir/vif-common.sh" case "$command" in online) do_without_error ifconfig "$vif" up ;; offline) do_without_error ifconfig "$vif" down ;; esac log debug "Successful vif-core $command for $vif, bridge $bridge." if [ "$command" == "online" ] then success fi