LLDB mainline
|
#include <ProcessInfo.h>
Classes | |
struct | timespec |
Static Public Member Functions | |
static void | DumpTableHeader (Stream &s, bool show_args, bool verbose) |
Protected Attributes | |
uint32_t | m_euid = UINT32_MAX |
uint32_t | m_egid = UINT32_MAX |
lldb::pid_t | m_parent_pid = LLDB_INVALID_PROCESS_ID |
lldb::pid_t | m_process_group_id = LLDB_INVALID_PROCESS_ID |
lldb::pid_t | m_process_session_id = LLDB_INVALID_PROCESS_ID |
struct timespec | m_user_time |
struct timespec | m_system_time |
struct timespec | m_cumulative_user_time |
struct timespec | m_cumulative_system_time |
std::optional< int8_t > | m_priority_value = std::nullopt |
std::optional< bool > | m_zombie = std::nullopt |
Protected Attributes inherited from lldb_private::ProcessInfo | |
FileSpec | m_executable |
std::string | m_arg0 |
Args | m_arguments |
Environment | m_environment |
uint32_t | m_uid = UINT32_MAX |
uint32_t | m_gid = UINT32_MAX |
ArchSpec | m_arch |
lldb::pid_t | m_pid = LLDB_INVALID_PROCESS_ID |
lldb::ScriptedMetadataSP | m_scripted_metadata_sp = nullptr |
lldb::ListenerSP | m_listener_sp = nullptr |
lldb::ListenerSP | m_hijack_listener_sp = nullptr |
lldb::ListenerSP | m_shadow_listener_sp = nullptr |
Definition at line 141 of file ProcessInfo.h.
|
default |
|
inline |
Definition at line 150 of file ProcessInfo.h.
|
inline |
Definition at line 153 of file ProcessInfo.h.
References lldb_private::ProcessInfo::Clear(), LLDB_INVALID_PROCESS_ID, m_egid, m_euid, m_parent_pid, and UINT32_MAX.
Referenced by lldb_private::ProcessAttachInfo::Clear(), lldb_private::ProcessInstanceInfoMatch::Clear(), GetProcessAndStatInfo(), lldb_private::Host::GetProcessInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetProcessInfo(), ProcessElfCore::GetProcessInfo(), lldb_private::Process::GetProcessInfo(), lldb_private::ProcessTrace::GetProcessInfo(), lldb_private::minidump::ProcessMinidump::GetProcessInfo(), and lldb_private::ScriptedProcess::GetProcessInfo().
|
inline |
Definition at line 235 of file ProcessInfo.h.
References m_cumulative_system_time, lldb_private::ProcessInstanceInfo::timespec::tv_sec, and lldb_private::ProcessInstanceInfo::timespec::tv_usec.
|
inline |
Definition at line 222 of file ProcessInfo.h.
References m_cumulative_user_time, lldb_private::ProcessInstanceInfo::timespec::tv_sec, and lldb_private::ProcessInstanceInfo::timespec::tv_usec.
void ProcessInstanceInfo::Dump | ( | Stream & | s, |
UserIDResolver & | resolver | ||
) | const |
Definition at line 120 of file ProcessInfo.cpp.
References lldb_private::Stream::AsRawOstream(), lldb_private::FileSpec::Dump(), lldb_private::ArchSpec::DumpTriple(), EffectiveGroupIDIsValid(), EffectiveUserIDIsValid(), lldb_private::Stream::EOL(), lldb_private::Stream::Format(), lldb_private::Args::GetArgumentAtIndex(), lldb_private::Args::GetArgumentCount(), lldb_private::ConstString::GetCString(), GetEffectiveGroupID(), GetEffectiveUserID(), lldb_private::FileSpec::GetFilename(), lldb_private::ProcessInfo::GetGroupID(), lldb_private::UserIDResolver::GetGroupName(), GetParentProcessID(), lldb_private::ProcessInfo::GetUserID(), lldb_private::UserIDResolver::GetUserName(), lldb_private::ProcessInfo::GroupIDIsValid(), lldb_private::ArchSpec::IsValid(), LLDB_INVALID_PROCESS_ID, lldb_private::ProcessInfo::m_arch, lldb_private::ProcessInfo::m_arguments, lldb_private::ProcessInfo::m_environment, lldb_private::ProcessInfo::m_executable, lldb_private::ProcessInfo::m_pid, ParentProcessIDIsValid(), lldb_private::Stream::Printf(), lldb_private::Stream::PutCString(), and lldb_private::ProcessInfo::UserIDIsValid().
Referenced by CommandObjectPlatformProcessInfo::DoExecute().
void ProcessInstanceInfo::DumpAsTableRow | ( | Stream & | s, |
UserIDResolver & | resolver, | ||
bool | show_args, | ||
bool | verbose | ||
) | const |
Definition at line 193 of file ProcessInfo.cpp.
References lldb_private::Stream::AsRawOstream(), lldb_private::ArchSpec::DumpTriple(), EffectiveGroupIDIsValid(), EffectiveUserIDIsValid(), lldb_private::Stream::EOL(), lldb_private::Stream::Format(), lldb_private::Args::GetArgumentAtIndex(), lldb_private::Args::GetArgumentCount(), lldb_private::StreamString::GetData(), GetEffectiveGroupID(), GetEffectiveUserID(), lldb_private::ProcessInfo::GetGroupID(), lldb_private::UserIDResolver::GetGroupName(), lldb_private::ProcessInfo::GetName(), GetParentProcessID(), lldb_private::ProcessInfo::GetUserID(), lldb_private::UserIDResolver::GetUserName(), lldb_private::ProcessInfo::GroupIDIsValid(), lldb_private::ArchSpec::IsValid(), LLDB_INVALID_PROCESS_ID, lldb_private::ProcessInfo::m_arch, lldb_private::ProcessInfo::m_arg0, lldb_private::ProcessInfo::m_arguments, lldb_private::ProcessInfo::m_pid, ParentProcessIDIsValid(), lldb_private::Stream::Printf(), lldb_private::Stream::PutChar(), lldb_private::Stream::PutCString(), and lldb_private::ProcessInfo::UserIDIsValid().
Referenced by CommandObjectPlatformProcessList::DoExecute().
|
static |
Definition at line 170 of file ProcessInfo.cpp.
References lldb_private::Stream::Printf(), and lldb_private::Stream::PutCString().
Referenced by lldb_private::Process::Attach(), and CommandObjectPlatformProcessList::DoExecute().
|
inline |
Definition at line 166 of file ProcessInfo.h.
References m_egid, and UINT32_MAX.
Referenced by Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), lldb_private::ProcessInstanceInfoMatch::MatchAllProcesses(), ELFLinuxPrPsInfo::Populate(), and lldb_private::ProcessInstanceInfoMatch::UserIDsMatch().
|
inline |
Definition at line 164 of file ProcessInfo.h.
References m_euid, and UINT32_MAX.
Referenced by Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), lldb_private::ProcessInstanceInfoMatch::MatchAllProcesses(), ELFLinuxPrPsInfo::Populate(), and lldb_private::ProcessInstanceInfoMatch::UserIDsMatch().
|
inline |
Definition at line 227 of file ProcessInfo.h.
References m_cumulative_system_time.
Referenced by ELFLinuxPrStatus::Populate().
|
inline |
Definition at line 214 of file ProcessInfo.h.
References m_cumulative_user_time.
Referenced by ELFLinuxPrStatus::Populate().
|
inline |
Definition at line 162 of file ProcessInfo.h.
References m_egid.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse_DebugServerStyle(), Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), and lldb_private::ProcessInstanceInfoMatch::UserIDsMatch().
|
inline |
Definition at line 160 of file ProcessInfo.h.
References m_euid.
Referenced by lldb::SBTarget::Attach(), lldb::SBTarget::AttachToProcessWithID(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse_DebugServerStyle(), Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), and lldb_private::ProcessInstanceInfoMatch::UserIDsMatch().
|
inline |
Definition at line 172 of file ProcessInfo.h.
References m_parent_pid.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse_DebugServerStyle(), Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), ELFLinuxPrStatus::Populate(), ELFLinuxPrPsInfo::Populate(), lldb_private::ProcessInstanceInfoMatch::ProcessIDsMatch(), and lldb_private::ProcessAttachInfo::ProcessInfoSpecified().
|
inline |
Definition at line 240 of file ProcessInfo.h.
References m_priority_value.
Referenced by ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 180 of file ProcessInfo.h.
References m_process_group_id.
Referenced by ELFLinuxPrStatus::Populate(), and ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 188 of file ProcessInfo.h.
References m_process_session_id.
Referenced by ELFLinuxPrStatus::Populate(), and ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 206 of file ProcessInfo.h.
References m_system_time.
Referenced by ELFLinuxPrStatus::Populate().
|
inline |
Definition at line 198 of file ProcessInfo.h.
References m_user_time.
Referenced by ELFLinuxPrStatus::Populate().
|
inline |
Definition at line 248 of file ProcessInfo.h.
References m_zombie.
Referenced by ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 176 of file ProcessInfo.h.
References LLDB_INVALID_PROCESS_ID, and m_parent_pid.
Referenced by Dump(), DumpAsTableRow(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), lldb_private::ProcessInstanceInfoMatch::MatchAllProcesses(), ELFLinuxPrPsInfo::Populate(), and lldb_private::ProcessInstanceInfoMatch::ProcessIDsMatch().
|
inline |
Definition at line 184 of file ProcessInfo.h.
References LLDB_INVALID_PROCESS_ID, and m_process_group_id.
Referenced by ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 194 of file ProcessInfo.h.
References LLDB_INVALID_PROCESS_ID, and m_process_session_id.
Referenced by ELFLinuxPrPsInfo::Populate().
|
inline |
Definition at line 231 of file ProcessInfo.h.
References m_cumulative_system_time.
|
inline |
Definition at line 218 of file ProcessInfo.h.
References m_cumulative_user_time.
|
inline |
Definition at line 170 of file ProcessInfo.h.
References m_egid.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), lldb_private::Host::FindProcessesImpl(), GetFreeBSDProcessUserAndGroup(), GetMacOSXProcessUserAndGroup(), GetNetBSDProcessUserAndGroup(), GetOpenBSDProcessUserAndGroup(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qfProcessInfo(), and CommandObjectPlatformProcessList::CommandOptions::SetOptionValue().
|
inline |
Definition at line 168 of file ProcessInfo.h.
References m_euid.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), lldb_private::Host::FindProcessesImpl(), GetFreeBSDProcessUserAndGroup(), GetMacOSXProcessUserAndGroup(), GetNetBSDProcessUserAndGroup(), GetOpenBSDProcessUserAndGroup(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qfProcessInfo(), and CommandObjectPlatformProcessList::CommandOptions::SetOptionValue().
|
inline |
Definition at line 246 of file ProcessInfo.h.
References m_zombie.
|
inline |
Definition at line 174 of file ProcessInfo.h.
References m_parent_pid.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), lldb_private::Host::FindProcessesImpl(), GetFreeBSDProcessUserAndGroup(), GetMacOSXProcessUserAndGroup(), GetNetBSDProcessUserAndGroup(), GetOpenBSDProcessUserAndGroup(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qfProcessInfo(), and CommandObjectPlatformProcessList::CommandOptions::SetOptionValue().
|
inline |
Definition at line 242 of file ProcessInfo.h.
References m_priority_value.
|
inline |
Definition at line 182 of file ProcessInfo.h.
References m_process_group_id.
|
inline |
Definition at line 190 of file ProcessInfo.h.
References m_process_session_id.
|
inline |
Definition at line 208 of file ProcessInfo.h.
References m_system_time.
|
inline |
Definition at line 200 of file ProcessInfo.h.
References m_user_time.
|
inline |
Definition at line 210 of file ProcessInfo.h.
References m_system_time, lldb_private::ProcessInstanceInfo::timespec::tv_sec, and lldb_private::ProcessInstanceInfo::timespec::tv_usec.
|
inline |
Definition at line 202 of file ProcessInfo.h.
References m_user_time, lldb_private::ProcessInstanceInfo::timespec::tv_sec, and lldb_private::ProcessInstanceInfo::timespec::tv_usec.
|
protected |
Definition at line 266 of file ProcessInfo.h.
Referenced by CumulativeSystemTimeIsValid(), GetCumulativeSystemTime(), and SetCumulativeSystemTime().
|
protected |
Definition at line 265 of file ProcessInfo.h.
Referenced by CumulativeUserTimeIsValid(), GetCumulativeUserTime(), and SetCumulativeUserTime().
|
protected |
Definition at line 259 of file ProcessInfo.h.
Referenced by Clear(), EffectiveGroupIDIsValid(), GetEffectiveGroupID(), and SetEffectiveGroupID().
|
protected |
Definition at line 258 of file ProcessInfo.h.
Referenced by Clear(), EffectiveUserIDIsValid(), GetEffectiveUserID(), and SetEffectiveUserID().
|
protected |
Definition at line 260 of file ProcessInfo.h.
Referenced by Clear(), GetParentProcessID(), ParentProcessIDIsValid(), and SetParentProcessID().
|
protected |
Definition at line 267 of file ProcessInfo.h.
Referenced by GetPriorityValue(), and SetPriorityValue().
|
protected |
Definition at line 261 of file ProcessInfo.h.
Referenced by GetProcessGroupID(), ProcessGroupIDIsValid(), and SetProcessGroupID().
|
protected |
Definition at line 262 of file ProcessInfo.h.
Referenced by GetProcessSessionID(), ProcessSessionIDIsValid(), and SetProcessSessionID().
|
protected |
Definition at line 264 of file ProcessInfo.h.
Referenced by GetSystemTime(), SetSystemTime(), and SystemTimeIsValid().
|
protected |
Definition at line 263 of file ProcessInfo.h.
Referenced by GetUserTime(), SetUserTime(), and UserTimeIsValid().
|
protected |
Definition at line 268 of file ProcessInfo.h.
Referenced by IsZombie(), and SetIsZombie().