src/include/smbios/SystemInfo.h File Reference
#include "smbios/config/auto_link.hpp"
#include <stdio.h>
Go to the source code of this file.
Define Documentation
#define INTERNALERROR 0x07 |
#define NOTIMPLEMENTED 0x08 |
#define SMBIOSEXCEPTION 0x01 |
#define SMBIOSITEMDATAOUTOFBOUNDS 0x03 |
#define SMBIOSITEMSTRINGUNAVAILABLE 0x04 |
#define SMBIOSPARAMETEREXCEPTION 0x06 |
#define SMBIOSPARSEEXCEPTION 0x02 |
#define SMBIOSPERMISSIONEXCEPTION 0x05 |
Function Documentation
void SMBIOSFreeMemory |
( |
const char * |
|
) |
|
Free memory allocated by libsmbios.
This function must be called to free memory for any function that allocates memory on behalf of its caller.
const char* SMBIOSGetAssetTag |
( |
|
) |
|
Returns the 10 character Dell Asset Tag.
Allocates a buffer on behalf of the caller. Caller must use the freeMemory() function call to free this memory when finished.
const char* SMBIOSGetBiosVersion |
( |
|
) |
|
Return a buffer containing the BIOS version string.
Allocates a buffer on behalf of the caller. Caller must use the freeMemory() function call to free this memory when finished.
int SMBIOSGetBootToUp |
( |
|
) |
|
int SMBIOSGetDellSystemId |
( |
|
) |
|
Return the Dell System ID Byte or Word.
The Dell System ID is a unique number allocated to each Dell System (server, desktop, workstation, or laptop) that uniquely identifies that system within Dell's product line.
const char* SMBIOSGetLibraryVersionString |
( |
|
) |
|
Return a string representing the version of the libsmbios library.
Returns the current version of the SMBIOS library as a string
int SMBIOSGetNvramStateBytes |
( |
int |
user |
) |
|
const char* SMBIOSGetServiceTag |
( |
|
) |
|
Returns the 5 or 7 character Dell Service Tag.
Allocates a buffer on behalf of the caller. Caller must use the freeMemory() function call to free this memory when finished.
int SMBIOSGetSmiPasswordCoding |
( |
|
) |
|
returns password coding used in SMI calls 0 == unknown 1 == scan code 2 == ascii
const char* SMBIOSGetSysInfoErrorString |
( |
|
) |
|
This function returns the string error message raised by any of the SystemInfo functions
const char* SMBIOSGetSystemName |
( |
|
) |
|
Return a buffer containing the System Name.
Allocates a buffer on behalf of the caller. Caller must use the freeMemory() function call to free this memory when finished.
const char* SMBIOSGetVendorName |
( |
|
) |
|
Allocates a buffer on behalf of the caller. Caller must use the freeMemory() function call to free this memory when finished.
int SMBIOSHasBootToUp |
( |
|
) |
|
int SMBIOSHasNvramStateBytes |
( |
|
) |
|
int SMBIOSIsDellSystem |
( |
|
) |
|
Returns 0 if the system is not a Dell, 1 if it is.
void SMBIOSMapAsciiTo_en_US_ScanCode |
( |
char * |
outputScanCodeBuf, |
|
|
const char * |
inputAsciiBuf, |
|
|
size_t |
outputBufSize | |
|
) |
| | |
Copies chars from inputbuf to outputbuf, changing to scan-codes from ascii. buffers must be pre-allocated.
int SMBIOSSetAssetTag |
( |
const char * |
password, |
|
|
const char * |
newTag, |
|
|
size_t |
len | |
|
) |
| | |
Set the Dell Asset Tag.
The Dell Asset Tag is displayed in BIOS and is also contained in SMBIOS. This tag can generally be up to 10 chars long. There are SMI and CMOS methods to set this tag. At present, only CMOS access method is implemented in libsmbios. This works across all Dell hardware that the author is aware of.
User of the system can use this field to store any user-defined data. Dell BIOS/support/etc does not utilize this value.
void SMBIOSSetBootToUp |
( |
int |
state |
) |
|
void SMBIOSSetNvramStateBytes |
( |
int |
value, |
|
|
int |
user | |
|
) |
| | |
int SMBIOSSetServiceTag |
( |
const char * |
password, |
|
|
const char * |
newTag, |
|
|
size_t |
len | |
|
) |
| | |
Set the 5 or 7 character Dell Service Tag.
The Dell Asset Tag is displayed in BIOS and is also contained in SMBIOS. This tag can generally be up to 7 chars long. There are SMI and CMOS methods to set this tag. At present, only CMOS access method is implemented in libsmbios. This works across all Dell hardware that the author is aware of.
WARNING! The Dell Service Tag is very closely tied into the Dell support system. This tag should not be changed except under direction from Dell support.