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>
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