HpSomBinaryFile Class Reference

#include <loader/HpSomBinaryFile.h>

Inheritance diagram for HpSomBinaryFile:

BinaryFile List of all members.

Detailed Description

Definition at line 87 of file HpSomBinaryFile.h.

Public Member Functions

virtual void Close ()
virtual ADDRESS GetAddressByName (char *pName, bool bNoTypeOK=false)
virtual std::list< const char * > getDependencyList ()
virtual std::map< ADDRESS,
const char * > * 
GetDynamicGlobalMap ()
virtual ADDRESS GetEntryPoint ()
virtual std::list< SectionInfo * > & GetEntryPoints (const char *pEntry="main")
virtual const char * getFilename () const
virtual LOAD_FMT GetFormat () const
virtual std::pair< unsigned,
unsigned > 
GetGlobalPointerInfo ()
virtual ADDRESS getImageBase ()
virtual size_t getImageSize ()
virtual MACHINE GetMachine () const
virtual ADDRESS GetMainEntryPoint ()
 HpSomBinaryFile ()
bool IsDynamicLinkedProc (ADDRESS uNative)
virtual bool isLibrary () const
virtual bool Open (const char *sName)
virtual bool PostLoad (void *handle)
virtual const char * SymbolByAddress (ADDRESS dwAddr)
virtual void UnLoad ()
virtual ~HpSomBinaryFile ()

Protected Member Functions

virtual bool RealLoad (const char *sName)

Private Member Functions

std::pair< ADDRESS, int > getSubspaceInfo (const char *ssname)

Private Attributes

std::set< ADDRESS > imports
const char * m_pFileName
unsigned char * m_pImage
SymTab symbols


Constructor & Destructor Documentation

HpSomBinaryFile::HpSomBinaryFile (   ) 
 

Definition at line 36 of file HpSomBinaryFile.cpp.

HpSomBinaryFile::~HpSomBinaryFile (   )  [virtual]
 

Definition at line 41 of file HpSomBinaryFile.cpp.

References m_pImage.


Member Function Documentation

void HpSomBinaryFile::Close (   )  [virtual]
 

Implements BinaryFile.

Definition at line 423 of file HpSomBinaryFile.cpp.

ADDRESS HpSomBinaryFile::GetAddressByName (  char *  pName,
bool  bNoTypeOK = false
)  [virtual]
 

Definition at line 471 of file HpSomBinaryFile.cpp.

References SymTab::find(), NO_ADDRESS, and symbols.

std::list< const char * > HpSomBinaryFile::getDependencyList (   )  [virtual]
 

Implements BinaryFile.

Definition at line 451 of file HpSomBinaryFile.cpp.

std::map< ADDRESS, const char * > * HpSomBinaryFile::GetDynamicGlobalMap (   )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 538 of file HpSomBinaryFile.cpp.

References m_pImage, BinaryFile::m_pSections, import_entry::name, and UINT4.

ADDRESS HpSomBinaryFile::GetEntryPoint (   )  [virtual]
 

Implements BinaryFile.

Definition at line 400 of file HpSomBinaryFile.cpp.

std::list< SectionInfo * > & HpSomBinaryFile::GetEntryPoints (  const char *  pEntry = "main"  )  [virtual]
 

Implements BinaryFile.

Definition at line 407 of file HpSomBinaryFile.cpp.

References BinaryFile::GetSectionInfoByName().

virtual const char* HpSomBinaryFile::getFilename (   )  const [inline, virtual]
 

Implements BinaryFile.

Definition at line 98 of file HpSomBinaryFile.h.

References m_pFileName.

LOAD_FMT HpSomBinaryFile::GetFormat (   )  const [virtual]
 

Implements BinaryFile.

Definition at line 434 of file HpSomBinaryFile.cpp.

References LOADFMT_PAR.

std::pair< unsigned, unsigned > HpSomBinaryFile::GetGlobalPointerInfo (   )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 516 of file HpSomBinaryFile.cpp.

References getSubspaceInfo().

ADDRESS HpSomBinaryFile::getImageBase (   )  [virtual]
 

Implements BinaryFile.

Definition at line 456 of file HpSomBinaryFile.cpp.

size_t HpSomBinaryFile::getImageSize (   )  [virtual]
 

Implements BinaryFile.

Definition at line 461 of file HpSomBinaryFile.cpp.

References m_pImage, and UINT4.

MACHINE HpSomBinaryFile::GetMachine (   )  const [virtual]
 

Implements BinaryFile.

Definition at line 439 of file HpSomBinaryFile.cpp.

References MACHINE_HPRISC.

ADDRESS HpSomBinaryFile::GetMainEntryPoint (   )  [virtual]
 

Implements BinaryFile.

Definition at line 570 of file HpSomBinaryFile.cpp.

References SymTab::find(), BinaryFile::m_pSections, symbols, and UINT4.

std::pair< ADDRESS, int > HpSomBinaryFile::getSubspaceInfo (  const char *  ssname  )  [private]
 

Definition at line 487 of file HpSomBinaryFile.cpp.

References m_pImage, subspace_dictionary_record::subspace_length, subspace_dictionary_record::subspace_start, and UINT4.

Referenced by GetGlobalPointerInfo(), and RealLoad().

bool HpSomBinaryFile::IsDynamicLinkedProc (  ADDRESS  uNative  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 481 of file HpSomBinaryFile.cpp.

References imports.

bool HpSomBinaryFile::isLibrary (   )  const [virtual]
 

Implements BinaryFile.

Definition at line 444 of file HpSomBinaryFile.cpp.

References m_pImage, and UINT4.

bool HpSomBinaryFile::Open (  const char *  sName  )  [virtual]
 

Implements BinaryFile.

Definition at line 418 of file HpSomBinaryFile.cpp.

bool HpSomBinaryFile::PostLoad (  void *  handle  )  [virtual]
 

Implements BinaryFile.

Definition at line 428 of file HpSomBinaryFile.cpp.

bool HpSomBinaryFile::RealLoad (  const char *  sName  )  [protected, virtual]
 

Implements BinaryFile.

Definition at line 117 of file HpSomBinaryFile.cpp.

References AUXHDR, SectionInfo::bBss, SectionInfo::bCode, SectionInfo::bData, SectionInfo::bReadOnly, getSubspaceInfo(), BinaryFile::m_iNumSections, m_pFileName, m_pImage, BinaryFile::m_pSections, import_entry::name, NULL, SectionInfo::pSectionName, size, symbols, UC, SectionInfo::uHostAddr, UINT4, SectionInfo::uNativeAddr, SectionInfo::uSectionEntrySize, and SectionInfo::uSectionSize.

const char * HpSomBinaryFile::SymbolByAddress (  ADDRESS  dwAddr  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 467 of file HpSomBinaryFile.cpp.

References SymTab::find(), and symbols.

void HpSomBinaryFile::UnLoad (   )  [virtual]
 

Implements BinaryFile.

Definition at line 392 of file HpSomBinaryFile.cpp.

References m_pImage.


Member Data Documentation

std::set<ADDRESS> HpSomBinaryFile::imports [private]
 

Definition at line 149 of file HpSomBinaryFile.h.

Referenced by IsDynamicLinkedProc().

const char* HpSomBinaryFile::m_pFileName [private]
 

Definition at line 150 of file HpSomBinaryFile.h.

Referenced by getFilename(), and RealLoad().

unsigned char* HpSomBinaryFile::m_pImage [private]
 

Definition at line 146 of file HpSomBinaryFile.h.

Referenced by GetDynamicGlobalMap(), getImageSize(), getSubspaceInfo(), isLibrary(), RealLoad(), UnLoad(), and ~HpSomBinaryFile().

SymTab HpSomBinaryFile::symbols [private]
 

Definition at line 147 of file HpSomBinaryFile.h.

Referenced by GetAddressByName(), GetMainEntryPoint(), RealLoad(), and SymbolByAddress().


The documentation for this class was generated from the following files:
Generated on Tue Sep 19 21:18:43 2006 for Boomerang by  doxygen 1.4.6