Crate smbioslib[][src]

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 Strings.

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

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

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

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

CurrentProbeLocation

Electrical Current Probe Location

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

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

MemorySpeed

Speed of Memory

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

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

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

Traits

SMBiosStruct

SMBIOS Structure

TryInto

An attempted conversion that consumes self, which may or may not be expensive.

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

table_load_from_device

Loads SMBIOS table data (SMBiosData) from the device