|
LLDB mainline
|
#include <GDBRemoteCommunicationClient.h>
Public Types | |
| enum class | xPacketState { Unimplemented , Prefixed , Bare } |
| Public Types inherited from lldb_private::process_gdb_remote::GDBRemoteClientBase | |
| enum | { eBroadcastBitRunPacketSent = (1u << 0) } |
| Public Types inherited from lldb_private::process_gdb_remote::GDBRemoteCommunication | |
| enum class | PacketType { Invalid = 0 , Standard , Notify } |
| enum class | PacketResult { Success = 0 , ErrorSendFailed , ErrorSendAck , ErrorReplyFailed , ErrorReplyTimeout , ErrorReplyInvalid , ErrorReplyAck , ErrorDisconnected , ErrorNoSequenceLock } |
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, std::chrono::seconds interrupt_timeout=std::chrono::seconds(0)) |
| 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 | SetSTDIOWindowSize (uint16_t cols, uint16_t rows) |
| Send the dimensions of the user's stdio terminal window to the server. | |
| 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 (llvm::StringRef flavor) |
| bool | GetpPacketSupported (lldb::tid_t tid) |
| xPacketState | GetxPacketState () |
| 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 () |
| bool | GetReverseContinueSupported () |
| bool | GetReverseStepSupported () |
| bool | GetMultiMemReadSupported () |
| bool | GetMultiBreakpointSupported () |
| bool | GetAcceleratorPluginsSupported () |
| bool | GetWasmInstanceSupported () |
| Whether the WebAssembly stub can be told which module instance to read from, which it advertises with "qWasmInstance+" in its qSupported response. | |
| llvm::Expected< std::vector< AcceleratorActions > > | GetAcceleratorInitializeActions () |
| Send the "jAcceleratorPluginInitialize" packet and return the actions requested by each accelerator plugin installed in lldb-server. | |
| llvm::Expected< AcceleratorBreakpointHitResponse > | AcceleratorBreakpointHit (const AcceleratorBreakpointHitArgs &args) |
| Send the "jAcceleratorPluginBreakpointHit" packet to notify the accelerator plugin that one of its requested breakpoints was hit, and return the plugin's response. | |
| 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, std::string *separated_error_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), bool sync_on_timeout=true) |
| 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) |
| llvm::Expected< StringExtractorGDBRemote > | SendPacketAndExpectResponse (llvm::StringRef payload, std::chrono::seconds interrupt_timeout=std::chrono::seconds(0)) |
| Wrapper around SendPacketAndWaitForResponse that returns an Expected. | |
| 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) |
| PacketType | CheckForPacketIgnoreNotifications (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 |
| void | DumpHistory (Stream &strm) |
| 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 |
Additional Inherited Members | |
| Static Public Member Functions inherited from lldb_private::process_gdb_remote::GDBRemoteCommunication | |
| static Status | StartDebugserverProcess (std::variant< llvm::StringRef, shared_fd_t > comm, ProcessLaunchInfo &launch_info, const Args *inferior_args) |
| static std::optional< std::string > | ExpandRLE (std::string) |
| Expand GDB run-length encoding. | |
| Static Public Member Functions inherited from lldb_private::Communication | |
| static std::string | ConnectionStatusAsString (lldb::ConnectionStatus status) |
| Protected Types inherited from lldb_private::Broadcaster | |
| typedef std::shared_ptr< BroadcasterImpl > | BroadcasterImplSP |
| typedef std::weak_ptr< BroadcasterImpl > | BroadcasterImplWP |
Definition at line 61 of file GDBRemoteCommunicationClient.h.
| Enumerator | |
|---|---|
| Unimplemented | |
| Prefixed | |
| Bare | |
Definition at line 232 of file GDBRemoteCommunicationClient.h.
| GDBRemoteCommunicationClient::GDBRemoteCommunicationClient | ( | ) |
Definition at line 65 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::GDBRemoteClientBase::GDBRemoteClientBase(), m_default_packet_timeout, m_gdb_server_name, m_host_arch, m_host_distribution_id, m_hostname, m_os_build, m_os_kernel, m_process_arch, m_qSupported_response, m_qSymbol_requests_done, m_qXfer_memory_map, m_supported_async_json_packets_sp, m_supports_jModulesInfo, m_supports_jThreadsInfo, m_supports_QEnvironment, m_supports_QEnvironmentHexEncoded, m_supports_qfProcessInfo, m_supports_qGroupName, m_supports_qModuleInfo, m_supports_qProcessInfoPID, m_supports_qSymbol, m_supports_qThreadStopInfo, m_supports_qUserName, m_supports_vFileExists, m_supports_vFileMode, m_supports_vFileSize, m_supports_vRun, m_supports_z0, m_supports_z1, m_supports_z2, m_supports_z3, and m_supports_z4.
Referenced by GDBRemoteCommunicationClient(), and operator=().
|
override |
Definition at line 85 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Communication::Disconnect(), and lldb_private::Communication::IsConnected().
|
privatedelete |
References GDBRemoteCommunicationClient().
| llvm::Expected< AcceleratorBreakpointHitResponse > GDBRemoteCommunicationClient::AcceleratorBreakpointHit | ( | const AcceleratorBreakpointHitArgs & | args | ) |
Send the "jAcceleratorPluginBreakpointHit" packet to notify the accelerator plugin that one of its requested breakpoints was hit, and return the plugin's response.
This is only used when the lldb-server advertised accelerator plugin support via "accelerator-plugins+" in its qSupported response, since the breakpoints that trigger it are only set in that case. Errors are returned for the caller to report.
Definition at line 280 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::GetStatus(), lldb_private::StreamString::GetString(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractor::Peek(), lldb_private::StreamGDBRemote::PutAsJSON(), lldb_private::Stream::PutCString(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::Status::takeError().
| addr_t GDBRemoteCommunicationClient::AllocateMemory | ( | size_t | size, |
| uint32_t | permissions ) |
Definition at line 1578 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.
| void GDBRemoteCommunicationClient::AutoCompleteDiskFileOrDirectory | ( | CompletionRequest & | request, |
| bool | only_dir ) |
Definition at line 3320 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 3629 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 3563 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_16, 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 3246 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 4425 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::StreamString::Flush(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormatv(), 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.
Definition at line 3466 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), 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::Status, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
| bool GDBRemoteCommunicationClient::DeallocateMemory | ( | lldb::addr_t | addr | ) |
Definition at line 1604 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.
|
protected |
Definition at line 2144 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Args::AppendArgument(), lldb_private::process_gdb_remote::BASE_10, 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 1626 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, error(), lldb_private::Status::FromErrorString(), 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.
| void GDBRemoteCommunicationClient::EnableErrorStringInPacket | ( | ) |
Definition at line 720 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.
| uint32_t GDBRemoteCommunicationClient::FindProcesses | ( | const ProcessInstanceInfoMatch & | process_match_info, |
| ProcessInstanceInfoList & | process_infos ) |
Definition at line 2433 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 3259 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().
| llvm::Expected< std::vector< AcceleratorActions > > GDBRemoteCommunicationClient::GetAcceleratorInitializeActions | ( | ) |
Send the "jAcceleratorPluginInitialize" packet and return the actions requested by each accelerator plugin installed in lldb-server.
The packet is only sent if the lldb-server advertised accelerator plugin support via "accelerator-plugins+" in its qSupported response; otherwise (and when no plugin returns actions) this returns an empty vector. Errors are returned for the caller to report.
Definition at line 243 of file GDBRemoteCommunicationClient.cpp.
References GetAcceleratorPluginsSupported(), StringExtractorGDBRemote::GetStatus(), StringExtractor::GetStringRef(), StringExtractorGDBRemote::IsErrorResponse(), StringExtractorGDBRemote::IsUnsupportedResponse(), StringExtractor::Peek(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), StringExtractorGDBRemote::SetResponseValidatorToJSON(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and lldb_private::Status::takeError().
| bool GDBRemoteCommunicationClient::GetAcceleratorPluginsSupported | ( | ) |
Definition at line 230 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_accelerator_plugins.
Referenced by GetAcceleratorInitializeActions().
| AddressableBits GDBRemoteCommunicationClient::GetAddressableBits | ( | ) |
Definition at line 1559 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().
| bool GDBRemoteCommunicationClient::GetAugmentedLibrariesSVR4ReadSupported | ( | ) |
Definition at line 144 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 3009 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 861 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(), and GetCurrentThreadIDs().
Definition at line 2263 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_16, lldb_private::eArchTypeCOFF, lldb_private::eArchTypeELF, lldb_private::eArchTypeMachO, lldb::eByteOrderBig, lldb::eByteOrderInvalid, lldb::eByteOrderLittle, lldb::eByteOrderPDP, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, GetGDBServerVersion(), StringExtractor::GetHexByteString(), GetHostInfo(), lldb_private::GetLog(), StringExtractor::GetNameColonValue(), 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(), 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 3065 of file GDBRemoteCommunicationClient.cpp.
References StringExtractorGDBRemote::AllThreads, GetCurrentProcessAndThreadIDs(), GetCurrentProcessID(), LLDB_INVALID_PROCESS_ID, and LLDB_INVALID_THREAD_ID.
| bool GDBRemoteCommunicationClient::GetDefaultThreadId | ( | lldb::tid_t & | tid | ) |
Definition at line 1291 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 763 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.
| bool GDBRemoteCommunicationClient::GetEchoSupported | ( | ) |
Definition at line 130 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::m_supports_qEcho.
Definition at line 3532 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 3346 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), 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(), lldb_private::Status, and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
| lldb::user_id_t GDBRemoteCommunicationClient::GetFileSize | ( | const FileSpec & | file_spec | ) |
Definition at line 3294 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 1277 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_name.
Referenced by AvoidGPackets().
| uint32_t GDBRemoteCommunicationClient::GetGDBServerProgramVersion | ( | ) |
Definition at line 1285 of file GDBRemoteCommunicationClient.cpp.
References GetGDBServerVersion(), and m_gdb_server_version.
Referenced by AvoidGPackets().
|
protected |
Definition at line 1175 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_10, 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 2555 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 1553 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetHostInfo(), m_host_arch, and m_qHostInfo_is_valid.
Referenced by GetWorkingDir().
| seconds GDBRemoteCommunicationClient::GetHostDefaultPacketTimeout | ( | ) |
Definition at line 1572 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetHostInfo(), m_default_packet_timeout, and m_qHostInfo_is_valid.
Definition at line 1335 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_10, lldb_private::eArchTypeMachO, lldb::eByteOrderBig, lldb::eByteOrderInvalid, lldb::eByteOrderLittle, lldb::eByteOrderPDP, lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractor::GetHexByteString(), lldb_private::GetLog(), StringExtractor::GetNameColonValue(), 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::process_gdb_remote::GDBRemoteCommunication::SetPacketTimeout(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
Referenced by GetAddressableBits(), GetCurrentProcessInfo(), GetHostArchitecture(), GetHostDefaultPacketTimeout(), GetHostname(), GetMacCatalystVersion(), GetOSBuildString(), GetOSKernelDescription(), GetOSVersion(), GetSystemArchitecture(), and GetWatchpointReportedAfter().
| bool GDBRemoteCommunicationClient::GetHostname | ( | std::string & | s | ) |
Definition at line 1127 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_hostname.
| void GDBRemoteCommunicationClient::GetListThreadsInStopReplySupported | ( | ) |
Definition at line 333 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.
| bool GDBRemoteCommunicationClient::GetLoadedDynamicLibrariesInfosSupported | ( | ) |
Definition at line 735 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.
| llvm::VersionTuple GDBRemoteCommunicationClient::GetMacCatalystVersion | ( | ) |
Definition at line 1105 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_maccatalyst_version.
| Status GDBRemoteCommunicationClient::GetMemoryRegionInfo | ( | lldb::addr_t | addr, |
| lldb_private::MemoryRegionInfo & | region_info ) |
Definition at line 1679 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_10, lldb_private::process_gdb_remote::BASE_16, lldb_private::MemoryRegionInfo::Clear(), lldb_private::Range< B, S >::Contains(), lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, StringExtractorGDBRemote::eResponse, error(), lldb_private::Status::FromErrorString(), 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::SetIsShadowStack(), lldb_private::MemoryRegionInfo::SetIsStackMemory(), lldb_private::MemoryRegionInfo::SetMapped(), lldb_private::MemoryRegionInfo::SetMemoryTagged(), lldb_private::MemoryRegionInfo::SetName(), lldb_private::MemoryRegionInfo::SetPageSize(), lldb_private::MemoryRegionInfo::SetProtectionKey(), lldb_private::Range< B, S >::SetRangeBase(), lldb_private::Range< B, S >::SetRangeEnd(), lldb_private::MemoryRegionInfo::SetReadable(), lldb_private::MemoryRegionInfo::SetWritable(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, lldb_private::Status::Success(), and UNUSED_IF_ASSERT_DISABLED.
| bool GDBRemoteCommunicationClient::GetMemoryTaggingSupported | ( | ) |
Definition at line 776 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_memory_tagging.
| bool GDBRemoteCommunicationClient::GetModuleInfo | ( | const FileSpec & | module_file_spec, |
| const ArchSpec & | arch_spec, | ||
| ModuleSpec & | module_spec ) |
Definition at line 3970 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_16, 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.
| std::optional< std::vector< ModuleSpec > > GDBRemoteCommunicationClient::GetModulesInfo | ( | llvm::ArrayRef< FileSpec > | module_file_specs, |
| const llvm::Triple & | triple ) |
Definition at line 4070 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Stream::AsRawOstream(), 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.
| bool GDBRemoteCommunicationClient::GetMultiBreakpointSupported | ( | ) |
Definition at line 224 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_multi_breakpoint.
| bool GDBRemoteCommunicationClient::GetMultiMemReadSupported | ( | ) |
Definition at line 218 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_multi_mem_read.
| bool GDBRemoteCommunicationClient::GetMultiprocessSupported | ( | ) |
Definition at line 193 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), m_supports_memory_tagging, and m_supports_multiprocess.
Referenced by Detach().
| std::optional< std::string > GDBRemoteCommunicationClient::GetOSBuildString | ( | ) |
Definition at line 1110 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_build.
| std::optional< std::string > GDBRemoteCommunicationClient::GetOSKernelDescription | ( | ) |
Definition at line 1119 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_kernel.
| llvm::VersionTuple GDBRemoteCommunicationClient::GetOSVersion | ( | ) |
Definition at line 1100 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_os_version.
| bool GDBRemoteCommunicationClient::GetpPacketSupported | ( | lldb::tid_t | tid | ) |
Definition at line 664 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 1145 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), m_process_arch, and m_qProcessInfo_is_valid.
| bool GDBRemoteCommunicationClient::GetProcessInfo | ( | lldb::pid_t | pid, |
| ProcessInstanceInfo & | process_info ) |
Definition at line 2241 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 1169 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), m_binary_addresses, and m_qProcessInfo_is_valid.
| bool GDBRemoteCommunicationClient::GetProcessStandaloneBinary | ( | UUID & | uuid, |
| lldb::addr_t & | value, | ||
| bool & | value_is_offset ) |
Definition at line 1151 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, GetCurrentProcessInfo(), LLDB_INVALID_ADDRESS, m_process_standalone_uuid, m_process_standalone_value, m_process_standalone_value_is_offset, and m_qProcessInfo_is_valid.
| 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 3930 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.
| bool GDBRemoteCommunicationClient::GetQPassSignalsSupported | ( | ) |
Definition at line 137 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_QPassSignals.
| bool GDBRemoteCommunicationClient::GetQXferAuxvReadSupported | ( | ) |
Definition at line 165 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_auxv_read.
| bool GDBRemoteCommunicationClient::GetQXferFeaturesReadSupported | ( | ) |
Definition at line 172 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_qXfer_features_read.
| bool GDBRemoteCommunicationClient::GetQXferLibrariesReadSupported | ( | ) |
Definition at line 158 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 151 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 179 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 1842 of file GDBRemoteCommunicationClient.cpp.
References error(), lldb_private::Status::FromErrorString(), LoadQXferMemoryMap(), and m_qXfer_memory_map.
Referenced by GetMemoryRegionInfo().
| bool GDBRemoteCommunicationClient::GetQXferSigInfoReadSupported | ( | ) |
Definition at line 186 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 199 of file GDBRemoteCommunicationClient.cpp.
References GetRemoteQSupported(), and m_max_packet_size.
Referenced by ReadExtFeature().
| void GDBRemoteCommunicationClient::GetRemoteQSupported | ( | ) |
Definition at line 449 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_accelerator_plugins, m_supports_augmented_libraries_svr4_read, m_supports_memory_tagging, m_supports_multi_breakpoint, m_supports_multi_mem_read, 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_supports_reverse_continue, m_supports_reverse_step, m_supports_wasm_instance, m_uses_native_signals, m_watchpoint_types, m_x_packet_state, MaybeEnableCompression(), Prefixed, 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 GetAcceleratorPluginsSupported(), GetAugmentedLibrariesSVR4ReadSupported(), GetEchoSupported(), GetMemoryTaggingSupported(), GetMultiBreakpointSupported(), GetMultiMemReadSupported(), GetMultiprocessSupported(), GetQPassSignalsSupported(), GetQXferAuxvReadSupported(), GetQXferFeaturesReadSupported(), GetQXferLibrariesReadSupported(), GetQXferLibrariesSVR4ReadSupported(), GetQXferMemoryMapReadSupported(), GetQXferSigInfoReadSupported(), GetRemoteMaxPacketSize(), GetReverseContinueSupported(), GetReverseStepSupported(), GetWasmInstanceSupported(), GetxPacketState(), and UsesNativeSignals().
| bool GDBRemoteCommunicationClient::GetReverseContinueSupported | ( | ) |
Definition at line 206 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_reverse_continue.
| bool GDBRemoteCommunicationClient::GetReverseStepSupported | ( | ) |
Definition at line 212 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_reverse_step.
| bool GDBRemoteCommunicationClient::GetSaveCoreSupported | ( | ) | const |
Definition at line 683 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolYes, and m_supports_qSaveCore.
|
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 524 of file GDBRemoteCommunicationClient.h.
References m_qSupported_response.
| bool GDBRemoteCommunicationClient::GetSharedCacheInfoSupported | ( | ) |
Definition at line 749 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.
| lldb::addr_t GDBRemoteCommunicationClient::GetShlibInfoAddr | ( | ) |
Definition at line 3086 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.
| bool GDBRemoteCommunicationClient::GetStopReply | ( | StringExtractorGDBRemote & | response | ) |
| 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 4358 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.
| WatchpointHardwareFeature GDBRemoteCommunicationClient::GetSupportedWatchpointTypes | ( | ) |
Definition at line 1973 of file GDBRemoteCommunicationClient.cpp.
References m_watchpoint_types.
| bool GDBRemoteCommunicationClient::GetSyncThreadStateSupported | ( | ) |
Definition at line 360 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 1138 of file GDBRemoteCommunicationClient.cpp.
References GetHostInfo(), and m_host_arch.
| bool GDBRemoteCommunicationClient::GetThreadExtendedInfoSupported | ( | ) |
Definition at line 706 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.
|
protected |
Definition at line 670 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 687 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.
| bool GDBRemoteCommunicationClient::GetThreadStopInfo | ( | lldb::tid_t | tid, |
| StringExtractorGDBRemote & | response ) |
Definition at line 2924 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 574 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 SendThreadSpecificPacketAndWaitForResponse(), and UsesNativeSignals().
| bool GDBRemoteCommunicationClient::GetUserName | ( | uint32_t | uid, |
| std::string & | name ) |
Definition at line 2528 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 346 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.
| bool GDBRemoteCommunicationClient::GetVContSupported | ( | llvm::StringRef | flavor | ) |
Definition at line 587 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 HasAnyVContSupport(), and HasFullVContSupport().
| bool GDBRemoteCommunicationClient::GetWasmInstanceSupported | ( | ) |
Whether the WebAssembly stub can be told which module instance to read from, which it advertises with "qWasmInstance+" in its qSupported response.
Definition at line 236 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), and m_supports_wasm_instance.
| std::optional< bool > GDBRemoteCommunicationClient::GetWatchpointReportedAfter | ( | ) |
Definition at line 1977 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.
| std::optional< uint32_t > GDBRemoteCommunicationClient::GetWatchpointSlotCount | ( | ) |
Definition at line 1942 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_10, 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.
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 2074 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.
| GDBRemoteCommunicationClient::xPacketState GDBRemoteCommunicationClient::GetxPacketState | ( | ) |
Definition at line 846 of file GDBRemoteCommunicationClient.cpp.
References Bare, GetRemoteQSupported(), StringExtractorGDBRemote::IsOKResponse(), m_x_packet_state, lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and Unimplemented.
Definition at line 90 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::Communication::IsConnected(), QueryNoAckModeSupported(), ResetDiscoverableSettings(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::SendAck().
|
inline |
Definition at line 278 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
|
inline |
Definition at line 276 of file GDBRemoteCommunicationClient.h.
References GetVContSupported().
| llvm::Expected< int > GDBRemoteCommunicationClient::KillProcess | ( | lldb::pid_t | pid | ) |
Definition at line 4490 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.
| bool GDBRemoteCommunicationClient::KillSpawnedProcess | ( | lldb::pid_t | pid | ) |
Definition at line 2841 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 2752 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::process_gdb_remote::BASE_10, 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 910 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().
|
protected |
Definition at line 1857 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolYes, error(), lldb_private::XMLNode::ForEachChildElement(), lldb_private::Status::FromError(), lldb_private::Status::FromErrorString(), 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::MemoryRegionInfo::SetBlocksize(), lldb_private::Range< B, S >::SetByteSize(), lldb_private::MemoryRegionInfo::SetFlash(), lldb_private::Range< B, S >::SetRangeBase(), lldb_private::MemoryRegionInfo::SetReadable(), lldb_private::MemoryRegionInfo::SetWritable(), and lldb_private::XMLDocument::XMLEnabled().
Referenced by GetQXferMemoryMapRegionInfo().
Definition at line 3150 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, lldb_private::Status::FromErrorStringWithFormat(), 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::Status, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
|
protected |
Definition at line 1206 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 4474 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 3225 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 |
References GDBRemoteCommunicationClient().
| size_t GDBRemoteCommunicationClient::QueryGDBServer | ( | std::vector< std::pair< uint16_t, std::string > > & | connection_urls | ) |
Definition at line 2800 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StructuredData::Array::GetItemAtIndexAsDictionary(), lldb_private::StructuredData::Array::GetSize(), StringExtractor::GetStringRef(), 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 309 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 3671 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 4129 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::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 3394 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), lldb_private::Status::FromErrorString(), 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(), lldb_private::Status, and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
| DataBufferSP GDBRemoteCommunicationClient::ReadMemoryTags | ( | lldb::addr_t | addr, |
| size_t | len, | ||
| int32_t | type ) |
Definition at line 783 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.
| DataBufferSP GDBRemoteCommunicationClient::ReadRegister | ( | lldb::tid_t | tid, |
| uint32_t | reg_num ) |
Definition at line 3655 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 374 of file GDBRemoteCommunicationClient.cpp.
References 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_accelerator_plugins, m_supports_alloc_dealloc_memory, m_supports_augmented_libraries_svr4_read, m_supports_jModulesInfo, m_supports_memory_region_info, m_supports_multi_breakpoint, m_supports_multi_mem_read, 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_reverse_continue, m_supports_reverse_step, 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_wasm_instance, m_supports_z0, m_supports_z1, m_supports_z2, m_supports_z3, m_supports_z4, m_target_vm_page_size, m_uses_native_signals, m_x_packet_state, and UINT32_MAX.
Referenced by HandshakeWithServer().
| bool GDBRemoteCommunicationClient::RestoreRegisterState | ( | lldb::tid_t | tid, |
| uint32_t | save_id ) |
Definition at line 3738 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, | ||
| std::string * | separated_error_output, | ||
| const Timeout< std::micro > & | timeout ) |
Definition at line 3095 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Status::FromErrorString(), 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::Status, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
| bool GDBRemoteCommunicationClient::SaveRegisterState | ( | lldb::tid_t | tid, |
| uint32_t & | save_id ) |
Definition at line 3713 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 975 of file GDBRemoteCommunicationClient.cpp.
References SendEnvironmentPacket().
| 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 988 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 2947 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.
|
protected |
| int GDBRemoteCommunicationClient::SendLaunchArchPacket | ( | const char * | arch | ) |
Definition at line 1055 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.
| int GDBRemoteCommunicationClient::SendLaunchEventDataPacket | ( | const char * | data, |
| bool * | was_supported = nullptr ) |
Definition at line 1072 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.
| std::optional< PidTid > GDBRemoteCommunicationClient::SendSetCurrentThreadPacket | ( | uint64_t | tid, |
| uint64_t | pid, | ||
| char | op ) |
Definition at line 2854 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 4404 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Status::FromErrorString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), lldb_private::Status, and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
| bool GDBRemoteCommunicationClient::SendSpeedTestPacket | ( | uint32_t | send_size, |
| uint32_t | recv_size ) |
Definition at line 2742 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::StreamString::GetString(), MakeSpeedTestPacket(), 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, | ||
| std::chrono::seconds | interrupt_timeout = std::chrono::seconds(0) ) |
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. |
| [in] | interrupt_timeout | If the inferior is running, how long to wait for a \x03 BREAK to interrupt it before giving up. Pass zero only when the caller knows the inferior is stopped. |
Definition at line 1538 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.
|
protected |
Definition at line 637 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 3900 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().
| llvm::Expected< std::string > GDBRemoteCommunicationClient::SendTraceGetState | ( | llvm::StringRef | type, |
| std::chrono::seconds | interrupt_timeout ) |
Definition at line 3867 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().
| llvm::Error GDBRemoteCommunicationClient::SendTraceStart | ( | const llvm::json::Value & | request, |
| std::chrono::seconds | interrupt_timeout ) |
Definition at line 3833 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().
| llvm::Error GDBRemoteCommunicationClient::SendTraceStop | ( | const TraceStopRequest & | request, |
| std::chrono::seconds | interrupt_timeout ) |
Definition at line 3799 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().
| llvm::Expected< TraceSupportedResponse > GDBRemoteCommunicationClient::SendTraceSupported | ( | std::chrono::seconds | interrupt_timeout | ) |
Definition at line 3774 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().
| void GDBRemoteCommunicationClient::ServeSymbolLookups | ( | lldb_private::Process * | process | ) |
Definition at line 4223 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.
| bool GDBRemoteCommunicationClient::SetCurrentThread | ( | uint64_t | tid, |
| lldb::pid_t | pid = LLDB_INVALID_PROCESS_ID ) |
Definition at line 2887 of file GDBRemoteCommunicationClient.cpp.
References LLDB_INVALID_PROCESS_ID, m_curr_pid, m_curr_tid, and SendSetCurrentThreadPacket().
Referenced by SendThreadSpecificPacketAndWaitForResponse().
| bool GDBRemoteCommunicationClient::SetCurrentThreadForRun | ( | uint64_t | tid, |
| lldb::pid_t | pid = LLDB_INVALID_PROCESS_ID ) |
Definition at line 2902 of file GDBRemoteCommunicationClient.cpp.
References LLDB_INVALID_PROCESS_ID, m_curr_pid_run, m_curr_tid_run, and SendSetCurrentThreadPacket().
| 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 2127 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.
| 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 2110 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.
| Status GDBRemoteCommunicationClient::SetFilePermissions | ( | const FileSpec & | file_spec, |
| uint32_t | file_permissions ) |
Definition at line 3173 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, lldb_private::Status::FromErrorStringWithFormat(), 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::Status, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
| int GDBRemoteCommunicationClient::SetSTDERR | ( | const FileSpec & | file_spec | ) |
Definition at line 2034 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.
| 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 1994 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.
| int GDBRemoteCommunicationClient::SetSTDIOWindowSize | ( | uint16_t | cols, |
| uint16_t | rows ) |
Send the dimensions of the user's stdio terminal window to the server.
Definition at line 2054 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.
| int GDBRemoteCommunicationClient::SetSTDOUT | ( | const FileSpec & | file_spec | ) |
Definition at line 2014 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.
| 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 2090 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.
| std::optional< GDBRemoteFStatData > GDBRemoteCommunicationClient::Stat | ( | const FileSpec & | file_spec | ) |
Definition at line 3283 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 385 of file GDBRemoteCommunicationClient.h.
References m_supports_alloc_dealloc_memory.
|
inline |
Definition at line 284 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 GetStoppointType(), and SendGDBStoppointTypePacket().
| bool GDBRemoteCommunicationClient::SyncThreadState | ( | lldb::tid_t | tid | ) |
Definition at line 3761 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 2615 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 3500 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), 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::Status, lldb_private::process_gdb_remote::GDBRemoteCommunication::Success, and UINT32_MAX.
| bool GDBRemoteCommunicationClient::UsesNativeSignals | ( | ) |
Definition at line 4479 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::eLazyBoolCalculate, lldb_private::eLazyBoolYes, GetRemoteQSupported(), GetThreadSuffixSupported(), and m_uses_native_signals.
| bool GDBRemoteCommunicationClient::WriteAllRegisters | ( | lldb::tid_t | tid, |
| llvm::ArrayRef< uint8_t > | data ) |
Definition at line 3700 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 3434 of file GDBRemoteCommunicationClient.cpp.
References lldb::eErrorTypePOSIX, error(), lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), 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(), lldb_private::Status, 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 827 of file GDBRemoteCommunicationClient.cpp.
References lldb_private::Status::FromErrorString(), lldb_private::StreamString::GetString(), StringExtractorGDBRemote::IsOKResponse(), lldb_private::Stream::Printf(), lldb_private::Stream::PutBytesAsRawHex8(), lldb_private::process_gdb_remote::GDBRemoteClientBase::SendPacketAndWaitForResponse(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::Success.
| bool GDBRemoteCommunicationClient::WriteRegister | ( | lldb::tid_t | tid, |
| uint32_t | reg_num, | ||
| llvm::ArrayRef< uint8_t > | data ) |
Definition at line 3686 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 594 of file GDBRemoteCommunicationClient.h.
Referenced by GetVAttachOrWaitSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 597 of file GDBRemoteCommunicationClient.h.
Referenced by AvoidGPackets(), and ResetDiscoverableSettings().
|
protected |
Definition at line 656 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinaries().
|
protected |
Current gdb remote protocol process identifier for all other operations.
Definition at line 636 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessID(), GetCurrentProcessInfo(), GetDefaultThreadId(), and SetCurrentThread().
|
protected |
Definition at line 586 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 638 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 640 of file GDBRemoteCommunicationClient.h.
Referenced by OnRunPacketSent(), and SetCurrentThread().
|
protected |
Current gdb remote protocol thread identifier for continue, step, etc.
Definition at line 642 of file GDBRemoteCommunicationClient.h.
Referenced by SetCurrentThreadForRun().
|
protected |
Definition at line 667 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostDefaultPacketTimeout(), GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 662 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetGDBServerProgramName(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 664 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetGDBServerProgramVersion(), GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 648 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 650 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostArchitecture(), GetHostInfo(), GetSystemArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 651 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 661 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostInfo(), GetHostname(), and ResetDiscoverableSettings().
|
protected |
Definition at line 647 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), and GetHostInfo().
|
protected |
Definition at line 658 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetMacCatalystVersion().
|
protected |
Definition at line 669 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteMaxPacketSize(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 644 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 659 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostInfo(), GetOSBuildString(), and ResetDiscoverableSettings().
|
protected |
Definition at line 660 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetHostInfo(), GetOSKernelDescription(), and ResetDiscoverableSettings().
|
protected |
Definition at line 657 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetOSVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 595 of file GDBRemoteCommunicationClient.h.
Referenced by GetSyncThreadStateSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 652 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetCurrentProcessInfo(), GetProcessArchitecture(), and ResetDiscoverableSettings().
|
protected |
Definition at line 653 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 654 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 655 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), and GetProcessStandaloneBinary().
|
protected |
Definition at line 588 of file GDBRemoteCommunicationClient.h.
Referenced by GetGDBServerVersion(), and ResetDiscoverableSettings().
|
protected |
Definition at line 585 of file GDBRemoteCommunicationClient.h.
Referenced by GetAddressableBits(), GetHostArchitecture(), GetHostDefaultPacketTimeout(), GetHostInfo(), GetWatchpointReportedAfter(), and ResetDiscoverableSettings().
|
protected |
Definition at line 587 of file GDBRemoteCommunicationClient.h.
Referenced by GetCurrentProcessInfo(), GetProcessArchitecture(), GetProcessStandaloneBinaries(), GetProcessStandaloneBinary(), and ResetDiscoverableSettings().
|
protected |
Definition at line 670 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetRemoteQSupported(), GetServerSupportedFeatures(), and ResetDiscoverableSettings().
|
protected |
Definition at line 629 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 675 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetQXferMemoryMapRegionInfo(), and LoadQXferMemoryMap().
|
protected |
Definition at line 676 of file GDBRemoteCommunicationClient.h.
Referenced by LoadQXferMemoryMap().
|
protected |
Definition at line 672 of file GDBRemoteCommunicationClient.h.
Referenced by GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 673 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetSupportedStructuredDataPlugins(), and ResetDiscoverableSettings().
|
protected |
Definition at line 621 of file GDBRemoteCommunicationClient.h.
Referenced by GetAcceleratorPluginsSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 589 of file GDBRemoteCommunicationClient.h.
Referenced by AllocateMemory(), DeallocateMemory(), ResetDiscoverableSettings(), and SupportsAllocDeallocMemory().
|
protected |
Definition at line 605 of file GDBRemoteCommunicationClient.h.
Referenced by GetAugmentedLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 592 of file GDBRemoteCommunicationClient.h.
Referenced by Detach().
|
protected |
Definition at line 611 of file GDBRemoteCommunicationClient.h.
Referenced by EnableErrorStringInPacket().
|
protected |
Definition at line 609 of file GDBRemoteCommunicationClient.h.
Referenced by GetDynamicLoaderProcessStateSupported().
|
protected |
Definition at line 608 of file GDBRemoteCommunicationClient.h.
Referenced by GetSharedCacheInfoSupported().
|
protected |
Definition at line 607 of file GDBRemoteCommunicationClient.h.
Referenced by GetLoadedDynamicLibrariesInfosSupported().
|
protected |
Definition at line 631 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetModulesInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 606 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadExtendedInfoSupported().
|
protected |
Definition at line 630 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), and GetThreadsInfo().
|
protected |
Definition at line 590 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 613 of file GDBRemoteCommunicationClient.h.
Referenced by GetMemoryTaggingSupported(), GetMultiprocessSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 620 of file GDBRemoteCommunicationClient.h.
Referenced by GetMultiBreakpointSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 619 of file GDBRemoteCommunicationClient.h.
Referenced by GetMultiMemReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 612 of file GDBRemoteCommunicationClient.h.
Referenced by GetMultiprocessSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 576 of file GDBRemoteCommunicationClient.h.
Referenced by QueryNoAckModeSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 596 of file GDBRemoteCommunicationClient.h.
Referenced by GetpPacketSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 628 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 628 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), and SendEnvironmentPacket().
|
protected |
Definition at line 624 of file GDBRemoteCommunicationClient.h.
Referenced by FindProcesses(), GDBRemoteCommunicationClient(), and ResetDiscoverableSettings().
|
protected |
Definition at line 625 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetGroupName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 630 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetModuleInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 610 of file GDBRemoteCommunicationClient.h.
Referenced by GetQPassSignalsSupported(), and GetRemoteQSupported().
|
protected |
Definition at line 624 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetProcessInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 614 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetSaveCoreSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 598 of file GDBRemoteCommunicationClient.h.
Referenced by ResetDiscoverableSettings(), RestoreRegisterState(), and SaveRegisterState().
|
protected |
Definition at line 629 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), and ServeSymbolLookups().
|
protected |
Definition at line 626 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetThreadStopInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 625 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), GetUserName(), and ResetDiscoverableSettings().
|
protected |
Definition at line 599 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferAuxvReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 602 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferFeaturesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 600 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 601 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferLibrariesSVR4ReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 603 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferMemoryMapReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 604 of file GDBRemoteCommunicationClient.h.
Referenced by GetQXferSigInfoReadSupported(), GetRemoteQSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 617 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetReverseContinueSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 618 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetReverseStepSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 577 of file GDBRemoteCommunicationClient.h.
Referenced by GetThreadSuffixSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 578 of file GDBRemoteCommunicationClient.h.
Referenced by GetListThreadsInStopReplySupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 579 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
protected |
Definition at line 580 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported().
|
protected |
Definition at line 582 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 581 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 584 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 583 of file GDBRemoteCommunicationClient.h.
Referenced by GetVContSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 632 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), and GetFileExists().
|
protected |
Definition at line 632 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), and GetFilePermissions().
|
protected |
Definition at line 631 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), and GetFileSize().
|
protected |
Definition at line 633 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), and LaunchProcess().
|
protected |
Definition at line 622 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetWasmInstanceSupported(), and ResetDiscoverableSettings().
|
protected |
Definition at line 591 of file GDBRemoteCommunicationClient.h.
Referenced by GetWatchpointSlotCount().
|
protected |
Definition at line 626 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 626 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 627 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 627 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 627 of file GDBRemoteCommunicationClient.h.
Referenced by GDBRemoteCommunicationClient(), ResetDiscoverableSettings(), SendGDBStoppointTypePacket(), and SupportsGDBStoppointPacket().
|
protected |
Definition at line 668 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), GetMemoryRegionInfo(), and ResetDiscoverableSettings().
|
protected |
Definition at line 615 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), ResetDiscoverableSettings(), and UsesNativeSignals().
|
protected |
Definition at line 645 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), and GetSupportedWatchpointTypes().
|
protected |
Definition at line 593 of file GDBRemoteCommunicationClient.h.
Referenced by GetHostInfo(), and GetWatchpointReportedAfter().
|
protected |
Definition at line 616 of file GDBRemoteCommunicationClient.h.
Referenced by GetRemoteQSupported(), GetxPacketState(), and ResetDiscoverableSettings().