Ignore error when parsing Client row.
Explanation of bug (Why error wasn't being caught):
```
try:
...
except IndexError, ValueError:
# Only catches IndexError.
# ValueError is a *variable* holding the IndexError !
```
This commit is contained in:
@@ -193,7 +193,7 @@ class Airodump(object):
|
||||
# The current row corresponds to a "Client" (computer)
|
||||
try:
|
||||
client = Client(row)
|
||||
except IndexError, ValueError:
|
||||
except (IndexError, ValueError) as e:
|
||||
# Skip if we can't parse the client row
|
||||
continue
|
||||
|
||||
|
||||
13
py/Client.py
13
py/Client.py
@@ -21,15 +21,10 @@ class Client(object):
|
||||
5 BSSID, (Access Point's MAC address)
|
||||
6 Probed ESSIDs
|
||||
'''
|
||||
try:
|
||||
self.station = fields[0].strip()
|
||||
self.power = int(fields[3].strip())
|
||||
self.packets = int(fields[4].strip())
|
||||
self.bssid = fields[5].strip()
|
||||
except ValueError, e:
|
||||
print "\nValueError ({})".format(e)
|
||||
print "\twhile parsing {}".format(fields)
|
||||
raise e
|
||||
self.station = fields[0].strip()
|
||||
self.power = int(fields[3].strip())
|
||||
self.packets = int(fields[4].strip())
|
||||
self.bssid = fields[5].strip()
|
||||
|
||||
|
||||
def __str__(self):
|
||||
|
||||
Reference in New Issue
Block a user