about summary refs log tree commit diff stats
path: root/miasm2/analysis/gdbserver.py
diff options
context:
space:
mode:
Diffstat (limited to 'miasm2/analysis/gdbserver.py')
-rw-r--r--miasm2/analysis/gdbserver.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/miasm2/analysis/gdbserver.py b/miasm2/analysis/gdbserver.py
index a930cc88..cbc8fe8d 100644
--- a/miasm2/analysis/gdbserver.py
+++ b/miasm2/analysis/gdbserver.py
@@ -134,7 +134,8 @@ class GdbServer(object):
             elif msg_type == "k":
                 # Kill
                 self.sock.close()
-                exit(1)
+                self.send_queue = []
+                self.sock = None
 
             elif msg_type == "!":
                 # Extending debugging will be used
@@ -245,6 +246,12 @@ class GdbServer(object):
                         self.send_queue.append("S05")
                     else:
                         raise NotImplementedError("Unknown Except")
+                elif isinstance(ret, debugging.DebugBreakpointTerminate):
+                    # Connexion should close, but keep it running as a TRAP
+                    # The connexion will be close on instance destruction
+                    print ret
+                    self.status = "S05"
+                    self.send_queue.append("S05")
                 else:
                     raise NotImplementedError()