Prepare to generalize maybe_requires_ciphersuite_enabled
Rename maybe_requires_ciphersuite_enabled() to detect_required_features() and refactor its code a little. No intended behavior change. In subsequent commits, this function will detect other requirements in a similar way. Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
parent
d2d90af7d9
commit
b898b3df90
1 changed files with 13 additions and 16 deletions
|
@ -275,22 +275,18 @@ requires_ciphersuite_enabled() {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
# maybe_requires_ciphersuite_enabled CMD [RUN_TEST_OPTION...]
|
# detect_required_features CMD [RUN_TEST_OPTION...]
|
||||||
# If CMD (call to a TLS client or server program) requires a specific
|
# If CMD (call to a TLS client or server program) requires certain features,
|
||||||
# ciphersuite, arrange to only run the test case if this ciphersuite is
|
# arrange to only run the following test case if those features are enabled.
|
||||||
# enabled.
|
detect_required_features() {
|
||||||
maybe_requires_ciphersuite_enabled() {
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
*\ force_ciphersuite=*) :;;
|
*\ force_ciphersuite=*)
|
||||||
*) return;; # No specific required ciphersuite
|
tmp="${1##*\ force_ciphersuite=}"
|
||||||
|
tmp="${tmp%%[!-0-9A-Z_a-z]*}"
|
||||||
|
requires_ciphersuite_enabled "$tmp";;
|
||||||
esac
|
esac
|
||||||
ciphersuite="${1##*\ force_ciphersuite=}"
|
|
||||||
ciphersuite="${ciphersuite%%[!-0-9A-Z_a-z]*}"
|
|
||||||
shift
|
|
||||||
|
|
||||||
requires_ciphersuite_enabled "$ciphersuite"
|
unset tmp
|
||||||
|
|
||||||
unset ciphersuite
|
|
||||||
}
|
}
|
||||||
|
|
||||||
requires_certificate_authentication () {
|
requires_certificate_authentication () {
|
||||||
|
@ -1272,9 +1268,10 @@ run_test() {
|
||||||
requires_config_enabled MBEDTLS_SSL_ALPN;;
|
requires_config_enabled MBEDTLS_SSL_ALPN;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# If the client or serve requires a ciphersuite, check that it's enabled.
|
# If the client or server requires certain features that can be detected
|
||||||
maybe_requires_ciphersuite_enabled "$SRV_CMD" "$@"
|
# from their command-line arguments, check that they're enabled.
|
||||||
maybe_requires_ciphersuite_enabled "$CLI_CMD" "$@"
|
detect_required_features "$SRV_CMD" "$@"
|
||||||
|
detect_required_features "$CLI_CMD" "$@"
|
||||||
|
|
||||||
# If we're in a PSK-only build and the test can be adapted to PSK, do that.
|
# If we're in a PSK-only build and the test can be adapted to PSK, do that.
|
||||||
maybe_adapt_for_psk "$@"
|
maybe_adapt_for_psk "$@"
|
||||||
|
|
Loading…
Reference in a new issue