mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-10-05 05:45:46 +00:00
conf: domcaps: Report device <rng>
This adds device <rng> reporting. Example output: <rng supported='yes'> <enum name='model'> <value>virtio</value> <value>virtio-transitional</value> <value>virtio-non-transitional</value> </enum> <enum name='backendModel'> <value>random</value> <value>egd</value> </enum> </rng> Reviewed-by: Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
0e66f0669a
commit
9828b6e7fe
@ -450,6 +450,41 @@
|
|||||||
element.</dd>
|
element.</dd>
|
||||||
</dl>
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
<h4><a id="elementsRNG">RNG device</a></h4>
|
||||||
|
<p>RNG device capabilities are exposed under the
|
||||||
|
<code>rng</code> element. For instance:</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
<domainCapabilities>
|
||||||
|
...
|
||||||
|
<devices>
|
||||||
|
<rng supported='yes'>
|
||||||
|
<enum name='model'>
|
||||||
|
<value>virtio</value>
|
||||||
|
<value>virtio-transitional</value>
|
||||||
|
<value>virtio-non-transitional</value>
|
||||||
|
</enum>
|
||||||
|
<enum name='backendModel'>
|
||||||
|
<value>random</value>
|
||||||
|
<value>egd</value>
|
||||||
|
</enum>
|
||||||
|
</rng>
|
||||||
|
...
|
||||||
|
</devices>
|
||||||
|
</domainCapabilities>
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
<dt><code>model</code></dt>
|
||||||
|
<dd>Options for the <code>model</code> attribute of the
|
||||||
|
<rng> element.</dd>
|
||||||
|
<dt><code>backendModel</code></dt>
|
||||||
|
<dd>Options for the <code>model</code> attribute of the
|
||||||
|
<rng><backend> element.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
<h3><a id="elementsFeatures">Features</a></h3>
|
<h3><a id="elementsFeatures">Features</a></h3>
|
||||||
|
|
||||||
<p>One more set of XML elements describe the supported features and
|
<p>One more set of XML elements describe the supported features and
|
||||||
|
@ -155,6 +155,9 @@
|
|||||||
<optional>
|
<optional>
|
||||||
<ref name='hostdev'/>
|
<ref name='hostdev'/>
|
||||||
</optional>
|
</optional>
|
||||||
|
<optional>
|
||||||
|
<ref name='rng'/>
|
||||||
|
</optional>
|
||||||
</element>
|
</element>
|
||||||
</define>
|
</define>
|
||||||
|
|
||||||
@ -186,6 +189,13 @@
|
|||||||
</element>
|
</element>
|
||||||
</define>
|
</define>
|
||||||
|
|
||||||
|
<define name='rng'>
|
||||||
|
<element name='rng'>
|
||||||
|
<ref name='supported'/>
|
||||||
|
<ref name='enum'/>
|
||||||
|
</element>
|
||||||
|
</define>
|
||||||
|
|
||||||
<define name='features'>
|
<define name='features'>
|
||||||
<element name='features'>
|
<element name='features'>
|
||||||
<optional>
|
<optional>
|
||||||
|
@ -547,6 +547,19 @@ virDomainCapsDeviceHostdevFormat(virBufferPtr buf,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
virDomainCapsDeviceRNGFormat(virBufferPtr buf,
|
||||||
|
virDomainCapsDeviceRNGPtr const rng)
|
||||||
|
{
|
||||||
|
FORMAT_PROLOGUE(rng);
|
||||||
|
|
||||||
|
ENUM_PROCESS(rng, model, virDomainRNGModelTypeToString);
|
||||||
|
ENUM_PROCESS(rng, backendModel, virDomainRNGBackendTypeToString);
|
||||||
|
|
||||||
|
FORMAT_EPILOGUE(rng);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* virDomainCapsFeatureGICFormat:
|
* virDomainCapsFeatureGICFormat:
|
||||||
* @buf: target buffer
|
* @buf: target buffer
|
||||||
@ -625,6 +638,7 @@ virDomainCapsFormat(virDomainCapsPtr const caps)
|
|||||||
virDomainCapsDeviceGraphicsFormat(&buf, &caps->graphics);
|
virDomainCapsDeviceGraphicsFormat(&buf, &caps->graphics);
|
||||||
virDomainCapsDeviceVideoFormat(&buf, &caps->video);
|
virDomainCapsDeviceVideoFormat(&buf, &caps->video);
|
||||||
virDomainCapsDeviceHostdevFormat(&buf, &caps->hostdev);
|
virDomainCapsDeviceHostdevFormat(&buf, &caps->hostdev);
|
||||||
|
virDomainCapsDeviceRNGFormat(&buf, &caps->rng);
|
||||||
|
|
||||||
virBufferAdjustIndent(&buf, -2);
|
virBufferAdjustIndent(&buf, -2);
|
||||||
virBufferAddLit(&buf, "</devices>\n");
|
virBufferAddLit(&buf, "</devices>\n");
|
||||||
|
@ -98,6 +98,14 @@ struct _virDomainCapsDeviceHostdev {
|
|||||||
/* add new fields here */
|
/* add new fields here */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef struct _virDomainCapsDeviceRNG virDomainCapsDeviceRNG;
|
||||||
|
typedef virDomainCapsDeviceRNG *virDomainCapsDeviceRNGPtr;
|
||||||
|
struct _virDomainCapsDeviceRNG {
|
||||||
|
virTristateBool supported;
|
||||||
|
virDomainCapsEnum model; /* virDomainRNGModel */
|
||||||
|
virDomainCapsEnum backendModel; /* virDomainRNGBackend */
|
||||||
|
};
|
||||||
|
|
||||||
typedef struct _virDomainCapsFeatureGIC virDomainCapsFeatureGIC;
|
typedef struct _virDomainCapsFeatureGIC virDomainCapsFeatureGIC;
|
||||||
typedef virDomainCapsFeatureGIC *virDomainCapsFeatureGICPtr;
|
typedef virDomainCapsFeatureGIC *virDomainCapsFeatureGICPtr;
|
||||||
struct _virDomainCapsFeatureGIC {
|
struct _virDomainCapsFeatureGIC {
|
||||||
@ -167,6 +175,7 @@ struct _virDomainCaps {
|
|||||||
virDomainCapsDeviceGraphics graphics;
|
virDomainCapsDeviceGraphics graphics;
|
||||||
virDomainCapsDeviceVideo video;
|
virDomainCapsDeviceVideo video;
|
||||||
virDomainCapsDeviceHostdev hostdev;
|
virDomainCapsDeviceHostdev hostdev;
|
||||||
|
virDomainCapsDeviceRNG rng;
|
||||||
/* add new domain devices here */
|
/* add new domain devices here */
|
||||||
|
|
||||||
virDomainCapsFeatureGIC gic;
|
virDomainCapsFeatureGIC gic;
|
||||||
|
Loading…
Reference in New Issue
Block a user