Change type of another md_len variable in pk7_doit.c:PKCS7_dataFinal() from `int' to `unsigned int' because it's a length and initialized by EVP_DigestFinal() which expects an `unsigned int *'. Submitted by: Richard Levitte <levitte@stacken.kth.se> Reviewed by: Ralf S. Engelschall
diff --git a/CHANGES b/CHANGES index 684f8f7..0087fd5 100644 --- a/CHANGES +++ b/CHANGES
@@ -5,6 +5,11 @@ Changes between 0.9.1c and 0.9.2 + *) Change type of another md_len variable in pk7_doit.c:PKCS7_dataFinal() + from `int' to `unsigned int' because it's a length and initialized by + EVP_DigestFinal() which expects an `unsigned int *'. + [Richard Levitte <levitte@stacken.kth.se>] + *) Don't hard-code path to Perl interpreter on shebang line of Configure script. Instead use the usual Shell->Perl transition trick. [Ralf S. Engelschall]
diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c index 21027ad..9d590f5 100644 --- a/crypto/pkcs7/pk7_doit.c +++ b/crypto/pkcs7/pk7_doit.c
@@ -715,7 +715,7 @@ if ((sk != NULL) && (sk_num(sk) != 0)) { unsigned char md_dat[EVP_MAX_MD_SIZE]; - int md_len; + unsigned int md_len; ASN1_OCTET_STRING *message_digest; EVP_DigestFinal(&mdc_tmp,md_dat,&md_len);