[libvirt] [PATCH] qemu: avoid NULL deref on error
Daniel Veillard
veillard at redhat.com
Tue Feb 15 03:27:18 UTC 2011
On Mon, Feb 14, 2011 at 05:34:54PM -0700, Eric Blake wrote:
> * src/qemu/qemu_command.c (qemuParseCommandLineDisk): Report error
> before cleaning def.
> ---
>
> Pushing under the trivial rule, as this is a blatant NULL deref.
>
> src/qemu/qemu_command.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index 3ba0950..1687203 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
> @@ -4603,9 +4603,10 @@ qemuParseCommandLineDisk(virCapsPtr caps,
> host = def->src + strlen("nbd:");
> port = strchr(host, ':');
> if (!port) {
> - def = NULL;
> qemuReportError(VIR_ERR_INTERNAL_ERROR,
> - _("cannot parse nbd filename '%s'"), def->src);
> + _("cannot parse nbd filename '%s'"),
> + def->src);
> + def = NULL;
> goto cleanup;
> }
> *port++ = '\0';
Urgh, thanks Clang ! And thanks for running libvirt code through it :-)
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list