From: Daniel P. Berrange Date: Mon, 14 Oct 2013 12:06:31 +0000 (+0100) Subject: Ensure lxcContainerResolveSymlinks reports errors X-Git-Tag: CVE-2013-4401~78 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=01100c7f60cee7b9075110b1e4b397dfff1a17ba;p=thirdparty%2Flibvirt.git Ensure lxcContainerResolveSymlinks reports errors The lxcContainerResolveSymlinks method merely logged some errors as debug messages, rather than reporting them as proper errors. This meant startup failures were not diagnosed at all. Signed-off-by: Daniel P. Berrange --- diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c index 9e87175073..56df69e387 100644 --- a/src/lxc/lxc_container.c +++ b/src/lxc/lxc_container.c @@ -1697,7 +1697,6 @@ static int lxcContainerResolveSymlinks(virDomainDefPtr vmDef) { char *newroot; size_t i; - char ebuf[1024]; VIR_DEBUG("Resolving symlinks"); @@ -1707,14 +1706,16 @@ static int lxcContainerResolveSymlinks(virDomainDefPtr vmDef) continue; if (access(fs->src, F_OK)) { - VIR_DEBUG("Failed to access '%s': %s", fs->src, - virStrerror(errno, ebuf, sizeof(ebuf))); + virReportSystemError(errno, + _("Failed to access '%s'"), fs->src); return -1; } VIR_DEBUG("Resolving '%s'", fs->src); if (virFileResolveAllLinks(fs->src, &newroot) < 0) { - VIR_DEBUG("Failed to resolve symlink at %s", fs->src); + virReportSystemError(errno, + _("Failed to resolve symlink at %s"), + fs->src); return -1; }