]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
* src/libvirt.c src/proxy_internal.c src/xs_internal.c: fix the
authorDaniel Veillard <veillard@redhat.com>
Wed, 8 Nov 2006 13:53:29 +0000 (13:53 +0000)
committerDaniel Veillard <veillard@redhat.com>
Wed, 8 Nov 2006 13:53:29 +0000 (13:53 +0000)
  patch for rhbz#214264 in the case of Domain 0 on Xen and push the
  defaulting to "linux" down to the xen specific parts.
Daniel

ChangeLog
src/libvirt.c
src/proxy_internal.c
src/xs_internal.c

index 7cdbe479579d9df2ab35d563c19dd7dd98f5984e..a103c59398b081abd3f5d0b4731fe49c10174f4e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Nov  8 14:01:11 CET 2006 Daniel Veillard <veillard@redhat.com>
+
+       * src/libvirt.c src/proxy_internal.c src/xs_internal.c: fix the
+         patch for rhbz#214264 in the case of Domain 0 on Xen and push the
+         defaulting to "linux" down to the xen specific parts.
+
 Tue Nov  7 16:17:23 EDT 2006 Daniel P. Berrange <berrange@redhat.com>
 
        * python/generator.py: Pass in connection object when generating
index bb4edb310ed329152cec74a71feb4a6c26b1639e..12e3116c8c873c8edadc2c5922ee08e71cef9aaf 100644 (file)
@@ -1256,9 +1256,6 @@ virDomainGetOSType(virDomainPtr domain)
        }
     }
 
-    if (str == NULL)
-        str = strdup("linux");
-
     return (str);
 }
 
index 8ef2511c3680a5c955079af0df42a5a2422e0ef6..0a9d418bf74e88e7ec5e4d668ad2bb7a552aaf0e 100644 (file)
@@ -1018,6 +1018,10 @@ xenProxyDomainGetOSType(virDomainPtr domain)
         xenProxyClose(domain->conn);
        return(NULL);
     }
+    if ((ans.len == sizeof(virProxyPacket)) && (ans.data.arg < 0)) {
+       return(NULL);
+    }
+
     if (ans.len <= sizeof(virProxyPacket)) {
         virProxyError(domain->conn, VIR_ERR_OPERATION_FAILED, __FUNCTION__);
        return (NULL);
index a687ea9a5badacf91e957fcd9b1d62316407d816..db2b9dfe4efdd85723afb8c32fae2e1767348aeb 100644 (file)
@@ -683,6 +683,8 @@ xenStoreDomainGetOSType(virDomainPtr domain) {
         str = virDomainGetVMInfo(domain, vm, "image/ostype");
         free(vm);
     }
+    if (str == NULL)
+        str = strdup("linux");
 
     return (str);
 }
@@ -763,6 +765,9 @@ xenStoreDomainGetOSTypeID(virConnectPtr conn, int id) {
        str = xs_read(conn->xshandle, 0, &query[0], &len);
         free(vm);
     }
+    if (str == NULL)
+        str = strdup("linux");
+
 
     return (str);
 }