diff options
Diffstat (limited to 'rc.d')
-rwxr-xr-x | rc.d/init.d/network | 21 |
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 |