Currently includes a subset of the SMBIOS strings set
Signed-off-by: Daniel Veillard <[email protected]>
---
docs/schemas/domain.rng | 75 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 0 deletions(-)
diff --git a/docs/schemas/domain.rng b/docs/schemas/domain.rng
index aaf9667..ced46f3 100644
--- a/docs/schemas/domain.rng
+++ b/docs/schemas/domain.rng
@@ -30,6 +30,9 @@
<optional>
<ref name="cpu"/>
</optional>
+ <optional>
+ <ref name="sysinfo"/>
+ </optional>
<ref name="os"/>
<ref name="clock"/>
<ref name="resources"/>
@@ -1744,6 +1747,78 @@
</element>
</define>
+ <!--
+ System information specification:
+ Placeholder for system specific informations likes the ones
+ contained in the SMBIOS area.
+ Only a limited subset of entries can be modified there, so we
+ fully enumerate each case here.
+ The DMTF spec doesn't specify any string subset, just 0 terminated
+ byte strings, but better be safe and restrict at least the names
+ to avoid problems with space normalization in attribute values,
+ the value is kept as the element body for maximum flexibility.
+ A priori we allow only type 0 and type 1 string updates
+ -->
+ <define name="sysinfo">
+ <element name="sysinfo">
+ <attribute name="type">
+ <value>smbios</value>
+ </attribute>
+ <interleave>
+ <optional>
+ <element name="bios">
+ <oneOrMore>
+ <element name="entry">
+ <attribute name="name">
+ <ref name="sysinfo-bios-name"/>
+ </attribute>
+ <ref name="sysinfo-value"/>
+ </element>
+ </oneOrMore>
+ </element>
+ </optional>
+ <optional>
+ <element name="system">
+ <oneOrMore>
+ <element name="entry">
+ <attribute name="name">
+ <ref name="sysinfo-system-name"/>
+ </attribute>
+ <ref name="sysinfo-value"/>
+ </element>
+ </oneOrMore>
+ </element>
+ </optional>
+ </interleave>
+ </element>
+ </define>
+
+ <define name="sysinfo-bios-name">
+ <choice>
+ <value>vendor</value>
+ <value>version</value>
+ <value>date</value>
+ <value>release</value>
+ </choice>
+ </define>
+
+ <define name="sysinfo-system-name">
+ <choice>
+ <value>manufacturer</value>
+ <value>product</value>
+ <value>version</value>
+ <value>serial</value>
+ <value>uuid</value>
+ <value>sku</value>
+ </choice>
+ </define>
+
+ <define name="sysinfo-value">
+ <data type="string">
+ <param name='pattern'>[a-zA-Z0-9/\-_\. ]+</param>
+ </data>
+ </define>
+
<define name="address">
<element name="address">
<choice>
--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list