[dts] [PATCH] framework: enhance the tcpdump direction option parsing Some tcpdump versions (such as 4.9.0-5.el7) is providing help message about direction option with both '-P' and '-Q': " [ -Q|-P in|out|inout ]". This format cause option parse fail. This patch can enhance the direction option parsing and fix it.
Herbert Guan
herbert.guan at arm.com
Mon Nov 6 08:55:05 CET 2017
Signed-off-by: Herbert Guan <herbert.guan at arm.com>
---
framework/packet.py | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/framework/packet.py b/framework/packet.py
index 1907612..4ee51dd 100755
--- a/framework/packet.py
+++ b/framework/packet.py
@@ -787,14 +787,20 @@ def sniff_packets(intf, count=0, timeout=5, filters=[]):
sniff all packets for certain port in certain seconds
"""
param = ""
- direct_param = r"(\s+)\[ -(\w) in\|out\|inout \]"
+ direct_param = r"(\s+)\[ (\S+) in\|out\|inout \]"
tcpdump_help = subprocess.check_output("tcpdump -h; echo 0",
stderr=subprocess.STDOUT,
shell=True)
for line in tcpdump_help.split('\n'):
m = re.match(direct_param, line)
if m:
- param = "-" + m.group(2) + " in"
+ opt = re.search("-Q", m.group(2));
+ if opt:
+ param = "-Q" + " in"
+ else:
+ opt = re.search("-P", m.group(2));
+ if opt:
+ param = "-P" + " in"
if len(param) == 0:
print "tcpdump not support direction chioce!!!"
--
1.8.3.1
More information about the dts
mailing list