rsa_test: add return value check
authorPauli <paul.dale@oracle.com>
Tue, 10 Nov 2020 07:05:30 +0000 (17:05 +1000)
committerPauli <paul.dale@oracle.com>
Wed, 11 Nov 2020 22:21:47 +0000 (08:21 +1000)
Fixes #13361

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/13362)

test/rsa_test.c

index 67f29808810a8a55877cdaabedd79b8362a8f9d8..5e7529876afef743879a485dbaf31ba3973292b5 100644 (file)
@@ -231,18 +231,20 @@ static int pad_unknown(void)
 static int rsa_setkey(RSA** key, unsigned char* ctext, int idx)
 {
     int clen = 0;
+
     *key = RSA_new();
-    switch (idx) {
-    case 0:
-        clen = key1(*key, ctext);
-        break;
-    case 1:
-        clen = key2(*key, ctext);
-        break;
-    case 2:
-        clen = key3(*key, ctext);
-        break;
-    }
+    if (*key != NULL)
+        switch (idx) {
+        case 0:
+            clen = key1(*key, ctext);
+            break;
+        case 1:
+            clen = key2(*key, ctext);
+            break;
+        case 2:
+            clen = key3(*key, ctext);
+            break;
+        }
     return clen;
 }