diff options
Diffstat (limited to 'packaging/qemu-ifup')
-rw-r--r-- | packaging/qemu-ifup | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/packaging/qemu-ifup b/packaging/qemu-ifup new file mode 100644 index 000000000..f556ec7e5 --- /dev/null +++ b/packaging/qemu-ifup @@ -0,0 +1,23 @@ +#!/bin/sh + +echo 'config qemu network with bridge for ' $* + +# If bridge is not specified, try device with default route. +bridge=$2 +if [ -z "$bridge" ]; then + bridge=$(ip route list | awk '/^default / { print $NF }') +fi + +# Exit if $bridge is not a bridge. Exit with 0 status +# so qemu-dm process is not terminated. No networking in +# vm is bad but not catastrophic. The vm could still run +# cpu and disk IO workloads. +# Include an useful error message in qemu-dm log file. +if [ ! -e "/sys/class/net/${bridge}/bridge" ] +then + echo "WARNING! ${bridge} is not a bridge. qemu-ifup exiting. VM may not have a functioning networking stack." + exit 0 +fi + +ifconfig $1 0.0.0.0 up +brctl addif $bridge $1 || true |