[libvirt] [PATCH 03/10] xen_xm: Resolve Coverity USE_AFTER_FREE

John Ferlan jferlan at redhat.com
Wed Aug 27 13:51:26 UTC 2014


If virDomainDiskDefFree(disk) is called in 'skipdisk:', then it's possible
to either return to skipdisk without reallocating a new disk (via the if
condition just prior) or to end the loop having deleted the disk. Since
virDomainDiskDefFree() does not pass by reference, disk isn't changed in
this context, thus the possible issue.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/xenconfig/xen_xm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/xenconfig/xen_xm.c b/src/xenconfig/xen_xm.c
index fe46d91..1e57e24 100644
--- a/src/xenconfig/xen_xm.c
+++ b/src/xenconfig/xen_xm.c
@@ -201,6 +201,7 @@ xenParseXMDisk(virConfPtr conf, virDomainDefPtr def, int xendConfigVersion)
             skipdisk:
             list = list->next;
             virDomainDiskDefFree(disk);
+            disk = NULL;
         }
     }
 
-- 
1.9.3




More information about the libvir-list mailing list