tests: Update tshark wlan_mgmt compatibility code for new version
It looks like at least tshark 2.6.3 uses a different error message for unknown display filter fields: tshark: Neither "wlan_mgt.fixed.category_code" nor "4" are field or protocol names. and a different status exit code (2 instead of 1). Add a new handler for this combination to allow automatic wlan_mgt to wlan conversion to happen. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
68500d8159
commit
e384b156dc
1 changed files with 11 additions and 0 deletions
|
@ -70,6 +70,17 @@ def _run_tshark(filename, filter, display=None, wait=True):
|
|||
stderr=open('/dev/null', 'w'))
|
||||
out = cmd.communicate()[0]
|
||||
cmd.wait()
|
||||
if res == 2:
|
||||
if "tshark: Neither" in output[1] and "are field or protocol names" in output[1]:
|
||||
errors = output[1].split('\n')
|
||||
fields = []
|
||||
for f in errors:
|
||||
if f.startswith("tshark: Neither "):
|
||||
f = f.split(' ')[2].strip('"')
|
||||
if f:
|
||||
fields.append(f)
|
||||
continue
|
||||
raise UnknownFieldsException(fields)
|
||||
|
||||
return out
|
||||
|
||||
|
|
Loading…
Reference in a new issue