diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/regress/lib/libcrypto/sha1/sha1test.c | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/src/regress/lib/libcrypto/sha1/sha1test.c b/src/regress/lib/libcrypto/sha1/sha1test.c index f1cf09d552..168b422d7a 100644 --- a/src/regress/lib/libcrypto/sha1/sha1test.c +++ b/src/regress/lib/libcrypto/sha1/sha1test.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: sha1test.c,v 1.5 2021/12/29 22:53:04 tb Exp $ */ | 1 | /* $OpenBSD: sha1test.c,v 1.6 2021/12/29 22:54:41 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -95,7 +95,11 @@ main(int argc, char *argv[]) | |||
| 95 | R = ret; | 95 | R = ret; |
| 96 | i = 1; | 96 | i = 1; |
| 97 | while (*P != NULL) { | 97 | while (*P != NULL) { |
| 98 | EVP_Digest(*P, strlen((char *)*P), md, NULL, EVP_sha1(), NULL); | 98 | if (!EVP_Digest(*P, strlen((char *)*P), md, NULL, EVP_sha1(), |
| 99 | NULL)) { | ||
| 100 | printf("EVP_Digest failed\n"); | ||
| 101 | goto err; | ||
| 102 | } | ||
| 99 | p = pt(md); | 103 | p = pt(md); |
| 100 | if (strcmp(p, (char *)*R) != 0) { | 104 | if (strcmp(p, (char *)*R) != 0) { |
| 101 | printf("error calculating SHA1 on '%s'\n", *P); | 105 | printf("error calculating SHA1 on '%s'\n", *P); |
| @@ -109,10 +113,20 @@ main(int argc, char *argv[]) | |||
| 109 | } | 113 | } |
| 110 | 114 | ||
| 111 | memset(buf, 'a', 1000); | 115 | memset(buf, 'a', 1000); |
| 112 | EVP_DigestInit_ex(c, EVP_sha1(), NULL); | 116 | if (!EVP_DigestInit_ex(c, EVP_sha1(), NULL)) { |
| 113 | for (i = 0; i < 1000; i++) | 117 | printf("EVP_DigestInit_ex failed\n"); |
| 114 | EVP_DigestUpdate(c, buf, 1000); | 118 | goto err; |
| 115 | EVP_DigestFinal_ex(c, md, NULL); | 119 | } |
| 120 | for (i = 0; i < 1000; i++) { | ||
| 121 | if (!EVP_DigestUpdate(c, buf, 1000)) { | ||
| 122 | printf("EVP_DigestUpdate failed\n"); | ||
| 123 | goto err; | ||
| 124 | } | ||
| 125 | } | ||
| 126 | if (!EVP_DigestFinal_ex(c, md, NULL)) { | ||
| 127 | printf("EVP_DigestFinal_ex failed\n"); | ||
| 128 | goto err; | ||
| 129 | } | ||
| 116 | p = pt(md); | 130 | p = pt(md); |
| 117 | 131 | ||
| 118 | r = bigret; | 132 | r = bigret; |
| @@ -125,6 +139,10 @@ main(int argc, char *argv[]) | |||
| 125 | 139 | ||
| 126 | EVP_MD_CTX_free(c); | 140 | EVP_MD_CTX_free(c); |
| 127 | exit(err); | 141 | exit(err); |
| 142 | |||
| 143 | err: | ||
| 144 | EVP_MD_CTX_free(c); | ||
| 145 | exit(1); | ||
| 128 | } | 146 | } |
| 129 | 147 | ||
| 130 | static char * | 148 | static char * |
