diff --git a/src/util/vircrypto.c b/src/util/vircrypto.c index aaede94c63..03410a1a44 100644 --- a/src/util/vircrypto.c +++ b/src/util/vircrypto.c @@ -315,7 +315,7 @@ virCryptoGenerateRandom(size_t nbytes) /* If we don't have gnutls_rnd(), we will generate a less cryptographically * strong master buf from /dev/urandom. */ - if ((ret = virRandomBytes(buf, nbytes)) < 0) { + if ((ret = virRandomBytes(buf, nbytes))) { virReportSystemError(ret, "%s", _("failed to generate byte stream")); VIR_FREE(buf); return NULL; diff --git a/src/util/virrandom.c b/src/util/virrandom.c index 62a0e314e6..41daa404b2 100644 --- a/src/util/virrandom.c +++ b/src/util/virrandom.c @@ -167,6 +167,8 @@ uint32_t virRandomInt(uint32_t max) * * Generate a stream of random bytes from /dev/urandom * into @buf of size @buflen + * + * Returns 0 on success or an errno on failure */ int virRandomBytes(unsigned char *buf, diff --git a/tests/vircryptotest.c b/tests/vircryptotest.c index 72265d949a..e7b7de5131 100644 --- a/tests/vircryptotest.c +++ b/tests/vircryptotest.c @@ -87,9 +87,11 @@ testCryptoEncrypt(const void *opaque) VIR_ALLOC_N(iv, ivlen) < 0) goto cleanup; - if (virRandomBytes(enckey, enckeylen) < 0 || - virRandomBytes(iv, ivlen) < 0) + if (virRandomBytes(enckey, enckeylen) || + virRandomBytes(iv, ivlen)) { + fprintf(stderr, "Failed to generate random bytes\n"); goto cleanup; + } if (virCryptoEncryptData(data->algorithm, enckey, enckeylen, iv, ivlen, data->input, data->inputlen, diff --git a/tests/virrandomtest.c b/tests/virrandomtest.c index 367bdc7054..687ebd9bf4 100644 --- a/tests/virrandomtest.c +++ b/tests/virrandomtest.c @@ -40,7 +40,7 @@ testRandomBytes(const void *unused ATTRIBUTE_UNUSED) if (VIR_ALLOC_N(data, datalen) < 0) return -1; - if (virRandomBytes(data, datalen) < 0) { + if (virRandomBytes(data, datalen)) { fprintf(stderr, "Failed to generate random bytes"); goto cleanup; }