Crate smbioslib[−][src]
Expand description
SMBIOS Library
Implements the DMTF System Management BIOS (SMBIOS) Reference Specification 3.4.0.
This library focuses on the tasks involved with reading and interpreting BIOS data.
Modules
| fmt | Utilities for formatting and printing |
| fs | Filesystem manipulation operations. |
| io | Traits, helpers, and type definitions for core I/O functionality. |
Structs
| AccessMethodData | System Event Log - Access Method Data |
| AdditionalInformationEntry | Additional Information Entry contained within SMBiosAdditionalInformation |
| AdditionalInformationEntryIterator | Iterates over the AdditionalInformationEntry entries contained within SMBiosAdditionalInformation |
| BaseAddressModifier | Electrical Current Probe Location and Status |
| BaseboardFeatures | Baseboard Features |
| BiosCharacteristics | BIOS Characteristics |
| BiosCharacteristicsExtension0 | BIOS Characteristics Extension Byte 0 |
| BiosCharacteristicsExtension1 | BIOS Characteristics Extension Byte 1 |
| BiosLanguageFlags | BIOS Language Flags |
| BoardTypeData | Board Type Data |
| CacheAssociativityData | Cache Associativity Data |
| CacheConfiguaration | System Cache Configuration |
| ChassisElement | Contained Chassis Element |
| ChassisSecurityStatusData | Chassis Security Status Data |
| ChassisStateData | Chassis State Data |
| ChassisTypeData | Chassis Type Data |
| Connections | Connections |
| ContainedElements | Contained Elements |
| ContainedElementsIterator | Iterates over the ChassisElement entries within ContainedElements |
| CoolingDeviceTypeAndStatus | Cooling Device Type and Status |
| CurrentProbeLocationAndStatus | Electrical Current Probe Location and Status |
| DefinedStructTable | Defined Struct Table |
| ErrorCapabilitiesIterator | Memory Module Error Correcting Capabilities Iterator |
| ErrorCorrectingCapabilities | Memory Controller Error Correcting Capability |
| ErrorCorrectionTypeData | System Cache Error Correction Type Data |
| ErrorDetectingMethodData | Memory Controller Error Detecting Method Data |
| EventLogTypeDescriptor | System Event Log Type Descriptor |
| GroupAssociationItem | Group Association Item contained within SMBiosGroupAssociations |
| GroupAssociationItemIterator | Iterates over the GroupAssociationItem entries contained within SMBiosGroupAssociations |
| Handle | Structure Handle |
| HardwareSecuritySettings | Hardware Security Settings |
| Header | SMBIOS Header |
| HeaderFormatData | System Event Log - Header Format Data |
| HostInterfaceTypeData | Management Controller Host Interface Type Data |
| HostProtocolTypeData | Management Controller Host Interface - Protocol Types Data |
| InterleaveSupportData | Memory Controller Information — Interleave Support Data |
| IpmiInterfaceTypeData | Baseboard Management Controller (BMC) interface type data |
| LoadHandlePair | Load/Handle Pair contained within SMBiosMemoryChannel |
| LoadHandlePairIterator | Iterates over the LoadHandlePair entries contained within SMBiosMemoryChannel |
| LogStatus | System Event Log - Log Status |
| LogTypeData | System Event Log - Log Type Data |
| ManagementDeviceAddressTypeData | Management Device — Address Type Data |
| ManagementDeviceTypeData | Management Device - Type Data |
| MemoryArrayErrorCorrectionData | Memory Array - Error Correction Types Data |
| MemoryArrayLocationData | Memory Array - Location Data |
| MemoryArrayUseData | Memory Array - Use Data |
| MemoryChannelTypeData | Memory Channel — Channel Type Data |
| MemoryDeviceTechnologyData | Memory Device — Memory Technology Data |
| MemoryDeviceTypeData | Memory Device - Type Data |
| MemoryErrorGranularityData | Memory Error - Error Granularity Data |
| MemoryErrorOperationData | Memory Error - Error Operation Data |
| MemoryErrorTypeData | Memory Error - Error Type Data |
| MemoryFormFactorData | Memory Device — Form Factor Data |
| MemoryOperatingModeCapabilities | Memory Device — Memory Operating Mode Capability |
| MemorySpeeds | Memory Controller Information — Memory Speeds |
| MemoryTypeDetails | Memory Device — Type Detail |
| MemoryTypes | Memory Module Information: Memory Types |
| ModuleHandleIterator | Memory Module Handle Iterator |
| ModuleVoltage | Memory Module Voltage |
| ObjectHandleIterator | Object Handle Iterator |
| OnBoardDevice | On Board Device entry within SMBiosOnBoardDeviceInformation |
| OnBoardDeviceIterator | On-board Device Itereator for OnBoardDevices contained within SMBiosOnBoardDeviceInformation |
| OnBoardDeviceType | On Board Device Type |
| PointingDeviceInterfaceData | Built-in Pointing Device Interface Data |
| PointingDeviceTypeData | Built-in Pointing Device Type Data |
| PortInformationConnectorTypeData | Port Information - Connector Types Data |
| PortInformationPortTypeData | Port Types Data |
| PortableBatteryDeviceChemistryData | Portable Battery - Device Chemistry Data |
| PowerSupplyCharacteristics | Power Supply Characteristics |
| ProcessorArchitectureTypeData | Processor Architecture Types Data |
| ProcessorCharacteristics | Processor Characteristics |
| ProcessorFamilyData | Processor Family Data |
| ProcessorFamilyData2 | Processor Family Data #2 |
| ProcessorSpecificBlock | Processor Specific Block contained within SMBiosProcessorAdditionalInformation |
| ProcessorStatus | Processor Socket and CPU Status |
| ProcessorSupportedVoltages | Processor Supported Voltages |
| ProcessorTypeData | Processor Type Data |
| ProcessorUpgradeData | |
| ProtocolRecord | Protocol Record Data contained within SMBiosManagementControllerHostInterface |
| ProtocolRecordIterator | Iterates over the ProtocolRecord entries contained within SMBiosManagementControllerHostInterface |
| SMBiosAdditionalInformation | Additional Information (Type 40) |
| SMBiosBaseboardInformation | Baseboard (or Module) Information (Type 2) |
| SMBiosBiosLanguageInformation | BIOS Language Information (Type 13) |
| SMBiosBisEntryPoint | Boot Integrity Services (BIS) (Type 31) |
| SMBiosBuiltInPointingDevice | Built-in Pointing Device (Type 21) |
| SMBiosCacheInformation | Cache Information (Type 7) |
| SMBiosCoolingDevice | Cooling Device (Type 27) |
| SMBiosData | SMBIOS Data |
| SMBiosElectricalCurrentProbe | Electrical Current Probe (Type 29) |
| SMBiosEndOfTable | End-of-Table (Type 127) |
| SMBiosEntryPoint32 | SMBIOS 2.1 (32 bit) Entry Point structure |
| SMBiosEntryPoint64 | SMBIOS 3.0 (64 bit) Entry Point structure |
| SMBiosGroupAssociations | Group Associations (Type 14) |
| SMBiosHardwareSecurity | Hardware Security (Type 24) |
| SMBiosInactive | Inactive (Type 126) |
| SMBiosInformation | BIOS Information (Type 0) |
| SMBiosIpmiDeviceInformation | IPMI Device Information (Type 38) |
| SMBiosManagementControllerHostInterface | Management Controller Host Interface (Type 42) |
| SMBiosManagementDevice | Management Device (Type 34) |
| SMBiosManagementDeviceComponent | Management Device Component (Type 35) |
| SMBiosManagementDeviceThresholdData | Management Device Threshold Data (Type 36) |
| SMBiosMemoryArrayMappedAddress | Memory Array Mapped Address (Type 19) |
| SMBiosMemoryChannel | Memory Channel (Type 37) |
| SMBiosMemoryControllerInformation | Memory Controller Information (Type 5, Obsolete) |
| SMBiosMemoryDevice | Memory Device (Type 17) |
| SMBiosMemoryDeviceMappedAddress | Memory Device Mapped Address (Type 20) |
| SMBiosMemoryErrorInformation32 | 32-Bit Memory Error Information (Type 18) |
| SMBiosMemoryErrorInformation64 | 64-Bit Memory Error Information (Type 33) |
| SMBiosMemoryModuleInformation | Memory Module Information (Type 6, Obsolete) |
| SMBiosOemStrings | OEM Strings (Type 11) |
| SMBiosOnBoardDeviceInformation | On Board Devices Information (Type 10, Obsolete) |
| SMBiosOnboardDevicesExtendedInformation | Onboard Devices Extended Information (Type 41) |
| SMBiosOutOfBandRemoteAccess | Out-of-Band Remote Access (Type 30) |
| SMBiosPhysicalMemoryArray | Physical Memory Array (Type 16) |
| SMBiosPortConnectorInformation | Port Connector Information (Type 8) |
| SMBiosPortableBattery | Portable Battery (Type 22) |
| SMBiosProcessorAdditionalInformation | Processor Additional Information (Type 44) |
| SMBiosProcessorInformation | Processor Information (Type 4) |
| SMBiosSystemBootInformation | System Boot Information (Type 32) |
| SMBiosSystemChassisInformation | System Enclosure or Chassis (Type 3) |
| SMBiosSystemConfigurationOptions | System Configuration Options (Type 12) |
| SMBiosSystemEventLog | System Event Log (Type 15) |
| SMBiosSystemInformation | System Information (Type 1) |
| SMBiosSystemPowerControls | System Power Controls (Type 25) |
| SMBiosSystemPowerSupply | System Power Supply (Type 39) |
| SMBiosSystemReset | System Reset (Type 23) |
| SMBiosSystemSlot | System Slots (Type 9) |
| SMBiosTemperatureProbe | Temperature Probe (Type 28) |
| SMBiosTpmDevice | TPM Device (Type 43) |
| SMBiosType | SMBIOS Structure Type |
| SMBiosUnknown | OEM or Unknown Structure |
| SMBiosVersion | Version of SMBIOS Structure |
| SMBiosVoltageProbe | Voltage Probe (Type 26) |
| SlotCurrentUsageData | System Slot Current Usage Data |
| SlotLengthData | System Slot Current Usage Data |
| SlotPeerGroup | Slot Peer Group entry within SMBiosSystemSlot |
| SlotPeerGroupIterator | On-board Device Itereator for SlotPeerGroups contained within SMBiosSystemSlot |
| SlotWidthData | Data Bus Width Data |
| SramTypes | System Cache SRAM Types |
| Strings | SMBIOS Strings |
| SystemBootStatusData | Boot Status data of SMBiosSystemBootInformation |
| SystemCacheTypeData | System Cache Type Data |
| SystemResetCapabilities | System Reset Capabilities |
| SystemSlotCharacteristics1 | System Slot Characteristics 1 |
| SystemSlotCharacteristics2 | System Slot Characteristics 2 |
| SystemSlotId | System Slots - Slot Id |
| SystemSlotTypeData | System Slot Type Data |
| SystemUuid | System - UUID |
| SystemWakeUpTypeData | System - Wake-up Type Data |
| TemperatureProbeLocationAndStatus | Temperature Probe Location and Status |
| TpmDeviceCharacteristics | TPM Device Characteristics |
| TypeDescriptors | System Event Log Type Descriptors within SMBiosSystemEventLog |
| TypeDescriptorsIterator | Iterates over the EventLogTypeDescriptor entries within TypeDescriptors |
| UndefinedStruct | Embodies the three basic parts of an SMBIOS structure |
| UndefinedStructTable | Undefined Struct Table |
| VariableDataFormatTypeData | System Event Log - Variable Data Format Type Data |
| VendorId | Vendor Id |
| VoltageProbeLocationAndStatus | Voltage Probe Location and Status |
| WinSMBiosData | Raw SMBIOS Data |
Enums
| AccessMethod | System Event Log - Access Method |
| AddressBit | LS-Bit for Addresses |
| AgpSlotWidth | The slot width of an AGP slot specified in the SystemSlotType |
| BoardType | Board Type |
| BootOption | Boot Option |
| BootOptionOnLimit | Boot Option on Limit |
| BusNumber | Bus Number |
| CacheAssociativity | Cache Associativity |
| CacheLocation | System Cache Location (relative to the CPU module) |
| CacheOperationalMode | System Cache Operational Mode |
| ChassisHeight | Chassis Height |
| ChassisLockPresence | Chassis Lock Presence |
| ChassisSecurityStatus | Chassis Security Status |
| ChassisState | Chassis Statue |
| ChassisType | Chassis Type |
| CoolingDeviceStatus | Cooling Device Status |
| CoolingDeviceType | Cooling Device Type |
| CoreCount | Processor Core Count |
| CoreCount2 | Processor Core Count #2 |
| CoresEnabled | Processor Cores Enabled |
| CoresEnabled2 | Processor Cores Enabled #2 |
| CpuStatus | CPU Status |
| CurrentProbeAccuracy | Current Probe Accuracy |
| CurrentProbeLocation | Electrical Current Probe Location |
| CurrentProbeResolution | Current Probe Resolution |
| CurrentProbeStatus | Electrical Current Probe Status |
| DefinedStruct | SMBIOS Standard Defined Structure |
| DeviceFunctionNumber | Device/Function Number |
| DeviceStatus | Enabled/Disabled Device Status |
| ElementMaximum | Contained Element Maximum |
| ElementMinimum | Contained Element Minimum |
| ElementType | Contained Element Type |
| ErrorCorrectionType | System Cache Error Correction Type |
| ErrorDetectingMethod | Memory Controller Error Detecting Method |
| ExtendedRomSize | Extended BIOS ROM size |
| HardwareSecurityStatus | Hardware Security Status |
| HeaderFormat | System Event Log - Header Format |
| HostInterfaceType | Management Controller Host Interface Types |
| HostProtocolType | Management Controller Host Interface - Protocol Types |
| InputVoltageRangeSwitching | DMTF Input Voltage Range Switching |
| InterleaveSupport | Memory Controller Information — Interleave Support |
| InterruptInfo | Interrupt Info |
| InterruptPolarity | Interrupt Polarity |
| InterruptTriggerMode | Interrupt Trigger Mode |
| IpmiInterfaceType | Baseboard Management Controller (BMC) interface type |
| LanguageFormat | Language Format |
| LogType | System Event Log - Log Type |
| M2SlotType | An M.2 SlotType |
| MXMSlotType | An MXM SlotType |
| ManagementDeviceAddressType | Management Device — Address Type |
| ManagementDeviceType | Management Device - Type |
| MaxPowerCapacity | Max Power Capacity |
| MaximumMemoryCapacity | Maximum memory capacity, in kilobytes, for this array |
| MemoryArrayErrorCorrection | Memory Array - Error Correction Types |
| MemoryArrayLocation | Memory Array - Location |
| MemoryArrayUse | Memory Array - Use |
| MemoryChannelType | Memory Channel — Channel Type |
| MemoryDeviceTechnology | Memory Device — Memory Technology |
| MemoryDeviceType | Memory Device -Type |
| MemoryErrorGranularity | Memory Error - Error Granularity |
| MemoryErrorOperation | Memory Error - Error Operation |
| MemoryErrorType | Memory Error - Error Type |
| MemoryFormFactor | Memory Device — Form Factor |
| MemoryIndicatedSize | Size of Memory in Bytes |
| MemorySize | Size of Memory |
| MemorySizeExtended | Extended Size of Memory |
| MemorySpeed | Speed of Memory |
| MemorySpeedExtended | Extended Speed of Memory |
| PciExpressGeneration | The generation of PciExpress used by the slot. |
| PciExpressSlotWidth | The slot width of a PCI Express slot specified in the SystemSlotType |
| PointingDeviceInterface | Built-in Pointing Device Interface |
| PointingDeviceType | Built-in Pointing Device Type |
| PortInformationConnectorType | Port Information - Connector Types |
| PortInformationPortType | Port Types |
| PortableBatteryDesignCapacity | Portable Battery - Design Capacity |
| PortableBatteryDesignVoltage | Portable Battery - Design Voltage |
| PortableBatteryDeviceChemistry | Portable Battery - Device Chemistry |
| PowerCords | Number of Power Cords |
| PowerSupplyStatus | Power Supply Status |
| PowerSupplyType | DMTF Power Supply Type |
| ProbeAmperage | Probe Amperage |
| ProbeTemperature | Probe Temperature |
| ProbeVoltage | Probe Voltage |
| ProcessorArchitectureType | Processor Architecture Types |
| ProcessorExternalClock | External Clock Frequency in MHz |
| ProcessorFamily | Processor Family |
| ProcessorSpeed | Processor Speed in MHz |
| ProcessorType | Processor Type |
| ProcessorUpgrade | |
| ProcessorVoltage | Processor Voltage |
| RegisterSpacing | Register Spacing |
| ResetCount | Reset Count |
| ResetLimit | Reset Limit |
| RotationalSpeed | Rotational Speed |
| SegmentGroupNumber | Segment Group Number |
| SlotCurrentUsage | System Slot Current Usage |
| SlotLength | System Slot Length |
| SlotWidth | Slot Width |
| SystemBootStatus | System Boot Status |
| SystemCacheType | System Cache Type |
| SystemSlotType | System Slot Type |
| SystemUuidData | System - UUID Data |
| SystemWakeUpType | System - Wake-up Type |
| TemperatureProbeAccuracy | Temperature Probe Accuracy |
| TemperatureProbeLocation | Temperature Probe Location |
| TemperatureProbeResolution | Temperature Probe Resolution |
| TemperatureProbeStatus | Temperature Probe Status |
| ThreadCount | Processor Thread Count |
| ThreadCount2 | Processor Thread Count #2 |
| Timeout | Timeout |
| TimerInterval | Timer Interval |
| TypeOfDevice | Onboard Device Types |
| VariableDataFormatType | System Event Log - Variable Data Format Type |
| VoltageProbeAccuracy | Voltage Probe Accuracy |
| VoltageProbeLocation | Voltage Probe Location |
| VoltageProbeResolution | Voltage Probe Resolution |
| VoltageProbeStatus | Voltage Probe Status |
Constants
| DEV_MEM_FILE | Full path to the memory device (contains BIOS entry point and table data on *nix platforms) |
| SYS_ENTRY_FILE | Full path to smbios_entry_point file on Linux (contains entry point data) |
| SYS_TABLE_FILE | Full path to the DMI file on Linux (contains BIOS table data) |
Traits
| SMBiosStruct | SMBIOS Structure |
| TryInto | An attempted conversion that consumes |
Functions
| dump_raw | dumps raw data into a file |
| load_raw_files | Loads raw smbios data files from a given folder and returns Vec |
| load_smbios_data_from_file | Loads raw smbios data from a file and returns SMBiosData or std::io::Error on error. |
| raw_smbios_from_device | Returns smbios raw data via /sys/firmware/dmi/tables (on Linux) |
| table_load_from_device | Loads SMBiosData from the device via /sys/firmware/dmi/tables (on Linux) |