Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

memory Namespace Reference


Classes

class  MemoryFactory
class  IMemory
struct  LinuxData
class  MemoryFactoryImpl
class  MemoryFile
class  MemoryOsSpecific

Functions

 DECLARE_EXCEPTION (MemoryException)
 Base class for all Memory operations.
 DECLARE_EXCEPTION_EX (AccessError, memory, MemoryException)
 DECLARE_EXCEPTION_EX (OutOfBounds, memory, MemoryException)
void condOpenFd (struct LinuxData *data)
void closeFd (struct LinuxData *data)
int LoadNtdllFuncs (void)
HANDLE OpenMemAccess (void)
int CloseMemAccess (HANDLE hPhysMem)
int MapMem (HANDLE hPhysMem, PVOID pBaseAddr, PDWORD pPhysAddr, PDWORD pSize)
int UnMapMem (PVOID pBaseAddr)
BOOL setPrivilege (LPCTSTR privilegeName, BOOL enable)
void readPhysicalMemoryMap (HANDLE hPhysMem, u8 *buffer, u64 offset, unsigned int length)
void readPhysicalMemoryDebugSysctl (u8 *buffer, u64 offset, unsigned int length)
void enumSystemFirmwareTables (u8 *buffer, u64 offset, unsigned int length)
 DEFINE_EXCEPTION_EX (AccessErrorImpl, memory, AccessError)
 DEFINE_EXCEPTION_EX (OutOfBoundsImpl, memory, OutOfBounds)

Variables

NtOpenSectionPtr NtOpenSection = NULL
NtClosePtr NtClose = NULL
NtMapViewOfSectionPtr NtMapViewOfSection = NULL
NtUnmapViewOfSectionPtr NtUnmapViewOfSection = NULL
RtlInitUnicodeStringPtr RtlInitUnicodeString = NULL
ZwSystemDebugControlPtr ZwSystemDebugControl = NULL
EnumSystemFirmwareTablesPtr EnumSystemFirmwareTables = NULL
GetSystemFirmwareTablePtr GetSystemFirmwareTable = NULL
u8CBlockBuffer = NULL
u8EBlockBuffer = NULL
int reopenHint = 1


Function Documentation

void closeFd struct LinuxData *  data  )  [static]
 

Definition at line 66 of file Memory_Linux.cpp.

References LinuxData::fd, LinuxData::lastMappedOffset, LinuxData::lastMapping, and LinuxData::mappingSize.

Referenced by MemoryOsSpecific::fillBuffer(), MemoryOsSpecific::MemoryOsSpecific(), MemoryOsSpecific::putByte(), and MemoryOsSpecific::~MemoryOsSpecific().

int CloseMemAccess HANDLE  hPhysMem  ) 
 

Definition at line 98 of file Memory_Windows.cpp.

References NT_SUCCESS, NtClose, and NTSTATUS.

void condOpenFd struct LinuxData *  data  )  [static]
 

Definition at line 48 of file Memory_Linux.cpp.

References _, LinuxData::fd, LinuxData::filename, LinuxData::lastMappedOffset, and LinuxData::lastMapping.

Referenced by MemoryOsSpecific::fillBuffer(), MemoryOsSpecific::MemoryOsSpecific(), and MemoryOsSpecific::putByte().

DECLARE_EXCEPTION MemoryException   ) 
 

Base class for all Memory operations.

DECLARE_EXCEPTION_EX OutOfBounds  ,
memory  ,
MemoryException 
 

DECLARE_EXCEPTION_EX AccessError  ,
memory  ,
MemoryException 
 

DEFINE_EXCEPTION_EX OutOfBoundsImpl  ,
memory  ,
OutOfBounds 
 

DEFINE_EXCEPTION_EX AccessErrorImpl  ,
memory  ,
AccessError 
 

void enumSystemFirmwareTables u8 buffer,
u64  offset,
unsigned int  length
 

Definition at line 254 of file Memory_Windows.cpp.

References _, CBlockBuffer, EBlockBuffer, EnumSystemFirmwareTables, smbios::GetSystemFirmwareTable, and u8.

int LoadNtdllFuncs void   ) 
 

Definition at line 50 of file Memory_Windows.cpp.

References EnumSystemFirmwareTables, GetSystemFirmwareTable, NtClose, NtMapViewOfSection, NtOpenSection, NtUnmapViewOfSection, and RtlInitUnicodeString.

int MapMem HANDLE  hPhysMem,
PVOID  pBaseAddr,
PDWORD  pPhysAddr,
PDWORD  pSize
 

Definition at line 112 of file Memory_Windows.cpp.

References NT_SUCCESS, NtCurrentProcess, NtMapViewOfSection, NTSTATUS, PHYSICAL_ADDRESS, and ViewShare.

Referenced by readPhysicalMemoryMap().

HANDLE OpenMemAccess void   ) 
 

Definition at line 79 of file Memory_Windows.cpp.

References InitializeObjectAttributes, NT_SUCCESS, NtOpenSection, NTSTATUS, OBJ_CASE_INSENSITIVE, OBJECT_ATTRIBUTES, RtlInitUnicodeString, SECTION_MAP_READ, and UNICODE_STRING.

void readPhysicalMemoryDebugSysctl u8 buffer,
u64  offset,
unsigned int  length
 

Definition at line 228 of file Memory_Windows.cpp.

References _, DebugSysReadPhysicalMemory, NT_SUCCESS, NTSTATUS, and ZwSystemDebugControl.

void readPhysicalMemoryMap HANDLE  hPhysMem,
u8 buffer,
u64  offset,
unsigned int  length
 

Definition at line 172 of file Memory_Windows.cpp.

References _, MapMem(), and UnMapMem().

BOOL setPrivilege LPCTSTR  privilegeName,
BOOL  enable
[static]
 

Definition at line 147 of file Memory_Windows.cpp.

int UnMapMem PVOID  pBaseAddr  ) 
 

Definition at line 133 of file Memory_Windows.cpp.

References NT_SUCCESS, NtCurrentProcess, NTSTATUS, and NtUnmapViewOfSection.

Referenced by readPhysicalMemoryMap().


Variable Documentation

u8* CBlockBuffer = NULL
 

Definition at line 46 of file Memory_Windows.cpp.

Referenced by enumSystemFirmwareTables().

u8* EBlockBuffer = NULL
 

Definition at line 47 of file Memory_Windows.cpp.

Referenced by enumSystemFirmwareTables().

EnumSystemFirmwareTablesPtr EnumSystemFirmwareTables = NULL
 

Definition at line 44 of file Memory_Windows.cpp.

Referenced by enumSystemFirmwareTables(), and LoadNtdllFuncs().

GetSystemFirmwareTablePtr GetSystemFirmwareTable = NULL
 

Definition at line 45 of file Memory_Windows.cpp.

Referenced by LoadNtdllFuncs().

NtClosePtr NtClose = NULL
 

Definition at line 38 of file Memory_Windows.cpp.

Referenced by CloseMemAccess(), and LoadNtdllFuncs().

NtMapViewOfSectionPtr NtMapViewOfSection = NULL
 

Definition at line 39 of file Memory_Windows.cpp.

Referenced by LoadNtdllFuncs(), and MapMem().

NtOpenSectionPtr NtOpenSection = NULL
 

Definition at line 37 of file Memory_Windows.cpp.

Referenced by LoadNtdllFuncs(), and OpenMemAccess().

NtUnmapViewOfSectionPtr NtUnmapViewOfSection = NULL
 

Definition at line 40 of file Memory_Windows.cpp.

Referenced by LoadNtdllFuncs(), and UnMapMem().

int reopenHint = 1
 

Definition at line 48 of file Memory_Windows.cpp.

Referenced by MemoryFile::MemoryFile().

RtlInitUnicodeStringPtr RtlInitUnicodeString = NULL
 

Definition at line 41 of file Memory_Windows.cpp.

Referenced by LoadNtdllFuncs(), and OpenMemAccess().

ZwSystemDebugControlPtr ZwSystemDebugControl = NULL
 

Definition at line 42 of file Memory_Windows.cpp.

Referenced by readPhysicalMemoryDebugSysctl().


Generated on Tue Feb 26 14:39:02 2008 for SMBIOS Library by  doxygen 1.3.9.1