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

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  ISmiToken
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  SmbiosLinuxEFIStrategy
class  SmbiosWinWMIStrategy
class  SmbiosWinGetFirmwareTableStrategy
class  SmbiosTable
class  SmbiosItem
class  SmbiosWorkaroundFactory
class  SmbiosWorkaroundTable
struct  SystemAffected
union  datatron
struct  WorkaroundSmbiosItem
struct  Workaround
struct  SystemWorkaround
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
struct  up_info
struct  one_byte_structure
struct  two_byte_structure
class  TokenTableFactoryImpl
class  SmbiosTableXml
class  SmbiosXmlFactoryImpl

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)
u8 getItemType (const ISmbiosItem &item)
u8 getItemLength (const ISmbiosItem &item)
u16 getItemHandle (const ISmbiosItem &item)
u8 getU8_FromItem (const ISmbiosItem &item, unsigned int offset)
u16 getU16_FromItem (const ISmbiosItem &item, unsigned int offset)
u32 getU32_FromItem (const ISmbiosItem &item, unsigned int offset)
u64 getU64_FromItem (const ISmbiosItem &item, unsigned int offset)
const char * getString_FromItem (const ISmbiosItem &item, unsigned int offset)
void * getBits_FromItem (const ISmbiosItem &item, unsigned int offset, void *out, unsigned int lsb=0, unsigned int msb=0)
bool isBitSet (const ISmbiosItem *itemPtr, unsigned int offset, unsigned int bitToTest)
template<class R>
R & getData (const ISmbiosItem &item, unsigned int offset, R &out)
std::ostream & operator<< (std::ostream &cout, const ISmbiosTable &item)
std::ostream & operator<< (std::ostream &cout, const ISmbiosItem &item)
template<class R>
R & getData (const ISmbiosItem &item, const std::string field, R &out)
u8 getU8_FromItem (const ISmbiosItem &item, std::string field)
u16 getU16_FromItem (const ISmbiosItem &item, std::string field)
u32 getU32_FromItem (const ISmbiosItem &item, std::string field)
u64 getU64_FromItem (const ISmbiosItem &item, std::string field)
const char * getString_FromItem (const ISmbiosItem &item, std::string field)
void * getBits_FromItem (const ISmbiosItem &item, std::string field, std::string bitField, void *out)
void getData_FromItem (std::string field, void *out, size_t sz)
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)
bool isTokenActive (int tokenNum)
void activateToken (int tokenNum, std::string password="")
 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)
 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)
u32 force_u64_to_u32 (u64 orig)
void checkItemBounds (size_t total_size, size_t length, size_t offset, size_t size)
ostream & operator<< (ostream &cout, const ISmbiosItem &item)
bool validateDMITableEntryPoint (const smbiosLowlevel::dmi_table_entry_point *tempTEP, bool strict, ParseExceptionImpl &parseException)
bool validateSmbiosTableEntryPoint (const smbiosLowlevel::smbios_table_entry_point *tempTEP, bool strict, ParseExceptionImpl &parseException)
int LoadNtdllFuncs (void)
ostream & operator<< (ostream &cout, const ISmbiosTable &table)
bool compare (int size, const ISmbiosItem *item, int offset, datatron data)
void fixupData (u8 *buf, size_t size, unsigned int offset, unsigned int len, datatron data)
void doFixupItem (const Workaround *wa, const ISmbiosItem *item, u8 *buf, size_t bufSize)
u8 byteChecksum (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort)
u16 wordChecksum (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort, bool complement)
u16 wordCrc (const ICmosRW *cmos, u32 start, u32 end, u32 indexPort, u32 dataPort)
void activateToken (int tokenNum, string password)
void executeWithPassword (smi::IDellCallingInterfaceSmi *ci, u8 arg, string password)
DOMDocument * getSmbiosXmlDoc (DOMBuilder *parser, std::string &xmlFile)
void validateSmbiosXmlDoc (DOMDocument *doc)
unsigned int parseLengthStr (string size)
void verifyElementAttr (const DOMElement *element, const string elementName, const string value)
void verifyElementAttr (const DOMElement *element, const string elementName, unsigned int size)
int getTypeForString (DOMDocument *doc, const string searchForDesc)
const string getStringForType (const DOMDocument *doc, const int searchForType)
void getData_UsingXml (const ISmbiosItem &item, const string fieldName, void *out, size_t size)
void * getBits_FromItem (const ISmbiosItem &item, const string field, const string bitField, void *out)
void printStructureField (std::ostream &cout, const DOMNode *node, const ISmbiosItem &item)
std::ostream & toXmlString (const ISmbiosTable &table, ostream &cout)

Variables

smbios::indexed_io_token LIBSMBIOS_PACKED_ATTR
GetSystemFirmwareTablePtr GetSystemFirmwareTable = 0
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]))


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
CHECK_TYPE_WORD_CHECKSUM 
CHECK_TYPE_BYTE_CHECKSUM 
CHECK_TYPE_WORD_CRC 
CHECK_TYPE_WORD_CHECKSUM_N 

Definition at line 244 of file TokenImpl.h.

anonymous enum
 

Enumeration values:
DellIndexedIoTokenType 
DellProtectedAreaType1 
DellProtectedAreaType2 
DellCallingInterface 

Definition at line 35 of file TokenLowLevel.h.

anonymous enum
 

Enumeration values:
TokenTypeEOT 

Definition at line 43 of file TokenLowLevel.h.

anonymous enum
 

Enumeration values:
pvFmtAlphaNumericScanCode 
pvFmtAlphaNumericAscii 
pvFmtAlphaNumericScanCodeNS 
pvFmtAlphaNumericAsciiNS 

Definition at line 145 of file TokenLowLevel.h.

anonymous enum
 

Enumeration values:
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
 

Enumeration values:
TYPE_U8 
TYPE_U16 
TYPE_U32 
TYPE_U64 

Definition at line 98 of file SmbiosWorkaroundImpl.h.


Function Documentation

void activateToken int  tokenNum,
string  password
 

Definition at line 52 of file Token.cpp.

References TokenTableFactory::getFactory(), and TokenTableFactory::getSingleton().

void activateToken int  tokenNum,
std::string  password = ""
 

Referenced by smi::wirelessRadioControl(), and smi::wirelessSwitchControl().

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(), u32, and u8.

Referenced by CmosRWChecksumObserver::update().

void checkItemBounds size_t  total_size,
size_t  length,
size_t  offset,
size_t  size
 

Definition at line 215 of file SmbiosItem.cpp.

References _.

Referenced by SmbiosItem::getData().

bool compare int  size,
const ISmbiosItem *  item,
int  offset,
datatron  data
[static]
 

Definition at line 93 of file SmbiosWorkaround.cpp.

References datatron::data, ISmbiosItem::getData(), and u8.

Referenced by doFixupItem().

DECLARE_EXCEPTION TokenException   ) 
 

DECLARE_EXCEPTION SmbiosException   ) 
 

DECLARE_EXCEPTION PermissionException   ) 
 

Used in cases where operating system privleges prevent an action.

DECLARE_EXCEPTION InternalError   ) 
 

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

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.

DECLARE_EXCEPTION_EX NeedAuthentication  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX InvalidChecksum  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX ParameterError  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX DerefNullPointer  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX InvalidAccessMode  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX InvalidTokenTableMode  ,
smbios  ,
TokenException 
 

DECLARE_EXCEPTION_EX DataOutOfBounds  ,
smbios  ,
SmbiosException 
 

DECLARE_EXCEPTION_EX StringUnavailable  ,
smbios  ,
SmbiosException 
 

DECLARE_EXCEPTION_EX ParseException  ,
smbios  ,
SmbiosException 
 

DECLARE_EXCEPTION_EX ParameterException  ,
smbios  ,
SmbiosException 
 

DEFINE_EXCEPTION_EX NeedAuthenticationImpl  ,
smbios  ,
NeedAuthentication 
 

DEFINE_EXCEPTION_EX InvalidChecksumImpl  ,
smbios  ,
InvalidChecksum 
 

DEFINE_EXCEPTION_EX ParameterErrorImpl  ,
smbios  ,
ParameterError 
 

DEFINE_EXCEPTION_EX DerefNullPointerImpl  ,
smbios  ,
DerefNullPointer 
 

DEFINE_EXCEPTION_EX InvalidAccessModeImpl  ,
smbios  ,
InvalidAccessMode 
 

DEFINE_EXCEPTION_EX InvalidTokenTableModeImpl  ,
smbios  ,
InvalidTokenTableMode 
 

DEFINE_EXCEPTION_EX DataOutOfBoundsImpl  ,
smbios  ,
DataOutOfBounds 
 

DEFINE_EXCEPTION_EX StringUnavailableImpl  ,
smbios  ,
StringUnavailable 
 

DEFINE_EXCEPTION_EX ParseExceptionImpl  ,
smbios  ,
ParseException 
 

DEFINE_EXCEPTION_EX ParameterExceptionImpl  ,
smbios  ,
ParameterException 
 

DEFINE_EXCEPTION_EX PermissionExceptionImpl  ,
smbios  ,
PermissionException 
 

Used in cases where operating system privleges prevent an action.

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.

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.

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

Definition at line 133 of file SmbiosWorkaround.cpp.

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

Referenced by SmbiosWorkaroundTable::fixupItem().

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

Definition at line 106 of file TokenDA.cpp.

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

Referenced by SmiTokenDA::setString().

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

Definition at line 117 of file SmbiosWorkaround.cpp.

References _, and datatron::data.

Referenced by doFixupItem().

u32 force_u64_to_u32 u64  orig  )  [static]
 

Definition at line 120 of file SmbiosItem.cpp.

References u32.

Referenced by SmbiosItem::getStringByStringNumber().

void* getBits_FromItem const ISmbiosItem &  item,
const string  field,
const string  bitField,
void *  out
 

Definition at line 404 of file SmbiosXml.cpp.

References DOMDocument, DOMElement, xmlutils::findElement(), xmlutils::findElementWithNumericAttr(), getBits_FromItem(), SmbiosFactory::getFactory(), xmlutils::getNumberFromXmlAttr(), SmbiosFactory::getSingleton(), ISmbiosItem::getType(), SmbiosTableXml::getXmlDoc(), and xmlDocGetRootElement.

Referenced by testStandalone::testItem_GetBiosInfo(), and testStandalone::testTypeMismatch().

void* getBits_FromItem const ISmbiosItem &  item,
std::string  field,
std::string  bitField,
void *  out
 

void * getBits_FromItem const ISmbiosItem &  item,
unsigned int  offset,
void *  out,
unsigned int  lsb = 0,
unsigned int  msb = 0
 

Definition at line 350 of file SmbiosItem.cpp.

References _, and ISmbiosItem::getData().

Referenced by getBits_FromItem().

R& getData const ISmbiosItem &  item,
const std::string  field,
R &  out
 

Definition at line 44 of file ISmbiosXml.h.

References getData_FromItem().

Referenced by testStandalone::testItem_GetBiosInfo().

R& getData const ISmbiosItem &  item,
unsigned int  offset,
R &  out
 

Definition at line 376 of file ISmbios.h.

References ISmbiosItem::getData().

Referenced by getString_FromItem().

void getData_FromItem std::string  field,
void *  out,
size_t  sz
 

Referenced by getData().

void getData_UsingXml const ISmbiosItem &  item,
const string  fieldName,
void *  out,
size_t  size
[static]
 

Definition at line 325 of file SmbiosXml.cpp.

References DOMDocument, DOMElement, xmlutils::findElement(), xmlutils::findElementWithNumericAttr(), ISmbiosItem::getData(), SmbiosFactory::getFactory(), xmlutils::getNumberFromXmlAttr(), SmbiosFactory::getSingleton(), ISmbiosItem::getType(), SmbiosTableXml::getXmlDoc(), verifyElementAttr(), and xmlDocGetRootElement.

Referenced by getU16_FromItem(), getU32_FromItem(), getU64_FromItem(), and getU8_FromItem().

u16 getItemHandle const ISmbiosItem &  item  ) 
 

Definition at line 310 of file SmbiosItem.cpp.

References getU16_FromItem(), and u16.

Referenced by testStandalone::testTable_Subscript().

u8 getItemLength const ISmbiosItem &  item  ) 
 

Definition at line 305 of file SmbiosItem.cpp.

References getU8_FromItem(), and u8.

Referenced by testStandalone::testTable_Subscript().

u8 getItemType const ISmbiosItem &  item  ) 
 

Definition at line 300 of file SmbiosItem.cpp.

References getU8_FromItem(), and u8.

Referenced by testStandalone::testTable_Subscript().

DOMDocument* getSmbiosXmlDoc DOMBuilder *  parser,
std::string &  xmlFile
 

Definition at line 113 of file SmbiosXml.cpp.

References compatXmlReadFile, compatXmlReadMemory, DCERR, DOMDocument, and stdXml.

Referenced by SmbiosTableXml::setXmlFilePath().

const char * getString_FromItem const ISmbiosItem &  item,
std::string  field
 

Definition at line 377 of file SmbiosXml.cpp.

References DOMDocument, DOMElement, xmlutils::findElement(), xmlutils::findElementWithNumericAttr(), SmbiosFactory::getFactory(), xmlutils::getNumberFromXmlAttr(), SmbiosFactory::getSingleton(), getString_FromItem(), ISmbiosItem::getType(), SmbiosTableXml::getXmlDoc(), verifyElementAttr(), and xmlDocGetRootElement.

Referenced by getStringFromTable(), testStandalone::testItem_GetBiosInfo(), testStandalone::testItem_GetSystemInfo(), testStandalone::testNonXml(), testStandalone::testTypeMismatch(), and testPlatform::testVariousAccessors().

const char * getString_FromItem const ISmbiosItem &  item,
unsigned int  offset
 

Definition at line 343 of file SmbiosItem.cpp.

References getData(), ISmbiosItem::getStringByStringNumber(), and u8.

Referenced by getString_FromItem(), SmbiosWorkaroundFactory::makeNew(), and printStructureField().

const string getStringForType const DOMDocument *  doc,
const int  searchForType
 

Definition at line 198 of file SmbiosXml.cpp.

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

Referenced by SmbiosTableXml::getStringForType().

int getTypeForString DOMDocument *  doc,
const string  searchForDesc
 

Definition at line 189 of file SmbiosXml.cpp.

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

Referenced by SmbiosTableXml::getTypeForString().

u16 getU16_FromItem const ISmbiosItem &  item,
std::string  field
 

Definition at line 356 of file SmbiosXml.cpp.

References getData_UsingXml(), and u16.

Referenced by getIdByteFromRevItem(), testStandalone::testEachItemAccessors(), testStandalone::testGetBoundaries(), testStandalone::testItem_GetBiosInfo(), testStandalone::testItem_GetSystemInfo(), testStandalone::testNonXml(), and testStandalone::testTypeMismatch().

u16 getU16_FromItem const ISmbiosItem &  item,
unsigned int  offset
 

Definition at line 322 of file SmbiosItem.cpp.

References ISmbiosItem::getData(), and u16.

Referenced by getItemHandle(), and SmbiosWorkaroundFactory::makeNew().

u32 getU32_FromItem const ISmbiosItem &  item,
std::string  field
 

Definition at line 363 of file SmbiosXml.cpp.

References getData_UsingXml(), and u32.

Referenced by testStandalone::testGetBoundaries(), and testStandalone::testTypeMismatch().

u32 getU32_FromItem const ISmbiosItem &  item,
unsigned int  offset
 

Definition at line 329 of file SmbiosItem.cpp.

References ISmbiosItem::getData(), and u32.

u64 getU64_FromItem const ISmbiosItem &  item,
std::string  field
 

Definition at line 370 of file SmbiosXml.cpp.

References getData_UsingXml().

Referenced by testStandalone::testGetBoundaries(), testStandalone::testItem_GetBiosInfo(), and testStandalone::testTypeMismatch().

u64 getU64_FromItem const ISmbiosItem &  item,
unsigned int  offset
 

Definition at line 336 of file SmbiosItem.cpp.

References ISmbiosItem::getData().

u8 getU8_FromItem const ISmbiosItem &  item,
std::string  field
 

Definition at line 349 of file SmbiosXml.cpp.

References getData_UsingXml(), and u8.

Referenced by getIdByteFromRevItem(), rbu::getSupportedPacketType(), testStandalone::testEachItemAccessors(), testStandalone::testGetBoundaries(), testStandalone::testItem_GetBiosInfo(), testStandalone::testItem_GetSystemInfo(), and testStandalone::testNonXml().

u8 getU8_FromItem const ISmbiosItem &  item,
unsigned int  offset
 

Definition at line 315 of file SmbiosItem.cpp.

References ISmbiosItem::getData(), and u8.

Referenced by getItemLength(), getItemType(), isBitSet(), SmbiosWorkaroundFactory::makeNew(), and printStructureField().

bool isBitSet const ISmbiosItem *  itemPtr,
unsigned int  offset,
unsigned int  bitToTest
 

Definition at line 383 of file SmbiosItem.cpp.

References getU8_FromItem(), and u8.

Referenced by testStandalone::testSmbiosXml().

bool isTokenActive int  tokenNum  ) 
 

Definition at line 65 of file Token.cpp.

References TokenTableFactory::getFactory(), and TokenTableFactory::getSingleton().

Referenced by smi::wirelessRadioControl().

int LoadNtdllFuncs void   ) 
 

Definition at line 55 of file SmbiosStrategy_Windows.cpp.

Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable().

ostream& operator<< ostream &  cout,
const ISmbiosTable &  table
 

Definition at line 369 of file SmbiosTable.cpp.

References ISmbiosTable::streamify().

ostream& operator<< ostream &  cout,
const ISmbiosItem &  item
 

Definition at line 395 of file SmbiosItem.cpp.

References ISmbiosItem::streamify().

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

Definition at line 47 of file Token.cpp.

References IToken::streamify().

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 ISmbiosItem &  item
 

std::ostream& operator<< std::ostream &  cout,
const ISmbiosTable &  item
 

unsigned int parseLengthStr string  size  ) 
 

Definition at line 158 of file SmbiosXml.cpp.

Referenced by printStructureField(), and verifyElementAttr().

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

Definition at line 438 of file SmbiosXml.cpp.

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

std::ostream& toXmlString const ISmbiosTable &  table,
ostream &  cout
 

Definition at line 503 of file SmbiosXml.cpp.

References UNREFERENCED_PARAMETER.

std::ostream& toXmlString const ISmbiosTable &  ,
std::ostream & 
 

bool validateDMITableEntryPoint const smbiosLowlevel::dmi_table_entry_point tempTEP,
bool  strict,
ParseExceptionImpl &  parseException
 

Definition at line 46 of file SmbiosStrategy.cpp.

References _, DCERR, and u8.

Referenced by SmbiosMemoryStrategy::getSmbiosTableHeader(), and validateSmbiosTableEntryPoint().

bool validateSmbiosTableEntryPoint const smbiosLowlevel::smbios_table_entry_point tempTEP,
bool  strict,
ParseExceptionImpl &  parseException
 

Definition at line 94 of file SmbiosStrategy.cpp.

References _, DCERR, smbios_table_entry_point::dmi, smbios_table_entry_point::eps_length, smbios_table_entry_point::major_ver, u8, and validateDMITableEntryPoint().

Referenced by SmbiosMemoryStrategy::getSmbiosTableHeader().

void validateSmbiosXmlDoc DOMDocument *  doc  ) 
 

Definition at line 139 of file SmbiosXml.cpp.

References xmlDocGetRootElement, and xmlFreeDoc.

Referenced by SmbiosTableXml::setXmlFilePath().

void verifyElementAttr const DOMElement *  element,
const string  elementName,
unsigned int  size
 

Definition at line 182 of file SmbiosXml.cpp.

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

void verifyElementAttr const DOMElement *  element,
const string  elementName,
const string  value
 

Definition at line 174 of file SmbiosXml.cpp.

References xmlutils::safeGetAttribute().

Referenced by getData_UsingXml(), and getString_FromItem().

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(), u16, and u32.

Referenced by CmosRWChecksumObserver::update().

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(), u16, and u32.

Referenced by CmosRWChecksumObserver::update().


Variable Documentation

GetSystemFirmwareTablePtr GetSystemFirmwareTable = 0
 

Definition at line 53 of file SmbiosStrategy_Windows.cpp.

Referenced by memory::enumSystemFirmwareTables(), and SmbiosWinGetFirmwareTableStrategy::getSmbiosTable().

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

Definition at line 83 of file StdWorkarounds.h.

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

Definition at line 97 of file StdWorkarounds.h.

const Workaround InvalidCheckType
 

Initial value:

        { "Invalid Checksum Type", InvalidCheckTypeSymptoms, InvalidCheckTypeFixup }

Definition at line 70 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 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.

struct smbios::two_byte_structure LIBSMBIOS_PACKED_ATTR
 

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

Definition at line 124 of file StdWorkarounds.h.

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

Definition at line 78 of file StdWorkarounds.h.

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

Definition at line 92 of file StdWorkarounds.h.

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

Definition at line 79 of file StdWorkarounds.h.

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

Definition at line 93 of file StdWorkarounds.h.

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

Definition at line 80 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 WorkaroundSmbiosItem PE1300_InvalidCheckTypeFixup[]
 

Initial value:

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

Definition at line 63 of file StdWorkarounds.h.

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

Definition at line 94 of file StdWorkarounds.h.

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

Definition at line 81 of file StdWorkarounds.h.

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

Definition at line 95 of file StdWorkarounds.h.

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

Definition at line 82 of file StdWorkarounds.h.

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

Definition at line 96 of file StdWorkarounds.h.

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

Definition at line 84 of file StdWorkarounds.h.

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

Definition at line 98 of file StdWorkarounds.h.

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

Definition at line 85 of file StdWorkarounds.h.

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

Definition at line 99 of file StdWorkarounds.h.

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

Definition at line 86 of file StdWorkarounds.h.

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

Definition at line 100 of file StdWorkarounds.h.

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

Definition at line 87 of file StdWorkarounds.h.

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

Definition at line 101 of file StdWorkarounds.h.

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

Definition at line 88 of file StdWorkarounds.h.

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

Definition at line 102 of file StdWorkarounds.h.

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

Definition at line 89 of file StdWorkarounds.h.

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

Definition at line 103 of file StdWorkarounds.h.

const SystemWorkaround workaroundMasterList[]
 

Initial value:

        {
            { &PE0600, PE0600_Workarounds },
            { &PE0650, PE0650_Workarounds },
            { &PE1300, PE1300_Workarounds },  
            { &PE1600, PE1600_Workarounds },
            { &PE1650, PE1650_Workarounds },  
            { &IDS4235, IDS4235_Workarounds },  
            { &PE1655, PE1655_Workarounds },  
            { &PE1750, PE1750_Workarounds },
            { &PE2600, PE2600_Workarounds },
            { &PE2650, PE2650_Workarounds },
            { &PE4600, PE4600_Workarounds },
            { &PE6600, PE6600_Workarounds },  
        }

Definition at line 107 of file StdWorkarounds.h.

Referenced by SmbiosWorkaroundFactory::makeNew().


Generated on Thu Jun 21 02:49:22 2007 for SMBIOS Library by  doxygen 1.3.9.1