* [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.
@ 2017-11-06 7:55 Herbert Guan
0 siblings, 0 replies; only message in thread
From: Herbert Guan @ 2017-11-06 7:55 UTC (permalink / raw)
To: dts; +Cc: Herbert Guan
Signed-off-by: Herbert Guan <herbert.guan@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
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-11-06 7:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-06 7:55 [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
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).