diff options
author | tb <> | 2021-12-12 20:22:08 +0000 |
---|---|---|
committer | tb <> | 2021-12-12 20:22:08 +0000 |
commit | 687e11a4199774c4e744013ed0169c5276c2de33 (patch) | |
tree | 5b50dddebd6f769fa2fc79816783804b852e21d2 /src | |
parent | 86d61498c5edcdcb8a62351030ca5fb8c31be39c (diff) | |
download | openbsd-687e11a4199774c4e744013ed0169c5276c2de33.tar.gz openbsd-687e11a4199774c4e744013ed0169c5276c2de33.tar.bz2 openbsd-687e11a4199774c4e744013ed0169c5276c2de33.zip |
Make ts.c compile with opaque EVP_MD_CTX.
ok inoguchi
Diffstat (limited to 'src')
-rw-r--r-- | src/usr.bin/openssl/ts.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/usr.bin/openssl/ts.c b/src/usr.bin/openssl/ts.c index cac10d0d3f..9ac3aca6e5 100644 --- a/src/usr.bin/openssl/ts.c +++ b/src/usr.bin/openssl/ts.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ts.c,v 1.15 2018/02/07 05:47:55 jsing Exp $ */ | 1 | /* $OpenBSD: ts.c,v 1.16 2021/12/12 20:22:08 tb Exp $ */ |
2 | /* Written by Zoltan Glozik (zglozik@stones.com) for the OpenSSL | 2 | /* Written by Zoltan Glozik (zglozik@stones.com) for the OpenSSL |
3 | * project 2002. | 3 | * project 2002. |
4 | */ | 4 | */ |
@@ -547,7 +547,7 @@ create_digest(BIO * input, char *digest, const EVP_MD * md, | |||
547 | goto err; | 547 | goto err; |
548 | if (input) { | 548 | if (input) { |
549 | /* Digest must be computed from an input file. */ | 549 | /* Digest must be computed from an input file. */ |
550 | EVP_MD_CTX md_ctx; | 550 | EVP_MD_CTX *md_ctx; |
551 | unsigned char buffer[4096]; | 551 | unsigned char buffer[4096]; |
552 | int length; | 552 | int length; |
553 | 553 | ||
@@ -555,11 +555,16 @@ create_digest(BIO * input, char *digest, const EVP_MD * md, | |||
555 | if (*md_value == 0) | 555 | if (*md_value == 0) |
556 | goto err; | 556 | goto err; |
557 | 557 | ||
558 | EVP_DigestInit(&md_ctx, md); | 558 | if ((md_ctx = EVP_MD_CTX_new()) == NULL) |
559 | goto err; | ||
560 | |||
561 | EVP_DigestInit(md_ctx, md); | ||
559 | while ((length = BIO_read(input, buffer, sizeof(buffer))) > 0) { | 562 | while ((length = BIO_read(input, buffer, sizeof(buffer))) > 0) { |
560 | EVP_DigestUpdate(&md_ctx, buffer, length); | 563 | EVP_DigestUpdate(md_ctx, buffer, length); |
561 | } | 564 | } |
562 | EVP_DigestFinal(&md_ctx, *md_value, NULL); | 565 | EVP_DigestFinal(md_ctx, *md_value, NULL); |
566 | |||
567 | EVP_MD_CTX_free(md_ctx); | ||
563 | } else { | 568 | } else { |
564 | /* Digest bytes are specified with digest. */ | 569 | /* Digest bytes are specified with digest. */ |
565 | long digest_len; | 570 | long digest_len; |