于 2011年07月21日 19:13, Daniel P. Berrange 写道:
On Thu, Jul 21, 2011 at 11:28:28AM +0200, Michal Privoznik wrote:
> This introduces new API virDomainDestroyWithFlags to allow
> domain destroying with flags, as the existing API virDomainDestroy
> misses flags.
>
> The set of flags is defined in virDomainDestroyFlags enum, which is
> currently commented, because it is empty.
>
> Calling this API with no flags set (@flags == 0) is equivalent calling
> virDomainDestroy.
> ---
> include/libvirt/libvirt.h.in | 7 +++++
> src/driver.h | 4 +++
> src/libvirt.c | 52 ++++++++++++++++++++++++++++++++++++++++++
> src/libvirt_public.syms | 1 +
> 4 files changed, 64 insertions(+), 0 deletions(-)
>
> diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
> index 6afd591..0a06684 100644
> --- a/include/libvirt/libvirt.h.in
> +++ b/include/libvirt/libvirt.h.in
> @@ -913,6 +913,11 @@ virConnectPtr virDomainGetConnect (virDomainPtr
domain);
> /*
> * Domain creation and destruction
> */
> +
> +/*
> + * typedef enum {
> + * } virDomainDestroyFlags;
> + */
> virDomainPtr virDomainCreateXML (virConnectPtr conn,
> const char *xmlDesc,
> unsigned int flags);
> @@ -929,6 +934,8 @@ int virDomainShutdown (virDomainPtr
domain);
> int virDomainReboot (virDomainPtr domain,
> unsigned int flags);
> int virDomainDestroy (virDomainPtr domain);
> +int virDomainDestroyWithFlags(virDomainPtr domain,
> + unsigned int flags);
This is not our usual naming convention. I'd expect the API to
be named 'virDomainDestroyFlags', and give the enum a different
typedef name.
Regards,
Daniel
For domainUndefine, the enum is named as virDomainUndefineFlagsValues,
so that we can have the API named virDomainUndefineFlags.
Osier