summaryrefslogtreecommitdiffstats
path: root/src/interface/smbios
diff options
context:
space:
mode:
authorMichael Brown2013-03-20 01:12:30 +0100
committerMichael Brown2013-03-20 01:12:30 +0100
commit4f742bcd95373425fde52b0d3b354bb020446542 (patch)
treea04bc2e8d2874ca1d4b7b2ac236f6bfb0ed4f47e /src/interface/smbios
parent[int13] Split out ISO9660 and El Torito definitions to separate header files (diff)
downloadipxe-4f742bcd95373425fde52b0d3b354bb020446542.tar.gz
ipxe-4f742bcd95373425fde52b0d3b354bb020446542.tar.xz
ipxe-4f742bcd95373425fde52b0d3b354bb020446542.zip
[smbios] Provide SMBIOS version number via smbios_version()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/interface/smbios')
-rw-r--r--src/interface/smbios/smbios.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/interface/smbios/smbios.c b/src/interface/smbios/smbios.c
index 8ed24dd6..2adaa53d 100644
--- a/src/interface/smbios/smbios.c
+++ b/src/interface/smbios/smbios.c
@@ -179,3 +179,20 @@ int read_smbios_string ( struct smbios_structure *structure,
DBG ( "SMBIOS string index %d not found\n", index );
return -ENOENT;
}
+
+/**
+ * Get SMBIOS version
+ *
+ * @ret version Version, or negative error
+ */
+int smbios_version ( void ) {
+ int rc;
+
+ /* Find SMBIOS */
+ if ( ( smbios.address == UNULL ) &&
+ ( ( rc = find_smbios ( &smbios ) ) != 0 ) )
+ return rc;
+ assert ( smbios.address != UNULL );
+
+ return smbios.version;
+}