[libvirt] [PATCH 2/4] api: Add api to set domain note and description in runtime
Eric Blake
eblake at redhat.com
Fri Jan 13 19:59:26 UTC 2012
On 01/13/2012 11:17 AM, Peter Krempa wrote:
> The <description> element was accessible only throught the XML, that
s/throught/through/
> makes it hard to work with. Atomic operations and modification of the
> live domain are impossible. This patch adds a function to the public API
> to set arbitrary descriptions for live and persistent domains.
Do we want a counterpart getter function, or is dumpxml and XPath
filtering good enough?
> +++ b/include/libvirt/libvirt.h.in
> @@ -1405,6 +1405,21 @@ int virDomainGetMaxVcpus (virDomainPtr domain);
> int virDomainGetSecurityLabel (virDomainPtr domain,
> virSecurityLabelPtr seclabel);
>
> +typedef enum {
> + /* See virDomainModificationImpact for these flags. */
> + VIR_DOMAIN_DESCRIPTION_CURRENT = VIR_DOMAIN_AFFECT_CURRENT,
> + VIR_DOMAIN_DESCRIPTION_LIVE = VIR_DOMAIN_AFFECT_LIVE,
> + VIR_DOMAIN_DESCRIPTION_CONFIG = VIR_DOMAIN_AFFECT_CONFIG,
I'm not sure whether we need to create these new aliases, or just state
that @flags is a mix of virDomainModificationImpact and
virDomainDescriptionFlags, and leave a comment here stating why bits 0
and 1 are reserved.
> + /* Additionaly, these flags may be bitwise-OR'd in. */
s/Additionaly/Additionally/
> +++ b/src/libvirt.c
> @@ -8746,6 +8746,53 @@ error:
> }
>
> /**
> + * virDomainSetDescription:
> + * @domain: a domain object
> + * @description: new description text
> + * @flags: bitwise-OR of virDomainDescriptionFlags
> + *
> + * Sets the domain description field or note field depending on the flags
> + * parameter.
> + *
> + * Returns 0 on success, -1 in case of failure;
Looks reasonable.
> + */
> +int
> +virDomainSetDescription(virDomainPtr domain,
> + const char *description,
> + unsigned int flags)
> +{
> + virConnectPtr conn;
> +
> + VIR_DOMAIN_DEBUG(domain, "description=%p, flags=%x", description, flags);
> +
> + if (!VIR_IS_CONNECTED_DOMAIN(domain)) {
> + virLibDomainError(VIR_ERR_INVALID_DOMAIN, __FUNCTION__);
> + goto error;
> + }
You need to reject this operation on a read-only connection.
--
Eric Blake eblake at redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 620 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20120113/30548552/attachment-0001.sig>
More information about the libvir-list
mailing list