smbios Namespace Reference


Classes

class  IException
 Base class for all Abstract Exceptions. More...
class  SmbiosFactory
 AbstractFactory that produces ISmbiosTable objects. More...
class  ISmbiosTable
 Interface definition for Smbios Table operations. More...
class  ISmbiosItem
 Interface definition for Smbios Item operations. More...
class  SmbiosTableIteratorBase
 Iterator base class for ISmbiosTable objects. More...
class  SmbiosTableIterator
 Iterator for ISmbiosTable objects. More...
class  ConstSmbiosTableIterator
 Iterator for const ISmbiosTable objects. More...
class  SmbiosXmlFactory
class  TokenTableFactory
class  ITokenTable
 Table interface to obtain individual Tokens. More...
class  IToken
 Interface to inspect or manipulate individual tokens. More...
class  IProtectedToken
class  ICmosToken
class  TokenTableIteratorBase
 Base class for the TokenTableIterator subclassess. More...
class  TokenTableIterator
 Iterator for TokenTable objects. More...
class  ConstTokenTableIterator
 Iterator for const TokenTable objects. More...
class  Exception
class  SmbiosFactoryImpl
class  SmbiosStrategy
class  SmbiosMemoryStrategy
class  SmbiosWinWMIStrategy
class  SmbiosWinGetFirmwareTableStrategy
class  SmbiosTable
class  SmbiosItem
class  SmbiosWorkaroundFactory
class  SmbiosWorkaroundTable
struct  SystemAffected
union  datatron
struct  WorkaroundSmbiosItem
struct  Workaround
struct  SystemWorkaround
class  SmbiosXmlFactoryImpl
class  SmbiosItemXml
class  SmbiosTableXml
struct  up_info
struct  one_byte_structure
struct  two_byte_structure
class  TokenTable
class  CmosTokenD4
class  CmosTokenD5
class  CmosTokenD6
class  SmiTokenDA
class  CmosRWChecksumObserver
struct  indexed_io_token
struct  indexed_io_access_structure
struct  dell_protected_value_1_structure
struct  dell_protected_value_2_structure
struct  calling_interface_token
struct  calling_interface_structure
class  TokenTableFactoryImpl

Typedefs

typedef bool(*) compareFunction (const ISmbiosItem *item, int offset, datatron data)

Enumerations

enum  {
  BIOS_Information = 0, System_Information = 1, Base_Board_Information = 2, System_Enclosure_or_Chassis = 3,
  Processor_Information = 4, Memory_Controller_Information = 5, Memory_Module_Information = 6, Cache_Information = 7,
  Port_Connector_Information = 8, System_Slots = 9, On_Board_Devices_Information = 10, OEM_Strings = 11,
  System_Configuration_Options = 12, BIOS_Language_Information = 13, Group_Associations = 14, System_Event_Log = 15,
  Physical_Memory_Array = 16, Memory_Device = 17, Memory_Error_Information_32_bit = 18, Memory_Array_Mapped_Address = 19,
  Memory_Device_Mapped_Address = 20, Built_in_Pointing_Device = 21, Portable_Battery = 22, System_Reset = 23,
  Hardware_Security = 24, System_Power_Controls = 25, Voltage_Probe = 26, Cooling_Device = 27,
  Temperature_Probe = 28, Electrical__Current_Probe = 29, Out_of_Band_Remote_Access = 30, Boot_Integrity_Services_Entry_Point = 31,
  System_Boot_Information = 32, Memory_Error_Information_64_bit = 33, Management_Device = 34, Management_Device_Component = 35,
  Management_Device_Threshold = 36, Memory_Channel = 37, IPMI_Device_Information = 38, System_Power_Supply = 39,
  Inactive = 126, Revisions_and_IDs = 208, Parallel_Port = 209, Serial_Port = 210,
  IR_Port = 211, End_of_Table = 127, Dell_Revisions_and_IDs = 0xD0, Dell_Indexed_Io = 0xD4
}
enum  { TYPE_U8 = 1, TYPE_U16 = 2, TYPE_U32 = 4, TYPE_U64 = 8 }
enum  { CHECK_TYPE_WORD_CHECKSUM = 0x00, CHECK_TYPE_BYTE_CHECKSUM = 0x01, CHECK_TYPE_WORD_CRC = 0x02, CHECK_TYPE_WORD_CHECKSUM_N = 0x03 }
enum  { DellIndexedIoTokenType = 0xD4, DellProtectedAreaType1 = 0xD5, DellProtectedAreaType2 = 0xD6, DellCallingInterface = 0xDA }
enum  { TokenTypeEOT = 0xffff }
enum  { pvFmtAlphaNumericScanCode = 0, pvFmtAlphaNumericAscii = 1, pvFmtAlphaNumericScanCodeNS = 2, pvFmtAlphaNumericAsciiNS = 3 }

Functions

 DECLARE_EXCEPTION (NotImplemented)
 DECLARE_EXCEPTION (InternalError)
 DECLARE_EXCEPTION (PermissionException)
 DECLARE_EXCEPTION (SmbiosException)
 DECLARE_EXCEPTION_EX (ParameterException, smbios, SmbiosException)
 DECLARE_EXCEPTION_EX (ParseException, smbios, SmbiosException)
 DECLARE_EXCEPTION_EX (StringUnavailable, smbios, SmbiosException)
 DECLARE_EXCEPTION_EX (DataOutOfBounds, smbios, SmbiosException)
std::ostream & operator<< (std::ostream &cout, const ISmbiosTable &item)
std::ostream & operator<< (std::ostream &cout, const ISmbiosItem &item)
std::ostream & toXmlString (const ISmbiosTable &, std::ostream &)
 DECLARE_EXCEPTION (TokenException)
 DECLARE_EXCEPTION_EX (InvalidTokenTableMode, smbios, TokenException)
 DECLARE_EXCEPTION_EX (InvalidAccessMode, smbios, TokenException)
 DECLARE_EXCEPTION_EX (DerefNullPointer, smbios, TokenException)
 DECLARE_EXCEPTION_EX (ParameterError, smbios, TokenException)
 DECLARE_EXCEPTION_EX (InvalidChecksum, smbios, TokenException)
 DECLARE_EXCEPTION_EX (NeedAuthentication, smbios, TokenException)
std::ostream & operator<< (std::ostream &cout, const ITokenTable &item)
std::ostream & operator<< (std::ostream &cout, const IToken &item)
 DEFINE_EXCEPTION_EX (NotImplementedImpl, smbios, NotImplemented)
 DEFINE_EXCEPTION_EX (InternalErrorImpl, smbios, InternalError)
 DEFINE_EXCEPTION_EX (PermissionExceptionImpl, smbios, PermissionException)
 DEFINE_EXCEPTION_EX (ParameterExceptionImpl, smbios, ParameterException)
 DEFINE_EXCEPTION_EX (ParseExceptionImpl, smbios, ParseException)
 DEFINE_EXCEPTION_EX (StringUnavailableImpl, smbios, StringUnavailable)
 DEFINE_EXCEPTION_EX (DataOutOfBoundsImpl, smbios, DataOutOfBounds)
static u32 force_u64_to_u32 (u64 orig)
void checkItemBounds (size_t total_size, size_t length, size_t offset, size_t size)
void getData (const ISmbiosItem &item, u8 *data, unsigned int offset, unsigned int size)
void checkBitfieldBounds (unsigned int bound, unsigned int lsb, unsigned int msb, DataOutOfBoundsImpl &doob)
ostream & operator<< (ostream &cout, const ISmbiosItem &item)
bool validateTableEntryPoint (const smbiosLowlevel::smbios_table_entry_point *tempTEP, bool strict, ParseExceptionImpl &parseException)
int LoadNtdllFuncs (void)
ostream & operator<< (ostream &cout, const ISmbiosTable &table)
static bool compareU64 (const ISmbiosItem *item, int offset, datatron data)
static bool compareU32 (const ISmbiosItem *item, int offset, datatron data)
static bool compareU16 (const ISmbiosItem *item, int offset, datatron data)
static bool compareU8 (const ISmbiosItem *item, int offset, datatron data)
static bool compare (int type, const ISmbiosItem *item, int offset, datatron data)
static void fixupData (u8 *buf, size_t size, unsigned int offset, unsigned int len, datatron data)
static void doFixupItem (const Workaround *wa, const ISmbiosItem *item, u8 *buf, size_t bufSize)
DOMDocument * getSmbiosXmlDoc (DOMBuilder *parser, std::string &xmlFile)
void validateSmbiosXmlDoc (DOMDocument *doc)
unsigned int parseLengthStr (string size)
void verifyElementAttr (DOMElement *element, const string elementName, const string value)
void verifyElementAttr (DOMElement *element, const string elementName, unsigned int size)
int getTypeForString (DOMDocument *doc, const string searchForDesc)
const string getStringForType (const DOMDocument *doc, const int searchForType)
bool isBitSet (const ISmbiosItem *itemPtr, unsigned int offset, unsigned int bitToTest)
void printStructureField (std::ostream &cout, const DOMNode *node, const ISmbiosItem &item)
std::ostream & toXmlString (const ISmbiosTable &table, ostream &cout)
static u8 byteChecksum (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort)
static u16 wordChecksum (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort, bool complement)
static u16 wordCrc (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort)
static void executeWithPassword (smi::IDellCallingInterfaceSmi *ci, u8 arg, string password)
 DEFINE_EXCEPTION_EX (InvalidTokenTableModeImpl, smbios, InvalidTokenTableMode)
 DEFINE_EXCEPTION_EX (InvalidAccessModeImpl, smbios, InvalidAccessMode)
 DEFINE_EXCEPTION_EX (DerefNullPointerImpl, smbios, DerefNullPointer)
 DEFINE_EXCEPTION_EX (ParameterErrorImpl, smbios, ParameterError)
 DEFINE_EXCEPTION_EX (InvalidChecksumImpl, smbios, InvalidChecksum)
 DEFINE_EXCEPTION_EX (NeedAuthenticationImpl, smbios, NeedAuthentication)

Variables

GetSystemFirmwareTablePtr GetSystemFirmwareTable = 0
struct {
   int   smbios::type
   compareFunction   smbios::funct
compareFunctions []
const WorkaroundSmbiosItem InvalidCheckTypeSymptoms []
const WorkaroundSmbiosItem InvalidCheckTypeFixup []
const WorkaroundSmbiosItem PE1300_InvalidCheckTypeFixup []
const Workaround InvalidCheckType
const Workaround PE1300_InvalidCheckType
const SystemAffected PE0600 = { 0x0134, "A00", "A05" }
const SystemAffected PE0650 = { 0x0141, "A00", "A00" }
const SystemAffected PE1300 = { 0x8E, "A00", "A--" }
const SystemAffected PE1600 = { 0x0135, "A00", "A00" }
const SystemAffected PE1650 = { 0x011B, "A00", "A09" }
const SystemAffected IDS4235 = { 0x8012, "A--", "A--" }
const SystemAffected PE1655 = { 0x0124, "A00", "A00" }
const SystemAffected PE1750 = { 0x014a, "A00", "A00" }
const SystemAffected PE2600 = { 0x0123, "A00", "A03" }
const SystemAffected PE2650 = { 0x0121, "A00", "A10" }
const SystemAffected PE4600 = { 0x0106, "A00", "A08" }
const SystemAffected PE6600 = { 0x0109, "A00", "A08" }
const WorkaroundPE0600_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE0650_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE1300_Workarounds [] = { &PE1300_InvalidCheckType, 0 }
const WorkaroundPE1600_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE1650_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundIDS4235_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE1655_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE1750_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE2600_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE2650_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE4600_Workarounds [] = { &InvalidCheckType, 0 }
const WorkaroundPE6600_Workarounds [] = { &InvalidCheckType, 0 }
const SystemWorkaround workaroundMasterList []
const int numSystemWorkarounds = (sizeof(workaroundMasterList) / sizeof(workaroundMasterList[0]))
smbios::up_info LIBSMBIOS_PACKED_ATTR
smbios::one_byte_structure LIBSMBIOS_PACKED_ATTR
smbios::two_byte_structure LIBSMBIOS_PACKED_ATTR
smbios::indexed_io_token LIBSMBIOS_PACKED_ATTR
smbios::indexed_io_access_structure LIBSMBIOS_PACKED_ATTR
smbios::dell_protected_value_1_structure LIBSMBIOS_PACKED_ATTR
smbios::dell_protected_value_2_structure LIBSMBIOS_PACKED_ATTR
smbios::calling_interface_token LIBSMBIOS_PACKED_ATTR
smbios::calling_interface_structure LIBSMBIOS_PACKED_ATTR


Typedef Documentation

typedef bool(*) compareFunction(const ISmbiosItem *item, int offset, datatron data)

Definition at line 129 of file SmbiosWorkaround.cpp.


Enumeration Type Documentation

anonymous enum

Enumerator:
BIOS_Information 
System_Information 
Base_Board_Information 
System_Enclosure_or_Chassis 
Processor_Information 
Memory_Controller_Information 
Memory_Module_Information 
Cache_Information 
Port_Connector_Information 
System_Slots 
On_Board_Devices_Information 
OEM_Strings 
System_Configuration_Options 
BIOS_Language_Information 
Group_Associations 
System_Event_Log 
Physical_Memory_Array 
Memory_Device 
Memory_Error_Information_32_bit 
Memory_Array_Mapped_Address 
Memory_Device_Mapped_Address 
Built_in_Pointing_Device 
Portable_Battery 
System_Reset 
Hardware_Security 
System_Power_Controls 
Voltage_Probe 
Cooling_Device 
Temperature_Probe 
Electrical__Current_Probe 
Out_of_Band_Remote_Access 
Boot_Integrity_Services_Entry_Point 
System_Boot_Information 
Memory_Error_Information_64_bit 
Management_Device 
Management_Device_Component 
Management_Device_Threshold 
Memory_Channel 
IPMI_Device_Information 
System_Power_Supply 
Inactive 
Revisions_and_IDs 
Parallel_Port 
Serial_Port 
IR_Port 
End_of_Table 
Dell_Revisions_and_IDs 
Dell_Indexed_Io 

Definition at line 32 of file SmbiosDefs.h.

anonymous enum

Enumerator:
TYPE_U8 
TYPE_U16 
TYPE_U32 
TYPE_U64 

Definition at line 98 of file SmbiosWorkaroundImpl.h.

anonymous enum

Enumerator:
CHECK_TYPE_WORD_CHECKSUM 
CHECK_TYPE_BYTE_CHECKSUM 
CHECK_TYPE_WORD_CRC 
CHECK_TYPE_WORD_CHECKSUM_N 

Definition at line 243 of file TokenImpl.h.

anonymous enum

Enumerator:
DellIndexedIoTokenType 
DellProtectedAreaType1 
DellProtectedAreaType2 
DellCallingInterface 

Definition at line 35 of file TokenLowLevel.h.

anonymous enum

Enumerator:
TokenTypeEOT 

Definition at line 43 of file TokenLowLevel.h.

anonymous enum

Enumerator:
pvFmtAlphaNumericScanCode 
pvFmtAlphaNumericAscii 
pvFmtAlphaNumericScanCodeNS 
pvFmtAlphaNumericAsciiNS 

Definition at line 145 of file TokenLowLevel.h.


Function Documentation

smbios::DECLARE_EXCEPTION ( NotImplemented   ) 

Raised when some class does not implement part of the public interface Used mainly in classes where there are optional parts of the interface defined that require extra external functionality, such as XML, for example.

smbios::DECLARE_EXCEPTION ( InternalError   ) 

Used in cases where something that "cannot happen" happens. Raised in instances usually caused by some internal class state becoming corrupted.

smbios::DECLARE_EXCEPTION ( PermissionException   ) 

Used in cases where operating system privleges prevent an action.

smbios::DECLARE_EXCEPTION ( SmbiosException   ) 

smbios::DECLARE_EXCEPTION_EX ( ParameterException  ,
smbios  ,
SmbiosException   
)

smbios::DECLARE_EXCEPTION_EX ( ParseException  ,
smbios  ,
SmbiosException   
)

smbios::DECLARE_EXCEPTION_EX ( StringUnavailable  ,
smbios  ,
SmbiosException   
)

smbios::DECLARE_EXCEPTION_EX ( DataOutOfBounds  ,
smbios  ,
SmbiosException   
)

std::ostream& smbios::operator<< ( std::ostream &  cout,
const ISmbiosTable &  item 
)

std::ostream& smbios::operator<< ( std::ostream &  cout,
const ISmbiosItem &  item 
)

std::ostream& smbios::toXmlString ( const ISmbiosTable &  ,
std::ostream &   
)

smbios::DECLARE_EXCEPTION ( TokenException   ) 

smbios::DECLARE_EXCEPTION_EX ( InvalidTokenTableMode  ,
smbios  ,
TokenException   
)

smbios::DECLARE_EXCEPTION_EX ( InvalidAccessMode  ,
smbios  ,
TokenException   
)

smbios::DECLARE_EXCEPTION_EX ( DerefNullPointer  ,
smbios  ,
TokenException   
)

smbios::DECLARE_EXCEPTION_EX ( ParameterError  ,
smbios  ,
TokenException   
)

smbios::DECLARE_EXCEPTION_EX ( InvalidChecksum  ,
smbios  ,
TokenException   
)

smbios::DECLARE_EXCEPTION_EX ( NeedAuthentication  ,
smbios  ,
TokenException   
)

std::ostream & operator<< ( std::ostream &  cout,
const ITokenTable &  item 
)

Definition at line 318 of file TokenTable.cpp.

References ITokenTable::streamify().

std::ostream & operator<< ( std::ostream &  cout,
const IToken &  item 
)

Definition at line 46 of file Token.cpp.

References IToken::streamify().

smbios::DEFINE_EXCEPTION_EX ( NotImplementedImpl  ,
smbios  ,
NotImplemented   
)

Raised when some class does not implement part of the public interface Used mainly in classes where there are optional parts of the interface defined that require extra external functionality, such as XML, for example.

smbios::DEFINE_EXCEPTION_EX ( InternalErrorImpl  ,
smbios  ,
InternalError   
)

Used in cases where something that "cannot happen" happens. Raised in instances usually caused by some internal class state becoming corrupted.

smbios::DEFINE_EXCEPTION_EX ( PermissionExceptionImpl  ,
smbios  ,
PermissionException   
)

Used in cases where operating system privleges prevent an action.

smbios::DEFINE_EXCEPTION_EX ( ParameterExceptionImpl  ,
smbios  ,
ParameterException   
)

smbios::DEFINE_EXCEPTION_EX ( ParseExceptionImpl  ,
smbios  ,
ParseException   
)

smbios::DEFINE_EXCEPTION_EX ( StringUnavailableImpl  ,
smbios  ,
StringUnavailable   
)

smbios::DEFINE_EXCEPTION_EX ( DataOutOfBoundsImpl  ,
smbios  ,
DataOutOfBounds   
)

static u32 smbios::force_u64_to_u32 ( u64  orig  )  [static]

Definition at line 103 of file SmbiosItem.cpp.

Referenced by SmbiosItem::getStringByStringNumber().

void smbios::checkItemBounds ( size_t  total_size,
size_t  length,
size_t  offset,
size_t  size 
)

Definition at line 230 of file SmbiosItem.cpp.

References _.

Referenced by SmbiosItem::getBitfield(), SmbiosItem::getU16(), SmbiosItem::getU32(), SmbiosItem::getU64(), and SmbiosItem::getU8().

void smbios::getData ( const ISmbiosItem &  item,
u8 data,
unsigned int  offset,
unsigned int  size 
)

Definition at line 267 of file SmbiosItem.cpp.

References ISmbiosItem::getU8().

Referenced by SmbiosItem::getU16(), SmbiosItem::getU32(), and SmbiosItem::getU64().

void smbios::checkBitfieldBounds ( unsigned int  bound,
unsigned int  lsb,
unsigned int  msb,
DataOutOfBoundsImpl &  doob 
)

Definition at line 307 of file SmbiosItem.cpp.

References _.

Referenced by SmbiosItem::getBitfield().

ostream& smbios::operator<< ( ostream &  cout,
const ISmbiosItem &  item 
)

Definition at line 391 of file SmbiosItem.cpp.

References ISmbiosItem::streamify().

bool smbios::validateTableEntryPoint ( const smbiosLowlevel::smbios_table_entry_point tempTEP,
bool  strict,
ParseExceptionImpl &  parseException 
)

Definition at line 45 of file SmbiosStrategy.cpp.

References _, smbios_table_entry_point::dmi_anchor, smbios_table_entry_point::eps_length, and smbios_table_entry_point::major_ver.

Referenced by SmbiosMemoryStrategy::getSmbiosTableHeader().

int smbios::LoadNtdllFuncs ( void   ) 

Definition at line 55 of file SmbiosStrategy_Windows.cpp.

References GetSystemFirmwareTable.

Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable().

ostream& smbios::operator<< ( ostream &  cout,
const ISmbiosTable &  table 
)

Definition at line 370 of file SmbiosTable.cpp.

References ISmbiosTable::streamify().

static bool smbios::compareU64 ( const ISmbiosItem *  item,
int  offset,
datatron  data 
) [static]

Definition at line 93 of file SmbiosWorkaround.cpp.

References datatron::dataU64, and ISmbiosItem::getU64().

static bool smbios::compareU32 ( const ISmbiosItem *  item,
int  offset,
datatron  data 
) [static]

Definition at line 102 of file SmbiosWorkaround.cpp.

References datatron::dataU32, and ISmbiosItem::getU32().

static bool smbios::compareU16 ( const ISmbiosItem *  item,
int  offset,
datatron  data 
) [static]

Definition at line 111 of file SmbiosWorkaround.cpp.

References datatron::dataU16, and ISmbiosItem::getU16().

static bool smbios::compareU8 ( const ISmbiosItem *  item,
int  offset,
datatron  data 
) [static]

Definition at line 120 of file SmbiosWorkaround.cpp.

References datatron::dataU8, and ISmbiosItem::getU8().

static bool smbios::compare ( int  type,
const ISmbiosItem *  item,
int  offset,
datatron  data 
) [static]

Definition at line 143 of file SmbiosWorkaround.cpp.

References _, compareFunctions, and funct.

Referenced by doFixupItem().

static void smbios::fixupData ( u8 buf,
size_t  size,
unsigned int  offset,
unsigned int  len,
datatron  data 
) [static]

Definition at line 161 of file SmbiosWorkaround.cpp.

References _, and datatron::data.

Referenced by doFixupItem().

static void smbios::doFixupItem ( const Workaround *  wa,
const ISmbiosItem *  item,
u8 buf,
size_t  bufSize 
) [static]

Definition at line 176 of file SmbiosWorkaround.cpp.

References compare(), WorkaroundSmbiosItem::data, WorkaroundSmbiosItem::fieldDataType, WorkaroundSmbiosItem::fieldOffset, fixupData(), Workaround::fixups, Workaround::symptoms, and WorkaroundSmbiosItem::type.

Referenced by SmbiosWorkaroundTable::fixupItem().

DOMDocument* smbios::getSmbiosXmlDoc ( DOMBuilder *  parser,
std::string &  xmlFile 
)

Definition at line 102 of file SmbiosXml_xerces.cpp.

References stdXml.

Referenced by SmbiosTableXml::setXmlFilePath().

void smbios::validateSmbiosXmlDoc ( DOMDocument *  doc  ) 

Definition at line 155 of file SmbiosXml_xerces.cpp.

References xmlutils::safeXMLChToString().

Referenced by SmbiosTableXml::setXmlFilePath().

unsigned int smbios::parseLengthStr ( string  size  ) 

Definition at line 170 of file SmbiosXml_xerces.cpp.

Referenced by printStructureField(), and verifyElementAttr().

void smbios::verifyElementAttr ( DOMElement *  element,
const string  elementName,
const string  value 
)

Definition at line 186 of file SmbiosXml_xerces.cpp.

References xmlutils::safeGetAttribute().

void smbios::verifyElementAttr ( DOMElement *  element,
const string  elementName,
unsigned int  size 
)

Definition at line 194 of file SmbiosXml_xerces.cpp.

References parseLengthStr(), and xmlutils::safeGetAttribute().

int smbios::getTypeForString ( DOMDocument *  doc,
const string  searchForDesc 
)

Definition at line 201 of file SmbiosXml_xerces.cpp.

References xmlutils::findElement(), and xmlutils::safeGetAttribute().

const string smbios::getStringForType ( const DOMDocument *  doc,
const int  searchForType 
)

Definition at line 210 of file SmbiosXml_xerces.cpp.

References xmlutils::findElement(), xmlutils::findElementWithNumericAttr(), and xmlutils::safeGetAttribute().

Referenced by SmbiosTableXml::getStringForType(), and SmbiosItemXml::streamify().

bool smbios::isBitSet ( const ISmbiosItem *  itemPtr,
unsigned int  offset,
unsigned int  bitToTest 
)

Definition at line 471 of file SmbiosXml_xerces.cpp.

References ISmbiosItem::getU8().

void smbios::printStructureField ( std::ostream &  cout,
const DOMNode *  node,
const ISmbiosItem &  item 
)

Definition at line 484 of file SmbiosXml_xerces.cpp.

References ISmbiosItem::getString(), ISmbiosItem::getU8(), parseLengthStr(), and xmlutils::safeGetAttribute().

Referenced by SmbiosItemXml::streamify().

std::ostream& smbios::toXmlString ( const ISmbiosTable &  table,
ostream &  cout 
)

Definition at line 609 of file SmbiosXml_xerces.cpp.

References UNREFERENCED_PARAMETER.

static u8 byteChecksum ( const ICmosRW cmos,
u32  start,
u32  end,
u32  indexPort,
u32  dataPort 
) [static]

Definition at line 226 of file checksum.cpp.

References ICmosRW::readByte().

Referenced by CmosRWChecksumObserver::update().

static u16 wordChecksum ( const ICmosRW cmos,
u32  start,
u32  end,
u32  indexPort,
u32  dataPort,
bool  complement 
) [static]

Definition at line 242 of file checksum.cpp.

References ICmosRW::readByte().

Referenced by CmosRWChecksumObserver::update().

static u16 wordCrc ( const ICmosRW cmos,
u32  start,
u32  end,
u32  indexPort,
u32  dataPort 
) [static]

Definition at line 260 of file checksum.cpp.

References ICmosRW::readByte().

Referenced by CmosRWChecksumObserver::update().

static void smbios::executeWithPassword ( smi::IDellCallingInterfaceSmi ci,
u8  arg,
string  password 
) [static]

Definition at line 96 of file TokenDA.cpp.

References ISmi::execute(), smi::getAuthenticationKey(), and IDellCallingInterfaceSmi::setArg().

Referenced by SmiTokenDA::activate(), and SmiTokenDA::setString().

smbios::DEFINE_EXCEPTION_EX ( InvalidTokenTableModeImpl  ,
smbios  ,
InvalidTokenTableMode   
)

smbios::DEFINE_EXCEPTION_EX ( InvalidAccessModeImpl  ,
smbios  ,
InvalidAccessMode   
)

smbios::DEFINE_EXCEPTION_EX ( DerefNullPointerImpl  ,
smbios  ,
DerefNullPointer   
)

smbios::DEFINE_EXCEPTION_EX ( ParameterErrorImpl  ,
smbios  ,
ParameterError   
)

smbios::DEFINE_EXCEPTION_EX ( InvalidChecksumImpl  ,
smbios  ,
InvalidChecksum   
)

smbios::DEFINE_EXCEPTION_EX ( NeedAuthenticationImpl  ,
smbios  ,
NeedAuthentication   
)


Variable Documentation

GetSystemFirmwareTablePtr GetSystemFirmwareTable = 0

Definition at line 53 of file SmbiosStrategy_Windows.cpp.

Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable(), and LoadNtdllFuncs().

int type

Definition at line 132 of file SmbiosWorkaround.cpp.

compareFunction funct

Definition at line 133 of file SmbiosWorkaround.cpp.

Referenced by compare().

struct { ... } compareFunctions[]

Referenced by compare().

const WorkaroundSmbiosItem InvalidCheckTypeSymptoms[]

Initial value:

        {
            
            { 0xD4, 0x08, TYPE_U8 , { {0x03, 0} } },
            
            
            
            
            { 0xD4, 0x02, TYPE_U16, { {0x02, 0xd4, 0} } },
            
            
            
            
            
            
            
            { 0, 0, 0, { {0} } },
            
            
            
            
            
            
        }

Definition at line 30 of file StdWorkarounds.h.

const WorkaroundSmbiosItem InvalidCheckTypeFixup[]

Initial value:

        {
            
            { 0xD4, 0x08, TYPE_U8, {{0x00}} },  
            { 0, 0, 0, {{0}} },
        }

Definition at line 55 of file StdWorkarounds.h.

const WorkaroundSmbiosItem PE1300_InvalidCheckTypeFixup[]

Initial value:

        {
            
            { 0xD4, 0x08, TYPE_U8, {{0x01}} },  
            { 0, 0, 0, {{0}} },
        }

Definition at line 63 of file StdWorkarounds.h.

const Workaround InvalidCheckType

Initial value:

        { "Invalid Checksum Type", InvalidCheckTypeSymptoms, InvalidCheckTypeFixup }

Definition at line 70 of file StdWorkarounds.h.

const Workaround PE1300_InvalidCheckType

Initial value:

        { "PE1300 Invalid Checksum Type", InvalidCheckTypeSymptoms, PE1300_InvalidCheckTypeFixup }

Definition at line 73 of file StdWorkarounds.h.

const SystemAffected PE0600 = { 0x0134, "A00", "A05" }

Definition at line 78 of file StdWorkarounds.h.

const SystemAffected PE0650 = { 0x0141, "A00", "A00" }

Definition at line 79 of file StdWorkarounds.h.

const SystemAffected PE1300 = { 0x8E, "A00", "A--" }

Definition at line 80 of file StdWorkarounds.h.

const SystemAffected PE1600 = { 0x0135, "A00", "A00" }

Definition at line 81 of file StdWorkarounds.h.

const SystemAffected PE1650 = { 0x011B, "A00", "A09" }

Definition at line 82 of file StdWorkarounds.h.

const SystemAffected IDS4235 = { 0x8012, "A--", "A--" }

Definition at line 83 of file StdWorkarounds.h.

const SystemAffected PE1655 = { 0x0124, "A00", "A00" }

Definition at line 84 of file StdWorkarounds.h.

const SystemAffected PE1750 = { 0x014a, "A00", "A00" }

Definition at line 85 of file StdWorkarounds.h.

const SystemAffected PE2600 = { 0x0123, "A00", "A03" }

Definition at line 86 of file StdWorkarounds.h.

const SystemAffected PE2650 = { 0x0121, "A00", "A10" }

Definition at line 87 of file StdWorkarounds.h.

const SystemAffected PE4600 = { 0x0106, "A00", "A08" }

Definition at line 88 of file StdWorkarounds.h.

const SystemAffected PE6600 = { 0x0109, "A00", "A08" }

Definition at line 89 of file StdWorkarounds.h.

const Workaround* PE0600_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 92 of file StdWorkarounds.h.

const Workaround* PE0650_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 93 of file StdWorkarounds.h.

const Workaround* PE1300_Workarounds[] = { &PE1300_InvalidCheckType, 0 }

Definition at line 94 of file StdWorkarounds.h.

const Workaround* PE1600_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 95 of file StdWorkarounds.h.

const Workaround* PE1650_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 96 of file StdWorkarounds.h.

const Workaround* IDS4235_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 97 of file StdWorkarounds.h.

const Workaround* PE1655_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 98 of file StdWorkarounds.h.

const Workaround* PE1750_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 99 of file StdWorkarounds.h.

const Workaround* PE2600_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 100 of file StdWorkarounds.h.

const Workaround* PE2650_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 101 of file StdWorkarounds.h.

const Workaround* PE4600_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 102 of file StdWorkarounds.h.

const Workaround* PE6600_Workarounds[] = { &InvalidCheckType, 0 }

Definition at line 103 of file StdWorkarounds.h.

const SystemWorkaround workaroundMasterList[]

Initial value:

Definition at line 107 of file StdWorkarounds.h.

Referenced by SmbiosWorkaroundFactory::makeNew().

const int numSystemWorkarounds = (sizeof(workaroundMasterList) / sizeof(workaroundMasterList[0]))

Definition at line 124 of file StdWorkarounds.h.

Referenced by SmbiosWorkaroundFactory::makeNew().

struct smbios::up_info LIBSMBIOS_PACKED_ATTR

struct smbios::one_byte_structure LIBSMBIOS_PACKED_ATTR

struct smbios::two_byte_structure LIBSMBIOS_PACKED_ATTR

struct smbios::indexed_io_token LIBSMBIOS_PACKED_ATTR

struct smbios::indexed_io_access_structure LIBSMBIOS_PACKED_ATTR

struct smbios::dell_protected_value_1_structure LIBSMBIOS_PACKED_ATTR

struct smbios::dell_protected_value_2_structure LIBSMBIOS_PACKED_ATTR

struct smbios::calling_interface_token LIBSMBIOS_PACKED_ATTR

struct smbios::calling_interface_structure LIBSMBIOS_PACKED_ATTR


Generated on Tue Jul 11 20:46:47 2006 for SMBIOS Library by  doxygen 1.4.7