summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2011-03-24 04:28:38 +0000
committerGreg Clayton <gclayton@apple.com>2011-03-24 04:28:38 +0000
commit1cb6496eb024249cd9b67e9c53808553128dd0e7 (patch)
tree2ebad6376e8dfd2960212fd3c4fe4743bfc7d1b1 /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
parenta75d158c419435a7097d96de630ddc43d25154ad (diff)
downloadbcm5719-llvm-1cb6496eb024249cd9b67e9c53808553128dd0e7.tar.gz
bcm5719-llvm-1cb6496eb024249cd9b67e9c53808553128dd0e7.zip
Did a lot more work on abtracting and organizing the platforms.
On Mac OS X we now have 3 platforms: PlatformDarwin - must be subclassed to fill in the missing pure virtual funcs but this implements all the common functionality between remote-macosx and remote-ios. It also allows for another platform to be used (remote-gdb-server for now) when doing remote connections. Keeping this pluggable will allow for flexibility. PlatformMacOSX - Now implements both local and remote macosx desktop platforms. PlatformRemoteiOS - Remote only iOS that knows how to locate SDK files in the cached SDK locations on the host. A new agnostic platform has been created: PlatformRemoteGDBServer - this implements the platform using the GDB remote protocol and uses the built in lldb_private::Host static functions to implement many queries. llvm-svn: 128193
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
index 4e0b24ddea0..66ddc77bc95 100644
--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
+++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
@@ -35,6 +35,7 @@ public:
bool
GetPacketAndSendResponse (const lldb_private::TimeValue* timeout_ptr,
+ lldb_private::Error &error,
bool &interrupt,
bool &quit);
@@ -44,23 +45,26 @@ public:
return true;
}
- virtual bool
- GetSendAcks ()
- {
- return m_send_acks;
- }
+ // After connecting, do a little handshake with the client to make sure
+ // we are at least communicating
+ bool
+ HandshakeWithClient (lldb_private::Error *error_ptr);
protected:
lldb::thread_t m_async_thread;
- bool m_send_acks;
size_t
SendUnimplementedResponse ();
+ size_t
+ SendOKResponse ();
bool
Handle_qHostInfo ();
+ bool
+ Handle_QStartNoAckMode ();
+
private:
//------------------------------------------------------------------
// For GDBRemoteCommunicationServer only
OpenPOWER on IntegriCloud