diff options
author | Chris Johns <chrisj@rtems.org> | 2019-09-03 16:57:56 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2019-09-05 09:47:01 +1000 |
commit | 89442b7c0ca75c214580046f70c5c94bdcf8dedb (patch) | |
tree | 0dbb8069987d1b9d78a8088ea8a18f9a56e00da9 /tester/rt/tftpy/TftpServer.py | |
parent | 71929ce0d63779eb7610e6323afbf2d15bba6781 (diff) |
tester/tftp: Handle ctl-C when active.
Diffstat (limited to '')
-rw-r--r-- | tester/rt/tftpy/TftpServer.py | 19 |
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: |