2 # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
3 # ex: ts=8 sw=4 sts=4 et filetype=sh
6 # bridge=<bridgename>:<ethnames>
8 # <ethnames> is a comma-separated list of physical (ethernet) interfaces
9 # bridge without parameters assumes bridge=br0:eth0
12 # return if bridge already parsed
13 [ -n "$bridgename" ] && return
15 # Check if bridge parameter is valid
16 if getarg bridge= >/dev/null ; then
17 command -v brctl >/dev/null 2>&1 || die "No 'brctl' installed"
24 set -- "$@" "${v%%:*}"
28 unset bridgename ethnames
30 0) bridgename=br0; ethnames=$iface ;;
31 1) die "bridge= requires two parameters" ;;
32 2) bridgename=$1; ethnames=$(str_replace "$2" "," " ") ;;
33 *) die "bridge= requires two parameters" ;;
37 unset bridgename ethnames
40 if [ -e /tmp/bond.info ]; then
42 if [ -n "$bondname" ] ; then
47 # Parse bridge for bridgename and ethnames
48 if bridge="$(getarg bridge)"; then
49 # Read bridge= parameters if they exist
50 if [ -n "$bridge" ]; then
53 # Simple default bridge
54 if [ -z "$bridgename" ]; then
58 echo "bridgename=$bridgename" > /tmp/bridge.info
59 echo "ethnames=\"$ethnames\"" >> /tmp/bridge.info