From: Daniel P. Berrange Date: Tue, 14 Jun 2011 08:11:31 +0000 (+0100) Subject: Add missing error reporting when loading mac filter config for QEMU X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=c24c07f40be4346e08885ce0597604368d5dc7f3;p=libvirt.git Add missing error reporting when loading mac filter config for QEMU If the 'mac_filter' configuration parameter is enabled, and there is a failure to enable filtering, no error is reported back to the caller. Also fix some bogus whitespace indentation for hugetlbfs_mount * src/qemu/qemu_conf.c: Add missing error reporting --- diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c index ea4d7d0059..46f6976094 100644 --- a/src/qemu/qemu_conf.c +++ b/src/qemu/qemu_conf.c @@ -378,16 +378,16 @@ int qemudLoadDriverConfig(struct qemud_driver *driver, } } - p = virConfGetValue (conf, "hugetlbfs_mount"); - CHECK_TYPE ("hugetlbfs_mount", VIR_CONF_STRING); - if (p && p->str) { - VIR_FREE(driver->hugetlbfs_mount); - if (!(driver->hugetlbfs_mount = strdup(p->str))) { - virReportOOMError(); - virConfFree(conf); - return -1; - } - } + p = virConfGetValue (conf, "hugetlbfs_mount"); + CHECK_TYPE ("hugetlbfs_mount", VIR_CONF_STRING); + if (p && p->str) { + VIR_FREE(driver->hugetlbfs_mount); + if (!(driver->hugetlbfs_mount = strdup(p->str))) { + virReportOOMError(); + virConfFree(conf); + return -1; + } + } p = virConfGetValue (conf, "mac_filter"); CHECK_TYPE ("mac_filter", VIR_CONF_LONG); @@ -398,12 +398,16 @@ int qemudLoadDriverConfig(struct qemud_driver *driver, virReportSystemError(errno, _("failed to enable mac filter in '%s'"), __FILE__); + virConfFree(conf); + return -1; } if ((errno = networkDisableAllFrames(driver))) { virReportSystemError(errno, _("failed to add rule to drop all frames in '%s'"), __FILE__); + virConfFree(conf); + return -1; } }