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 Workaround * | PE0600_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE0650_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE1300_Workarounds [] = { &PE1300_InvalidCheckType, 0 } |
const Workaround * | PE1600_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE1650_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | IDS4235_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE1655_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE1750_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE2600_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE2650_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE4600_Workarounds [] = { &InvalidCheckType, 0 } |
const Workaround * | PE6600_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 |
|
Definition at line 129 of file SmbiosWorkaround.cpp. |
|
Definition at line 35 of file TokenLowLevel.h. |
|
Definition at line 243 of file TokenImpl.h. |
|
Definition at line 98 of file SmbiosWorkaroundImpl.h. |
|
Definition at line 32 of file SmbiosDefs.h. |
|
Definition at line 43 of file TokenLowLevel.h. |
|
Definition at line 145 of file TokenLowLevel.h. |
|
Definition at line 226 of file checksum.cpp. References ICmosRW::readByte(). Referenced by CmosRWChecksumObserver::update(). |
|
Definition at line 307 of file SmbiosItem.cpp. References _. |
|
Definition at line 230 of file SmbiosItem.cpp. References _. Referenced by SmbiosItem::getBitfield(), SmbiosItem::getU16(), SmbiosItem::getU32(), SmbiosItem::getU64(), and SmbiosItem::getU8(). |
|
Definition at line 143 of file SmbiosWorkaround.cpp. References compareFunctions, and funct. Referenced by doFixupItem(). |
|
Definition at line 111 of file SmbiosWorkaround.cpp. References datatron::dataU16, and ISmbiosItem::getU16(). |
|
Definition at line 102 of file SmbiosWorkaround.cpp. References datatron::dataU32, and ISmbiosItem::getU32(). |
|
Definition at line 93 of file SmbiosWorkaround.cpp. References datatron::dataU64, and ISmbiosItem::getU64(). |
|
Definition at line 120 of file SmbiosWorkaround.cpp. References datatron::dataU8, and ISmbiosItem::getU8(). |
|
|
|
|
|
Used in cases where operating system privleges prevent an action. |
|
Used in cases where something that "cannot happen" happens. Raised in instances usually caused by some internal class state becoming corrupted. |
|
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. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Used in cases where operating system privleges prevent an action. |
|
Used in cases where something that "cannot happen" happens. Raised in instances usually caused by some internal class state becoming corrupted. |
|
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. |
|
Definition at line 176 of file SmbiosWorkaround.cpp. References compare(), WorkaroundSmbiosItem::data, WorkaroundSmbiosItem::fieldDataType, WorkaroundSmbiosItem::fieldOffset, Workaround::symptoms, and WorkaroundSmbiosItem::type. Referenced by SmbiosWorkaroundTable::fixupItem(). |
|
Definition at line 96 of file TokenDA.cpp. References ISmi::execute(). Referenced by SmiTokenDA::activate(), and SmiTokenDA::setString(). |
|
Definition at line 161 of file SmbiosWorkaround.cpp. References _, and datatron::data. |
|
Definition at line 103 of file SmbiosItem.cpp. Referenced by SmbiosItem::getStringByStringNumber(). |
|
Definition at line 267 of file SmbiosItem.cpp. References ISmbiosItem::getU8(). Referenced by SmbiosItem::getU16(), SmbiosItem::getU32(), and SmbiosItem::getU64(). |
|
Definition at line 102 of file SmbiosXml_xerces.cpp. References stdXml. Referenced by SmbiosTableXml::setXmlFilePath(). |
|
Definition at line 210 of file SmbiosXml_xerces.cpp. References xmlutils::findElement(), xmlutils::findElementWithNumericAttr(), and xmlutils::safeGetAttribute(). Referenced by SmbiosTableXml::getStringForType(), and SmbiosItemXml::streamify(). |
|
Definition at line 201 of file SmbiosXml_xerces.cpp. References xmlutils::findElement(), and xmlutils::safeGetAttribute(). |
|
Definition at line 471 of file SmbiosXml_xerces.cpp. References ISmbiosItem::getU8(). |
|
Definition at line 55 of file SmbiosStrategy_Windows.cpp. References GetSystemFirmwareTable. Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable(). |
|
Definition at line 370 of file SmbiosTable.cpp. References ISmbiosTable::streamify(). |
|
Definition at line 391 of file SmbiosItem.cpp. References ISmbiosItem::streamify(). |
|
Definition at line 46 of file Token.cpp. References IToken::streamify(). |
|
Definition at line 318 of file TokenTable.cpp. References ITokenTable::streamify(). |
|
|
|
|
|
Definition at line 170 of file SmbiosXml_xerces.cpp. Referenced by printStructureField(), and verifyElementAttr(). |
|
Definition at line 484 of file SmbiosXml_xerces.cpp. References ISmbiosItem::getString(), ISmbiosItem::getU8(), parseLengthStr(), and xmlutils::safeGetAttribute(). Referenced by SmbiosItemXml::streamify(). |
|
Definition at line 609 of file SmbiosXml_xerces.cpp. References UNREFERENCED_PARAMETER. |
|
|
|
Definition at line 155 of file SmbiosXml_xerces.cpp. References xmlutils::safeXMLChToString(). Referenced by SmbiosTableXml::setXmlFilePath(). |
|
Definition at line 45 of file SmbiosStrategy.cpp. References smbios_table_entry_point::eps_length. Referenced by SmbiosMemoryStrategy::getSmbiosTableHeader(). |
|
Definition at line 194 of file SmbiosXml_xerces.cpp. References parseLengthStr(), and xmlutils::safeGetAttribute(). |
|
Definition at line 186 of file SmbiosXml_xerces.cpp. References xmlutils::safeGetAttribute(). |
|
Definition at line 242 of file checksum.cpp. References ICmosRW::readByte(). Referenced by CmosRWChecksumObserver::update(). |
|
Definition at line 260 of file checksum.cpp. References ICmosRW::readByte(). Referenced by CmosRWChecksumObserver::update(). |
|
Referenced by compare(). |
|
Definition at line 133 of file SmbiosWorkaround.cpp. Referenced by compare(). |
|
Definition at line 53 of file SmbiosStrategy_Windows.cpp. Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable(), and LoadNtdllFuncs(). |
|
Definition at line 83 of file StdWorkarounds.h. |
|
Definition at line 97 of file StdWorkarounds.h. |
|
Initial value: { "Invalid Checksum Type", InvalidCheckTypeSymptoms, InvalidCheckTypeFixup } Definition at line 70 of file StdWorkarounds.h. |
|
Initial value: { { 0xD4, 0x08, TYPE_U8, {{0x00}} }, { 0, 0, 0, {{0}} }, } Definition at line 55 of file StdWorkarounds.h. |
|
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. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 124 of file StdWorkarounds.h. Referenced by SmbiosWorkaroundFactory::makeNew(). |
|
Definition at line 78 of file StdWorkarounds.h. |
|
Definition at line 92 of file StdWorkarounds.h. |
|
Definition at line 79 of file StdWorkarounds.h. |
|
Definition at line 93 of file StdWorkarounds.h. |
|
Definition at line 80 of file StdWorkarounds.h. |
|
Initial value: { "PE1300 Invalid Checksum Type", InvalidCheckTypeSymptoms, PE1300_InvalidCheckTypeFixup } Definition at line 73 of file StdWorkarounds.h. |
|
Initial value: { { 0xD4, 0x08, TYPE_U8, {{0x01}} }, { 0, 0, 0, {{0}} }, } Definition at line 63 of file StdWorkarounds.h. |
|
Definition at line 94 of file StdWorkarounds.h. |
|
Definition at line 81 of file StdWorkarounds.h. |
|
Definition at line 95 of file StdWorkarounds.h. |
|
Definition at line 82 of file StdWorkarounds.h. |
|
Definition at line 96 of file StdWorkarounds.h. |
|
Definition at line 84 of file StdWorkarounds.h. |
|
Definition at line 98 of file StdWorkarounds.h. |
|
Definition at line 85 of file StdWorkarounds.h. |
|
Definition at line 99 of file StdWorkarounds.h. |
|
Definition at line 86 of file StdWorkarounds.h. |
|
Definition at line 100 of file StdWorkarounds.h. |
|
Definition at line 87 of file StdWorkarounds.h. |
|
Definition at line 101 of file StdWorkarounds.h. |
|
Definition at line 88 of file StdWorkarounds.h. |
|
Definition at line 102 of file StdWorkarounds.h. |
|
Definition at line 89 of file StdWorkarounds.h. |
|
Definition at line 103 of file StdWorkarounds.h. |
|
Definition at line 132 of file SmbiosWorkaround.cpp. |
|
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(). |