WirelessLan/plugin.py: - properly escape spaces inside an SSID name when returning...
authoracid-burn <acidburn@opendreambox.org>
Mon, 9 Nov 2009 16:38:21 +0000 (17:38 +0100)
committeracid-burn <acidburn@opendreambox.org>
Mon, 9 Nov 2009 16:38:21 +0000 (17:38 +0100)
lib/python/Plugins/SystemPlugins/WirelessLan/plugin.py

index 74520dc..9f6a13f 100755 (executable)
@@ -276,8 +276,15 @@ def configStrings(iface):
                return "        pre-up /usr/sbin/wpa_supplicant -i"+iface+" -c/etc/wpa_supplicant.conf -B -Dralink\n    post-down wpa_cli terminate"
        if driver == 'madwifi':
                if config.plugins.wlan.essid.value == "hidden...":
-                       return "        pre-up iwconfig "+iface+" essid "+config.plugins.wlan.hiddenessid.value+"\n     pre-up /usr/sbin/wpa_supplicant -i"+iface+" -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate"
-               return "        pre-up iwconfig "+iface+" essid "+config.plugins.wlan.essid.value+"\n   pre-up /usr/sbin/wpa_supplicant -i"+iface+" -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate"
+                       if ' ' in config.plugins.wlan.hiddenessid.value:
+                               return '        pre-up iwconfig '+iface+' essid "'+config.plugins.wlan.hiddenessid.value+'"\n   pre-up /usr/sbin/wpa_supplicant -i'+iface+' -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate'
+                       else:
+                               return '        pre-up iwconfig '+iface+' essid '+config.plugins.wlan.hiddenessid.value+'\n     pre-up /usr/sbin/wpa_supplicant -i'+iface+' -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate'
+               else:
+                       if ' ' in config.plugins.wlan.essid.value:
+                               return '        pre-up iwconfig '+iface+' essid "'+config.plugins.wlan.essid.value+'"\n pre-up /usr/sbin/wpa_supplicant -i'+iface+' -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate'
+                       else:
+                               return '        pre-up iwconfig '+iface+' essid '+config.plugins.wlan.essid.value+'\n   pre-up /usr/sbin/wpa_supplicant -i'+iface+' -c/etc/wpa_supplicant.conf -B -dd -Dmadwifi\n       post-down wpa_cli terminate'
        if driver == 'zydas':
                return "        pre-up /usr/sbin/wpa_supplicant -i"+iface+" -c/etc/wpa_supplicant.conf -B -dd -Dzydas\n post-down wpa_cli terminate"