diff --git a/common/rc b/common/rc index ea929708..4cbc514b 100644 --- a/common/rc +++ b/common/rc @@ -69,6 +69,19 @@ _have_driver() return 0 } +# Check that the specified crypto algorithm is present, regardless of whether +# it's built-in or as module. +_have_crypto_algorithm() +{ + local algo="$1" + + if grep -q "${algo}" /proc/crypto; then + return 0 + fi + + _have_driver "${algo}" +} + # Check that the specified module is available as a loadable module and not # built-in the kernel. _have_module() { diff --git a/tests/nvme/043 b/tests/nvme/043 index 616f7e7f..94b7ac4b 100755 --- a/tests/nvme/043 +++ b/tests/nvme/043 @@ -16,7 +16,7 @@ requires() { _require_kernel_nvme_fabrics_feature dhchap_ctrl_secret _require_nvme_trtype_is_fabrics _require_nvme_cli_auth - _have_driver dh_generic + _have_crypto_algorithm dh-generic } set_conditions() { diff --git a/tests/nvme/044 b/tests/nvme/044 index 4727dbf0..2f08ccd3 100755 --- a/tests/nvme/044 +++ b/tests/nvme/044 @@ -16,7 +16,7 @@ requires() { _require_kernel_nvme_fabrics_feature dhchap_ctrl_secret _require_nvme_trtype_is_fabrics _require_nvme_cli_auth - _have_driver dh_generic + _have_crypto_algorithm dh-generic } set_conditions() { diff --git a/tests/nvme/045 b/tests/nvme/045 index bf388245..af3443e2 100755 --- a/tests/nvme/045 +++ b/tests/nvme/045 @@ -17,7 +17,7 @@ requires() { _require_kernel_nvme_fabrics_feature dhchap_ctrl_secret _require_nvme_trtype_is_fabrics _require_nvme_cli_auth - _have_driver dh_generic + _have_crypto_algorithm dh-generic } set_conditions() {