Commit d8b67b9d authored by Matt Caswell's avatar Matt Caswell
Browse files

Remove OPENSSL_USE_NODELETE guards in shlibloadtest



PR #3399 converted shlibloadtest to the new test framework. It also
seemed to add some `OPENSSL_USE_NODELETE` guards to the library
unloading part of the test. This part was added in a commit with this
description:

    Review feedback; use single main, #ifdef ADD_TEST

    Suppose OPENSSL_USE_NODELETE (via Nick Reilly)

Strangely though there doesn't seem to be any relevant review feedback
in that PR that could justify the addition of those guards. The guards
do not appear in 1.1.0.

Having the guards changes the nature of the test, so that we only test
library unloading on platforms where OPENSSL_USE_NODELETE is set (Linux
and Windows). I can't think of any good reason for this and as it doesn't
seem to be necessary in 1.1.0 so I think we should remove them.

Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5530)
parent 3e3c7c36
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
@@ -52,13 +52,11 @@ static int shlib_sym(SHLIB lib, const char *symname, SHLIB_SYM *sym)
    return *sym != NULL;
}

# ifdef OPENSSL_USE_NODELETE
static int shlib_close(SHLIB lib)
{
    return dlclose(lib) != 0 ? 0 : 1;
}
#endif
#endif

#ifdef DSO_WIN32

@@ -81,13 +79,11 @@ static int shlib_sym(SHLIB lib, const char *symname, SHLIB_SYM *sym)
    return *sym != NULL;
}

# ifdef OPENSSL_USE_NODELETE
static int shlib_close(SHLIB lib)
{
    return FreeLibrary(lib) == 0 ? 0 : 1;
}
#endif
#endif


#if defined(DSO_DLFCN) || defined(DSO_WIN32)
@@ -149,7 +145,6 @@ static int test_lib(void)
    if (!TEST_int_eq(myOpenSSL_version_num(), OPENSSL_VERSION_NUMBER))
        goto end;

#ifdef OPENSSL_USE_NODELETE
    switch (test_type) {
    case JUST_CRYPTO:
        if (!TEST_true(shlib_close(cryptolib)))
@@ -166,7 +161,6 @@ static int test_lib(void)
            goto end;
        break;
    }
#endif

    result = 1;
end: