diff --git a/roles/2-common/templates/iiab-startup.sh b/roles/2-common/templates/iiab-startup.sh index 012a32746..0b89d9251 100644 --- a/roles/2-common/templates/iiab-startup.sh +++ b/roles/2-common/templates/iiab-startup.sh @@ -5,8 +5,17 @@ if [ ! -f /etc/iiab/uuid ]; then uuidgen > /etc/iiab/uuid fi -# Experimental/Temporary workaround for WiFi "10SEC disease" +# Temporary promiscuous-mode workaround for WiFi "10SEC disease" # https://github.com/iiab/iiab/issues/638#issuecomment-355455454 -if grep -qi raspbian /etc/*release; then ip link set dev wlan0 promisc on; fi +if [[ $(grep -i raspbian /etc/*release) && + ($(grep "hostapd_enabled = False" /etc/iiab/config_vars.yml) || + ((! $(grep "hostapd_enabled = True" /etc/iiab/config_vars.yml)) && + $(grep "hostapd_enabled = False" /etc/iiab/iiab.ini) + ) + ) + ]]; +then + ip link set dev wlan0 promisc on +fi exit 0