mirror of https://github.com/openssl/openssl.git
				
				
				
			When building of modules is disabled, build the legacy provider into libcrypto
This makes the legacy provider available regardless of building conditions. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9637)
This commit is contained in:
		
							parent
							
								
									03f30c552a
								
							
						
					
					
						commit
						318e074e1f
					
				|  | @ -518,7 +518,7 @@ my @disable_cascades = ( | |||
|     # or modules. | ||||
|     "pic"               => [ "shared", "module" ], | ||||
| 
 | ||||
|     "module"            => [ "fips", "legacy" ], | ||||
|     "module"            => [ "fips" ], | ||||
| 
 | ||||
|     "engine"            => [ grep /eng$/, @disablables ], | ||||
|     "hw"                => [ "padlockeng" ], | ||||
|  |  | |||
|  | @ -12,12 +12,17 @@ | |||
| 
 | ||||
| OSSL_provider_init_fn ossl_default_provider_init; | ||||
| OSSL_provider_init_fn fips_intern_provider_init; | ||||
| 
 | ||||
| #ifdef STATIC_LEGACY | ||||
| OSSL_provider_init_fn ossl_legacy_provider_init; | ||||
| #endif | ||||
| const struct predefined_providers_st predefined_providers[] = { | ||||
| #ifdef FIPS_MODE | ||||
|     { "fips", fips_intern_provider_init, 1 }, | ||||
| #else | ||||
|     { "default", ossl_default_provider_init, 1 }, | ||||
| # ifdef STATIC_LEGACY | ||||
|     { "legacy", ossl_legacy_provider_init, 0 }, | ||||
| # endif | ||||
| #endif | ||||
|     { NULL, NULL, 0 } | ||||
| }; | ||||
|  |  | |||
|  | @ -15,11 +15,16 @@ ENDIF | |||
| 
 | ||||
| IF[{- !$disabled{legacy} -}] | ||||
|   SUBDIRS=legacy | ||||
|   MODULES=legacy | ||||
|   IF[{- defined $target{shared_defflag} -}] | ||||
|     SOURCE[legacy]=legacy.ld | ||||
|     GENERATE[legacy.ld]=../util/providers.num | ||||
|   IF[{- $disabled{module} -}] | ||||
|     LIBS=../libcrypto | ||||
|     DEFINE[../libcrypto]=STATIC_LEGACY | ||||
|   ELSE | ||||
|     MODULES=legacy | ||||
|     IF[{- defined $target{shared_defflag} -}] | ||||
|       SOURCE[legacy]=legacy.ld | ||||
|       GENERATE[legacy.ld]=../util/providers.num | ||||
|     ENDIF | ||||
|     DEPEND[legacy]=../libcrypto | ||||
|     INCLUDE[legacy]=.. ../include ../crypto/include common/include | ||||
|   ENDIF | ||||
|   INCLUDE[legacy]=.. ../include ../crypto/include common/include | ||||
|   DEPEND[legacy]=../libcrypto | ||||
| ENDIF | ||||
|  |  | |||
|  | @ -1,4 +1,8 @@ | |||
| SUBDIRS=digests | ||||
| IF[{- $disabled{module} -}] | ||||
|   $GOAL=../../libcrypto | ||||
| ELSE | ||||
|   $GOAL=../legacy | ||||
| ENDIF | ||||
| 
 | ||||
| SOURCE[../legacy]=\ | ||||
|         legacyprov.c | ||||
| SOURCE[$GOAL]=legacyprov.c | ||||
|  |  | |||
|  | @ -1,24 +1,30 @@ | |||
| IF[{- $disabled{module} -}] | ||||
|   $GOAL=../../../libcrypto | ||||
| ELSE | ||||
|   $GOAL=../../legacy | ||||
| ENDIF | ||||
| 
 | ||||
| IF[{- !$disabled{md2} -}] | ||||
|   SOURCE[../../legacy]=\ | ||||
|   SOURCE[$GOAL]=\ | ||||
|           md2_prov.c | ||||
| ENDIF | ||||
| 
 | ||||
| IF[{- !$disabled{md4} -}] | ||||
|   SOURCE[../../legacy]=\ | ||||
|   SOURCE[$GOAL]=\ | ||||
|           md4_prov.c | ||||
| ENDIF | ||||
| 
 | ||||
| IF[{- !$disabled{mdc2} -}] | ||||
|   SOURCE[../../legacy]=\ | ||||
|   SOURCE[$GOAL]=\ | ||||
|           mdc2_prov.c | ||||
| ENDIF | ||||
| 
 | ||||
| IF[{- !$disabled{whirlpool} -}] | ||||
|   SOURCE[../../legacy]=\ | ||||
|   SOURCE[$GOAL]=\ | ||||
|           wp_prov.c | ||||
| ENDIF | ||||
| 
 | ||||
| IF[{- !$disabled{rmd160} -}] | ||||
|   SOURCE[../../legacy]=\ | ||||
|   SOURCE[$GOAL]=\ | ||||
|           ripemd_prov.c | ||||
| ENDIF | ||||
|  | @ -15,6 +15,11 @@ | |||
| #include <openssl/params.h> | ||||
| #include "internal/provider_algs.h" | ||||
| 
 | ||||
| #ifdef STATIC_LEGACY | ||||
| OSSL_provider_init_fn ossl_legacy_provider_init; | ||||
| # define OSSL_provider_init ossl_legacy_provider_init | ||||
| #endif | ||||
| 
 | ||||
| /* Functions provided by the core */ | ||||
| static OSSL_core_gettable_params_fn *c_gettable_params = NULL; | ||||
| static OSSL_core_get_params_fn *c_get_params = NULL; | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue