Documentation
¶
Overview ¶
Package smbios provides detection and access to System Management BIOS (SMBIOS) and Desktop Management Interface (DMI) data and structures.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Decoder ¶
type Decoder struct {
// contains filtered or unexported fields
}
A Decoder decodes Structures from a stream.
func NewDecoder ¶
NewDecoder creates a Decoder which decodes Structures from the input stream.
type EntryPoint ¶
type EntryPoint interface { // Table returns the memory address and maximum size of the SMBIOS table. Table() (address, size int) // Version returns the system's SMBIOS version. Version() (major, minor, revision int) }
An EntryPoint is an SMBIOS entry point. EntryPoints contain various properties about SMBIOS.
Use a type assertion to access detailed EntryPoint information.
func ParseEntryPoint ¶
func ParseEntryPoint(r io.Reader) (EntryPoint, error)
ParseEntryPoint parses an EntryPoint from the input stream.
func Stream ¶
func Stream() (io.ReadCloser, EntryPoint, error)
Stream locates and opens a stream of SMBIOS data and the SMBIOS entry point from an operating system-specific location. The stream must be closed after decoding to free its resources.
If no suitable location is found, an error is returned.
type EntryPoint32Bit ¶
type EntryPoint32Bit struct { Anchor string Checksum uint8 Length uint8 Major uint8 Minor uint8 MaxStructureSize uint16 EntryPointRevision uint8 FormattedArea [5]byte IntermediateAnchor string IntermediateChecksum uint8 StructureTableLength uint16 StructureTableAddress uint32 NumberStructures uint16 BCDRevision uint8 }
EntryPoint32Bit is the SMBIOS 32-bit Entry Point structure, used starting in SMBIOS 2.1.
func (*EntryPoint32Bit) Table ¶
func (e *EntryPoint32Bit) Table() (address, size int)
Table implements EntryPoint.
func (*EntryPoint32Bit) Version ¶
func (e *EntryPoint32Bit) Version() (major, minor, revision int)
Version implements EntryPoint.
type EntryPoint64Bit ¶
type EntryPoint64Bit struct { Anchor string Checksum uint8 Length uint8 Major uint8 Minor uint8 Revision uint8 EntryPointRevision uint8 Reserved uint8 StructureTableMaxSize uint32 StructureTableAddress uint64 }
EntryPoint64Bit is the SMBIOS 64-bit Entry Point structure, used starting in SMBIOS 3.0.
func (*EntryPoint64Bit) Table ¶
func (e *EntryPoint64Bit) Table() (address, size int)
Table implements EntryPoint.
func (*EntryPoint64Bit) Version ¶
func (e *EntryPoint64Bit) Version() (major, minor, revision int)
Version implements EntryPoint.
type WindowsEntryPoint ¶
WindowsEntryPoint contains SMBIOS Table entry point data returned from GetSystemFirmwareTable. As raw access to the underlying memory is not given, the full breadth of information is not available.
func (*WindowsEntryPoint) Table ¶
func (e *WindowsEntryPoint) Table() (address, size int)
Table implements EntryPoint. The returned address will always be 0, as it is not returned by GetSystemFirmwareTable.
func (*WindowsEntryPoint) Version ¶
func (e *WindowsEntryPoint) Version() (major, minor, revision int)
Version implements EntryPoint.