On Fri, Nov 30, 2007 at 03:59:29PM +0000, Daniel P. Berrange wrote:
On Fri, Nov 30, 2007 at 10:55:37AM -0500, Daniel Veillard wrote:
> It does the following:
>
> static const char *
> xenUnifiedType (virConnectPtr conn)
> {
> GET_PRIVATE(conn);
> int i;
> const char *ret;
>
> for (i = 0; i < XEN_UNIFIED_NR_DRIVERS; ++i)
> if (priv->opened[i] && drivers[i]->type) {
> ret = drivers[i]->type (conn);
> if (ret) return ret;
> }
>
> return NULL;
> }
>
> as a result if running as an user virConnectGetType() returns
> "XenXM" because the XM file parser backend ended up being registered
> first. I think that's bogus and we should change the function to
> return "Xen" in any case and drop the virDrvGetType type from
> struct xenUnifiedDriver and all associated functions in the various
> back-ends.
>
> Opinion ?
Yes, it should always return 'Xen' - calling out to individual backends
is pointless - the fact that there are multiple delegations inside the
Xen unified driver, is an implementation detail which shouldn't leak
out.
Okay, agreed, cleaned up in CVS,
Daniel
--
Red Hat Virtualization group
http://redhat.com/virtualization/
Daniel Veillard | virtualization library
http://libvirt.org/
veillard(a)redhat.com | libxml GNOME XML XSLT toolkit
http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine
http://rpmfind.net/