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 () |
WatchpointHardwareFeature | GetSupportedWatchpointTypes () |
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) |
llvm::ErrorOr< llvm::MD5::MD5Result > | CalculateMD5 (const FileSpec &file_spec) |
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) |
Public Member Functions inherited from lldb_private::process_gdb_remote::GDBRemoteClientBase | |
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) |
Public Member Functions inherited from lldb_private::process_gdb_remote::GDBRemoteCommunication | |
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) |
Public Member Functions inherited from lldb_private::Communication | |
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) |
Public Member Functions inherited from lldb_private::Broadcaster | |
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) |
void | BroadcastEventIfUnique (uint32_t event_type) |
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 llvm::StringRef | 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 60 of file GDBRemoteCommunicationClient.cpp.
|
override |
Definition at line 80 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 1453 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 3180 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 3489 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().
llvm::ErrorOr< llvm::MD5::MD5Result > GDBRemoteCommunicationClient::CalculateMD5 | ( | const FileSpec & | file_spec | ) |
Definition at line 3423 of file GDBRemoteCommunicationClient.cpp.
References StringExtractor::GetChar(), StringExtractor::GetFilePos(), lldb_private::FileSpec::GetPath(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), StringExtractor::Peek(), lldb_private::Stream::PutCString(), lldb_private::Stream::PutStringAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), StringExtractor::SetFilePos(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
bool GDBRemoteCommunicationClient::CloseFile | ( | lldb::user_id_t | fd, |
Status & | error | ||
) |
Definition at line 3106 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 4275 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 3326 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 1479 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 1998 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 1501 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 591 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 2288 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 3119 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 1434 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 138 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 2875 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 731 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 2117 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(), GetGDBServerVersion(), 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_gdb_server_version, 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 2931 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 1167 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 634 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 124 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 3392 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 3206 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 3154 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 1153 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_name.
Referenced by AvoidGPackets().
uint32_t GDBRemoteCommunicationClient::GetGDBServerProgramVersion | ( | ) |
Definition at line 1161 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_version.
Referenced by AvoidGPackets().
|
protected |
Definition at line 1045 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 GetCurrentProcessInfo(), GetGDBServerProgramName(), and GetGDBServerProgramVersion().
bool GDBRemoteCommunicationClient::GetGroupName | ( | uint32_t | gid, |
std::string & | name | ||
) |
Definition at line 2410 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 1428 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 1447 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 1211 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 997 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_hostname.
void GDBRemoteCommunicationClient::GetListThreadsInStopReplySupported | ( | ) |
Definition at line 224 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 606 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 975 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 1552 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 647 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 3834 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 3934 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 187 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 980 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_build.
std::optional< std::string > GDBRemoteCommunicationClient::GetOSKernelDescription | ( | ) |
Definition at line 989 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_kernel.
llvm::VersionTuple GDBRemoteCommunicationClient::GetOSVersion | ( | ) |
Definition at line 970 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 535 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 1015 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 2095 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 1039 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 1021 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 3794 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 131 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 159 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 166 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 152 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 145 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 173 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 1716 of file GDBRemoteCommunicationClient.cpp.
References error(), LoadQXferMemoryMap(), and m_qXfer_memory_map.
Referenced by GetMemoryRegionInfo().
bool GDBRemoteCommunicationClient::GetQXferSigInfoReadSupported | ( | ) |
Definition at line 180 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 193 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 334 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, m_watchpoint_types, 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 554 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 471 of file GDBRemoteCommunicationClient.h.
References m_qSupported_response.
bool GDBRemoteCommunicationClient::GetSharedCacheInfoSupported | ( | ) |
Definition at line 620 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 2952 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 2783 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 4209 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().
WatchpointHardwareFeature GDBRemoteCommunicationClient::GetSupportedWatchpointTypes | ( | ) |
Definition at line 1847 of file GDBRemoteCommunicationClient.cpp.
References m_watchpoint_types.
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::EnableWatchpoint().
bool GDBRemoteCommunicationClient::GetSyncThreadStateSupported | ( | ) |
Definition at line 251 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 1008 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_host_arch.
bool GDBRemoteCommunicationClient::GetThreadExtendedInfoSupported | ( | ) |
Definition at line 577 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 541 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 558 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 2790 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 436 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 2383 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 237 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 448 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 1851 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 1816 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 1928 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 716 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 85 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 260 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::DoResume().
|
inline |
Definition at line 258 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
llvm::Expected< int > GDBRemoteCommunicationClient::KillProcess | ( | lldb::pid_t | pid | ) |
Definition at line 4340 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 2707 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 2618 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 780 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 1731 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 3014 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 1076 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 4324 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 3085 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 2666 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 200 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 3531 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 3993 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 3254 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 654 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 3515 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 265 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 3598 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 2961 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 3573 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 845 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 858 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 2813 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 925 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 942 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 2720 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 4255 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 2597 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 1414 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 508 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 3763 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 3729 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 3694 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 3659 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 3634 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 4087 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 2753 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 2768 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 1981 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 1964 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 3035 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 1908 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 1868 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 1888 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 1944 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 3143 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 334 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 266 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 3621 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 2470 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 3360 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 4329 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 3560 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 3294 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 698 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 3546 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 541 of file GDBRemoteCommunicationClient.h.
Referenced by GetVAttachOrWaitSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 545 of file GDBRemoteCommunicationClient.h.
Referenced by AvoidGPackets(), and ResetDiscoverableSettings().
|
protected |
Definition at line 597 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinaries().
|
protected |
Current gdb remote protocol process identifier for all other operations.
Definition at line 577 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessID(), GetCurrentProcessInfo(), GetDefaultThreadId(), and SetCurrentThread().
|
protected |
Definition at line 533 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 579 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 581 of file GDBRemoteCommunicationClient.h.
Referenced by OnRunPacketSent(), and SetCurrentThread().
|
protected |
Current gdb remote protocol thread identifier for continue, step, etc.
Definition at line 583 of file GDBRemoteCommunicationClient.h.
Referenced by SetCurrentThreadForRun().
|
protected |
Definition at line 608 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostDefaultPacketTimeout(), GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 603 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerProgramName(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 605 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetGDBServerProgramVersion(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 589 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 591 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostArchitecture(), GetHostInfo(), GetSystemArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 592 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 602 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetHostname(), and ResetDiscoverableSettings().
|
protected |
Definition at line 588 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 599 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetMacCatalystVersion().
|
protected |
Definition at line 610 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteMaxPacketSize(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 585 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 600 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSBuildString(), and ResetDiscoverableSettings().
|
protected |
Definition at line 601 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSKernelDescription(), and ResetDiscoverableSettings().
|
protected |
Definition at line 598 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 542 of file GDBRemoteCommunicationClient.h.
Referenced by GetSyncThreadStateSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 593 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetProcessArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 594 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 595 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 596 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 535 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 532 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), GetHostArchitecture(), GetHostDefaultPacketTimeout(), GetHostInfo(), GetWatchpointReportedAfter(), and ResetDiscoverableSettings().
|
protected |
Definition at line 534 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetProcessArchitecture(), GetProcessStandaloneBinaries(), GetProcessStandaloneBinary(), and ResetDiscoverableSettings().
|
protected |
Definition at line 611 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetServerSupportedFeatures(), and ResetDiscoverableSettings().
|
protected |
Definition at line 570 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 616 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferMemoryMapRegionInfo(), and LoadQXferMemoryMap().
|
protected |
Definition at line 617 of file GDBRemoteCommunicationClient.h.
Referenced by LoadQXferMemoryMap().
|
protected |
Definition at line 613 of file GDBRemoteCommunicationClient.h.
Referenced by GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 614 of file GDBRemoteCommunicationClient.h.
Referenced by GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 536 of file GDBRemoteCommunicationClient.h.
Referenced by AllocateMemory(), DeallocateMemory(), ResetDiscoverableSettings(), and SupportsAllocDeallocMemory().
|
protected |
Definition at line 553 of file GDBRemoteCommunicationClient.h.
Referenced by GetAugmentedLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 539 of file GDBRemoteCommunicationClient.h.
Referenced by Detach().
|
protected |
Definition at line 559 of file GDBRemoteCommunicationClient.h.
Referenced by EnableErrorStringInPacket().
|
protected |
Definition at line 557 of file GDBRemoteCommunicationClient.h.
Referenced by GetDynamicLoaderProcessStateSupported().
|
protected |
Definition at line 556 of file GDBRemoteCommunicationClient.h.
Referenced by GetSharedCacheInfoSupported().
|
protected |
Definition at line 555 of file GDBRemoteCommunicationClient.h.
Referenced by GetLoadedDynamicLibrariesInfosSupported().
|
protected |
Definition at line 572 of file GDBRemoteCommunicationClient.h.
Referenced by GetModulesInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 554 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadExtendedInfoSupported().
|
protected |
Definition at line 571 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadsInfo().
|
protected |
Definition at line 537 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 561 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryTaggingSupported(), GetMultiprocessSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 560 of file GDBRemoteCommunicationClient.h.
Referenced by GetMultiprocessSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 523 of file GDBRemoteCommunicationClient.h.
Referenced by QueryNoAckModeSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 543 of file GDBRemoteCommunicationClient.h.
Referenced by GetpPacketSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 569 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 569 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 565 of file GDBRemoteCommunicationClient.h.
Referenced by FindProcesses(), and ResetDiscoverableSettings().
|
protected |
Definition at line 566 of file GDBRemoteCommunicationClient.h.
Referenced by GetGroupName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 571 of file GDBRemoteCommunicationClient.h.
Referenced by GetModuleInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 558 of file GDBRemoteCommunicationClient.h.
Referenced by GetQPassSignalsSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 565 of file GDBRemoteCommunicationClient.h.
Referenced by GetProcessInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 562 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetSaveCoreSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 546 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), RestoreRegisterState(), and SaveRegisterState().
|
protected |
Definition at line 570 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 567 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadStopInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 566 of file GDBRemoteCommunicationClient.h.
Referenced by GetUserName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 547 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferAuxvReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 550 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferFeaturesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 548 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 549 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 551 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferMemoryMapReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 552 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferSigInfoReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 524 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadSuffixSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 525 of file GDBRemoteCommunicationClient.h.
Referenced by GetListThreadsInStopReplySupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 526 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
protected |
Definition at line 527 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
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 530 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 531 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 573 of file GDBRemoteCommunicationClient.h.
Referenced by GetFileExists().
|
protected |
Definition at line 573 of file GDBRemoteCommunicationClient.h.
Referenced by GetFilePermissions().
|
protected |
Definition at line 572 of file GDBRemoteCommunicationClient.h.
Referenced by GetFileSize().
|
protected |
Definition at line 574 of file GDBRemoteCommunicationClient.h.
Referenced by LaunchProcess().
|
protected |
Definition at line 538 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 544 of file GDBRemoteCommunicationClient.h.
Referenced by GetxPacketSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 567 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 567 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 568 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 568 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 568 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 609 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 563 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), ResetDiscoverableSettings(), and UsesNativeSignals().
|
protected |
Definition at line 586 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), and GetSupportedWatchpointTypes().
|
protected |
Definition at line 540 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetWatchpointReportedAfter().