summaryrefslogtreecommitdiff
path: root/tester
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2019-09-03 16:57:56 +1000
committerChris Johns <chrisj@rtems.org>2019-09-05 09:47:01 +1000
commit89442b7c0ca75c214580046f70c5c94bdcf8dedb (patch)
tree0dbb8069987d1b9d78a8088ea8a18f9a56e00da9 /tester
parent71929ce0d63779eb7610e6323afbf2d15bba6781 (diff)
tester/tftp: Handle ctl-C when active.
Diffstat (limited to 'tester')
-rw-r--r--tester/rt/tftpy/TftpServer.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/tester/rt/tftpy/TftpServer.py b/tester/rt/tftpy/TftpServer.py
index 8dc6d78..2789322 100644
--- a/tester/rt/tftpy/TftpServer.py
+++ b/tester/rt/tftpy/TftpServer.py
@@ -168,25 +168,30 @@ class TftpServer(TftpSession):
if not key in self.sessions:
log.debug("Creating new server context for "
"session key = %s" % key)
- self.sessions[key] = TftpContextServer(raddress,
- rport,
- timeout,
- self.root,
- self.dyn_file_func,
- self.upload_open)
try:
+ self.sessions[key] = TftpContextServer(raddress,
+ rport,
+ timeout,
+ self.root,
+ self.dyn_file_func,
+ self.upload_open)
self.sessions[key].start(buffer)
except TftpException as err:
deletion_list.append(key)
log.error("Fatal exception thrown from "
"session %s: %s" % (key, str(err)))
+ except KeyboardInterrupt:
+ pass
+ except:
+ deletion_list.append(key)
+ log.error("Fatal exception thrown from "
+ "session %s: %s" % (key, str(err)))
else:
log.warning("received traffic on main socket for "
"existing session??")
log.info("Currently handling these sessions:")
for session_key, session in list(self.sessions.items()):
log.info(" %s" % session)
-
else:
# Must find the owner of this traffic.
for key in self.sessions: