]> git.ipfire.org Git - thirdparty/openssl.git/blob - test/recipes/65-test_cmp_protect.t
19185e112bcbf7bd984d6006a0c67c62cd4919ac
[thirdparty/openssl.git] / test / recipes / 65-test_cmp_protect.t
1 #! /usr/bin/env perl
2 # Copyright 2007-2019 The OpenSSL Project Authors. All Rights Reserved.
3 # Copyright Nokia 2007-2019
4 # Copyright Siemens AG 2015-2019
5 #
6 # Licensed under the Apache License 2.0 (the "License"). You may not use
7 # this file except in compliance with the License. You can obtain a copy
8 # in the file LICENSE in the source distribution or at
9 # https://www.openssl.org/source/license.html
10
11 use strict;
12 use OpenSSL::Test qw/:DEFAULT data_file srctop_file srctop_dir bldtop_file bldtop_dir/;
13 use OpenSSL::Test::Utils;
14
15 BEGIN {
16 setup("test_cmp_protect");
17 }
18
19 use lib srctop_dir('Configurations');
20 use lib bldtop_dir('.');
21 use platform;
22
23 my $no_fips = disabled('fips') || ($ENV{NO_FIPS} // 0);
24
25 plan skip_all => "This test is not supported in a no-cmp build"
26 if disabled("cmp");
27
28 plan skip_all => "This test is not supported in a shared library build on Windows"
29 if $^O eq 'MSWin32' && !disabled("shared");
30
31 plan tests => 2 + ($no_fips ? 0 : 2); #fips install + fips test
32
33 my @basic_cmd = ("cmp_protect_test",
34 data_file("server.pem"),
35 data_file("IR_protected.der"),
36 data_file("IR_unprotected.der"),
37 data_file("IP_PBM.der"),
38 data_file("server.crt"),
39 data_file("server.pem"),
40 data_file("EndEntity1.crt"),
41 data_file("EndEntity2.crt"),
42 data_file("Root_CA.crt"),
43 data_file("Intermediate_CA.crt"));
44
45 ok(run(test([@basic_cmd, "none"])));
46
47 ok(run(test([@basic_cmd, "default", srctop_file("test", "default.cnf")])));
48
49 unless ($no_fips) {
50 ok(run(app(['openssl', 'fipsinstall',
51 '-out', bldtop_file('providers', 'fipsmodule.cnf'),
52 '-module', bldtop_file('providers', platform->dso('fips'))])),
53 "fipsinstall");
54
55 ok(run(test([@basic_cmd, "fips", srctop_file("test", "fips.cnf")])));
56 }