+Fri Dec 14 16:36:02 CET 2007 Daniel Veillard <veillard@redhat.com>
+
+ * src/xs_internal.[ch]: patch from Saori Fukuta to fix the
+ detach-disk command when using Xen tap devices.
+ * docs/libvir.html: typo fix from Jim Meyering
+
Wed Dec 12 16:42:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
Fix virBufferEscapeString escaping of '<'
<p>Here is the list of official releases, however since it is early on in the
development of libvirt, it is preferable when possible to just use the <a
href="downloads.html">CVS version or snapshot</a>, contact the mailing list
-and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progresses.</p>
+and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p>
<h3>0.3.3: Sep 30 2007</h3>
snprintf(dir, sizeof(dir), "/local/domain/0/backend/vbd/%d", id);
list = xs_directory(priv->xshandle, 0, dir, &num);
- if (list == NULL)
- return(NULL);
- for (i = 0; i < num; i++) {
- snprintf(path, sizeof(path), "%s/%s/%s", dir, list[i], "dev");
- val = xs_read(priv->xshandle, 0, path, &len);
- if (val == NULL)
- break;
- if ((devlen != len) || memcmp(val, dev, len)) {
- free(val);
- } else {
- ret = strdup(list[i]);
- free(val);
- break;
+ if (list != NULL) {
+ for (i = 0; i < num; i++) {
+ snprintf(path, sizeof(path), "%s/%s/%s", dir, list[i], "dev");
+ val = xs_read(priv->xshandle, 0, path, &len);
+ if (val == NULL)
+ break;
+ if ((devlen != len) || memcmp(val, dev, len)) {
+ free (val);
+ } else {
+ ret = strdup(list[i]);
+ free (val);
+ free (list);
+ return (ret);
+ }
}
+ free (list);
}
- free(list);
- return(ret);
+ snprintf(dir, sizeof(dir), "/local/domain/0/backend/tap/%d", id);
+ list = xs_directory(priv->xshandle, 0, dir, &num);
+ if (list != NULL) {
+ for (i = 0; i < num; i++) {
+ snprintf(path, sizeof(path), "%s/%s/%s", dir, list[i], "dev");
+ val = xs_read(priv->xshandle, 0, path, &len);
+ if (val == NULL)
+ break;
+ if ((devlen != len) || memcmp(val, dev, len)) {
+ free (val);
+ } else {
+ ret = strdup(list[i]);
+ free (val);
+ free (list);
+ return (ret);
+ }
+ }
+ free (list);
+ }
+ return (NULL);
}
char *xenStoreDomainGetName(virConnectPtr conn,