# [don't] allow default thread pool functionality
# [no-]shared [don't] try to create shared libraries when supported.
# [no-]pic [don't] try to build position independent code when supported.
-# If disabled, it also disables shared and dynamic-engine.
+# If disabled, it also disables shared.
# no-asm do not use assembler
# no-egd do not compile support for the entropy-gathering daemon APIs
# [no-]zlib [don't] compile support for zlib compression.
"dsa",
"dso",
"dtls",
- "dynamic-engine",
"ec",
"ec2m",
"ec_nistp_64_gcc_128",
"crypto-mdebug" => [ "crypto-mdebug-backtrace", "allocfail-tests" ],
- "module" => [ "dynamic-engine", "fips" ],
-
- # Without shared libraries, dynamic engines aren't possible.
- # This is due to them having to link with libcrypto and register features
- # using the ENGINE functionality, and since that relies on global tables,
- # those *have* to be exactly the same as the ones accessed from the app,
- # which cannot be guaranteed if shared libraries aren't present.
- # (note that even with shared libraries, both the app and dynamic engines
- # must be linked with the same library)
- "shared" => [ "dynamic-engine", "uplink" ],
- "dso" => [ "dynamic-engine", "module" ],
+ "module" => [ "fips" ],
+
+ "shared" => [ "uplink" ],
+ "dso" => [ "module" ],
# Other modules don't necessarily have to link with libcrypto, so shared
# libraries do not have to be a condition to produce those.
# or modules.
"pic" => [ "shared", "module" ],
- "engine" => [ "dynamic-engine", grep(/eng$/, @disablables) ],
- "dynamic-engine" => [ "loadereng" ],
+ "engine" => [ grep(/eng$/, @disablables) ],
"hw" => [ "padlockeng" ],
# no-autoalginit is only useful when building non-shared
{
delete $disabled{"dynamic-engine"};
}
- elsif ($1 eq "dynamic-engine")
- {
- $disabled{"dynamic-engine"} = "option";
- }
elsif (exists $deprecated_disablables{$1})
{
$deprecated_options{$_} = 1;
{
$disabled{"dynamic-engine"} = "option";
}
- elsif ($1 eq "dynamic-engine")
- {
- delete $disabled{"dynamic-engine"};
- }
elsif ($1 eq "zlib-dynamic")
{
delete $disabled{"zlib"};
if (($target{shared_target} // '') eq "")
{
$no_shared_warn = 1
- if (!$disabled{shared} || !$disabled{"dynamic-engine"});
+ if (!$disabled{shared});
disable('no-shared-target', 'pic');
}
-if ($disabled{"dynamic-engine"}) {
- $config{dynamic_engines} = 0;
-} else {
- $config{dynamic_engines} = 1;
-}
-
unless ($disabled{asan} || defined $detected_sanitizers{asan}) {
push @{$config{cflags}}, "-fsanitize=address";
}
$config{options} .= " no-$what";
if (!grep { $what eq $_ } ( 'buildtest-c++', 'fips', 'threads', 'shared',
- 'module', 'pic', 'dynamic-engine', 'makedepend',
+ 'module', 'pic', 'makedepend',
'sse2', 'legacy' )) {
(my $WHAT = uc $what) =~ s|-|_|g;
my $skipdir = $what;
}
}
-if ($disabled{"dynamic-engine"}) {
- push @{$config{openssl_feature_defines}}, "OPENSSL_NO_DYNAMIC_ENGINE";
-} else {
+if (!$disabled{"dynamic-engine"}) {
push @{$config{openssl_feature_defines}}, "OPENSSL_NO_STATIC_ENGINE";
}
);
die "runaway IF?" if (@skip);
- if (grep { defined $attributes{modules}->{$_}->{engine} } keys %attributes
- and !$config{dynamic_engines}) {
- die <<"EOF"
-ENGINES can only be used if configured with 'dynamic-engine'.
-This is usually a fault in a build.info file.
-EOF
- }
-
{
my %infos = ( programs => [ @programs ],
libraries => [ @libraries ],
print <<"EOF" if ($no_shared_warn);
-The options 'shared', 'pic' and 'dynamic-engine' aren't supported on this
+The options 'shared' and 'pic' aren't supported on this
platform, so we will pretend you gave the option 'no-pic', which also disables
-'shared' and 'dynamic-engine'. If you know how to implement shared libraries
+'shared'. If you know how to implement shared libraries
or position independent code, please let us know (but please first make sure
you have tried with a current version of OpenSSL).
EOF
# define ALG_OP_TYPE unsigned int
# define ALG_OP_LEN (sizeof(ALG_OP_TYPE))
-# ifdef OPENSSL_NO_DYNAMIC_ENGINE
void engine_load_afalg_int(void);
-# endif
/* Local Linkage Functions */
static int afalg_init_aio(afalg_aio *aio);
return 1;
}
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-static int bind_helper(ENGINE *e, const char *id)
-{
- if (id && (strcmp(id, engine_afalg_id) != 0))
- return 0;
-
- if (!afalg_chk_platform())
- return 0;
-
- if (!bind_afalg(e)) {
- afalg_destroy(e);
- return 0;
- }
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
- IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
-# endif
-
static int afalg_chk_platform(void)
{
int ret;
return 1;
}
-# ifdef OPENSSL_NO_DYNAMIC_ENGINE
static ENGINE *engine_afalg(void)
{
ENGINE *ret = ENGINE_new();
*/
ERR_pop_to_mark();
}
-# endif
static int afalg_init(ENGINE *e)
{
return 0;
}
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-static int bind_helper(ENGINE *e, const char *id)
-{
- if (id && (strcmp(id, engine_capi_id) != 0))
- return 0;
- if (!bind_capi(e))
- return 0;
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
-IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
-# else
static ENGINE *engine_capi(void)
{
ENGINE *ret = ENGINE_new();
*/
ERR_pop_to_mark();
}
-# endif
static int lend_tobn(BIGNUM *bn, unsigned char *bin, int binlen)
{
#else /* !__COMPILE_CAPIENG */
# include <openssl/engine.h>
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-OPENSSL_EXPORT
- int bind_engine(ENGINE *e, const char *id, const dynamic_fns *fns);
-OPENSSL_EXPORT
- int bind_engine(ENGINE *e, const char *id, const dynamic_fns *fns)
-{
- return 0;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
-# else
void engine_load_capi_int(void);
void engine_load_capi_int(void)
{
}
-# endif
#endif
dasync_rsa = NULL;
}
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-static int bind_helper(ENGINE *e, const char *id)
-{
- if (id && (strcmp(id, engine_dasync_id) != 0))
- return 0;
- if (!bind_dasync(e))
- return 0;
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
- IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
-# endif
-
static ENGINE *engine_dasync(void)
{
ENGINE *ret = ENGINE_new();
char *driver_name;
};
-#ifdef OPENSSL_NO_DYNAMIC_ENGINE
void engine_load_devcrypto_int(void);
-#endif
static int clean_devcrypto_session(session_op_t *sess) {
if (ioctl(cfd, CIOCFSESSION, &sess->ses) < 0) {
);
}
-#ifdef OPENSSL_NO_DYNAMIC_ENGINE
/*
* In case this engine is built into libcrypto, then it doesn't offer any
* ability to be dynamically loadable.
*/
ERR_pop_to_mark();
}
-
-#else
-
-static int bind_helper(ENGINE *e, const char *id)
-{
- if ((id && (strcmp(id, engine_devcrypto_id) != 0))
- || !open_devcrypto())
- return 0;
- if (!bind_devcrypto(e)) {
- close_devcrypto();
- return 0;
- }
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
-IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
-
-#endif
return 1;
}
-#ifndef OPENSSL_NO_DYNAMIC_ENGINE
-static int bind_helper(ENGINE *e, const char *id)
-{
- if (id && (strcmp(id, engine_ossltest_id) != 0))
- return 0;
- if (!bind_ossltest(e))
- return 0;
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
- IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
-#endif
-
static ENGINE *engine_ossltest(void)
{
ENGINE *ret = ENGINE_new();
# undef COMPILE_PADLOCKENG
# if defined(PADLOCK_ASM)
# define COMPILE_PADLOCKENG
-# ifdef OPENSSL_NO_DYNAMIC_ENGINE
static ENGINE *ENGINE_padlock(void);
-# endif
# endif
-# ifdef OPENSSL_NO_DYNAMIC_ENGINE
void engine_load_padlock_int(void);
void engine_load_padlock_int(void)
{
# endif
}
-# endif
-
# ifdef COMPILE_PADLOCKENG
/* Function for ENGINE detection and control */
return 1;
}
-# ifdef OPENSSL_NO_DYNAMIC_ENGINE
/* Constructor */
static ENGINE *ENGINE_padlock(void)
{
return eng;
}
-# endif
/* Check availability of the engine */
static int padlock_init(ENGINE *e)
* This stuff is needed if this ENGINE is being compiled into a
* self-contained shared-library.
*/
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-static int padlock_bind_fn(ENGINE *e, const char *id)
-{
- if (id && (strcmp(id, padlock_id) != 0)) {
- return 0;
- }
-
- if (!padlock_bind_helper(e)) {
- return 0;
- }
-
- return 1;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
-IMPLEMENT_DYNAMIC_BIND_FN(padlock_bind_fn)
-# endif /* !OPENSSL_NO_DYNAMIC_ENGINE */
/* ===== Here comes the "real" engine ===== */
/* Some AES-related constants */
# endif /* COMPILE_PADLOCKENG */
#endif /* !OPENSSL_NO_PADLOCKENG */
-
-#if defined(OPENSSL_NO_PADLOCKENG) || !defined(COMPILE_PADLOCKENG)
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
-OPENSSL_EXPORT
- int bind_engine(ENGINE *e, const char *id, const dynamic_fns *fns);
-OPENSSL_EXPORT
- int bind_engine(ENGINE *e, const char *id, const dynamic_fns *fns)
-{
- return 0;
-}
-
-IMPLEMENT_DYNAMIC_CHECK_FN()
-# endif
-#endif
return testresult;
}
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
+# ifdef TODO_REWRITE_ME_DASYNC_PROVIDER
/* Test we can create a signature keys with an associated ENGINE */
static int test_signatures_with_engine(int tst)
{
return testresult;
}
-# endif /* OPENSSL_NO_DYNAMIC_ENGINE */
+# endif /* TODO_REWRITE_ME_DASYNC_PROVIDER */
#endif /* OPENSSL_NO_DEPRECATED_3_0 */
#ifndef OPENSSL_NO_ECX
ADD_TEST(test_custom_md_meth);
ADD_TEST(test_custom_ciph_meth);
-# ifndef OPENSSL_NO_DYNAMIC_ENGINE
+# ifdef TODO_REWRITE_ME_DASYNC_PROVIDER
/* Tests only support the default libctx */
if (testctx == NULL) {
# ifndef OPENSSL_NO_EC
ENGINE *load_dasync(void)
{
-#if !defined(OPENSSL_NO_TLS1_2) && !defined(OPENSSL_NO_DYNAMIC_ENGINE)
+#if !defined(OPENSSL_NO_TLS1_2) && defined(TODO_REWRITE_ME_DASYNC_PROVIDER)
ENGINE *e;
if (!TEST_ptr(e = ENGINE_by_id("dasync")))
}
#endif /* OSSL_NO_USABLE_TLS1_3 */
-#if !defined(OPENSSL_NO_TLS1_2) && !defined(OPENSSL_NO_DYNAMIC_ENGINE)
+#if !defined(OPENSSL_NO_TLS1_2) && defined(TODO_REWRITE_ME_DASYNC_PROVIDER)
/*
* Test TLSv1.2 with a pipeline capable cipher. TLSv1.3 and DTLS do not
* support this yet. The only pipeline capable cipher that we have is in the
OPENSSL_free(msg);
return testresult;
}
-#endif /* !defined(OPENSSL_NO_TLS1_2) && !defined(OPENSSL_NO_DYNAMIC_ENGINE) */
+#endif /* !defined(OPENSSL_NO_TLS1_2) && defined(TODO_REWRITE_ME_DASYNC_PROVIDER) */
static int check_version_string(SSL *s, int version)
{
#if !defined(OPENSSL_NO_TLS1_2) && !defined(OSSL_NO_USABLE_TLS1_3)
ADD_ALL_TESTS(test_serverinfo_custom, 4);
#endif
-#if !defined(OPENSSL_NO_TLS1_2) && !defined(OPENSSL_NO_DYNAMIC_ENGINE)
+#if !defined(OPENSSL_NO_TLS1_2) && defined(TODO_REWRITE_ME_DASYNC_PROVIDER)
ADD_ALL_TESTS(test_pipelining, 7);
#endif
ADD_ALL_TESTS(test_version, 6);
end:
SSL_free(clientssl);
SSL_free(serverssl);
-#ifndef OPENSSL_NO_DYNAMIC_ENGINE
+#ifdef TODO_REWRITE_ME_DASYNC_PROVIDER
if (e != NULL) {
ENGINE_unregister_ciphers(e);
ENGINE_finish(e);
}
ADD_ALL_TESTS(test_func, 9);
-#if !defined(OPENSSL_NO_TLS1_2) && !defined(OPENSSL_NO_DYNAMIC_ENGINE)
+#if !defined(OPENSSL_NO_TLS1_2) && defined(TODO_REWRITE_ME_DASYNC_PROVIDER)
ADD_ALL_TESTS(test_free_buffers, 8);
#else
ADD_ALL_TESTS(test_free_buffers, 4);