X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=test%2Fmdc2test.c;h=d56bdcd878fa4611c249769446df4fa55cb366dc;hb=d18afb5bf29dc3b81b5f7a9eda2abde35041a441;hp=dc8dd58d786dd962a0ecc75e687b29998ed2c76e;hpb=440e5d805f449d662520313b33fd90aeee86980b;p=oweals%2Fopenssl.git diff --git a/test/mdc2test.c b/test/mdc2test.c index dc8dd58d78..d56bdcd878 100644 --- a/test/mdc2test.c +++ b/test/mdc2test.c @@ -43,7 +43,7 @@ static unsigned char pad2[16] = { int main(int argc, char *argv[]) { - int ret = 0; + int ret = 1; unsigned char md[MDC2_DIGEST_LENGTH]; int i; EVP_MD_CTX *c; @@ -54,9 +54,11 @@ int main(int argc, char *argv[]) # endif c = EVP_MD_CTX_new(); - EVP_DigestInit_ex(c, EVP_mdc2(), NULL); - EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)); - EVP_DigestFinal_ex(c, &(md[0]), NULL); + if (c == NULL + || !EVP_DigestInit_ex(c, EVP_mdc2(), NULL) + || !EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)) + || !EVP_DigestFinal_ex(c, &(md[0]), NULL)) + goto err; if (memcmp(md, pad1, MDC2_DIGEST_LENGTH) != 0) { for (i = 0; i < MDC2_DIGEST_LENGTH; i++) @@ -65,15 +67,18 @@ int main(int argc, char *argv[]) for (i = 0; i < MDC2_DIGEST_LENGTH; i++) printf("%02X", pad1[i]); printf(" <- correct\n"); - ret = 1; - } else + goto err; + } else { printf("pad1 - ok\n"); + } - EVP_DigestInit_ex(c, EVP_mdc2(), NULL); + if (!EVP_DigestInit_ex(c, EVP_mdc2(), NULL)) + goto err; /* FIXME: use a ctl function? */ ((MDC2_CTX *)EVP_MD_CTX_md_data(c))->pad_type = 2; - EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)); - EVP_DigestFinal_ex(c, &(md[0]), NULL); + if (!EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)) + || !EVP_DigestFinal_ex(c, &(md[0]), NULL)) + goto err; if (memcmp(md, pad2, MDC2_DIGEST_LENGTH) != 0) { for (i = 0; i < MDC2_DIGEST_LENGTH; i++) @@ -82,10 +87,12 @@ int main(int argc, char *argv[]) for (i = 0; i < MDC2_DIGEST_LENGTH; i++) printf("%02X", pad2[i]); printf(" <- correct\n"); - ret = 1; - } else + } else { printf("pad2 - ok\n"); + ret = 0; + } + err: EVP_MD_CTX_free(c); EXIT(ret); }