LLDB mainline
|
#include <GDBRemoteCommunicationClient.h>
Public Member Functions | |
GDBRemoteCommunicationClient () | |
~GDBRemoteCommunicationClient () override | |
bool | HandshakeWithServer (Status *error_ptr) |
bool | GetThreadSuffixSupported () |
bool | QueryNoAckModeSupported () |
void | GetListThreadsInStopReplySupported () |
lldb::pid_t | GetCurrentProcessID (bool allow_lazy=true) |
bool | LaunchGDBServer (const char *remote_accept_hostname, lldb::pid_t &pid, uint16_t &port, std::string &socket_name) |
size_t | QueryGDBServer (std::vector< std::pair< uint16_t, std::string > > &connection_urls) |
bool | KillSpawnedProcess (lldb::pid_t pid) |
llvm::Error | LaunchProcess (const Args &args) |
Launch the process using the provided arguments. | |
int | SendEnvironmentPacket (char const *name_equal_value) |
Sends a "QEnvironment:NAME=VALUE" packet that will build up the environment that will get used when launching an application in conjunction with the 'A' packet. | |
int | SendEnvironment (const Environment &env) |
int | SendLaunchArchPacket (const char *arch) |
int | SendLaunchEventDataPacket (const char *data, bool *was_supported=nullptr) |
int | SendStdinNotification (const char *data, size_t data_len) |
Sends a GDB remote protocol 'I' packet that delivers stdin data to the remote process. | |
int | SetSTDIN (const FileSpec &file_spec) |
Sets the path to use for stdin/out/err for a process that will be launched with the 'A' packet. | |
int | SetSTDOUT (const FileSpec &file_spec) |
int | SetSTDERR (const FileSpec &file_spec) |
int | SetDisableASLR (bool enable) |
Sets the disable ASLR flag to enable for a process that will be launched with the 'A' packet. | |
int | SetDetachOnError (bool enable) |
Sets the DetachOnError flag to enable for the process controlled by the stub. | |
int | SetWorkingDir (const FileSpec &working_dir) |
Sets the working directory to path for a process that will be launched with the 'A' packet for non platform based connections. | |
bool | GetWorkingDir (FileSpec &working_dir) |
Gets the current working directory of a remote platform GDB server. | |
lldb::addr_t | AllocateMemory (size_t size, uint32_t permissions) |
bool | DeallocateMemory (lldb::addr_t addr) |
Status | Detach (bool keep_stopped, lldb::pid_t pid=LLDB_INVALID_PROCESS_ID) |
Status | GetMemoryRegionInfo (lldb::addr_t addr, MemoryRegionInfo &range_info) |
std::optional< uint32_t > | GetWatchpointSlotCount () |
std::optional< bool > | GetWatchpointReportedAfter () |
const ArchSpec & | GetHostArchitecture () |
std::chrono::seconds | GetHostDefaultPacketTimeout () |
const ArchSpec & | GetProcessArchitecture () |
bool | GetProcessStandaloneBinary (UUID &uuid, lldb::addr_t &value, bool &value_is_offset) |
std::vector< lldb::addr_t > | GetProcessStandaloneBinaries () |
void | GetRemoteQSupported () |
bool | GetVContSupported (char flavor) |
bool | GetpPacketSupported (lldb::tid_t tid) |
bool | GetxPacketSupported () |
bool | GetVAttachOrWaitSupported () |
bool | GetSyncThreadStateSupported () |
void | ResetDiscoverableSettings (bool did_exec) |
bool | GetHostInfo (bool force=false) |
bool | GetDefaultThreadId (lldb::tid_t &tid) |
llvm::VersionTuple | GetOSVersion () |
llvm::VersionTuple | GetMacCatalystVersion () |
std::optional< std::string > | GetOSBuildString () |
std::optional< std::string > | GetOSKernelDescription () |
ArchSpec | GetSystemArchitecture () |
lldb_private::AddressableBits | GetAddressableBits () |
bool | GetHostname (std::string &s) |
lldb::addr_t | GetShlibInfoAddr () |
bool | GetProcessInfo (lldb::pid_t pid, ProcessInstanceInfo &process_info) |
uint32_t | FindProcesses (const ProcessInstanceInfoMatch &process_match_info, ProcessInstanceInfoList &process_infos) |
bool | GetUserName (uint32_t uid, std::string &name) |
bool | GetGroupName (uint32_t gid, std::string &name) |
bool | HasFullVContSupport () |
bool | HasAnyVContSupport () |
bool | GetStopReply (StringExtractorGDBRemote &response) |
bool | GetThreadStopInfo (lldb::tid_t tid, StringExtractorGDBRemote &response) |
bool | SupportsGDBStoppointPacket (GDBStoppointType type) |
uint8_t | SendGDBStoppointTypePacket (GDBStoppointType type, bool insert, lldb::addr_t addr, uint32_t length, std::chrono::seconds interrupt_timeout) |
void | TestPacketSpeed (const uint32_t num_packets, uint32_t max_send, uint32_t max_recv, uint64_t recv_amount, bool json, Stream &strm) |
bool | SendSpeedTestPacket (uint32_t send_size, uint32_t recv_size) |
std::optional< PidTid > | SendSetCurrentThreadPacket (uint64_t tid, uint64_t pid, char op) |
bool | SetCurrentThread (uint64_t tid, lldb::pid_t pid=LLDB_INVALID_PROCESS_ID) |
bool | SetCurrentThreadForRun (uint64_t tid, lldb::pid_t pid=LLDB_INVALID_PROCESS_ID) |
bool | GetQXferAuxvReadSupported () |
void | EnableErrorStringInPacket () |
bool | GetQXferLibrariesReadSupported () |
bool | GetQXferLibrariesSVR4ReadSupported () |
uint64_t | GetRemoteMaxPacketSize () |
bool | GetEchoSupported () |
bool | GetQPassSignalsSupported () |
bool | GetAugmentedLibrariesSVR4ReadSupported () |
bool | GetQXferFeaturesReadSupported () |
bool | GetQXferMemoryMapReadSupported () |
bool | GetQXferSigInfoReadSupported () |
bool | GetMultiprocessSupported () |
LazyBool | SupportsAllocDeallocMemory () |
std::vector< std::pair< lldb::pid_t, lldb::tid_t > > | GetCurrentProcessAndThreadIDs (bool &sequence_mutex_unavailable) |
size_t | GetCurrentThreadIDs (std::vector< lldb::tid_t > &thread_ids, bool &sequence_mutex_unavailable) |
lldb::user_id_t | OpenFile (const FileSpec &file_spec, File::OpenOptions flags, mode_t mode, Status &error) |
bool | CloseFile (lldb::user_id_t fd, Status &error) |
std::optional< GDBRemoteFStatData > | FStat (lldb::user_id_t fd) |
std::optional< GDBRemoteFStatData > | Stat (const FileSpec &file_spec) |
lldb::user_id_t | GetFileSize (const FileSpec &file_spec) |
void | AutoCompleteDiskFileOrDirectory (CompletionRequest &request, bool only_dir) |
Status | GetFilePermissions (const FileSpec &file_spec, uint32_t &file_permissions) |
Status | SetFilePermissions (const FileSpec &file_spec, uint32_t file_permissions) |
uint64_t | ReadFile (lldb::user_id_t fd, uint64_t offset, void *dst, uint64_t dst_len, Status &error) |
uint64_t | WriteFile (lldb::user_id_t fd, uint64_t offset, const void *src, uint64_t src_len, Status &error) |
Status | CreateSymlink (const FileSpec &src, const FileSpec &dst) |
Status | Unlink (const FileSpec &file_spec) |
Status | MakeDirectory (const FileSpec &file_spec, uint32_t mode) |
bool | GetFileExists (const FileSpec &file_spec) |
Status | RunShellCommand (llvm::StringRef command, const FileSpec &working_dir, int *status_ptr, int *signo_ptr, std::string *command_output, const Timeout< std::micro > &timeout) |
bool | CalculateMD5 (const FileSpec &file_spec, uint64_t &high, uint64_t &low) |
lldb::DataBufferSP | ReadRegister (lldb::tid_t tid, uint32_t reg_num) |
lldb::DataBufferSP | ReadAllRegisters (lldb::tid_t tid) |
bool | WriteRegister (lldb::tid_t tid, uint32_t reg_num, llvm::ArrayRef< uint8_t > data) |
bool | WriteAllRegisters (lldb::tid_t tid, llvm::ArrayRef< uint8_t > data) |
bool | SaveRegisterState (lldb::tid_t tid, uint32_t &save_id) |
bool | RestoreRegisterState (lldb::tid_t tid, uint32_t save_id) |
bool | SyncThreadState (lldb::tid_t tid) |
const char * | GetGDBServerProgramName () |
uint32_t | GetGDBServerProgramVersion () |
bool | AvoidGPackets (ProcessGDBRemote *process) |
StructuredData::ObjectSP | GetThreadsInfo () |
bool | GetThreadExtendedInfoSupported () |
bool | GetLoadedDynamicLibrariesInfosSupported () |
bool | GetSharedCacheInfoSupported () |
bool | GetDynamicLoaderProcessStateSupported () |
bool | GetMemoryTaggingSupported () |
bool | UsesNativeSignals () |
lldb::DataBufferSP | ReadMemoryTags (lldb::addr_t addr, size_t len, int32_t type) |
Status | WriteMemoryTags (lldb::addr_t addr, size_t len, int32_t type, const std::vector< uint8_t > &tags) |
std::optional< QOffsets > | GetQOffsets () |
Use qOffsets to query the offset used when relocating the target executable. | |
bool | GetModuleInfo (const FileSpec &module_file_spec, const ArchSpec &arch_spec, ModuleSpec &module_spec) |
std::optional< std::vector< ModuleSpec > > | GetModulesInfo (llvm::ArrayRef< FileSpec > module_file_specs, const llvm::Triple &triple) |
llvm::Expected< std::string > | ReadExtFeature (llvm::StringRef object, llvm::StringRef annex) |
void | ServeSymbolLookups (lldb_private::Process *process) |
Status | SendSignalsToIgnore (llvm::ArrayRef< int32_t > signals) |
const std::string & | GetServerSupportedFeatures () const |
Return the feature set supported by the gdb-remote server. | |
lldb_private::StructuredData::Array * | GetSupportedStructuredDataPlugins () |
Return the array of async JSON packet types supported by the remote. | |
Status | ConfigureRemoteStructuredData (llvm::StringRef type_name, const StructuredData::ObjectSP &config_sp) |
Configure a StructuredData feature on the remote end. | |
llvm::Expected< TraceSupportedResponse > | SendTraceSupported (std::chrono::seconds interrupt_timeout) |
llvm::Error | SendTraceStart (const llvm::json::Value &request, std::chrono::seconds interrupt_timeout) |
llvm::Error | SendTraceStop (const TraceStopRequest &request, std::chrono::seconds interrupt_timeout) |
llvm::Expected< std::string > | SendTraceGetState (llvm::StringRef type, std::chrono::seconds interrupt_timeout) |
llvm::Expected< std::vector< uint8_t > > | SendTraceGetBinaryData (const TraceGetBinaryDataRequest &request, std::chrono::seconds interrupt_timeout) |
bool | GetSaveCoreSupported () const |
llvm::Expected< int > | KillProcess (lldb::pid_t pid) |
![]() | |
GDBRemoteClientBase (const char *comm_name) | |
bool | SendAsyncSignal (int signo, std::chrono::seconds interrupt_timeout) |
bool | Interrupt (std::chrono::seconds interrupt_timeout) |
lldb::StateType | SendContinuePacketAndWaitForResponse (ContinueDelegate &delegate, const UnixSignals &signals, llvm::StringRef payload, std::chrono::seconds interrupt_timeout, StringExtractorGDBRemote &response) |
PacketResult | SendPacketAndWaitForResponse (llvm::StringRef payload, StringExtractorGDBRemote &response, std::chrono::seconds interrupt_timeout=std::chrono::seconds(0)) |
PacketResult | ReadPacketWithOutputSupport (StringExtractorGDBRemote &response, Timeout< std::micro > timeout, bool sync_on_timeout, llvm::function_ref< void(llvm::StringRef)> output_callback) |
PacketResult | SendPacketAndReceiveResponseWithOutputSupport (llvm::StringRef payload, StringExtractorGDBRemote &response, std::chrono::seconds interrupt_timeout, llvm::function_ref< void(llvm::StringRef)> output_callback) |
![]() | |
GDBRemoteCommunication () | |
~GDBRemoteCommunication () override | |
PacketResult | GetAck () |
size_t | SendAck () |
size_t | SendNack () |
char | CalculcateChecksum (llvm::StringRef payload) |
PacketType | CheckForPacket (const uint8_t *src, size_t src_len, StringExtractorGDBRemote &packet) |
bool | GetSendAcks () |
std::chrono::seconds | SetPacketTimeout (std::chrono::seconds packet_timeout) |
std::chrono::seconds | GetPacketTimeout () const |
Status | StartDebugserverProcess (const char *url, Platform *platform, ProcessLaunchInfo &launch_info, uint16_t *port, const Args *inferior_args, int pass_comm_fd) |
void | DumpHistory (Stream &strm) |
void | SetPacketRecorder (repro::PacketRecorder *recorder) |
![]() | |
Communication () | |
Construct the Communication object. | |
virtual | ~Communication () |
Destructor. | |
virtual void | Clear () |
lldb::ConnectionStatus | Connect (const char *url, Status *error_ptr) |
Connect using the current connection by passing url to its connect function. | |
virtual lldb::ConnectionStatus | Disconnect (Status *error_ptr=nullptr) |
Disconnect the communications connection if one is currently connected. | |
bool | IsConnected () const |
Check if the connection is valid. | |
bool | HasConnection () const |
lldb_private::Connection * | GetConnection () |
virtual size_t | Read (void *dst, size_t dst_len, const Timeout< std::micro > &timeout, lldb::ConnectionStatus &status, Status *error_ptr) |
Read bytes from the current connection. | |
size_t | Write (const void *src, size_t src_len, lldb::ConnectionStatus &status, Status *error_ptr) |
The actual write function that attempts to write to the communications protocol. | |
size_t | WriteAll (const void *src, size_t src_len, lldb::ConnectionStatus &status, Status *error_ptr) |
Repeatedly attempt writing until either src_len bytes are written or a permanent failure occurs. | |
virtual void | SetConnection (std::unique_ptr< Connection > connection) |
Sets the connection that it to be used by this class. | |
bool | GetCloseOnEOF () const |
void | SetCloseOnEOF (bool b) |
![]() | |
Broadcaster (lldb::BroadcasterManagerSP manager_sp, std::string name) | |
Construct with a broadcaster with a name. | |
virtual | ~Broadcaster () |
Destructor. | |
void | CheckInWithManager () |
void | BroadcastEvent (lldb::EventSP &event_sp) |
Broadcast an event which has no associated data. | |
void | BroadcastEventIfUnique (lldb::EventSP &event_sp) |
void | BroadcastEvent (uint32_t event_type, const lldb::EventDataSP &event_data_sp) |
void | BroadcastEvent (uint32_t event_type, EventData *event_data=nullptr) |
void | BroadcastEventIfUnique (uint32_t event_type, EventData *event_data=nullptr) |
void | Clear () |
virtual void | AddInitialEventsToListener (const lldb::ListenerSP &listener_sp, uint32_t requested_events) |
uint32_t | AddListener (const lldb::ListenerSP &listener_sp, uint32_t event_mask) |
Listen for any events specified by event_mask. | |
const std::string & | GetBroadcasterName () |
Get this broadcaster's name. | |
bool | GetEventNames (Stream &s, const uint32_t event_mask, bool prefix_with_broadcaster_name) const |
Get the event name(s) for one or more event bits. | |
void | SetEventName (uint32_t event_mask, const char *name) |
Set the name for an event bit. | |
const char * | GetEventName (uint32_t event_mask) const |
bool | EventTypeHasListeners (uint32_t event_type) |
bool | RemoveListener (const lldb::ListenerSP &listener_sp, uint32_t event_mask=UINT32_MAX) |
Removes a Listener from this broadcasters list and frees the event bits specified by event_mask that were previously acquired by listener (assuming listener was listening to this object) for other listener objects to use. | |
bool | HijackBroadcaster (const lldb::ListenerSP &listener_sp, uint32_t event_mask=UINT32_MAX) |
Provides a simple mechanism to temporarily redirect events from broadcaster. | |
bool | IsHijackedForEvent (uint32_t event_mask) |
void | RestoreBroadcaster () |
Restore the state of the Broadcaster from a previous hijack attempt. | |
virtual ConstString & | GetBroadcasterClass () const |
This needs to be filled in if you are going to register the broadcaster with the broadcaster manager and do broadcaster class matching. | |
lldb::BroadcasterManagerSP | GetManager () |
void | SetPrimaryListener (lldb::ListenerSP listener_sp) |
lldb::ListenerSP | GetPrimaryListener () |
Private Member Functions | |
GDBRemoteCommunicationClient (const GDBRemoteCommunicationClient &)=delete | |
const GDBRemoteCommunicationClient & | operator= (const GDBRemoteCommunicationClient &)=delete |
Definition at line 60 of file GDBRemoteCommunicationClient.h.
GDBRemoteCommunicationClient::GDBRemoteCommunicationClient | ( | ) |
Definition at line 59 of file GDBRemoteCommunicationClient.cpp.
|
override |
Definition at line 79 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Communication::Disconnect(), and lldb_private::Communication::IsConnected().
|
privatedelete |
addr_t GDBRemoteCommunicationClient::AllocateMemory | ( | size_t | size, |
uint32_t | permissions | ||
) |
Definition at line 1436 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetHexMaxU64(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_INVALID_ADDRESS, m_supports_alloc_dealloc_memory, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoAllocateMemory().
void GDBRemoteCommunicationClient::AutoCompleteDiskFileOrDirectory | ( | CompletionRequest & | request, |
bool | only_dir | ||
) |
Definition at line 3147 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::CompletionRequest::AddCompletion(), lldb_private::StreamString::Clear(), StringExtractor::GetChar(), lldb_private::CompletionRequest::GetCursorArgumentPrefix(), StringExtractor::GetHexU8(), lldb_private::StreamString::GetString(), StringExtractor::Peek(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutHex32(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::AvoidGPackets | ( | ProcessGDBRemote * | process | ) |
Definition at line 3412 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::Target::GetArchitecture(), GetGDBServerProgramName(), GetGDBServerProgramVersion(), lldb_private::Process::GetTarget(), lldb_private::ArchSpec::GetTriple(), lldb_private::ArchSpec::IsValid(), and m_avoid_g_packets.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadAllRegisterValues(), and lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteAllRegisterValues().
bool GDBRemoteCommunicationClient::CalculateMD5 | ( | const FileSpec & | file_spec, |
uint64_t & | high, | ||
uint64_t & | low | ||
) |
Definition at line 3390 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractor::GetHexMaxU64(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractor::Peek(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
bool GDBRemoteCommunicationClient::CloseFile | ( | lldb::user_id_t | fd, |
Status & | error | ||
) |
Definition at line 3073 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::StreamString::GetString(), ParseHostIOPacketResponse(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetFileExists(), and Stat().
Status GDBRemoteCommunicationClient::ConfigureRemoteStructuredData | ( | llvm::StringRef | type_name, |
const StructuredData::ObjectSP & | config_sp | ||
) |
Configure a StructuredData feature on the remote end.
Definition at line 4198 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::StreamString::Flush(), lldb_private::StreamString::GetSize(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConfigureStructuredData().
Definition at line 3293 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), gdb_errno_to_system(), StringExtractor::GetChar(), StringExtractor::GetHexMaxU32(), lldb_private::FileSpec::GetPath(), StringExtractor::GetS32(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
bool GDBRemoteCommunicationClient::DeallocateMemory | ( | lldb::addr_t | addr | ) |
Definition at line 1462 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_alloc_dealloc_memory, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoDeallocateMemory().
|
protected |
Definition at line 1977 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Args::AppendArgument(), lldb_private::Args::Clear(), lldb_private::eArchTypeMachO, lldb_private::ProcessInfo::GetArchitecture(), lldb_private::ProcessInfo::GetArguments(), lldb_private::ProcessInfo::GetExecutableFile(), StringExtractor::GetHexByteString(), StringExtractor::GetNameColonValue(), lldb_private::ProcessInfo::GetProcessID(), lldb_private::ArchSpec::GetTriple(), StringExtractorGDBRemote::IsNormalResponse(), LLDB_INVALID_CPUTYPE, LLDB_INVALID_PROCESS_ID, lldb_private::ArchSpec::SetArchitecture(), lldb_private::ProcessInfo::SetArg0(), lldb_private::ProcessInstanceInfo::SetEffectiveGroupID(), lldb_private::ProcessInstanceInfo::SetEffectiveUserID(), lldb_private::FileSpec::SetFile(), lldb_private::ProcessInfo::SetGroupID(), lldb_private::ProcessInstanceInfo::SetParentProcessID(), lldb_private::ProcessInfo::SetProcessID(), lldb_private::ArchSpec::SetTriple(), lldb_private::ProcessInfo::SetUserID(), and UINT32_MAX.
Referenced by FindProcesses(), and GetProcessInfo().
Status GDBRemoteCommunicationClient::Detach | ( | bool | keep_stopped, |
lldb::pid_t | pid = LLDB_INVALID_PROCESS_ID |
||
) |
Definition at line 1484 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, error(), GetCurrentProcessID(), GetMultiprocessSupported(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), LLDB_INVALID_PROCESS_ID, m_supports_detach_stay_stopped, lldb_private::Stream::PutChar(), lldb_private::Stream::PutHex64(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVFork(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoDetach().
void GDBRemoteCommunicationClient::EnableErrorStringInPacket | ( | ) |
Definition at line 575 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_error_string_reply, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver().
uint32_t GDBRemoteCommunicationClient::FindProcesses | ( | const ProcessInstanceInfoMatch & | process_match_info, |
ProcessInstanceInfoList & | process_infos | ||
) |
Definition at line 2255 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Contains, DecodeProcessInfoResponse(), lldb_private::ProcessInstanceInfo::EffectiveGroupIDIsValid(), lldb_private::ProcessInstanceInfo::EffectiveUserIDIsValid(), lldb_private::EndsWith, lldb_private::Equals, lldb_private::ProcessInfo::GetArchitecture(), lldb_private::ProcessInstanceInfo::GetEffectiveGroupID(), lldb_private::ProcessInstanceInfo::GetEffectiveUserID(), lldb_private::ProcessInfo::GetGroupID(), lldb_private::ProcessInstanceInfoMatch::GetMatchAllUsers(), lldb_private::ProcessInfo::GetName(), lldb_private::ProcessInstanceInfoMatch::GetNameMatchType(), lldb_private::ProcessInstanceInfo::GetParentProcessID(), lldb_private::ProcessInfo::GetProcessID(), lldb_private::ProcessInstanceInfoMatch::GetProcessInfo(), lldb_private::StreamString::GetString(), lldb_private::ArchSpec::GetTriple(), lldb_private::ProcessInfo::GetUserID(), lldb_private::ProcessInfo::GroupIDIsValid(), lldb_private::Ignore, lldb_private::ArchSpec::IsValid(), m_supports_qfProcessInfo, lldb_private::ProcessInstanceInfoMatch::MatchAllProcesses(), lldb_private::ProcessInstanceInfo::ParentProcessIDIsValid(), lldb_private::Stream::Printf(), lldb_private::ProcessInfo::ProcessIDIsValid(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::RegularExpression, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::StartsWith, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::ProcessInfo::UserIDIsValid().
std::optional< GDBRemoteFStatData > GDBRemoteCommunicationClient::FStat | ( | lldb::user_id_t | fd | ) |
Definition at line 3086 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractorGDBRemote::GetEscapedBinaryData(), StringExtractor::GetS64(), lldb_private::StreamString::GetString(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by Stat().
AddressableBits GDBRemoteCommunicationClient::GetAddressableBits | ( | ) |
Definition at line 1417 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetHostInfo(), m_high_mem_addressing_bits, m_low_mem_addressing_bits, m_qHostInfo_is_valid, and lldb_private::AddressableBits::SetAddressableBits().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidLaunchOrAttach().
bool GDBRemoteCommunicationClient::GetAugmentedLibrariesSVR4ReadSupported | ( | ) |
Definition at line 137 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_augmented_libraries_svr4_read.
std::vector< std::pair< lldb::pid_t, lldb::tid_t > > GDBRemoteCommunicationClient::GetCurrentProcessAndThreadIDs | ( | bool & | sequence_mutex_unavailable | ) |
Definition at line 2842 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), lldb_private::GetLog(), StringExtractorGDBRemote::GetPidTid(), lldb_private::Communication::IsConnected(), StringExtractorGDBRemote::IsNormalResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_INVALID_PROCESS_ID, LLDB_LOG, lldb_private::process_gdb_remote::Packets, lldb_private::process_gdb_remote::Process, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponseNoLock(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetCurrentProcessID(), and GetCurrentThreadIDs().
lldb::pid_t GDBRemoteCommunicationClient::GetCurrentProcessID | ( | bool | allow_lazy = true | ) |
Definition at line 715 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolYes, StringExtractor::GetChar(), GetCurrentProcessAndThreadIDs(), GetCurrentProcessInfo(), StringExtractor::GetHexMaxU64(), LLDB_INVALID_PROCESS_ID, m_curr_pid, m_curr_pid_is_valid, m_curr_pid_run, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by Detach(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoConnectRemote(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch(), GetCurrentThreadIDs(), lldb_private::process_gdb_remote::ProcessGDBRemote::HandleStopReply(), lldb_private::process_gdb_remote::ProcessGDBRemote::SetThreadStopInfo(), and lldb_private::process_gdb_remote::ProcessGDBRemote::UpdateThreadIDsFromStopReplyThreadsValue().
|
protected |
Definition at line 2096 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eArchTypeCOFF, lldb_private::eArchTypeELF, lldb_private::eArchTypeMachO, lldb::eByteOrderBig, lldb::eByteOrderInvalid, lldb::eByteOrderLittle, lldb::eByteOrderPDP, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::ArchSpec::GetAddressByteSize(), lldb_private::ArchSpec::GetByteOrder(), StringExtractor::GetHexByteString(), GetHostInfo(), lldb_private::GetLog(), StringExtractor::GetNameColonValue(), lldb_private::ArchSpec::GetTriple(), StringExtractor::GetU64(), StringExtractorGDBRemote::IsNormalResponse(), LLDB_INVALID_ADDRESS, LLDB_INVALID_CPUTYPE, LLDB_INVALID_PROCESS_ID, LLDB_LOGF, m_binary_addresses, m_curr_pid, m_curr_pid_is_valid, m_curr_pid_run, m_process_arch, m_process_standalone_uuid, m_process_standalone_value, m_process_standalone_value_is_offset, m_qProcessInfo_is_valid, lldb_private::process_gdb_remote::Packets, ParseOSType(), lldb_private::process_gdb_remote::Process, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::ArchSpec::SetArchitecture(), lldb_private::ArchSpec::SetFlags(), lldb_private::UUID::SetFromStringRef(), lldb_private::ArchSpec::SetTriple(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetCurrentProcessID(), GetProcessArchitecture(), GetProcessStandaloneBinaries(), and GetProcessStandaloneBinary().
size_t GDBRemoteCommunicationClient::GetCurrentThreadIDs | ( | std::vector< lldb::tid_t > & | thread_ids, |
bool & | sequence_mutex_unavailable | ||
) |
Definition at line 2898 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::AllThreads, GetCurrentProcessAndThreadIDs(), GetCurrentProcessID(), LLDB_INVALID_PROCESS_ID, and LLDB_INVALID_THREAD_ID.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::UpdateThreadIDList().
bool GDBRemoteCommunicationClient::GetDefaultThreadId | ( | lldb::tid_t & | tid | ) |
Definition at line 1151 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::AllProcesses, lldb_private::eLazyBoolYes, StringExtractor::GetChar(), StringExtractorGDBRemote::GetPidTid(), StringExtractorGDBRemote::IsNormalResponse(), m_curr_pid, m_curr_pid_is_valid, m_curr_pid_run, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::GetDynamicLoaderProcessStateSupported | ( | ) |
Definition at line 618 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_jGetDyldProcessState, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetDynamicLoaderProcessState().
bool GDBRemoteCommunicationClient::GetEchoSupported | ( | ) |
Definition at line 123 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::m_supports_qEcho.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver().
bool GDBRemoteCommunicationClient::GetFileExists | ( | const FileSpec & | file_spec | ) |
Definition at line 3359 of file GDBRemoteCommunicationClient.cpp.
References CloseFile(), lldb_private::File::eOpenOptionReadOnly, error(), StringExtractor::GetChar(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_vFileExists, OpenFile(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
Status GDBRemoteCommunicationClient::GetFilePermissions | ( | const FileSpec & | file_spec, |
uint32_t & | file_permissions | ||
) |
Definition at line 3173 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), gdb_errno_to_system(), StringExtractor::GetChar(), lldb_private::StreamString::GetData(), lldb_private::FileSpec::GetPath(), StringExtractor::GetS32(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_vFileMode, lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), S_IRWXG, S_IRWXO, S_IRWXU, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), Stat(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
lldb::user_id_t GDBRemoteCommunicationClient::GetFileSize | ( | const FileSpec & | file_spec | ) |
Definition at line 3121 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractor::GetHexMaxU64(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_vFileSize, lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), Stat(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
const char * GDBRemoteCommunicationClient::GetGDBServerProgramName | ( | ) |
Definition at line 1137 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_name.
Referenced by AvoidGPackets().
uint32_t GDBRemoteCommunicationClient::GetGDBServerProgramVersion | ( | ) |
Definition at line 1145 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_version.
Referenced by AvoidGPackets().
|
protected |
Definition at line 1029 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetNameColonValue(), StringExtractorGDBRemote::IsNormalResponse(), m_gdb_server_name, m_gdb_server_version, m_qGDBServerVersion_is_valid, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetGDBServerProgramName(), and GetGDBServerProgramVersion().
bool GDBRemoteCommunicationClient::GetGroupName | ( | uint32_t | gid, |
std::string & | name | ||
) |
Definition at line 2377 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexByteString(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsNormalResponse(), m_supports_qGroupName, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
const lldb_private::ArchSpec & GDBRemoteCommunicationClient::GetHostArchitecture | ( | ) |
Definition at line 1411 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetHostInfo(), m_host_arch, and m_qHostInfo_is_valid.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidLaunchOrAttach(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoConnectRemote(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetSystemArchitecture(), and GetWorkingDir().
seconds GDBRemoteCommunicationClient::GetHostDefaultPacketTimeout | ( | ) |
Definition at line 1430 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetHostInfo(), m_default_packet_timeout, and m_qHostInfo_is_valid.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo().
bool GDBRemoteCommunicationClient::GetHostInfo | ( | bool | force = false | ) |
Definition at line 1194 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eArchTypeMachO, lldb::eByteOrderBig, lldb::eByteOrderInvalid, lldb::eByteOrderLittle, lldb::eByteOrderPDP, lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::ArchSpec::GetAddressByteSize(), lldb_private::ArchSpec::GetArchitectureName(), lldb_private::ArchSpec::GetByteOrder(), StringExtractor::GetHexByteString(), lldb_private::GetLog(), lldb_private::ArchSpec::GetMachine(), StringExtractor::GetNameColonValue(), lldb_private::ArchSpec::GetTriple(), StringExtractorGDBRemote::IsNormalResponse(), LLDB_INVALID_CPUTYPE, LLDB_LOGF, m_default_packet_timeout, m_high_mem_addressing_bits, m_host_arch, m_host_distribution_id, m_hostname, m_low_mem_addressing_bits, m_maccatalyst_version, m_os_build, m_os_kernel, m_os_version, m_qHostInfo_is_valid, m_target_vm_page_size, m_watchpoints_trigger_after_instruction, ParseOSType(), lldb_private::process_gdb_remote::Process, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::ArchSpec::SetArchitecture(), lldb_private::process_gdb_remote::GDBRemoteCommunication::SetPacketTimeout(), lldb_private::ArchSpec::SetTriple(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver(), GetAddressableBits(), GetCurrentProcessInfo(), GetHostArchitecture(), GetHostDefaultPacketTimeout(), GetHostname(), GetMacCatalystVersion(), GetOSBuildString(), GetOSKernelDescription(), GetOSVersion(), GetSystemArchitecture(), and GetWatchpointReportedAfter().
bool GDBRemoteCommunicationClient::GetHostname | ( | std::string & | s | ) |
Definition at line 981 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_hostname.
void GDBRemoteCommunicationClient::GetListThreadsInStopReplySupported | ( | ) |
Definition at line 223 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_threads_in_stop_reply, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver().
bool GDBRemoteCommunicationClient::GetLoadedDynamicLibrariesInfosSupported | ( | ) |
Definition at line 590 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_jLoadedDynamicLibrariesInfos, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetLoadedDynamicLibrariesInfos_sender().
llvm::VersionTuple GDBRemoteCommunicationClient::GetMacCatalystVersion | ( | ) |
Definition at line 959 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_maccatalyst_version.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetHostMacCatalystVersion().
Status GDBRemoteCommunicationClient::GetMemoryRegionInfo | ( | lldb::addr_t | addr, |
lldb_private::MemoryRegionInfo & | region_info | ||
) |
Definition at line 1535 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::MemoryRegionInfo::Clear(), lldb_private::Range< B, S >::Contains(), lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::MemoryRegionInfo::eNo, StringExtractorGDBRemote::eResponse, error(), lldb_private::MemoryRegionInfo::eYes, lldb_private::MemoryRegionInfo::GetBlocksize(), lldb_private::MemoryRegionInfo::GetFlash(), StringExtractor::GetHexByteString(), StringExtractor::GetNameColonValue(), GetQXferMemoryMapRegionInfo(), lldb_private::MemoryRegionInfo::GetRange(), lldb_private::Range< B, S >::GetRangeBase(), lldb_private::Range< B, S >::GetRangeEnd(), StringExtractorGDBRemote::GetResponseType(), lldb_private::Range< B, S >::IsValid(), LLDB_INVALID_ADDRESS, m_supports_memory_region_info, m_target_vm_page_size, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::MemoryRegionInfo::SetBlocksize(), lldb_private::Range< B, S >::SetByteSize(), lldb_private::MemoryRegionInfo::SetDirtyPageList(), lldb_private::MemoryRegionInfo::SetExecutable(), lldb_private::MemoryRegionInfo::SetFlash(), lldb_private::MemoryRegionInfo::SetIsStackMemory(), lldb_private::MemoryRegionInfo::SetMapped(), lldb_private::MemoryRegionInfo::SetMemoryTagged(), lldb_private::MemoryRegionInfo::SetName(), lldb_private::MemoryRegionInfo::SetPageSize(), lldb_private::Range< B, S >::SetRangeBase(), lldb_private::Range< B, S >::SetRangeEnd(), lldb_private::MemoryRegionInfo::SetReadable(), lldb_private::MemoryRegionInfo::SetWritable(), lldb_private::Status::Success(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoGetMemoryRegionInfo().
bool GDBRemoteCommunicationClient::GetMemoryTaggingSupported | ( | ) |
Definition at line 631 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_memory_tagging.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::SupportsMemoryTagging().
bool GDBRemoteCommunicationClient::GetModuleInfo | ( | const FileSpec & | module_file_spec, |
const ArchSpec & | arch_spec, | ||
ModuleSpec & | module_spec | ||
) |
Definition at line 3757 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::ModuleSpec::Clear(), lldb_private::ModuleSpec::GetArchitecture(), lldb_private::ModuleSpec::GetFileSpec(), StringExtractor::GetHexByteString(), StringExtractor::GetNameColonValue(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), lldb_private::ArchSpec::GetTriple(), lldb_private::ModuleSpec::GetUUID(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_qModuleInfo, lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::UUID::SetFromStringRef(), lldb_private::ModuleSpec::SetObjectOffset(), lldb_private::ModuleSpec::SetObjectSize(), lldb_private::ArchSpec::SetTriple(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetModuleSpec().
std::optional< std::vector< ModuleSpec > > GDBRemoteCommunicationClient::GetModulesInfo | ( | llvm::ArrayRef< FileSpec > | module_file_specs, |
const llvm::Triple & | triple | ||
) |
Definition at line 3857 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Stream::AsRawOstream(), lldb_private::StructuredData::Object::GetAsArray(), lldb_private::StructuredData::Array::GetItemAtIndex(), lldb_private::StreamString::GetSize(), lldb_private::StructuredData::Array::GetSize(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_jModulesInfo, lldb_private::StructuredData::ParseJSON(), ParseModuleSpec(), lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::PrefetchModuleSpecs().
bool GDBRemoteCommunicationClient::GetMultiprocessSupported | ( | ) |
Definition at line 186 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), m_supports_memory_tagging, and m_supports_multiprocess.
Referenced by Detach(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoResume().
std::optional< std::string > GDBRemoteCommunicationClient::GetOSBuildString | ( | ) |
Definition at line 964 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_build.
std::optional< std::string > GDBRemoteCommunicationClient::GetOSKernelDescription | ( | ) |
Definition at line 973 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_kernel.
llvm::VersionTuple GDBRemoteCommunicationClient::GetOSVersion | ( | ) |
Definition at line 954 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_version.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetHostOSVersion().
bool GDBRemoteCommunicationClient::GetpPacketSupported | ( | lldb::tid_t | tid | ) |
Definition at line 519 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetThreadPacketSupported(), and m_supports_p.
Referenced by lldb_private::process_gdb_remote::ThreadGDBRemote::CreateRegisterContextForFrame().
const lldb_private::ArchSpec & GDBRemoteCommunicationClient::GetProcessArchitecture | ( | ) |
Definition at line 999 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), m_process_arch, and m_qProcessInfo_is_valid.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidLaunchOrAttach(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoConnectRemote(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
bool GDBRemoteCommunicationClient::GetProcessInfo | ( | lldb::pid_t | pid, |
ProcessInstanceInfo & | process_info | ||
) |
Definition at line 2074 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::ProcessInstanceInfo::Clear(), DecodeProcessInfoResponse(), m_supports_qProcessInfoPID, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
std::vector< addr_t > GDBRemoteCommunicationClient::GetProcessStandaloneBinaries | ( | ) |
Definition at line 1023 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), m_binary_addresses, and m_qProcessInfo_is_valid.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::LoadStubBinaries().
bool GDBRemoteCommunicationClient::GetProcessStandaloneBinary | ( | UUID & | uuid, |
lldb::addr_t & | value, | ||
bool & | value_is_offset | ||
) |
Definition at line 1005 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), lldb_private::UUID::IsValid(), LLDB_INVALID_ADDRESS, m_process_standalone_uuid, m_process_standalone_value, m_process_standalone_value_is_offset, and m_qProcessInfo_is_valid.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::LoadStubBinaries().
std::optional< QOffsets > GDBRemoteCommunicationClient::GetQOffsets | ( | ) |
Use qOffsets to query the offset used when relocating the target executable.
If successful, the returned structure will contain at least one value in the offsets field.
Definition at line 3717 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsNormalResponse(), lldb_private::process_gdb_remote::QOffsets::offsets, lldb_private::process_gdb_remote::QOffsets::segments, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::MaybeLoadExecutableModule().
bool GDBRemoteCommunicationClient::GetQPassSignalsSupported | ( | ) |
Definition at line 130 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_QPassSignals.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::UpdateAutomaticSignalFiltering().
bool GDBRemoteCommunicationClient::GetQXferAuxvReadSupported | ( | ) |
Definition at line 158 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_auxv_read.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetAuxvData().
bool GDBRemoteCommunicationClient::GetQXferFeaturesReadSupported | ( | ) |
Definition at line 165 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_features_read.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetGDBServerRegisterInfo().
bool GDBRemoteCommunicationClient::GetQXferLibrariesReadSupported | ( | ) |
Definition at line 151 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_libraries_read.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetLoadedModuleList().
bool GDBRemoteCommunicationClient::GetQXferLibrariesSVR4ReadSupported | ( | ) |
Definition at line 144 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_libraries_svr4_read.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetLoadedModuleList().
bool GDBRemoteCommunicationClient::GetQXferMemoryMapReadSupported | ( | ) |
Definition at line 172 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_memory_map_read.
Referenced by LoadQXferMemoryMap().
|
protected |
Definition at line 1700 of file GDBRemoteCommunicationClient.cpp.
References error(), LoadQXferMemoryMap(), and m_qXfer_memory_map.
Referenced by GetMemoryRegionInfo().
bool GDBRemoteCommunicationClient::GetQXferSigInfoReadSupported | ( | ) |
Definition at line 179 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_siginfo_read.
Referenced by lldb_private::process_gdb_remote::ThreadGDBRemote::GetSiginfo().
uint64_t GDBRemoteCommunicationClient::GetRemoteMaxPacketSize | ( | ) |
Definition at line 192 of file GDBRemoteCommunicationClient.cpp.
References GetRemoteQSupported(), and m_max_packet_size.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetMaxMemorySize(), and ReadExtFeature().
void GDBRemoteCommunicationClient::GetRemoteQSupported | ( | ) |
Definition at line 333 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetHexMaxU64(), lldb_private::GetLog(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), LLDB_LOGF, m_max_packet_size, m_qSupported_response, m_supports_augmented_libraries_svr4_read, m_supports_memory_tagging, m_supports_multiprocess, lldb_private::process_gdb_remote::GDBRemoteCommunication::m_supports_qEcho, m_supports_QPassSignals, m_supports_qSaveCore, m_supports_qXfer_auxv_read, m_supports_qXfer_features_read, m_supports_qXfer_libraries_read, m_supports_qXfer_libraries_svr4_read, m_supports_qXfer_memory_map_read, m_supports_qXfer_siginfo_read, m_uses_native_signals, MaybeEnableCompression(), lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
Referenced by GetAugmentedLibrariesSVR4ReadSupported(), GetEchoSupported(), GetMemoryTaggingSupported(), GetMultiprocessSupported(), GetQPassSignalsSupported(), GetQXferAuxvReadSupported(), GetQXferFeaturesReadSupported(), GetQXferLibrariesReadSupported(), GetQXferLibrariesSVR4ReadSupported(), GetQXferMemoryMapReadSupported(), GetQXferSigInfoReadSupported(), GetRemoteMaxPacketSize(), and UsesNativeSignals().
bool GDBRemoteCommunicationClient::GetSaveCoreSupported | ( | ) | const |
Definition at line 538 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolYes, and m_supports_qSaveCore.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::SaveCore().
|
inline |
Return the feature set supported by the gdb-remote server.
This method returns the remote side's response to the qSupported packet. The response is the complete string payload returned to the client.
Definition at line 469 of file GDBRemoteCommunicationClient.h.
References m_qSupported_response.
bool GDBRemoteCommunicationClient::GetSharedCacheInfoSupported | ( | ) |
Definition at line 604 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_jGetSharedCacheInfo, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetSharedCacheInfo().
lldb::addr_t GDBRemoteCommunicationClient::GetShlibInfoAddr | ( | ) |
Definition at line 2919 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexMaxU64(), StringExtractorGDBRemote::IsNormalResponse(), LLDB_INVALID_ADDRESS, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetImageInfoAddress().
bool GDBRemoteCommunicationClient::GetStopReply | ( | StringExtractorGDBRemote & | response | ) |
Definition at line 2750 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::IsNormalResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoConnectRemote(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
StructuredData::Array * GDBRemoteCommunicationClient::GetSupportedStructuredDataPlugins | ( | ) |
Return the array of async JSON packet types supported by the remote.
This method returns the remote side's array of supported JSON packet types as a list of type names. Each of the results are expected to have an Enable{type_name} command to enable and configure the related feature. Each type_name for an enabled feature will possibly send async-style packets that contain a payload of a binhex-encoded JSON dictionary. The dictionary will have a string field named 'type', that contains the type_name of the supported packet type.
There is a Plugin category called structured-data plugins. A plugin indicates whether it knows how to handle a type_name. If so, it can be used to process the async JSON packet.
Definition at line 4132 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetData(), lldb_private::GetLog(), StringExtractor::GetStringRef(), LLDB_LOGF, m_supported_async_json_packets_is_valid, m_supported_async_json_packets_sp, lldb_private::StructuredData::ParseJSON(), lldb_private::process_gdb_remote::Process, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidLaunchOrAttach().
bool GDBRemoteCommunicationClient::GetSyncThreadStateSupported | ( | ) |
Definition at line 250 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_prepare_for_reg_writing_reply, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by SyncThreadState().
ArchSpec GDBRemoteCommunicationClient::GetSystemArchitecture | ( | ) |
Definition at line 992 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_host_arch.
bool GDBRemoteCommunicationClient::GetThreadExtendedInfoSupported | ( | ) |
Definition at line 561 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_jThreadExtendedInfo, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetExtendedInfoForThread().
|
protected |
Definition at line 525 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsNormalResponse(), lldb_private::Stream::PutCString(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetpPacketSupported().
StructuredData::ObjectSP GDBRemoteCommunicationClient::GetThreadsInfo | ( | ) |
Definition at line 542 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::Empty(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_jThreadsInfo, lldb_private::StructuredData::ParseJSON(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), StringExtractorGDBRemote::SetResponseValidatorToJSON(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::WillPublicStop().
bool GDBRemoteCommunicationClient::GetThreadStopInfo | ( | lldb::tid_t | tid, |
StringExtractorGDBRemote & | response | ||
) |
Definition at line 2757 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::IsNormalResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_qThreadStopInfo, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
bool GDBRemoteCommunicationClient::GetThreadSuffixSupported | ( | ) |
Definition at line 420 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_thread_suffix, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver(), SendThreadSpecificPacketAndWaitForResponse(), and UsesNativeSignals().
bool GDBRemoteCommunicationClient::GetUserName | ( | uint32_t | uid, |
std::string & | name | ||
) |
Definition at line 2350 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexByteString(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsNormalResponse(), m_supports_qUserName, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
bool GDBRemoteCommunicationClient::GetVAttachOrWaitSupported | ( | ) |
Definition at line 236 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_attach_or_wait_reply, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoAttachToProcessWithName().
bool GDBRemoteCommunicationClient::GetVContSupported | ( | char | flavor | ) |
Definition at line 432 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetStringRef(), m_supports_vCont_all, m_supports_vCont_any, m_supports_vCont_c, m_supports_vCont_C, m_supports_vCont_s, m_supports_vCont_S, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoResume(), HasAnyVContSupport(), and HasFullVContSupport().
std::optional< bool > GDBRemoteCommunicationClient::GetWatchpointReportedAfter | ( | ) |
Definition at line 1830 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, GetHostInfo(), m_qHostInfo_is_valid, and m_watchpoints_trigger_after_instruction.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoGetWatchpointReportedAfter().
std::optional< uint32_t > GDBRemoteCommunicationClient::GetWatchpointSlotCount | ( | ) |
Definition at line 1800 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetNameColonValue(), m_num_supported_hardware_watchpoints, m_supports_watchpoint_support_info, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetWatchpointSlotCount().
bool GDBRemoteCommunicationClient::GetWorkingDir | ( | FileSpec & | working_dir | ) |
Gets the current working directory of a remote platform GDB server.
[out] | working_dir | The current working directory on the remote platform. |
Definition at line 1907 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexByteString(), GetHostArchitecture(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::FileSpec::SetFile(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::GetxPacketSupported | ( | ) |
Definition at line 700 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::IsOKResponse(), m_supports_x, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoReadMemory().
bool GDBRemoteCommunicationClient::HandshakeWithServer | ( | Status * | error_ptr | ) |
Definition at line 84 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Communication::IsConnected(), QueryNoAckModeSupported(), ResetDiscoverableSettings(), lldb_private::process_gdb_remote::GDBRemoteCommunication::SendAck(), lldb_private::Status::SetErrorString(), and lldb_private::Status::SetErrorStringWithFormat().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ConnectToDebugserver().
|
inline |
Definition at line 258 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoResume().
|
inline |
Definition at line 256 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
llvm::Expected< int > GDBRemoteCommunicationClient::KillProcess | ( | lldb::pid_t | pid | ) |
Definition at line 4263 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractor::GetHexU8(), lldb_private::process_gdb_remote::GDBRemoteCommunication::GetPacketTimeout(), StringExtractor::GetStringRef(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoDestroy().
bool GDBRemoteCommunicationClient::KillSpawnedProcess | ( | lldb::pid_t | pid | ) |
Definition at line 2674 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::LaunchGDBServer | ( | const char * | remote_accept_hostname, |
lldb::pid_t & | pid, | ||
uint16_t & | port, | ||
std::string & | socket_name | ||
) |
Definition at line 2585 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexByteString(), StringExtractor::GetNameColonValue(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), LLDB_INVALID_PROCESS_ID, lldb_private::Stream::Printf(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
llvm::Error GDBRemoteCommunicationClient::LaunchProcess | ( | const Args & | args | ) |
Launch the process using the provided arguments.
[in] | args | A list of program arguments. The first entry is the program being run. |
Definition at line 764 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Stream::Format(), lldb_private::Args::GetArgumentAtIndex(), StringExtractor::GetChar(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_vRun, lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::Status::ToError().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
|
protected |
Definition at line 1715 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::MemoryRegionInfo::eYes, lldb_private::XMLNode::ForEachChildElement(), lldb_private::XMLNode::GetAttributeValue(), lldb_private::XMLNode::GetAttributeValueAsUnsigned(), lldb_private::XMLNode::GetElementTextAsUnsigned(), lldb_private::XMLNode::GetName(), GetQXferMemoryMapReadSupported(), lldb_private::MemoryRegionInfo::GetRange(), lldb_private::XMLDocument::GetRootElement(), lldb_private::XMLNode::IsElement(), m_qXfer_memory_map, m_qXfer_memory_map_loaded, lldb_private::XMLDocument::ParseMemory(), ReadExtFeature(), lldb_private::Range< B, S >::SetRangeBase(), and lldb_private::XMLDocument::XMLEnabled().
Referenced by GetQXferMemoryMapRegionInfo().
Definition at line 2981 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, StringExtractor::GetChar(), StringExtractor::GetHexMaxU32(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutHex32(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
|
protected |
Definition at line 1060 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::LZ4, lldb_private::process_gdb_remote::LZFSE, lldb_private::process_gdb_remote::LZMA, lldb_private::process_gdb_remote::GDBRemoteCommunication::m_compression_type, lldb_private::process_gdb_remote::None, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::process_gdb_remote::ZlibDeflate.
Referenced by GetRemoteQSupported().
|
overrideprotectedvirtual |
Reimplemented from lldb_private::process_gdb_remote::GDBRemoteClientBase.
Definition at line 4247 of file GDBRemoteCommunicationClient.cpp.
References LLDB_INVALID_THREAD_ID, m_curr_tid, and lldb_private::process_gdb_remote::GDBRemoteClientBase::OnRunPacketSent().
lldb::user_id_t GDBRemoteCommunicationClient::OpenFile | ( | const FileSpec & | file_spec, |
File::OpenOptions | flags, | ||
mode_t | mode, | ||
Status & | error | ||
) |
Definition at line 3052 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), ParseHostIOPacketResponse(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutHex32(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
Referenced by GetFileExists(), and Stat().
|
privatedelete |
size_t GDBRemoteCommunicationClient::QueryGDBServer | ( | std::vector< std::pair< uint16_t, std::string > > & | connection_urls | ) |
Definition at line 2633 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StructuredData::Object::GetAsArray(), lldb_private::StructuredData::Array::GetItemAtIndexAsDictionary(), lldb_private::StructuredData::Array::GetSize(), StringExtractor::GetStringRef(), lldb_private::StructuredData::Object::GetUnsignedIntegerValue(), lldb_private::StructuredData::Dictionary::GetValueForKey(), lldb_private::StructuredData::ParseJSON(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::QueryNoAckModeSupported | ( | ) |
Definition at line 199 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::process_gdb_remote::GDBRemoteCommunication::GetPacketTimeout(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::m_send_acks, m_supports_not_sending_acks, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by HandshakeWithServer().
DataBufferSP GDBRemoteCommunicationClient::ReadAllRegisters | ( | lldb::tid_t | tid | ) |
Definition at line 3454 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexBytes(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsNormalResponse(), lldb_private::Stream::PutChar(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadAllRegisterValues(), and lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadRegisterBytes().
llvm::Expected< std::string > GDBRemoteCommunicationClient::ReadExtFeature | ( | llvm::StringRef | object, |
llvm::StringRef | annex | ||
) |
Definition at line 3916 of file GDBRemoteCommunicationClient.cpp.
References GetRemoteMaxPacketSize(), StringExtractor::GetStringRef(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::GetAuxvData(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetGDBServerRegisterInfoXMLAndProcess(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetLoadedModuleList(), lldb_private::process_gdb_remote::ThreadGDBRemote::GetSiginfo(), and LoadQXferMemoryMap().
uint64_t GDBRemoteCommunicationClient::ReadFile | ( | lldb::user_id_t | fd, |
uint64_t | offset, | ||
void * | dst, | ||
uint64_t | dst_len, | ||
Status & | error | ||
) |
Definition at line 3221 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), gdb_errno_to_system(), StringExtractor::GetChar(), StringExtractorGDBRemote::GetEscapedBinaryData(), StringExtractor::GetS32(), StringExtractor::GetS64(), lldb_private::StreamString::GetString(), StringExtractor::Peek(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
DataBufferSP GDBRemoteCommunicationClient::ReadMemoryTags | ( | lldb::addr_t | addr, |
size_t | len, | ||
int32_t | type | ||
) |
Definition at line 638 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetBytesLeft(), StringExtractor::GetChar(), StringExtractor::GetHexBytesAvail(), lldb_private::GetLog(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsNormalResponse(), LLDB_LOGF, lldb_private::process_gdb_remote::Memory, lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoReadMemoryTags().
DataBufferSP GDBRemoteCommunicationClient::ReadRegister | ( | lldb::tid_t | tid, |
uint32_t | reg_num | ||
) |
Definition at line 3438 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetHexBytes(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsNormalResponse(), lldb_private::Stream::Printf(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::GetPrimordialRegister().
void GDBRemoteCommunicationClient::ResetDiscoverableSettings | ( | bool | did_exec | ) |
Definition at line 264 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::ArchSpec::Clear(), lldb_private::eLazyBoolCalculate, m_attach_or_wait_reply, m_avoid_g_packets, m_curr_pid_is_valid, m_default_packet_timeout, m_gdb_server_name, m_gdb_server_version, m_host_arch, m_host_distribution_id, m_hostname, m_max_packet_size, m_os_build, m_os_kernel, m_os_version, m_prepare_for_reg_writing_reply, m_process_arch, m_qGDBServerVersion_is_valid, m_qHostInfo_is_valid, m_qProcessInfo_is_valid, m_qSupported_response, m_qSymbol_requests_done, m_supported_async_json_packets_is_valid, m_supported_async_json_packets_sp, m_supports_alloc_dealloc_memory, m_supports_augmented_libraries_svr4_read, m_supports_jModulesInfo, m_supports_memory_region_info, m_supports_multiprocess, m_supports_not_sending_acks, m_supports_p, m_supports_QEnvironment, m_supports_QEnvironmentHexEncoded, m_supports_qfProcessInfo, m_supports_qGroupName, m_supports_qModuleInfo, m_supports_qProcessInfoPID, m_supports_qSaveCore, m_supports_QSaveRegisterState, m_supports_qSymbol, m_supports_qThreadStopInfo, m_supports_qUserName, m_supports_qXfer_auxv_read, m_supports_qXfer_features_read, m_supports_qXfer_libraries_read, m_supports_qXfer_libraries_svr4_read, m_supports_qXfer_memory_map_read, m_supports_qXfer_siginfo_read, m_supports_thread_suffix, m_supports_threads_in_stop_reply, m_supports_vCont_c, m_supports_vCont_C, m_supports_vCont_s, m_supports_vCont_S, m_supports_x, m_supports_z0, m_supports_z1, m_supports_z2, m_supports_z3, m_supports_z4, m_target_vm_page_size, m_uses_native_signals, and UINT32_MAX.
Referenced by HandshakeWithServer(), and lldb_private::process_gdb_remote::ProcessGDBRemote::SetLastStopPacket().
bool GDBRemoteCommunicationClient::RestoreRegisterState | ( | lldb::tid_t | tid, |
uint32_t | save_id | ||
) |
Definition at line 3521 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_QSaveRegisterState, lldb_private::Stream::Printf(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteAllRegisterValues().
lldb_private::Status GDBRemoteCommunicationClient::RunShellCommand | ( | llvm::StringRef | command, |
const FileSpec & | working_dir, | ||
int * | status_ptr, | ||
int * | signo_ptr, | ||
std::string * | command_output, | ||
const Timeout< std::micro > & | timeout | ||
) |
Definition at line 2928 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractorGDBRemote::GetEscapedBinaryData(), StringExtractor::GetHexMaxU32(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutHex32(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
bool GDBRemoteCommunicationClient::SaveRegisterState | ( | lldb::tid_t | tid, |
uint32_t & | save_id | ||
) |
Definition at line 3496 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetU32(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_QSaveRegisterState, lldb_private::Stream::PutCString(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadAllRegisterValues().
int GDBRemoteCommunicationClient::SendEnvironment | ( | const Environment & | env | ) |
Definition at line 829 of file GDBRemoteCommunicationClient.cpp.
References SendEnvironmentPacket().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SendEnvironmentPacket | ( | char const * | name_equal_value | ) |
Sends a "QEnvironment:NAME=VALUE" packet that will build up the environment that will get used when launching an application in conjunction with the 'A' packet.
This function can be called multiple times in a row in order to pass on the desired environment that the inferior should be launched with.
[in] | name_equal_value | A NULL terminated C string that contains a single environment in the format "NAME=VALUE". |
Definition at line 842 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), m_supports_QEnvironment, m_supports_QEnvironmentHexEncoded, lldb_private::Stream::Printf(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by SendEnvironment().
uint8_t GDBRemoteCommunicationClient::SendGDBStoppointTypePacket | ( | GDBStoppointType | type, |
bool | insert, | ||
lldb::addr_t | addr, | ||
uint32_t | length, | ||
std::chrono::seconds | interrupt_timeout | ||
) |
Definition at line 2780 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Breakpoints, lldb_private::process_gdb_remote::eBreakpointHardware, lldb_private::process_gdb_remote::eBreakpointSoftware, lldb_private::process_gdb_remote::eStoppointInvalid, lldb_private::process_gdb_remote::eWatchpointRead, lldb_private::process_gdb_remote::eWatchpointReadWrite, lldb_private::process_gdb_remote::eWatchpointWrite, StringExtractorGDBRemote::GetError(), lldb_private::GetLog(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_LOGF, m_supports_z0, m_supports_z1, m_supports_z2, m_supports_z3, m_supports_z4, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), StringExtractorGDBRemote::SetResponseValidatorToOKErrorNotSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, SupportsGDBStoppointPacket(), and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidForkSwitchHardwareTraps(), lldb_private::process_gdb_remote::ProcessGDBRemote::DisableBreakpointSite(), lldb_private::process_gdb_remote::ProcessGDBRemote::DisableWatchpoint(), lldb_private::process_gdb_remote::ProcessGDBRemote::EnableBreakpointSite(), and lldb_private::process_gdb_remote::ProcessGDBRemote::EnableWatchpoint().
|
protected |
int GDBRemoteCommunicationClient::SendLaunchArchPacket | ( | const char * | arch | ) |
Definition at line 909 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SendLaunchEventDataPacket | ( | const char * | data, |
bool * | was_supported = nullptr |
||
) |
Definition at line 926 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch(), and lldb_private::process_gdb_remote::ProcessGDBRemote::SendEventData().
std::optional< PidTid > GDBRemoteCommunicationClient::SendSetCurrentThreadPacket | ( | uint64_t | tid, |
uint64_t | pid, | ||
char | op | ||
) |
Definition at line 2687 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), lldb_private::Communication::IsConnected(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_INVALID_PROCESS_ID, lldb_private::Stream::Printf(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT64_MAX.
Referenced by SetCurrentThread(), and SetCurrentThreadForRun().
Status GDBRemoteCommunicationClient::SendSignalsToIgnore | ( | llvm::ArrayRef< int32_t > | signals | ) |
Definition at line 4178 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::UpdateAutomaticSignalFiltering().
bool GDBRemoteCommunicationClient::SendSpeedTestPacket | ( | uint32_t | send_size, |
uint32_t | recv_size | ||
) |
Definition at line 2564 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), lldb_private::Stream::Printf(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by TestPacketSpeed().
int GDBRemoteCommunicationClient::SendStdinNotification | ( | const char * | data, |
size_t | data_len | ||
) |
Sends a GDB remote protocol 'I' packet that delivers stdin data to the remote process.
[in] | data | A pointer to stdin data. |
[in] | data_len | The number of bytes available at data. |
Definition at line 1397 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::GetError(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::PutSTDIN().
|
protected |
Definition at line 492 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::GDBRemoteCommunication::ErrorNoSequenceLock, lldb_private::process_gdb_remote::GDBRemoteCommunication::ErrorSendFailed, lldb_private::GetLog(), GetThreadSuffixSupported(), LLDB_LOGF, lldb_private::process_gdb_remote::Packets, lldb_private::process_gdb_remote::Process, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponseNoLock(), and SetCurrentThread().
Referenced by GetThreadPacketSupported(), ReadAllRegisters(), ReadRegister(), RestoreRegisterState(), SaveRegisterState(), WriteAllRegisters(), and WriteRegister().
llvm::Expected< std::vector< uint8_t > > GDBRemoteCommunicationClient::SendTraceGetBinaryData | ( | const TraceGetBinaryDataRequest & | request, |
std::chrono::seconds | interrupt_timeout | ||
) |
Definition at line 3686 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetData(), StringExtractorGDBRemote::GetEscapedBinaryData(), lldb_private::GetLog(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), LLDB_LOG, lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, lldb_private::Status::ToError(), and lldb_private::toJSON().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::TraceGetBinaryData().
llvm::Expected< std::string > GDBRemoteCommunicationClient::SendTraceGetState | ( | llvm::StringRef | type, |
std::chrono::seconds | interrupt_timeout | ||
) |
Definition at line 3652 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetData(), lldb_private::GetLog(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_LOG, StringExtractor::Peek(), lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, lldb_private::Status::ToError(), and lldb_private::toJSON().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::TraceGetState().
llvm::Error GDBRemoteCommunicationClient::SendTraceStart | ( | const llvm::json::Value & | request, |
std::chrono::seconds | interrupt_timeout | ||
) |
Definition at line 3617 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetData(), lldb_private::GetLog(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_LOG, lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::Status::ToError().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::TraceStart().
llvm::Error GDBRemoteCommunicationClient::SendTraceStop | ( | const TraceStopRequest & | request, |
std::chrono::seconds | interrupt_timeout | ||
) |
Definition at line 3582 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetData(), lldb_private::GetLog(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_LOG, lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, lldb_private::Status::ToError(), and lldb_private::toJSON().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::TraceStop().
llvm::Expected< TraceSupportedResponse > GDBRemoteCommunicationClient::SendTraceSupported | ( | std::chrono::seconds | interrupt_timeout | ) |
Definition at line 3557 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::GetLog(), StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_LOG, StringExtractor::Peek(), lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::Status::ToError().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::TraceSupported().
void GDBRemoteCommunicationClient::ServeSymbolLookups | ( | lldb_private::Process * | process | ) |
Definition at line 4010 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::Clear(), lldb::eSymbolTypeAbsolute, lldb::eSymbolTypeAdditional, lldb::eSymbolTypeAny, lldb::eSymbolTypeBlock, lldb::eSymbolTypeCode, lldb::eSymbolTypeCommonBlock, lldb::eSymbolTypeCompiler, lldb::eSymbolTypeData, lldb::eSymbolTypeException, lldb::eSymbolTypeHeaderFile, lldb::eSymbolTypeInstrumentation, lldb::eSymbolTypeInvalid, lldb::eSymbolTypeLineEntry, lldb::eSymbolTypeLineHeader, lldb::eSymbolTypeLocal, lldb::eSymbolTypeObjCClass, lldb::eSymbolTypeObjCIVar, lldb::eSymbolTypeObjCMetaClass, lldb::eSymbolTypeObjectFile, lldb::eSymbolTypeParam, lldb::eSymbolTypeReExported, lldb::eSymbolTypeResolver, lldb::eSymbolTypeRuntime, lldb::eSymbolTypeScopeBegin, lldb::eSymbolTypeScopeEnd, lldb::eSymbolTypeSourceFile, lldb::eSymbolTypeTrampoline, lldb::eSymbolTypeUndefined, lldb::eSymbolTypeVariable, lldb::eSymbolTypeVariableType, lldb_private::ModuleList::FindSymbolsWithNameAndType(), StringExtractor::GetHexByteString(), lldb_private::Target::GetImages(), lldb_private::GetLog(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), lldb_private::Process::GetTarget(), StringExtractorGDBRemote::IsOKResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), LLDB_INVALID_ADDRESS, LLDB_LOGF, m_qSymbol_requests_done, m_supports_qSymbol, lldb_private::process_gdb_remote::Packets, lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::Process, lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponseNoLock(), StringExtractor::SetFilePos(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::ModulesDidLoad().
bool GDBRemoteCommunicationClient::SetCurrentThread | ( | uint64_t | tid, |
lldb::pid_t | pid = LLDB_INVALID_PROCESS_ID |
||
) |
Definition at line 2720 of file GDBRemoteCommunicationClient.cpp.
References LLDB_INVALID_PROCESS_ID, m_curr_pid, m_curr_tid, and SendSetCurrentThreadPacket().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVFork(), and SendThreadSpecificPacketAndWaitForResponse().
bool GDBRemoteCommunicationClient::SetCurrentThreadForRun | ( | uint64_t | tid, |
lldb::pid_t | pid = LLDB_INVALID_PROCESS_ID |
||
) |
Definition at line 2735 of file GDBRemoteCommunicationClient.cpp.
References LLDB_INVALID_PROCESS_ID, m_curr_pid_run, m_curr_tid_run, and SendSetCurrentThreadPacket().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVFork(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoResume().
int GDBRemoteCommunicationClient::SetDetachOnError | ( | bool | enable | ) |
Sets the DetachOnError flag to enable for the process controlled by the stub.
[in] | enable | A boolean value indicating whether to detach on error or not. |
Definition at line 1960 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoAttachToProcessWithID(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoAttachToProcessWithName(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SetDisableASLR | ( | bool | enable | ) |
Sets the disable ASLR flag to enable for a process that will be launched with the 'A' packet.
[in] | enable | A boolean value indicating whether to disable ASLR or not. |
Definition at line 1943 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UNUSED_IF_ASSERT_DISABLED.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
Status GDBRemoteCommunicationClient::SetFilePermissions | ( | const FileSpec & | file_spec, |
uint32_t | file_permissions | ||
) |
Definition at line 3002 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, StringExtractor::GetChar(), lldb_private::StreamString::GetData(), StringExtractor::GetHexMaxU32(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutHex32(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
int GDBRemoteCommunicationClient::SetSTDERR | ( | const FileSpec & | file_spec | ) |
Definition at line 1887 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SetSTDIN | ( | const FileSpec & | file_spec | ) |
Sets the path to use for stdin/out/err for a process that will be launched with the 'A' packet.
[in] | file_spec | The path to use for stdin/out/err |
Definition at line 1847 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SetSTDOUT | ( | const FileSpec & | file_spec | ) |
Definition at line 1867 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
int GDBRemoteCommunicationClient::SetWorkingDir | ( | const FileSpec & | working_dir | ) |
Sets the working directory to path for a process that will be launched with the 'A' packet for non platform based connections.
If this packet is sent to a GDB server that implements the platform, it will change the current working directory for the platform process.
[in] | working_dir | The path to a directory to use when launching our process |
Definition at line 1923 of file GDBRemoteCommunicationClient.cpp.
References error(), StringExtractorGDBRemote::GetError(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoLaunch().
std::optional< GDBRemoteFStatData > GDBRemoteCommunicationClient::Stat | ( | const FileSpec & | file_spec | ) |
Definition at line 3110 of file GDBRemoteCommunicationClient.cpp.
References CloseFile(), lldb_private::File::eOpenOptionReadOnly, error(), FStat(), OpenFile(), and UINT64_MAX.
Referenced by GetFilePermissions(), and GetFileSize().
|
inline |
Definition at line 332 of file GDBRemoteCommunicationClient.h.
References m_supports_alloc_dealloc_memory.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoAllocateMemory(), and lldb_private::process_gdb_remote::ProcessGDBRemote::DoDeallocateMemory().
|
inline |
Definition at line 264 of file GDBRemoteCommunicationClient.h.
References lldb_private::process_gdb_remote::eBreakpointHardware, lldb_private::process_gdb_remote::eBreakpointSoftware, lldb_private::process_gdb_remote::eWatchpointRead, lldb_private::process_gdb_remote::eWatchpointReadWrite, lldb_private::process_gdb_remote::eWatchpointWrite, m_supports_z0, m_supports_z1, m_supports_z2, m_supports_z3, and m_supports_z4.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidForkSwitchHardwareTraps(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVFork(), lldb_private::process_gdb_remote::ProcessGDBRemote::DidVForkDone(), lldb_private::process_gdb_remote::ProcessGDBRemote::EnableBreakpointSite(), lldb_private::process_gdb_remote::ProcessGDBRemote::EnableWatchpoint(), and SendGDBStoppointTypePacket().
bool GDBRemoteCommunicationClient::SyncThreadState | ( | lldb::tid_t | tid | ) |
Definition at line 3544 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), GetSyncThreadStateSupported(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadAllRegisterValues().
void GDBRemoteCommunicationClient::TestPacketSpeed | ( | const uint32_t | num_packets, |
uint32_t | max_send, | ||
uint32_t | max_recv, | ||
uint64_t | recv_amount, | ||
bool | json, | ||
Stream & | strm | ||
) |
Definition at line 2437 of file GDBRemoteCommunicationClient.cpp.
References calculate_standard_deviation(), lldb_private::Stream::EOL(), lldb_private::Stream::Flush(), lldb_private::Stream::Format(), lldb_private::StreamString::GetString(), MakeSpeedTestPacket(), lldb_private::Stream::Printf(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and SendSpeedTestPacket().
Referenced by CommandObjectProcessGDBRemoteSpeedTest::DoExecute().
Definition at line 3327 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), gdb_errno_to_system(), StringExtractor::GetChar(), StringExtractor::GetHexMaxU32(), lldb_private::FileSpec::GetPath(), StringExtractor::GetS32(), lldb_private::StreamString::GetString(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
bool GDBRemoteCommunicationClient::UsesNativeSignals | ( | ) |
Definition at line 4252 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), GetThreadSuffixSupported(), and m_uses_native_signals.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DidLaunchOrAttach().
bool GDBRemoteCommunicationClient::WriteAllRegisters | ( | lldb::tid_t | tid, |
llvm::ArrayRef< uint8_t > | data | ||
) |
Definition at line 3483 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::endian::InlHostByteOrder(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::Stream::PutChar(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteAllRegisterValues(), and lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteRegisterBytes().
uint64_t GDBRemoteCommunicationClient::WriteFile | ( | lldb::user_id_t | fd, |
uint64_t | offset, | ||
const void * | src, | ||
uint64_t | src_len, | ||
Status & | error | ||
) |
Definition at line 3261 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), gdb_errno_to_system(), StringExtractor::GetChar(), StringExtractor::GetS32(), StringExtractor::GetS64(), lldb_private::StreamString::GetString(), lldb_private::Stream::Printf(), lldb_private::StreamGDBRemote::PutEscapedBytes(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Status GDBRemoteCommunicationClient::WriteMemoryTags | ( | lldb::addr_t | addr, |
size_t | len, | ||
int32_t | type, | ||
const std::vector< uint8_t > & | tags | ||
) |
Definition at line 682 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::Status::SetErrorString(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoWriteMemoryTags().
bool GDBRemoteCommunicationClient::WriteRegister | ( | lldb::tid_t | tid, |
uint32_t | reg_num, | ||
llvm::ArrayRef< uint8_t > | data | ||
) |
Definition at line 3469 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::endian::InlHostByteOrder(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::Stream::PutBytesAsRawHex8(), SendThreadSpecificPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::SetPrimordialRegister(), and lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteAllRegisterValues().
|
protected |
Definition at line 539 of file GDBRemoteCommunicationClient.h.
Referenced by GetVAttachOrWaitSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 543 of file GDBRemoteCommunicationClient.h.
Referenced by AvoidGPackets(), and ResetDiscoverableSettings().
|
protected |
Definition at line 593 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinaries().
|
protected |
Current gdb remote protocol process identifier for all other operations.
Definition at line 575 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessID(), GetCurrentProcessInfo(), GetDefaultThreadId(), and SetCurrentThread().
|
protected |
Definition at line 531 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessID(), GetCurrentProcessInfo(), GetDefaultThreadId(), and ResetDiscoverableSettings().
|
protected |
Current gdb remote protocol process identifier for continue, step, etc.
Definition at line 577 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessID(), GetCurrentProcessInfo(), GetDefaultThreadId(), and SetCurrentThreadForRun().
|
protected |
Current gdb remote protocol thread identifier for all other operations.
Definition at line 579 of file GDBRemoteCommunicationClient.h.
Referenced by OnRunPacketSent(), and SetCurrentThread().
|
protected |
Current gdb remote protocol thread identifier for continue, step, etc.
Definition at line 581 of file GDBRemoteCommunicationClient.h.
Referenced by SetCurrentThreadForRun().
|
protected |
Definition at line 604 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostDefaultPacketTimeout(), GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 599 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerProgramName(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 601 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerProgramVersion(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 585 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 587 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostArchitecture(), GetHostInfo(), GetSystemArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 588 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 598 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetHostname(), and ResetDiscoverableSettings().
|
protected |
Definition at line 584 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 595 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetMacCatalystVersion().
|
protected |
Definition at line 606 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteMaxPacketSize(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 583 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 596 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSBuildString(), and ResetDiscoverableSettings().
|
protected |
Definition at line 597 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSKernelDescription(), and ResetDiscoverableSettings().
|
protected |
Definition at line 594 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 540 of file GDBRemoteCommunicationClient.h.
Referenced by GetSyncThreadStateSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 589 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetProcessArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 590 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 591 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 592 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 533 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 530 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), GetHostArchitecture(), GetHostDefaultPacketTimeout(), GetHostInfo(), GetWatchpointReportedAfter(), and ResetDiscoverableSettings().
|
protected |
Definition at line 532 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetProcessArchitecture(), GetProcessStandaloneBinaries(), GetProcessStandaloneBinary(), and ResetDiscoverableSettings().
|
protected |
Definition at line 607 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetServerSupportedFeatures(), and ResetDiscoverableSettings().
|
protected |
Definition at line 568 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 612 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferMemoryMapRegionInfo(), and LoadQXferMemoryMap().
|
protected |
Definition at line 613 of file GDBRemoteCommunicationClient.h.
Referenced by LoadQXferMemoryMap().
|
protected |
Definition at line 609 of file GDBRemoteCommunicationClient.h.
Referenced by GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 610 of file GDBRemoteCommunicationClient.h.
Referenced by GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 534 of file GDBRemoteCommunicationClient.h.
Referenced by AllocateMemory(), DeallocateMemory(), ResetDiscoverableSettings(), and SupportsAllocDeallocMemory().
|
protected |
Definition at line 551 of file GDBRemoteCommunicationClient.h.
Referenced by GetAugmentedLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 537 of file GDBRemoteCommunicationClient.h.
Referenced by Detach().
|
protected |
Definition at line 557 of file GDBRemoteCommunicationClient.h.
Referenced by EnableErrorStringInPacket().
|
protected |
Definition at line 555 of file GDBRemoteCommunicationClient.h.
Referenced by GetDynamicLoaderProcessStateSupported().
|
protected |
Definition at line 554 of file GDBRemoteCommunicationClient.h.
Referenced by GetSharedCacheInfoSupported().
|
protected |
Definition at line 553 of file GDBRemoteCommunicationClient.h.
Referenced by GetLoadedDynamicLibrariesInfosSupported().
|
protected |
Definition at line 570 of file GDBRemoteCommunicationClient.h.
Referenced by GetModulesInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 552 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadExtendedInfoSupported().
|
protected |
Definition at line 569 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadsInfo().
|
protected |
Definition at line 535 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 559 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryTaggingSupported(), GetMultiprocessSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 558 of file GDBRemoteCommunicationClient.h.
Referenced by GetMultiprocessSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 521 of file GDBRemoteCommunicationClient.h.
Referenced by QueryNoAckModeSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 541 of file GDBRemoteCommunicationClient.h.
Referenced by GetpPacketSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 567 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 567 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 563 of file GDBRemoteCommunicationClient.h.
Referenced by FindProcesses(), and ResetDiscoverableSettings().
|
protected |
Definition at line 564 of file GDBRemoteCommunicationClient.h.
Referenced by GetGroupName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 569 of file GDBRemoteCommunicationClient.h.
Referenced by GetModuleInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 556 of file GDBRemoteCommunicationClient.h.
Referenced by GetQPassSignalsSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 563 of file GDBRemoteCommunicationClient.h.
Referenced by GetProcessInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 560 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetSaveCoreSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 544 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), RestoreRegisterState(), and SaveRegisterState().
|
protected |
Definition at line 568 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 565 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadStopInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 564 of file GDBRemoteCommunicationClient.h.
Referenced by GetUserName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 545 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferAuxvReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 548 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferFeaturesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 546 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 547 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 549 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferMemoryMapReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 550 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferSigInfoReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 522 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadSuffixSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 523 of file GDBRemoteCommunicationClient.h.
Referenced by GetListThreadsInStopReplySupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 524 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
protected |
Definition at line 525 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
protected |
Definition at line 526 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 527 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 528 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 529 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 571 of file GDBRemoteCommunicationClient.h.
Referenced by GetFileExists().
|
protected |
Definition at line 571 of file GDBRemoteCommunicationClient.h.
Referenced by GetFilePermissions().
|
protected |
Definition at line 570 of file GDBRemoteCommunicationClient.h.
Referenced by GetFileSize().
|
protected |
Definition at line 572 of file GDBRemoteCommunicationClient.h.
Referenced by LaunchProcess().
|
protected |
Definition at line 536 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 542 of file GDBRemoteCommunicationClient.h.
Referenced by GetxPacketSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 565 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 565 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 566 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 566 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 566 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 605 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 561 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), ResetDiscoverableSettings(), and UsesNativeSignals().
|
protected |
Definition at line 538 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetWatchpointReportedAfter().