LLDB  mainline
Public Types | Public Member Functions | Private Attributes | List of all members
DynamicLoaderDarwinKernel::KextImageInfo Class Reference

#include <DynamicLoaderDarwinKernel.h>

Collaboration diagram for DynamicLoaderDarwinKernel::KextImageInfo:
Collaboration graph
[legend]

Public Types

typedef std::vector< KextImageInfocollection
 
typedef collection::iterator iterator
 
typedef collection::const_iterator const_iterator
 

Public Member Functions

 KextImageInfo ()
 
void Clear ()
 
bool LoadImageAtFileAddress (lldb_private::Process *process)
 
bool LoadImageUsingMemoryModule (lldb_private::Process *process)
 
bool IsLoaded ()
 
void SetLoadAddress (lldb::addr_t load_addr)
 
lldb::addr_t GetLoadAddress () const
 
lldb_private::UUID GetUUID () const
 
void SetUUID (const lldb_private::UUID &uuid)
 
void SetName (const char *)
 
std::string GetName () const
 
void SetModule (lldb::ModuleSP module)
 
lldb::ModuleSP GetModule ()
 
bool ReadMemoryModule (lldb_private::Process *process)
 
bool IsKernel () const
 
void SetIsKernel (bool is_kernel)
 
uint64_t GetSize () const
 
void SetSize (uint64_t size)
 
uint32_t GetProcessStopId () const
 
void SetProcessStopId (uint32_t stop_id)
 
bool operator== (const KextImageInfo &rhs)
 
uint32_t GetAddressByteSize ()
 
lldb::ByteOrder GetByteOrder ()
 
lldb_private::ArchSpec GetArchitecture () const
 
void PutToLog (lldb_private::Log *log) const
 

Private Attributes

std::string m_name
 
lldb::ModuleSP m_module_sp
 
lldb::ModuleSP m_memory_module_sp
 
uint32_t m_load_process_stop_id
 
lldb_private::UUID m_uuid
 
lldb::addr_t m_load_address = LLDB_INVALID_ADDRESS
 
uint64_t m_size = 0
 
bool m_kernel_image
 

Detailed Description

Definition at line 126 of file DynamicLoaderDarwinKernel.h.

Member Typedef Documentation

◆ collection

Definition at line 192 of file DynamicLoaderDarwinKernel.h.

◆ const_iterator

Definition at line 194 of file DynamicLoaderDarwinKernel.h.

◆ iterator

Definition at line 193 of file DynamicLoaderDarwinKernel.h.

Constructor & Destructor Documentation

◆ KextImageInfo()

DynamicLoaderDarwinKernel::KextImageInfo::KextImageInfo ( )
inline

Definition at line 128 of file DynamicLoaderDarwinKernel.h.

Member Function Documentation

◆ Clear()

void DynamicLoaderDarwinKernel::KextImageInfo::Clear ( )
inline

◆ GetAddressByteSize()

uint32_t DynamicLoaderDarwinKernel::KextImageInfo::GetAddressByteSize ( )

◆ GetArchitecture()

lldb_private::ArchSpec DynamicLoaderDarwinKernel::KextImageInfo::GetArchitecture ( ) const

Definition at line 966 of file DynamicLoaderDarwinKernel.cpp.

◆ GetByteOrder()

lldb::ByteOrder DynamicLoaderDarwinKernel::KextImageInfo::GetByteOrder ( )

◆ GetLoadAddress()

addr_t DynamicLoaderDarwinKernel::KextImageInfo::GetLoadAddress ( ) const

◆ GetModule()

ModuleSP DynamicLoaderDarwinKernel::KextImageInfo::GetModule ( )

◆ GetName()

std::string DynamicLoaderDarwinKernel::KextImageInfo::GetName ( ) const

Definition at line 628 of file DynamicLoaderDarwinKernel.cpp.

Referenced by operator==().

◆ GetProcessStopId()

uint32_t DynamicLoaderDarwinKernel::KextImageInfo::GetProcessStopId ( ) const

◆ GetSize()

uint64_t DynamicLoaderDarwinKernel::KextImageInfo::GetSize ( ) const

Definition at line 598 of file DynamicLoaderDarwinKernel.cpp.

◆ GetUUID()

UUID DynamicLoaderDarwinKernel::KextImageInfo::GetUUID ( ) const

◆ IsKernel()

bool DynamicLoaderDarwinKernel::KextImageInfo::IsKernel ( ) const

◆ IsLoaded()

bool DynamicLoaderDarwinKernel::KextImageInfo::IsLoaded ( )
inline

◆ LoadImageAtFileAddress()

bool DynamicLoaderDarwinKernel::KextImageInfo::LoadImageAtFileAddress ( lldb_private::Process process)

◆ LoadImageUsingMemoryModule()

bool DynamicLoaderDarwinKernel::KextImageInfo::LoadImageUsingMemoryModule ( lldb_private::Process process)

Definition at line 748 of file DynamicLoaderDarwinKernel.cpp.

References lldb_private::ModuleList::Append(), lldb_private::ModuleList::AppendIfNeeded(), lldb_private::eLoadDependentsNo, lldb_private::ModuleList::FindModule(), lldb_private::SectionList::FindSectionByName(), lldb_private::Stream::Flush(), lldb_private::ModuleSpec::GetArchitecture(), lldb_private::Target::GetArchitecture(), lldb_private::ObjectFile::GetBaseAddress(), lldb_private::Target::GetDebugger(), lldb_private::Target::GetExecutableModulePointer(), lldb_private::TargetProperties::GetExecutableSearchPaths(), lldb_private::Section::GetFileAddress(), lldb_private::Address::GetFileAddress(), lldb_private::ModuleSpec::GetFileSpec(), lldb_private::Target::GetImages(), lldb_private::GetLogIfAnyCategoriesSet(), lldb_private::Target::GetOrCreateModule(), lldb_private::Debugger::GetOutputStream(), lldb_private::Target::GetPlatform(), PlatformDarwinKernel::GetPluginNameStatic(), lldb_private::SectionList::GetSectionAtIndex(), lldb_private::ObjectFile::GetSectionList(), lldb_private::SectionList::GetSize(), lldb_private::Process::GetStopID(), lldb_private::ConstString::GetStringRef(), lldb_private::Process::GetTarget(), lldb_private::ModuleSpec::GetUUID(), LIBLLDB_LOG_DYNAMIC_LOADER, LLDB_INVALID_ADDRESS, LLDB_LOGF, lldb_private::Target::ModulesDidLoad(), lldb_private::Stream::Printf(), lldb_private::Target::SetExecutableModule(), and lldb_private::Target::SetSectionLoadAddress().

Referenced by DynamicLoaderDarwinKernel::LoadKernelModuleIfNeeded(), and DynamicLoaderDarwinKernel::ParseKextSummaries().

◆ operator==()

bool DynamicLoaderDarwinKernel::KextImageInfo::operator== ( const KextImageInfo rhs)

◆ PutToLog()

void DynamicLoaderDarwinKernel::KextImageInfo::PutToLog ( lldb_private::Log log) const

Definition at line 1421 of file DynamicLoaderDarwinKernel.cpp.

References LLDB_INVALID_ADDRESS, and LLDB_LOG.

◆ ReadMemoryModule()

bool DynamicLoaderDarwinKernel::KextImageInfo::ReadMemoryModule ( lldb_private::Process process)

◆ SetIsKernel()

void DynamicLoaderDarwinKernel::KextImageInfo::SetIsKernel ( bool  is_kernel)

◆ SetLoadAddress()

void DynamicLoaderDarwinKernel::KextImageInfo::SetLoadAddress ( lldb::addr_t  load_addr)

◆ SetModule()

void DynamicLoaderDarwinKernel::KextImageInfo::SetModule ( lldb::ModuleSP  module)

◆ SetName()

void DynamicLoaderDarwinKernel::KextImageInfo::SetName ( const char *  name)

◆ SetProcessStopId()

void DynamicLoaderDarwinKernel::KextImageInfo::SetProcessStopId ( uint32_t  stop_id)

◆ SetSize()

void DynamicLoaderDarwinKernel::KextImageInfo::SetSize ( uint64_t  size)

Definition at line 602 of file DynamicLoaderDarwinKernel.cpp.

◆ SetUUID()

void DynamicLoaderDarwinKernel::KextImageInfo::SetUUID ( const lldb_private::UUID uuid)

Definition at line 632 of file DynamicLoaderDarwinKernel.cpp.

Member Data Documentation

◆ m_kernel_image

bool DynamicLoaderDarwinKernel::KextImageInfo::m_kernel_image
private
Initial value:
=
false

Definition at line 207 of file DynamicLoaderDarwinKernel.h.

◆ m_load_address

lldb::addr_t DynamicLoaderDarwinKernel::KextImageInfo::m_load_address = LLDB_INVALID_ADDRESS
private

Definition at line 205 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear().

◆ m_load_process_stop_id

uint32_t DynamicLoaderDarwinKernel::KextImageInfo::m_load_process_stop_id
private
Initial value:

Definition at line 200 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear(), IsLoaded(), and LoadImageAtFileAddress().

◆ m_memory_module_sp

lldb::ModuleSP DynamicLoaderDarwinKernel::KextImageInfo::m_memory_module_sp
private

Definition at line 199 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear().

◆ m_module_sp

lldb::ModuleSP DynamicLoaderDarwinKernel::KextImageInfo::m_module_sp
private

Definition at line 198 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear(), and LoadImageAtFileAddress().

◆ m_name

std::string DynamicLoaderDarwinKernel::KextImageInfo::m_name
private

Definition at line 197 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear().

◆ m_size

uint64_t DynamicLoaderDarwinKernel::KextImageInfo::m_size = 0
private

Definition at line 206 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear().

◆ m_uuid

lldb_private::UUID DynamicLoaderDarwinKernel::KextImageInfo::m_uuid
private

Definition at line 204 of file DynamicLoaderDarwinKernel.h.

Referenced by Clear().


The documentation for this class was generated from the following files:
UINT32_MAX
#define UINT32_MAX
Definition: lldb-defines.h:31