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 |
class | ConstSmbiosTableIterator |
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 |
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) | |
DECLARE_EXCEPTION_EX (ItemNotFound, 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) |
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 (ItemNotFoundImpl, smbios, ItemNotFound) | |
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) |
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 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])) |
|
Definition at line 244 of file TokenImpl.h. |
|
Definition at line 35 of file TokenLowLevel.h. |
|
Definition at line 43 of file TokenLowLevel.h. |
|
Definition at line 145 of file TokenLowLevel.h. |
|
Definition at line 32 of file SmbiosDefs.h. |
|
Definition at line 98 of file SmbiosWorkaroundImpl.h. |
|
Definition at line 52 of file Token.cpp. References TokenTableFactory::getFactory(), and TokenTableFactory::getSingleton(). |
|
Referenced by smi::wirelessRadioControl(), and smi::wirelessSwitchControl(). |
|
Definition at line 226 of file checksum.cpp. References ICmosRW::readByte(), u32, and u8. Referenced by CmosRWChecksumObserver::update(). |
|
Definition at line 216 of file SmbiosItem.cpp. References _. Referenced by SmbiosItem::getData(). |
|
Definition at line 97 of file SmbiosWorkaround.cpp. References datatron::data, ISmbiosItem::getData(), and u8. Referenced by doFixupItem(). |
|
|
|
|
|
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 137 of file SmbiosWorkaround.cpp. References compare(), WorkaroundSmbiosItem::data, WorkaroundSmbiosItem::fieldDataType, WorkaroundSmbiosItem::fieldOffset, fixupData(), Workaround::fixups, Workaround::symptoms, and WorkaroundSmbiosItem::type. Referenced by SmbiosWorkaroundTable::fixupItem(). |
|
Definition at line 107 of file TokenDA.cpp. References IDellCallingInterfaceSmi::execute(), and IDellCallingInterfaceSmi::setArg(). Referenced by SmiTokenDA::setString(). |
|
Definition at line 121 of file SmbiosWorkaround.cpp. References _, and datatron::data. Referenced by doFixupItem(). |
|
Definition at line 121 of file SmbiosItem.cpp. References u32. Referenced by SmbiosItem::getStringByStringNumber(). |
|
Definition at line 351 of file SmbiosItem.cpp. References _, and ISmbiosItem::getData(). |
|
Definition at line 340 of file ISmbios.h. References ISmbiosItem::getData(). Referenced by getString_FromItem(). |
|
Definition at line 311 of file SmbiosItem.cpp. References getU16_FromItem(), and u16. Referenced by testStandalone::testTable_Subscript(). |
|
Definition at line 306 of file SmbiosItem.cpp. References getU8_FromItem(), and u8. Referenced by testStandalone::testTable_Subscript(). |
|
Definition at line 301 of file SmbiosItem.cpp. References getU8_FromItem(), and u8. Referenced by testStandalone::testTable_Subscript(). |
|
Definition at line 344 of file SmbiosItem.cpp. References getData(), ISmbiosItem::getStringByStringNumber(), and u8. Referenced by getStringFromTable(), SmbiosWorkaroundFactory::makeNew(), and testPlatform::testVariousAccessors(). |
|
Definition at line 323 of file SmbiosItem.cpp. References ISmbiosItem::getData(), and u16. Referenced by getIdByteFromRevItem(), getItemHandle(), SmiFactoryImpl::makeNew(), SmbiosWorkaroundFactory::makeNew(), testStandalone::testEachItemAccessors(), testStandalone::testGetBoundaries(), and testStandalone::testNonXml(). |
|
Definition at line 330 of file SmbiosItem.cpp. References ISmbiosItem::getData(), and u32. Referenced by testStandalone::testGetBoundaries(). |
|
Definition at line 337 of file SmbiosItem.cpp. References ISmbiosItem::getData(). Referenced by testStandalone::testGetBoundaries(). |
|
Definition at line 316 of file SmbiosItem.cpp. References ISmbiosItem::getData(), and u8. Referenced by getIdByteFromRevItem(), getItemLength(), getItemType(), rbu::getSupportedPacketType(), isBitSet(), SmiFactoryImpl::makeNew(), SmbiosWorkaroundFactory::makeNew(), testStandalone::testEachItemAccessors(), testStandalone::testGetBoundaries(), and testStandalone::testNonXml(). |
|
Definition at line 384 of file SmbiosItem.cpp. References getU8_FromItem(), and u8. Referenced by testStandalone::testSmbiosXml(). |
|
Definition at line 65 of file Token.cpp. References TokenTableFactory::getFactory(), and TokenTableFactory::getSingleton(). Referenced by smi::wirelessRadioControl(). |
|
Definition at line 55 of file SmbiosStrategy_Windows.cpp. Referenced by SmbiosWinGetFirmwareTableStrategy::getSmbiosTable(). |
|
Definition at line 385 of file SmbiosTable.cpp. References ISmbiosTable::streamify(). |
|
Definition at line 396 of file SmbiosItem.cpp. References ISmbiosItem::streamify(). |
|
Definition at line 47 of file Token.cpp. References IToken::streamify(). |
|
Definition at line 318 of file TokenTable.cpp. References ITokenTable::streamify(). |
|
|
|
|
|
Definition at line 47 of file SmbiosStrategy.cpp. Referenced by SmbiosMemoryStrategy::getSmbiosTableHeader(), and validateSmbiosTableEntryPoint(). |
|
Definition at line 95 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(). |
|
Definition at line 242 of file checksum.cpp. References ICmosRW::readByte(), u16, and u32. Referenced by CmosRWChecksumObserver::update(). |
|
Definition at line 260 of file checksum.cpp. References ICmosRW::readByte(), u16, and u32. Referenced by CmosRWChecksumObserver::update(). |
|
Definition at line 53 of file SmbiosStrategy_Windows.cpp. Referenced by memory::enumSystemFirmwareTables(), and SmbiosWinGetFirmwareTableStrategy::getSmbiosTable(). |
|
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. |
|
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. |
|
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(). |