summaryrefslogtreecommitdiffstats
path: root/tester
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2021-09-07 14:09:31 +1000
committerChris Johns <chrisj@rtems.org>2021-09-09 18:33:54 +1000
commitc73fa1691c94541e3b3df30b07333b582b4cdd38 (patch)
tree87ebb76db954b6b00ccfa442724b61885f7b57d3 /tester
parentmisc/tftprpoxy: Correctly scale the protocol timeout (diff)
downloadrtems-tools-c73fa1691c94541e3b3df30b07333b582b4cdd38.tar.bz2
tester/telnet: Only reopen once a second
- Limit the reopen to once a second - Make sure the socket is closed when reopening
Diffstat (limited to 'tester')
-rw-r--r--tester/rt/telnet.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/tester/rt/telnet.py b/tester/rt/telnet.py
index 4e5e84a..919aa86 100644
--- a/tester/rt/telnet.py
+++ b/tester/rt/telnet.py
@@ -36,6 +36,7 @@ import errno
import os
import sys
import telnetlib
+import time
from rtemstoolkit import error
from rtemstoolkit import host
@@ -71,13 +72,20 @@ class tty:
return s
def _reopen(self):
+ if self.conn:
+ self.conn.close()
+ time.sleep(1)
try:
self.conn.open(self.host, self.port, self.timeout)
except IOError as ioe:
+ if self.conn:
+ self.conn.close()
raise error.general('opening telnet: %s:%d: %s' % (self.host,
self.port,
ioe))
except:
+ if self.conn:
+ self.conn.close()
raise error.general('opening telnet: %s:%d: unknown' % (self.host,
self.port))
@@ -98,7 +106,7 @@ class tty:
if ioe.errno == errno.ECONNREFUSED:
reopen = True
data = ''
- except EOFError:
+ except EOFError as ose:
reopen = True
data = ''
if reopen: