summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/base-files/files/etc/config/network1
-rwxr-xr-xpackage/base-files/files/lib/network/config.sh2
2 files changed, 3 insertions, 0 deletions
diff --git a/package/base-files/files/etc/config/network b/package/base-files/files/etc/config/network
index a35fd2ef9..5d380d1e8 100644
--- a/package/base-files/files/etc/config/network
+++ b/package/base-files/files/etc/config/network
@@ -12,3 +12,4 @@ config interface lan
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
+ option stp on
diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh
index 81b60f747..e750c8a41 100755
--- a/package/base-files/files/lib/network/config.sh
+++ b/package/base-files/files/lib/network/config.sh
@@ -88,6 +88,7 @@ prepare_interface() {
# Setup bridging
config_get iftype "$config" type
+ config_get stp "$config" stp
case "$iftype" in
bridge)
[ -x /usr/sbin/brctl ] && {
@@ -99,6 +100,7 @@ prepare_interface() {
$DEBUG brctl setfd "br-$config" 0
$DEBUG ifconfig "br-$config" up
$DEBUG brctl addif "br-$config" "$iface"
+ $DEBUG brctl stp "br-$config" ${stp:-on}
# Creating the bridge here will have triggered a hotplug event, which will
# result in another setup_interface() call, so we simply stop processing
# the current event at this point.