Check return values of <Digest>_Init functions in low level digest calls.
authorDr. Stephen Henson <steve@openssl.org>
Thu, 14 Apr 2005 22:58:44 +0000 (22:58 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Thu, 14 Apr 2005 22:58:44 +0000 (22:58 +0000)
crypto/md2/md2_one.c
crypto/md4/md4_one.c
crypto/md5/md5_one.c
crypto/mdc2/mdc2_one.c
crypto/ripemd/rmd_one.c
crypto/sha/sha1_one.c
crypto/sha/sha_one.c

index dab3507..f7fef5c 100644 (file)
@@ -69,7 +69,8 @@ unsigned char *MD2(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[MD2_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       MD2_Init(&c);
+       if (!MD2_Init(&c))
+               return NULL;
 #ifndef CHARSET_EBCDIC
        MD2_Update(&c,d,n);
 #else
index 64601b6..bb64362 100644 (file)
@@ -71,7 +71,8 @@ unsigned char *MD4(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[MD4_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       MD4_Init(&c);
+       if (!MD4_Init(&c))
+               return NULL;
 #ifndef CHARSET_EBCDIC
        MD4_Update(&c,d,n);
 #else
index 9918243..43fee89 100644 (file)
@@ -71,7 +71,8 @@ unsigned char *MD5(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[MD5_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       MD5_Init(&c);
+       if (!MD5_Init(&c))
+               return NULL;
 #ifndef CHARSET_EBCDIC
        MD5_Update(&c,d,n);
 #else
index cd569aa..72647f6 100644 (file)
@@ -66,7 +66,8 @@ unsigned char *MDC2(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[MDC2_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       MDC2_Init(&c);
+       if (!MDC2_Init(&c))
+               return NULL;
        MDC2_Update(&c,d,n);
         MDC2_Final(md,&c);
        OPENSSL_cleanse(&c,sizeof(c)); /* security consideration */
index bfc4d83..3efb137 100644 (file)
@@ -68,7 +68,8 @@ unsigned char *RIPEMD160(const unsigned char *d, size_t n,
        static unsigned char m[RIPEMD160_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       RIPEMD160_Init(&c);
+       if (!RIPEMD160_Init(&c))
+               return NULL;
        RIPEMD160_Update(&c,d,n);
        RIPEMD160_Final(md,&c);
        OPENSSL_cleanse(&c,sizeof(c)); /* security consideration */
index 582b253..7c65b60 100644 (file)
@@ -68,7 +68,8 @@ unsigned char *SHA1(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[SHA_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       SHA1_Init(&c);
+       if (!SHA1_Init(&c))
+               return NULL;
        SHA1_Update(&c,d,n);
        SHA1_Final(md,&c);
        OPENSSL_cleanse(&c,sizeof(c));
index 371ffdd..3bae623 100644 (file)
@@ -68,7 +68,8 @@ unsigned char *SHA(const unsigned char *d, size_t n, unsigned char *md)
        static unsigned char m[SHA_DIGEST_LENGTH];
 
        if (md == NULL) md=m;
-       SHA_Init(&c);
+       if (!SHA_Init(&c))
+               return NULL;
        SHA_Update(&c,d,n);
        SHA_Final(md,&c);
        OPENSSL_cleanse(&c,sizeof(c));