summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2021-12-29 22:56:25 +0000
committertb <>2021-12-29 22:56:25 +0000
commit3e79866491e194452b6551e045ebd2ae511ed394 (patch)
treec4f88dda865abc7d365d58e3ed768d19e4eb8e0d
parentdfa5fdc7d89b1bcb09c921c1749bca259f4a2ba3 (diff)
downloadopenbsd-3e79866491e194452b6551e045ebd2ae511ed394.tar.gz
openbsd-3e79866491e194452b6551e045ebd2ae511ed394.tar.bz2
openbsd-3e79866491e194452b6551e045ebd2ae511ed394.zip
More return value checks for EVP_* API
CID 345159
-rw-r--r--src/regress/lib/libcrypto/sha256/sha256test.c44
1 files changed, 28 insertions, 16 deletions
diff --git a/src/regress/lib/libcrypto/sha256/sha256test.c b/src/regress/lib/libcrypto/sha256/sha256test.c
index 4732611d55..dbba2abe3c 100644
--- a/src/regress/lib/libcrypto/sha256/sha256test.c
+++ b/src/regress/lib/libcrypto/sha256/sha256test.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sha256test.c,v 1.6 2021/12/04 07:58:10 tb Exp $ */ 1/* $OpenBSD: sha256test.c,v 1.7 2021/12/29 22:56:25 tb Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 2004 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 2004 The OpenSSL Project. All rights reserved.
4 * ==================================================================== 4 * ====================================================================
@@ -96,17 +96,22 @@ main(int argc, char **argv) {
96 fprintf(stderr, "\nEVP_MD_CTX_new() failed.\n"); 96 fprintf(stderr, "\nEVP_MD_CTX_new() failed.\n");
97 goto err; 97 goto err;
98 } 98 }
99 EVP_DigestInit_ex(evp, EVP_sha256(), NULL); 99 if (!EVP_DigestInit_ex(evp, EVP_sha256(), NULL))
100 for (i = 0; i < 1000000; i += 160) 100 goto err;
101 EVP_DigestUpdate(evp, 101 for (i = 0; i < 1000000; i += 160) {
102 if (!EVP_DigestUpdate(evp,
102 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa" 103 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa"
103 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa" 104 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa"
104 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa" 105 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa"
105 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa" 106 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa"
106 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa", 107 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa",
107 (1000000 - i) < 160 ? 1000000 - i : 160); 108 (1000000 - i) < 160 ? 1000000 - i : 160))
108 EVP_DigestFinal_ex(evp, md, NULL); 109 goto err;
109 EVP_MD_CTX_reset(evp); 110 }
111 if (!EVP_DigestFinal_ex(evp, md, NULL))
112 goto err;
113 if (!EVP_MD_CTX_reset(evp))
114 goto err;
110 115
111 if (memcmp(md, app_b3, sizeof(app_b3))) { 116 if (memcmp(md, app_b3, sizeof(app_b3))) {
112 fflush(stdout); 117 fflush(stdout);
@@ -120,7 +125,8 @@ main(int argc, char **argv) {
120 125
121 fprintf(stdout, "Testing SHA-224 "); 126 fprintf(stdout, "Testing SHA-224 ");
122 127
123 EVP_Digest ("abc",3,md,NULL,EVP_sha224(),NULL); 128 if (!EVP_Digest("abc",3,md,NULL,EVP_sha224(),NULL))
129 goto err;
124 if (memcmp(md, addenum_1, sizeof(addenum_1))) { 130 if (memcmp(md, addenum_1, sizeof(addenum_1))) {
125 fflush(stdout); 131 fflush(stdout);
126 fprintf(stderr, "\nTEST 1 of 3 failed.\n"); 132 fprintf(stderr, "\nTEST 1 of 3 failed.\n");
@@ -129,10 +135,11 @@ main(int argc, char **argv) {
129 fprintf(stdout, "."); 135 fprintf(stdout, ".");
130 fflush(stdout); 136 fflush(stdout);
131 137
132 EVP_Digest( 138 if (!EVP_Digest(
133 "abcdbcde""cdefdefg""efghfghi""ghijhijk" 139 "abcdbcde""cdefdefg""efghfghi""ghijhijk"
134 "ijkljklm""klmnlmno""mnopnopq", 140 "ijkljklm""klmnlmno""mnopnopq",
135 56, md, NULL, EVP_sha224(), NULL); 141 56, md, NULL, EVP_sha224(), NULL))
142 goto err;
136 if (memcmp(md, addenum_2, sizeof(addenum_2))) { 143 if (memcmp(md, addenum_2, sizeof(addenum_2))) {
137 fflush(stdout); 144 fflush(stdout);
138 fprintf(stderr, "\nTEST 2 of 3 failed.\n"); 145 fprintf(stderr, "\nTEST 2 of 3 failed.\n");
@@ -141,14 +148,19 @@ main(int argc, char **argv) {
141 fprintf(stdout, "."); 148 fprintf(stdout, ".");
142 fflush(stdout); 149 fflush(stdout);
143 150
144 EVP_DigestInit_ex (evp, EVP_sha224(), NULL); 151 if (!EVP_DigestInit_ex (evp, EVP_sha224(), NULL))
145 for (i = 0; i < 1000000; i += 64) 152 goto err;
146 EVP_DigestUpdate(evp, 153 for (i = 0; i < 1000000; i += 64) {
154 if (!EVP_DigestUpdate(evp,
147 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa" 155 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa"
148 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa", 156 "aaaaaaaa""aaaaaaaa""aaaaaaaa""aaaaaaaa",
149 (1000000 - i) < 64 ? 1000000 - i : 64); 157 (1000000 - i) < 64 ? 1000000 - i : 64))
150 EVP_DigestFinal_ex(evp, md, NULL); 158 goto err;
151 EVP_MD_CTX_reset(evp); 159 }
160 if (!EVP_DigestFinal_ex(evp, md, NULL))
161 goto err;
162 if (!EVP_MD_CTX_reset(evp))
163 goto err;
152 164
153 if (memcmp(md, addenum_3, sizeof(addenum_3))) { 165 if (memcmp(md, addenum_3, sizeof(addenum_3))) {
154 fflush(stdout); 166 fflush(stdout);