diff options
author | tb <> | 2021-12-29 22:56:25 +0000 |
---|---|---|
committer | tb <> | 2021-12-29 22:56:25 +0000 |
commit | 3e79866491e194452b6551e045ebd2ae511ed394 (patch) | |
tree | c4f88dda865abc7d365d58e3ed768d19e4eb8e0d | |
parent | dfa5fdc7d89b1bcb09c921c1749bca259f4a2ba3 (diff) | |
download | openbsd-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.c | 44 |
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); |