mirror of
https://github.com/openssl/openssl.git
synced 2025-02-11 14:22:43 +08:00
This very simple module loader is only linked with the standard C library, so cannot and should not provide any other symbol to the module it tries to load. It can thereby be used to verify that the module it tries to load doesn't have any surprising dependencies when it's supposed to be self contained. A test recipe is added to verify the FIPS module with this loader. Fixes #11020 Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/13507)
31 lines
1.1 KiB
Perl
31 lines
1.1 KiB
Perl
#! /usr/bin/env perl
|
|
# Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License 2.0 (the "License"). You may not use
|
|
# this file except in compliance with the License. You can obtain a copy
|
|
# in the file LICENSE in the source distribution or at
|
|
# https://www.openssl.org/source/license.html
|
|
|
|
use OpenSSL::Test qw/:DEFAULT srctop_dir bldtop_dir/;
|
|
use OpenSSL::Test::Utils;
|
|
|
|
BEGIN {
|
|
setup('test_shlibload');
|
|
}
|
|
use lib srctop_dir('Configurations');
|
|
use lib bldtop_dir('.');
|
|
use platform;
|
|
|
|
plan skip_all => 'Test only supported in a shared build' if disabled('shared');
|
|
plan skip_all => 'Test is disabled on AIX' if config('target') =~ m|^aix|;
|
|
plan skip_all => 'Test is disabled on NonStop' if config('target') =~ m|^nonstop|;
|
|
plan skip_all => 'Test only supported in a dso build' if disabled('dso');
|
|
plan skip_all => 'Test is disabled in an address sanitizer build' unless disabled('asan');
|
|
|
|
plan tests => 1;
|
|
|
|
my $fips = bldtop_dir('providers', platform->dso('fips'));
|
|
|
|
ok(run(test(['moduleloadtest', $fips, 'OSSL_provider_init'])),
|
|
"trying to load $fips in its own");
|