From c6ec7c6b0bc5dc420eb50da528431632659c6009 Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Mon, 26 Jan 2015 17:09:36 +0100 Subject: [PATCH] tests: Check for virQEMUDriverConfigNew return value The function may return NULL if something went wrong. In some places in the tests we are not checking the return value rather than accessing the pointer directly resulting in SIGSEGV. Signed-off-by: Michal Privoznik --- tests/domaincapstest.c | 3 +++ tests/qemuhotplugtest.c | 3 ++- tests/qemuxmlnstest.c | 3 ++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c index 70d2ef3737..fa931f6b02 100644 --- a/tests/domaincapstest.c +++ b/tests/domaincapstest.c @@ -231,6 +231,9 @@ mymain(void) virQEMUDriverConfigPtr cfg = virQEMUDriverConfigNew(false); + if (!cfg) + return EXIT_FAILURE; + # define DO_TEST_QEMU(Filename, QemuCapsFile, Emulatorbin, Machine, Arch, Type, ...) \ do { \ const char *capsPath = abs_srcdir "/qemucapabilitiesdata/" QemuCapsFile ".caps"; \ diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c index 1c18dbbc44..12a7f719b2 100644 --- a/tests/qemuhotplugtest.c +++ b/tests/qemuhotplugtest.c @@ -348,7 +348,8 @@ mymain(void) virEventRegisterDefaultImpl(); - driver.config = virQEMUDriverConfigNew(false); + if (!(driver.config = virQEMUDriverConfigNew(false))) + return EXIT_FAILURE; VIR_FREE(driver.config->spiceListen); VIR_FREE(driver.config->vncListen); /* some dummy values from 'config file' */ diff --git a/tests/qemuxmlnstest.c b/tests/qemuxmlnstest.c index 947aa9ce07..4d665dae91 100644 --- a/tests/qemuxmlnstest.c +++ b/tests/qemuxmlnstest.c @@ -211,7 +211,8 @@ mymain(void) if (!abs_top_srcdir) abs_top_srcdir = abs_srcdir "/.."; - driver.config = virQEMUDriverConfigNew(false); + if (!(driver.config = virQEMUDriverConfigNew(false))) + return EXIT_FAILURE; if ((driver.caps = testQemuCapsInit()) == NULL) return EXIT_FAILURE; if (!(driver.xmlopt = virQEMUDriverCreateXMLConf(&driver)))