9 # bring up all defined profiles
10 for i
in $VDE_CONFIG; do
11 [ -e /etc
/vde
/$i ] && .
/etc
/vde
/$i
12 stat_busy
"Starting vde_switch $i"
13 # get options from profile
14 [ -n "$VDE_NUMPORTS" ] && OPTIONS
="-n $VDE_NUMPORTS"
15 [ "$VDE_HUB" = "yes" ] && OPTIONS
="$OPTIONS -x"
16 [ "$VDE_FSTP" = "yes" ] && OPTIONS
="$OPTIONS -F"
17 [ -n "$VDE_MAC" ] && OPTIONS
="$OPTIONS --macaddr $VDE_MAC"
18 [ -n "$VDE_PRIORITY" ] && OPTIONS
="$OPTIONS --priority $VDE_PRIORITY"
19 [ -n "$VDE_HASH" ] && OPTIONS
="$OPTIONS --hashsize $VDE_HASH"
20 [ -n "$VDE_SOCK" ] && OPTIONS
="$OPTIONS -s $VDE_SOCK"
21 [ -n "$VDE_SOCK_MODE" ] && OPTIONS
="$OPTIONS -m $VDE_SOCK_MODE"
22 [ -n "$VDE_SOCK_GROUP" ] && OPTIONS
="$OPTIONS -g $VDE_SOCK_GROUP"
23 [ -n "$VDE_MANAGEMENT_SOCK" ] && OPTIONS
="$OPTIONS -M $VDE_MANAGEMENT_SOCK"
24 [ -n "$VDE_MANAGEMENT_SOCK_MODE" ] && OPTIONS
="$OPTIONS --mgmtmode $VDE_MANAGEMENT_SOCK_MODE"
25 [ -n "$VDE_TAP" ] && OPTIONS
="$OPTIONS -t $VDE_TAP"
26 [ -n "$VDE_OPTIONS" ] && OPTIONS
="$OPTIONS $VDE_OPTIONS"
27 vde_switch
$OPTIONS -p /var
/run
/vde-
$i.pid
-daemon &>/dev
/null
28 [ -n "$VDE_SOCK" -a -n "$VDE_SOCK_GROUP" ] && chgrp
"$VDE_SOCK_GROUP" "$VDE_SOCK"
34 if [ "$SLIRP" = "yes" ]; then
35 stat_busy
"Starting slirpvde for $i"
36 [ "$SLIRP_DHCP" = "yes" ] && SP_OPTIONS
="-D"
37 [ -n "$SLIRP_NETWORK" ] && SP_OPTIONS
="$SP_OPTIONS -n $SLIRP_NETWORK"
38 [ -n "$SLIRP_OPTIONS" ] && SP_OPTIONS
="$SP_OPTIONS $SLIRP_OPTIONS"
39 [ -n "$VDE_SOCK" ] && SP_OPTIONS
="$SP_OPTIONS -s $VDE_SOCK"
40 [ -n "$VDE_SOCK_MODE" ] && SP_OPTIONS
="$SP_OPTIONS -m $VDE_SOCK_MODE"
41 [ -n "$VDE_SOCK_GROUP" ] && SP_OPTIONS
="$SP_OPTIONS -g $VDE_SOCK_GROUP"
42 slirpvde
$SP_OPTIONS -p /var
/run
/slirpvde-
$i.pid
-daemon &>/dev
/null
52 for i
in $VDE_CONNECTION; do
53 # connect specified vde_switches
54 if [ "$(grep ^vde_plug /etc/vde/$i)" ]; then
55 stat_busy
"Connecting VDE switches $i together..."
57 switch
="$(echo $j | grep ^vde_plug)"
58 [ -n "$switch" ] && (dpipe
$switch &)
70 # kill vde_plug if switches are connected
71 [ -n "$VDE_CONNECTION" ] && killall vde_plug
>/dev
/null
2>&1
72 for i
in $VDE_CONFIG; do
73 [ -e /etc
/vde
/$i ] && .
/etc
/vde
/$i
74 if [ "$SLIRP" = "yes" ]; then
75 stat_busy
"Stopping slirpvde for $i"
76 kill $
(cat /var
/run
/slirpvde-
$i.pid
) &> /dev
/null
82 rm /var
/run
/slirpvde-
$i.pid
&> /dev
/null
84 stat_busy
"Stopping vde_switch $i"
85 kill $
(cat /var
/run
/vde-
$i.pid
) &> /dev
/null
91 rm /var
/run
/vde-
$i.pid
&> /dev
/null
92 stat_busy
"Removing $i vde sockets"
93 rm -rf $VDE_SOCK $VDE_MANAGEMENT_SOCK
102 [ -e /var
/run
/vde
/gmon.out
] && rm /var
/run
/vde
/gmon.out
111 echo "usage: $0 {start|stop|restart}"