@@ -194,7 +194,12 @@ extern cl_error_t cl_hash_data_ex(
194194 cl_error_t status = CL_ERROR ;
195195
196196 EVP_MD_CTX * ctx = NULL ;
197- EVP_MD * md = NULL ;
197+
198+ #if OPENSSL_VERSION_MAJOR >= 3
199+ EVP_MD * md = NULL ;
200+ #else
201+ const EVP_MD * md = NULL ;
202+ #endif
198203
199204 size_t required_hash_len ;
200205 uint8_t * new_hash = NULL ;
@@ -212,13 +217,13 @@ extern cl_error_t cl_hash_data_ex(
212217#if OPENSSL_VERSION_MAJOR >= 3
213218 if (flags & CL_HASH_FLAG_FIPS_BYPASS ) {
214219 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
215- md = EVP_MD_fetch (NULL , alg , "-fips" );
220+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
216221 } else {
217222 /* Use FIPS compliant algorithms */
218- md = EVP_MD_fetch (NULL , alg , NULL );
223+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , NULL );
219224 }
220225#else
221- md = EVP_get_digestbyname (alg );
226+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
222227#endif
223228 if (NULL == md ) {
224229 cli_errmsg ("cl_hash_data_ex: Unsupported hash algorithm: %s\n" , alg );
@@ -332,10 +337,14 @@ extern cl_error_t cl_hash_init_ex(
332337 uint32_t flags ,
333338 cl_hash_ctx_t * * ctx_out )
334339{
335-
336340 cl_error_t status = CL_ERROR ;
337341 EVP_MD_CTX * ctx = NULL ;
338- EVP_MD * md = NULL ;
342+
343+ #if OPENSSL_VERSION_MAJOR >= 3
344+ EVP_MD * md = NULL ;
345+ #else
346+ const EVP_MD * md = NULL ;
347+ #endif
339348
340349 if (NULL == alg || NULL == ctx_out ) {
341350 cli_errmsg ("cl_hash_init_ex: Invalid arguments\n" );
@@ -346,13 +355,13 @@ extern cl_error_t cl_hash_init_ex(
346355#if OPENSSL_VERSION_MAJOR >= 3
347356 if (flags & CL_HASH_FLAG_FIPS_BYPASS ) {
348357 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
349- md = EVP_MD_fetch (NULL , alg , "-fips" );
358+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
350359 } else {
351360 /* Use FIPS compliant algorithms */
352- md = EVP_MD_fetch (NULL , alg , NULL );
361+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , NULL );
353362 }
354363#else
355- md = EVP_get_digestbyname (alg );
364+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
356365#endif
357366 if (NULL == md ) {
358367 cli_errmsg ("cl_hash_data_ex: Unsupported hash algorithm: %s\n" , alg );
@@ -551,7 +560,12 @@ extern cl_error_t cl_hash_file_fd_ex(
551560 STATBUF sb ;
552561
553562 EVP_MD_CTX * ctx = NULL ;
554- EVP_MD * md = NULL ;
563+
564+ #if OPENSSL_VERSION_MAJOR >= 3
565+ EVP_MD * md = NULL ;
566+ #else
567+ const EVP_MD * md = NULL ;
568+ #endif
555569
556570 size_t required_hash_len ;
557571 uint8_t * new_hash = NULL ;
@@ -596,13 +610,13 @@ extern cl_error_t cl_hash_file_fd_ex(
596610#if OPENSSL_VERSION_MAJOR >= 3
597611 if (flags & CL_HASH_FLAG_FIPS_BYPASS ) {
598612 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
599- md = EVP_MD_fetch (NULL , alg , "-fips" );
613+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
600614 } else {
601615 /* Use FIPS compliant algorithms */
602- md = EVP_MD_fetch (NULL , alg , NULL );
616+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , NULL );
603617 }
604618#else
605- md = EVP_get_digestbyname (alg );
619+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
606620#endif
607621 if (NULL == md ) {
608622 cli_errmsg ("cl_hash_data_ex: Unsupported hash algorithm: %s\n" , alg );
@@ -723,16 +737,22 @@ unsigned char *cl_hash_data(const char *alg, const void *buf, size_t len, unsign
723737 EVP_MD_CTX * ctx ;
724738 unsigned char * ret ;
725739 size_t mdsz ;
726- EVP_MD * md ;
740+
741+ #if OPENSSL_VERSION_MAJOR >= 3
742+ EVP_MD * md = NULL ;
743+ #else
744+ const EVP_MD * md = NULL ;
745+ #endif
746+
727747 unsigned int i ;
728748 size_t cur ;
729749 bool win_exception = false;
730750
731751#if OPENSSL_VERSION_MAJOR >= 3
732752 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
733- md = EVP_MD_fetch (NULL , alg , "-fips" );
753+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
734754#else
735- md = EVP_get_digestbyname (alg );
755+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
736756#endif
737757 if (!(md ))
738758 return NULL ;
@@ -844,14 +864,20 @@ unsigned char *cl_hash_data(const char *alg, const void *buf, size_t len, unsign
844864unsigned char * cl_hash_file_fd (int fd , const char * alg , unsigned int * olen )
845865{
846866 EVP_MD_CTX * ctx ;
847- EVP_MD * md ;
867+
868+ #if OPENSSL_VERSION_MAJOR >= 3
869+ EVP_MD * md = NULL ;
870+ #else
871+ const EVP_MD * md = NULL ;
872+ #endif
873+
848874 unsigned char * res ;
849875
850876#if OPENSSL_VERSION_MAJOR >= 3
851877 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
852- md = EVP_MD_fetch (NULL , alg , "-fips" );
878+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
853879#else
854- md = EVP_get_digestbyname (alg );
880+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
855881#endif
856882 if (!(md ))
857883 return NULL ;
@@ -996,7 +1022,7 @@ int cl_verify_signature_hash(EVP_PKEY *pkey, const char *alg, unsigned char *sig
9961022 const EVP_MD * md ;
9971023 size_t mdsz ;
9981024
999- md = EVP_get_digestbyname (alg );
1025+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
10001026 if (!(md ))
10011027 return -1 ;
10021028
@@ -1036,7 +1062,7 @@ int cl_verify_signature_fd(EVP_PKEY *pkey, const char *alg, unsigned char *sig,
10361062 if (!(digest ))
10371063 return -1 ;
10381064
1039- md = EVP_get_digestbyname (alg );
1065+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
10401066 if (!(md )) {
10411067 free (digest );
10421068 return -1 ;
@@ -1100,7 +1126,7 @@ int cl_verify_signature(EVP_PKEY *pkey, const char *alg, unsigned char *sig, uns
11001126 return -1 ;
11011127 }
11021128
1103- md = EVP_get_digestbyname (alg );
1129+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
11041130 if (!(md )) {
11051131 free (digest );
11061132 if (decode )
@@ -1314,7 +1340,7 @@ unsigned char *cl_sign_data(EVP_PKEY *pkey, const char *alg, unsigned char *hash
13141340 unsigned int siglen ;
13151341 unsigned char * sig ;
13161342
1317- md = EVP_get_digestbyname (alg );
1343+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
13181344 if (!(md ))
13191345 return NULL ;
13201346
@@ -1730,13 +1756,18 @@ X509_CRL *cl_load_crl(const char *file)
17301756void * cl_hash_init (const char * alg )
17311757{
17321758 EVP_MD_CTX * ctx ;
1733- EVP_MD * md ;
1759+
1760+ #if OPENSSL_VERSION_MAJOR >= 3
1761+ EVP_MD * md = NULL ;
1762+ #else
1763+ const EVP_MD * md = NULL ;
1764+ #endif
17341765
17351766#if OPENSSL_VERSION_MAJOR >= 3
17361767 /* Bypass FIPS restrictions the OpenSSL 3.0 way */
1737- md = EVP_MD_fetch (NULL , alg , "-fips" );
1768+ md = EVP_MD_fetch (NULL , to_openssl_alg ( alg ) , "-fips" );
17381769#else
1739- md = EVP_get_digestbyname (alg );
1770+ md = EVP_get_digestbyname (to_openssl_alg ( alg ) );
17401771#endif
17411772 if (!(md ))
17421773 return NULL ;
0 commit comments