crypto: testmgr - fix RNG return code enforcement
authorStephan Mueller <smueller@chronox.de>
Tue, 10 Mar 2015 16:00:36 +0000 (17:00 +0100)
committerJiri Slaby <jslaby@suse.cz>
Wed, 10 Jun 2015 12:05:57 +0000 (14:05 +0200)
commit 19e60e1392d110be03d794e2286dd6cfd779cbe3 upstream.

Due to the change to RNGs to always return zero in success case, the
invocation of the RNGs in the test manager must be updated as otherwise
the RNG self tests are not properly executed any more.

Signed-off-by: Stephan Mueller <smueller@chronox.de>
Signed-off-by: Alexander Bergmann <abergmann@suse.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
crypto/testmgr.c

index 93e508c39e3beb826f59ccae2e68d52494e96e3f..779a12dcb6a84172f27187324ecc62f9d18fedd0 100644 (file)
@@ -1460,11 +1460,11 @@ static int test_cprng(struct crypto_rng *tfm, struct cprng_testvec *template,
                for (j = 0; j < template[i].loops; j++) {
                        err = crypto_rng_get_bytes(tfm, result,
                                                   template[i].rlen);
-                       if (err != template[i].rlen) {
+                       if (err < 0) {
                                printk(KERN_ERR "alg: cprng: Failed to obtain "
                                       "the correct amount of random data for "
-                                      "%s (requested %d, got %d)\n", algo,
-                                      template[i].rlen, err);
+                                      "%s (requested %d)\n", algo,
+                                      template[i].rlen);
                                goto out;
                        }
                }