1#! /usr/bin/env perl 2# Copyright 2018-2019 The OpenSSL Project Authors. All Rights Reserved. 3# 4# Licensed under the OpenSSL license (the "License"). You may not use 5# this file except in compliance with the License. You can obtain a copy 6# in the file LICENSE in the source distribution or at 7# https://www.openssl.org/source/license.html 8 9use OpenSSL::Test::Utils; 10use OpenSSL::Test qw/:DEFAULT srctop_file/; 11 12setup("test_gost"); 13 14# The GOST ciphers are dynamically loaded via the GOST engine, so we must be 15# able to support that. The engine also uses DSA, CMS and CMAC symbols, so we 16# skip this test on no-dsa, no-cms or no-cmac. 17plan skip_all => "GOST support is disabled in this OpenSSL build" 18 if disabled("gost") || disabled("engine") || disabled("dynamic-engine") 19 || disabled("dsa") || disabled("cms") || disabled("cmac"); 20 21plan skip_all => "TLSv1.3 or TLSv1.2 are disabled in this OpenSSL build" 22 if disabled("tls1_3") || disabled("tls1_2"); 23 24plan skip_all => "No test GOST engine found" 25 if !$ENV{OPENSSL_GOST_ENGINE_SO}; 26 27plan tests => 1; 28 29$ENV{OPENSSL_CONF} = srctop_file("test", "recipes", "90-test_gost_data", 30 "gost.conf"); 31 32ok(run(test(["gosttest", 33 srctop_file("test", "recipes", "90-test_gost_data", 34 "server-cert2001.pem"), 35 srctop_file("test", "recipes", "90-test_gost_data", 36 "server-key2001.pem"), 37 srctop_file("test", "recipes", "90-test_gost_data", 38 "server-cert2012.pem"), 39 srctop_file("test", "recipes", "90-test_gost_data", 40 "server-key2012.pem")])), 41 "running gosttest"); 42