[libvirt] [PATCHv2 02/21] fix fallout in src/conf/

Daniel P. Berrange berrange at redhat.com
Thu Mar 7 16:53:14 UTC 2013


On Wed, Mar 06, 2013 at 04:37:46PM +0100, Peter Krempa wrote:
> ---
>  src/conf/domain_conf.c   | 98 ++++++++++++++++++++++++++++++------------------
>  src/conf/domain_conf.h   | 20 +++++++---
>  src/conf/snapshot_conf.c |  3 +-
>  src/conf/snapshot_conf.h |  1 +
>  src/libvirt_private.syms |  2 +
>  5 files changed, 81 insertions(+), 43 deletions(-)
> 
> diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
> index db14504..4ec3e0b 100644
> --- a/src/conf/domain_conf.h
> +++ b/src/conf/domain_conf.h
> @@ -1959,7 +1959,7 @@ virDomainObjIsActive(virDomainObjPtr dom)
>      return dom->def->id != -1;
>  }
> 
> -virDomainObjPtr virDomainObjNew(virCapsPtr caps);
> +virDomainObjPtr virDomainObjNew(virDomainXMLConfPtr caps);
> 
>  virDomainObjListPtr virDomainObjListNew(void);
> 
> @@ -2034,7 +2034,7 @@ enum {
>      VIR_DOMAIN_OBJ_LIST_ADD_CHECK_LIVE = (1 << 1),
>  };
>  virDomainObjPtr virDomainObjListAdd(virDomainObjListPtr doms,
> -                                    virCapsPtr caps,
> +                                    virDomainXMLConfPtr xmlconf,
>                                      const virDomainDefPtr def,
>                                      unsigned int flags,
>                                      virDomainDefPtr *oldDef);

I'd suggest we make 'xmlconf' as ATTRIBUTE_NONNULL for all these
APIs, and thus avoid the need for parser code to contain  'if (xmlconf)'
tests everywhere

> @@ -2043,22 +2043,26 @@ void virDomainObjAssignDef(virDomainObjPtr domain,
>                             bool live,
>                             virDomainDefPtr *oldDef);
>  int virDomainObjSetDefTransient(virCapsPtr caps,
> +                                virDomainXMLConfPtr xmlconf,
>                                  virDomainObjPtr domain,
>                                  bool live);
>  virDomainDefPtr
>  virDomainObjGetPersistentDef(virCapsPtr caps,
> +                             virDomainXMLConfPtr xmlconf,
>                               virDomainObjPtr domain);
> 
>  int
>  virDomainLiveConfigHelperMethod(virCapsPtr caps,
> +                                virDomainXMLConfPtr xmlconf,
>                                  virDomainObjPtr dom,
>                                  unsigned int *flags,
>                                  virDomainDefPtr *persistentDef);
> 
> -virDomainDefPtr virDomainDefCopy(virCapsPtr caps, virDomainDefPtr src,
> -                                 bool migratable);
> +virDomainDefPtr virDomainDefCopy(virCapsPtr caps, virDomainXMLConfPtr xmlconf,
> +                                 virDomainDefPtr src, bool migratable);
>  virDomainDefPtr
> -virDomainObjCopyPersistentDef(virCapsPtr caps, virDomainObjPtr dom);
> +virDomainObjCopyPersistentDef(virCapsPtr caps, virDomainXMLConfPtr xmlconf,
> +                              virDomainObjPtr dom);
> 
>  void virDomainObjListRemove(virDomainObjListPtr doms,
>                              virDomainObjPtr dom);
> @@ -2068,14 +2072,17 @@ virDomainDeviceDefPtr virDomainDeviceDefParse(virCapsPtr caps,
>                                                const char *xmlStr,
>                                                unsigned int flags);
>  virDomainDefPtr virDomainDefParseString(virCapsPtr caps,
> +                                        virDomainXMLConfPtr xmlconf,
>                                          const char *xmlStr,
>                                          unsigned int expectedVirtTypes,
>                                          unsigned int flags);
>  virDomainDefPtr virDomainDefParseFile(virCapsPtr caps,
> +                                      virDomainXMLConfPtr xmlconf,
>                                        const char *filename,
>                                        unsigned int expectedVirtTypes,
>                                        unsigned int flags);
>  virDomainDefPtr virDomainDefParseNode(virCapsPtr caps,
> +                                      virDomainXMLConfPtr xmlconf,
>                                        xmlDocPtr doc,
>                                        xmlNodePtr root,
>                                        unsigned int expectedVirtTypes,
> @@ -2192,7 +2199,7 @@ int virDomainSaveXML(const char *configDir,
> 
>  int virDomainSaveConfig(const char *configDir,
>                          virDomainDefPtr def);
> -int virDomainSaveStatus(virCapsPtr caps,
> +int virDomainSaveStatus(virDomainXMLConfPtr xmlconf,
>                          const char *statusDir,
>                          virDomainObjPtr obj) ATTRIBUTE_RETURN_CHECK;
> 
> @@ -2202,6 +2209,7 @@ typedef void (*virDomainLoadConfigNotify)(virDomainObjPtr dom,
> 
>  int virDomainObjListLoadAllConfigs(virDomainObjListPtr doms,
>                                     virCapsPtr caps,
> +                                   virDomainXMLConfPtr xmlconf,
>                                     const char *configDir,
>                                     const char *autostartDir,
>                                     int liveStatus,

> diff --git a/src/conf/snapshot_conf.h b/src/conf/snapshot_conf.h
> index f1d5995..e8bd24a 100644
> --- a/src/conf/snapshot_conf.h
> +++ b/src/conf/snapshot_conf.h
> @@ -101,6 +101,7 @@ typedef enum {
> 
>  virDomainSnapshotDefPtr virDomainSnapshotDefParseString(const char *xmlStr,
>                                                          virCapsPtr caps,
> +                                                        virDomainXMLConfPtr xmlconf,
>                                                          unsigned int expectedVirtTypes,
>                                                          unsigned int flags);

And NONNULL here too

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list