From a22a36e8feaef19413e1a6af533eaa50f3c5df2d Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 20 Jul 2012 14:44:54 -0600 Subject: [PATCH] tests: avoid seclabeltest crash Commit a56c347 introduced a use of random numbers into seclabel handling, but failed to initialize the random number generator in the testsuite. Also, fail with usual status, not 255. * tests/seclabeltest.c (main): Initialize randomness. --- tests/seclabeltest.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/seclabeltest.c b/tests/seclabeltest.c index 2f65ec1005..45ab8e4e70 100644 --- a/tests/seclabeltest.c +++ b/tests/seclabeltest.c @@ -6,6 +6,7 @@ #include #include #include "security/security_driver.h" +#include "virrandom.h" int main (int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) @@ -13,10 +14,14 @@ main (int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) virSecurityManagerPtr mgr; const char *doi, *model; + if (virThreadInitialize() < 0 || + virRandomInitialize(time(NULL) ^ getpid())) + exit(EXIT_FAILURE); + mgr = virSecurityManagerNew(NULL, "QEMU", false, true, false); if (mgr == NULL) { fprintf (stderr, "Failed to start security driver"); - exit (-1); + exit(EXIT_FAILURE); } model = virSecurityManagerGetModel(mgr); @@ -24,7 +29,7 @@ main (int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) { fprintf (stderr, "Failed to copy secModel model: %s", strerror (errno)); - exit (-1); + exit(EXIT_FAILURE); } doi = virSecurityManagerGetDOI(mgr); @@ -32,7 +37,7 @@ main (int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) { fprintf (stderr, "Failed to copy secModel DOI: %s", strerror (errno)); - exit (-1); + exit(EXIT_FAILURE); } virSecurityManagerFree(mgr); -- GitLab