提交 0b415fb0 编写于 作者: D Dr. Stephen Henson

Using int for the digest length in EVP_DigestFinal() broke some compilers.

Changed to unsigned int: also need an evil cast in pk7_doit.c because a
signed, unsigned comparison chokes VC++.
上级 199d59e5
......@@ -721,7 +721,7 @@ PKCS7_SIGNER_INFO *si;
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);
......@@ -731,7 +731,7 @@ PKCS7_SIGNER_INFO *si;
PKCS7err(PKCS7_F_PKCS7_DATAVERIFY,PKCS7_R_UNABLE_TO_FIND_MESSAGE_DIGEST);
goto err;
}
if ((message_digest->length != md_len) ||
if ((message_digest->length != (int)md_len) ||
(memcmp(message_digest->data,md_dat,md_len)))
{
#if 0
......
......@@ -124,7 +124,7 @@ char *str;
ASN1_BIT_STRING *pk;
unsigned char pkey_dig[EVP_MAX_MD_SIZE];
EVP_MD_CTX md;
int diglen;
unsigned int diglen;
if(strcmp(str, "hash")) return s2i_ASN1_OCTET_STRING(method, ctx, str);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册