1#!/bin/bash -eu
2
3# ssl-opt-in-docker.sh
4#
5# Purpose
6# -------
7# This runs ssl-opt.sh in a Docker container.
8#
9# WARNING: the Dockerfile used by this script is no longer maintained! See
10# https://github.com/Mbed-TLS/mbedtls-test/blob/master/README.md#quick-start
11# for the set of Docker images we use on the CI.
12#
13# Notes for users
14# ---------------
15# If OPENSSL, GNUTLS_CLI, or GNUTLS_SERV are specified, the path must
16# correspond to an executable inside the Docker container. The special
17# values "next" and "legacy" are also allowed as shorthand for the
18# installations inside the container.
19#
20# See also:
21# - scripts/docker_env.sh for general Docker prerequisites and other information.
22# - ssl-opt.sh for notes about invocation of that script.
23
24# Copyright The Mbed TLS Contributors
25# SPDX-License-Identifier: Apache-2.0
26#
27# Licensed under the Apache License, Version 2.0 (the "License"); you may
28# not use this file except in compliance with the License.
29# You may obtain a copy of the License at
30#
31#  http://www.apache.org/licenses/LICENSE-2.0
32#
33# Unless required by applicable law or agreed to in writing, software
34# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
35# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
36# See the License for the specific language governing permissions and
37# limitations under the License.
38
39source tests/scripts/docker_env.sh
40
41case "${OPENSSL:-default}" in
42    "legacy")  export OPENSSL="/usr/local/openssl-1.0.1j/bin/openssl";;
43    "next")    export OPENSSL="/usr/local/openssl-1.1.1a/bin/openssl";;
44    *) ;;
45esac
46
47case "${GNUTLS_CLI:-default}" in
48    "legacy")  export GNUTLS_CLI="/usr/local/gnutls-3.3.8/bin/gnutls-cli";;
49    "next")  export GNUTLS_CLI="/usr/local/gnutls-3.7.2/bin/gnutls-cli";;
50    *) ;;
51esac
52
53case "${GNUTLS_SERV:-default}" in
54    "legacy")  export GNUTLS_SERV="/usr/local/gnutls-3.3.8/bin/gnutls-serv";;
55    "next")  export GNUTLS_SERV="/usr/local/gnutls-3.7.2/bin/gnutls-serv";;
56    *) ;;
57esac
58
59run_in_docker \
60    -e P_SRV \
61    -e P_CLI \
62    -e P_PXY \
63    -e GNUTLS_CLI \
64    -e GNUTLS_SERV \
65    -e OPENSSL \
66    tests/ssl-opt.sh \
67    $@
68