diff options
Diffstat (limited to 'crypto/openssl/crypto/sha/shatest.c')
-rw-r--r-- | crypto/openssl/crypto/sha/shatest.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/crypto/openssl/crypto/sha/shatest.c b/crypto/openssl/crypto/sha/shatest.c index a5786bb..5d2b1d3 100644 --- a/crypto/openssl/crypto/sha/shatest.c +++ b/crypto/openssl/crypto/sha/shatest.c @@ -60,13 +60,16 @@ #include <string.h> #include <stdlib.h> -#ifdef NO_SHA +#include "../e_os.h" + +#ifdef OPENSSL_NO_SHA int main(int argc, char *argv[]) { printf("No SHA support\n"); return(0); } #else +#include <openssl/evp.h> #include <openssl/sha.h> #ifdef CHARSET_EBCDIC @@ -106,7 +109,7 @@ int main(int argc, char *argv[]) unsigned char **P,**R; static unsigned char buf[1000]; char *p,*r; - SHA_CTX c; + EVP_MD_CTX c; unsigned char md[SHA_DIGEST_LENGTH]; #ifdef CHARSET_EBCDIC @@ -114,12 +117,14 @@ int main(int argc, char *argv[]) ebcdic2ascii(test[1], test[1], strlen(test[1])); #endif + EVP_MD_CTX_init(&c); P=(unsigned char **)test; R=(unsigned char **)ret; i=1; while (*P != NULL) { - p=pt(SHA(*P,(unsigned long)strlen((char *)*P),NULL)); + EVP_Digest(*P,(unsigned long)strlen((char *)*P),md,NULL,EVP_sha(), NULL); + p=pt(md); if (strcmp(p,(char *)*R) != 0) { printf("error calculating SHA on '%s'\n",*P); @@ -137,10 +142,10 @@ int main(int argc, char *argv[]) #ifdef CHARSET_EBCDIC ebcdic2ascii(buf, buf, 1000); #endif /*CHARSET_EBCDIC*/ - SHA_Init(&c); + EVP_DigestInit_ex(&c,EVP_sha(), NULL); for (i=0; i<1000; i++) - SHA_Update(&c,buf,1000); - SHA_Final(md,&c); + EVP_DigestUpdate(&c,buf,1000); + EVP_DigestFinal_ex(&c,md,NULL); p=pt(md); r=bigret; @@ -152,7 +157,8 @@ int main(int argc, char *argv[]) } else printf("test 3 ok\n"); - exit(err); + EVP_MD_CTX_cleanup(&c); + EXIT(err); return(0); } |