wireless scanning freezes due to one essid
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
wicd |
Fix Released
|
High
|
David Paleino |
Bug Description
Im using Wicd 1.7.1~b3 on Debian Sid (with xfce 4.8).
After this morning, wicd can't find any wireless networks on my system. It freezes "scanning" (i.e., scanning never ends).
This is the log info:
-------
2012/02/01 11:26:53 :: Exception in thread Thread-1:
2012/02/01 11:26:53 :: Traceback (most recent call last):
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: self.run()
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: self.__
2012/02/01 11:26:53 :: File "/usr/share/
2012/02/01 11:26:53 :: self._sync_scan()
2012/02/01 11:26:53 :: File "/usr/share/
2012/02/01 11:26:53 :: scan = self.wifi.
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: aps = wiface.
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: return func(self, *args, **kwargs)
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: entry = self._ParseAcce
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: ap['essid'] = misc.to_
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: x = ''.join(begin + map(lambda c: chr(int(c, 16)), chars) + end)
2012/02/01 11:26:53 :: File "/usr/lib/
2012/02/01 11:26:53 :: x = ''.join(begin + map(lambda c: chr(int(c, 16)), chars) + end)
2012/02/01 11:26:53 :: ValueError: invalid literal for int() with base 16: 'A0el'
The involved section in misc.py file says:
-------
# FIXME: this is a workaround to correctly parse utf-8
# encoded ESSIDs returned by iwlist -- python replaces
# \xNN with \\xNN, thus losing the characters :/.
# It should really be handled in a better way. Maybe
# using index()/find()?
if '\\' in x:
begin = x.split('\\x')[:1]
chars = x.split('\\x')[1:]
end = [chars[-1][2:]]
chars[-1] = chars[-1][:2]
x = ''.join(begin + map(lambda c: chr(int(c, 16)), chars) + end)
And the problem seems to be a wireless network with an essid that can not be handled. This is the (summary of the) output of iwlist:
wlan0 Scan completed :
Cell 01 - Address: NEIGHBORSMACD
Cell 03 - Address: MYMACD
The problem seems to be that the essid "CARP,\
Sorry for my poor english.
Changed in wicd: | |
status: | New → Confirmed |
Changed in wicd: | |
status: | Fix Committed → Fix Released |
Oh. Another 1.7.1 blocker. :(
I perfectly understood the issue -- and I'm looking for a solution.