aboutsummaryrefslogtreecommitdiffstats
path: root/rc.d
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2003-09-09 04:47:02 +0000
committerBill Nottingham <notting@redhat.com>2003-09-09 04:47:02 +0000
commitc91600dea4d59ce0812fe66e2688ad7f01e281a0 (patch)
treea17080dd8b57186dc24fec3b05b9da01e1b604f4 /rc.d
parent196aeeca3e1e15b24bd9b38af8eb9b159639d90b (diff)
downloadinitscripts-c91600dea4d59ce0812fe66e2688ad7f01e281a0.tar
initscripts-c91600dea4d59ce0812fe66e2688ad7f01e281a0.tar.gz
initscripts-c91600dea4d59ce0812fe66e2688ad7f01e281a0.tar.bz2
initscripts-c91600dea4d59ce0812fe66e2688ad7f01e281a0.tar.xz
initscripts-c91600dea4d59ce0812fe66e2688ad7f01e281a0.zip
bridging support (<dwmw2@redhat.com>)
Diffstat (limited to 'rc.d')
-rwxr-xr-xrc.d/init.d/network21
1 files changed, 15 insertions, 6 deletions
diff --git a/rc.d/init.d/network b/rc.d/init.d/network
index fabf2ff4..3cbf9c7c 100755
--- a/rc.d/init.d/network
+++ b/rc.d/init.d/network
@@ -98,12 +98,14 @@ case "$1" in
cipeinterfaces=""
xdslinterfaces=""
+ bridgeinterfaces=""
# bring up all other interfaces configured to come up at boot time
for i in $interfaces; do
eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
eval $(LANG=C fgrep "SLAVE=" ifcfg-$i)
+ eval $(LANG=C fgrep "BRIDGE=" ifcfg-$i)
if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi
@@ -116,6 +118,11 @@ case "$1" in
continue
fi
+ if [ -n "$BRIDGE" ]; then
+ bridgeinterfaces="$bridgeinterfaces $DEVICE"
+ continue
+ fi
+
if [ "$SLAVE" = "yes" ]; then
continue
fi
@@ -134,7 +141,7 @@ case "$1" in
done
# Bring up xDSL and CIPE interfaces
- for i in $xdslinterfaces $cipeinterfaces ; do
+ for i in $bridgeinterfaces $xdslinterfaces $cipeinterfaces ; do
if ! LANG=C egrep -L "^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i >/dev/null 2>&1 ; then
# If we're in confirmation mode, get user confirmation.
if [ -f /var/run/confirm ]; then
@@ -186,22 +193,24 @@ case "$1" in
fi
cipeinterfaces=""
- bondinterfaces=""
xdslinterfaces=""
+ bridgeinterfaces=""
# get list of bonding, cipe, and xdsl interfaces
for i in $interfaces; do
eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
+ eval $(LANG=C fgrep "BRIDGE=" ifcfg-$i)
+
if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi
if [ "${DEVICE##cipcb}" != "$DEVICE" ] ; then
cipeinterfaces="$cipeinterfaces $DEVICE"
continue
fi
- if [ "${DEVICE##bond}" != "$DEVICE" ] ; then
- bondinterfaces="$bondinterfaces $DEVICE"
- continue
+ if [ -n "$BRIDGE" ]; then
+ bridgeinterfaces="$bridgeinterfaces $DEVICE"
+ continue
fi
if [ "$TYPE" = "xDSL" ]; then
xdslinterfaces="$xdslinterfaces $DEVICE"
@@ -209,7 +218,7 @@ case "$1" in
fi
done
- for i in $bondinterfaces $cipeinterfaces $xdslinterfaces ; do
+ for i in $cipeinterfaces $xdslinterfaces $bridgeinterfaces ; do
eval $(fgrep "DEVICE=" ifcfg-$i)
if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi