2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 18:19:42 +00:00
bind/bin/tests/system/doth/conftest.py
Michał Kępień e97b4697cf Add regression test for CVE-2022-1183
If sslyze is available in PATH, run it in a loop as part of the "doth"
system test.
2022-06-27 22:50:00 +02:00

48 lines
1.2 KiB
Python

#!/usr/bin/python3
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# SPDX-License-Identifier: MPL-2.0
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, you can obtain one at https://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
import shutil
import subprocess
import pytest
@pytest.fixture
def gnutls_cli_executable():
# Ensure gnutls-cli is available.
executable = shutil.which("gnutls-cli")
if not executable:
pytest.skip("gnutls-cli not found in PATH")
# Ensure gnutls-cli supports the --logfile command-line option.
output = subprocess.run(
[executable, "--logfile=/dev/null"],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
check=False,
).stdout
if b"illegal option" in output:
pytest.skip("gnutls-cli does not support the --logfile option")
return executable
@pytest.fixture
def sslyze_executable():
# Check whether sslyze is available.
executable = shutil.which("sslyze")
if not executable:
pytest.skip("sslyze not found in PATH")
return executable