Bug 473071

Summary: libvirt 0.5.0 crashes on new volume XML without a format
Product: [Community] Virtualization Tools Reporter: Chris Lalancette <clalance>
Component: libvirtAssignee: Daniel Veillard <veillard>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: berrange, crobinso
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-12-04 16:33:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Attachments:
Description Flags
Use default volume format to avoid crash none

Comment 1 Daniel Veillard 2008-12-04 14:51:17 UTC
Following should be sufficient to avoid the crash, but won't add a default
format, just point out the missing information

Daniel

--- src/storage_conf.c  17 Nov 2008 11:19:33 -0000      1.29
+++ src/storage_conf.c  4 Dec 2008 14:12:27 -0000
@@ -961,6 +961,11 @@
     ret->target.path = virXPathString(conn, "string(/volume/target/path)", ctxt);
     if (options->formatFromString) {
         char *format = virXPathString(conn, "string(/volume/target/format/@type)", ctxt);
+        if (format == NULL) {
+            virStorageReportError(conn, VIR_ERR_XML_ERROR,
+                          _("cannot guess missing format type for target"));
+            goto cleanup;
+        }
         if ((ret->target.format = (options->formatFromString)(format)) < 0) {
             virStorageReportError(conn, VIR_ERR_XML_ERROR,
                                   _("unknown volume format type %s"), format);

Comment 2 Cole Robinson 2008-12-04 14:56:19 UTC
Created attachment 325691 [details]
Use default volume format to avoid crash

I cut this last night, seemed to fix the crash but I only did light testing. The patch is pretty simple though so I think it's safe.

Comment 3 Cole Robinson 2008-12-04 16:33:08 UTC
Alright, fix for this was committed and in 0.5.1, so closing as CURRENTRELEASE.

Comment 4 Fedora Update System 2008-12-05 05:56:33 UTC
libvirt-0.5.1-1.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/libvirt-0.5.1-1.fc10

Comment 5 Fedora Update System 2008-12-05 05:57:53 UTC
libvirt-0.5.1-1.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/libvirt-0.5.1-1.fc9