]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
conf: prevent NULL pointer access in virSecurityLabelDefsParseXML
authorJán Tomko <jtomko@redhat.com>
Mon, 27 Aug 2012 12:51:28 +0000 (14:51 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 27 Aug 2012 13:02:24 +0000 (15:02 +0200)
When checking for seclabels without security models, def->nseclabels is
already set to n. In the case of an error def->seclabels is freed but
nseclabels is left untouched. This leads to a segmentation fault when
def is freed in virDomainDefParseXML.

src/conf/domain_conf.c

index 82ccf4dc1826afd7f6b8f1944d52c4c4aa3a01c9..c02d6f850208a29a21e5367834dd8dbb2b0bf886 100644 (file)
@@ -3179,6 +3179,7 @@ error:
         virSecurityLabelDefFree(def->seclabels[i - 1]);
     }
     VIR_FREE(def->seclabels);
+    def->nseclabels = 0;
     VIR_FREE(list);
     return -1;
 }