aboutsummaryrefslogtreecommitdiffstats
path: root/package/hostapd
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-11-08 14:22:56 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-11-08 14:22:56 +0000
commit6905093fe482dca8c20d44aee9dc3e1883fc61d2 (patch)
tree32456f365b021ff17314a10592854ddb063de389 /package/hostapd
parente7340d0dcab29c7b8f98f7d8d9e3a0240946cc08 (diff)
downloadupstream-6905093fe482dca8c20d44aee9dc3e1883fc61d2.tar.gz
upstream-6905093fe482dca8c20d44aee9dc3e1883fc61d2.tar.bz2
upstream-6905093fe482dca8c20d44aee9dc3e1883fc61d2.zip
[package] hostapd: add code to prevent accidentally bridging non-wds sta mode interfaces
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28858 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/hostapd')
-rw-r--r--package/hostapd/files/wpa_supplicant.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/package/hostapd/files/wpa_supplicant.sh b/package/hostapd/files/wpa_supplicant.sh
index 6112517f37..1ab6c663e5 100644
--- a/package/hostapd/files/wpa_supplicant.sh
+++ b/package/hostapd/files/wpa_supplicant.sh
@@ -23,6 +23,15 @@ wpa_supplicant_setup_vif() {
config_set "$vif" bridge "$bridge"
}
+ local mode ifname wds
+ config_get mode "$vif" mode
+ config_get ifname "$vif" ifname
+ config_get_bool wds "$vif" wds 0
+ [ -z "$bridge" ] || [ "$mode" = ap ] || [ "$mode" = sta -a $wds -eq 1 ] || {
+ echo "wpa_supplicant_setup_vif($ifname): Refusing to bridge $mode mode interface"
+ return 1
+ }
+
case "$enc" in
*none*)
key_mgmt='NONE'