]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Thu Jun 21 16:48:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
authorRichard W.M. Jones <rjones@redhat.com>
Thu, 21 Jun 2007 15:49:09 +0000 (15:49 +0000)
committerRichard W.M. Jones <rjones@redhat.com>
Thu, 21 Jun 2007 15:49:09 +0000 (15:49 +0000)
* src/remote_internal.c: Fix virConnectGetMaxVcpus in the
  remote case when type parameter is NULL.
* src/xend_internal.c: Proper error reporting in
  xenDaemonDomainDumpXML function.

ChangeLog
src/remote_internal.c
src/xend_internal.c

index c537c4eb6b7d9632a1f09ff5f20772dee181a986..9ea9edb1af2a905d28553cbb62cb7501de12889a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Thu Jun 21 16:48:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
+
+       * src/remote_internal.c: Fix virConnectGetMaxVcpus in the
+         remote case when type parameter is NULL.
+       * src/xend_internal.c: Proper error reporting in
+         xenDaemonDomainDumpXML function.
+
 Thu Jun 21 11:35:00 EST 2007 Daniel P. Berrange <berrange@redhat.com>
 
        * src/remote_interal.c: fix marshalling of 'id' field for
index e9c879b9a7be61bbc07eacf51c1e2784ed983002..33107103f7745e097267940ebbff66ce21dec4f9 100644 (file)
@@ -985,7 +985,7 @@ remoteGetMaxVcpus (virConnectPtr conn, const char *type)
     GET_PRIVATE (conn, -1);
 
     memset (&ret, 0, sizeof ret);
-    args.type = (char **) &type;
+    args.type = type == NULL ? NULL : (char **) &type;
     if (call (conn, priv, 0, REMOTE_PROC_GET_MAX_VCPUS,
               (xdrproc_t) xdr_remote_get_max_vcpus_args, (char *) &args,
               (xdrproc_t) xdr_remote_get_max_vcpus_ret, (char *) &ret) == -1)
index e823c7990b4567e162964e10399b2e37f07b515e..7885484be183d5ea0310d3ef9738715bfa21f656 100644 (file)
@@ -2398,8 +2398,11 @@ xenDaemonDomainDumpXMLByID(virConnectPtr conn, int domid)
     xenUnifiedPrivatePtr priv;
 
     root = sexpr_get(conn, "/xend/domain/%d?detail=1", domid);
-    if (root == NULL)
+    if (root == NULL) {
+        virXendError (conn, VIR_ERR_XEN_CALL,
+                      "xenDaemonDomainDumpXMLByID failed to find this domain");
         return (NULL);
+    }
 
     priv = (xenUnifiedPrivatePtr) conn->privateData;
 
@@ -2417,8 +2420,11 @@ xenDaemonDomainDumpXMLByName(virConnectPtr conn, const char *name)
     xenUnifiedPrivatePtr priv;
 
     root = sexpr_get(conn, "/xend/domain/%s?detail=1", name);
-    if (root == NULL)
+    if (root == NULL) {
+        virXendError (conn, VIR_ERR_XEN_CALL,
+                      "xenDaemonDomainDumpXMLByName failed to find this domain");
         return (NULL);
+    }
 
     priv = (xenUnifiedPrivatePtr) conn->privateData;
 
@@ -2451,8 +2457,12 @@ xenDaemonDomainDumpXML(virDomainPtr domain, int flags ATTRIBUTE_UNUSED)
     }
     priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
 
-    if (domain->id < 0 && priv->xendConfigVersion < 3)
+    if (domain->id < 0 && priv->xendConfigVersion < 3) {
+        virXendError (domain->conn, VIR_ERR_XEN_CALL,
+                      "xenDaemonDomainDumpXML domain ID < 0 and xendConfigVersion < 3");
         return(NULL);
+    }
+
     if (domain->id < 0)
         return xenDaemonDomainDumpXMLByName(domain->conn, domain->name);
     else