]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
tests: Lookup softhsm tools from PATH.
authorMaxim Cournoyer <maxim@guixotic.coop>
Fri, 18 Jul 2025 03:05:22 +0000 (12:05 +0900)
committerDaiki Ueno <ueno@gnu.org>
Mon, 28 Jul 2025 04:28:35 +0000 (13:28 +0900)
This is more portable, e.g. on non-FHS systems.

* tests/testpkcs11.softhsm (init_card): Use POSIX's 'command' to test
if softhsm2-util or softhsm is available from PATH.
tests: Check softhsm2-util from PATH.
* tests/pkcs11/softhsm.h (softhsm_bin): Check from PATH.

Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
tests/pkcs11/softhsm.h
tests/testpkcs11.softhsm

index 29dfd0f0a13d9eaff9ef5cd9d30c064486986a77..d0d137286d9c4541adfd5b97b7d4a0d9c893eea5 100644 (file)
@@ -70,7 +70,9 @@ inline static const char *softhsm_bin(void)
 {
        const char *bin;
 
-       if (access(SOFTHSM_BIN1, X_OK) == 0) {
+       if (!system("softhsm2-util --version")) {
+               bin = "softhsm2-util";
+       } else if (access(SOFTHSM_BIN1, X_OK) == 0) {
                bin = SOFTHSM_BIN1;
        } else if (access(SOFTHSM_BIN2, X_OK) == 0) {
                bin = SOFTHSM_BIN2;
index d0b02d9ff59528d6badf79f0acb4b129a1d95db3..d6617396aa9248d03ead7cf108c2d3d9157ea374 100755 (executable)
@@ -33,9 +33,9 @@ init_card () {
        PIN="$1"
        PUK="$2"
 
-       if test -x "/usr/bin/softhsm2-util"; then
+       if command -v softhsm2-util >/dev/null; then
                export SOFTHSM2_CONF="softhsm-testpkcs11.$$.config.tmp"
-               SOFTHSM_TOOL="/usr/bin/softhsm2-util"
+               SOFTHSM_TOOL=softhsm2-util
                ${SOFTHSM_TOOL} --version|grep "2.0.0" >/dev/null 2>&1
                if test $? = 0; then
                        echo "softhsm2-util 2.0.0 is broken"
@@ -43,9 +43,9 @@ init_card () {
                fi
        fi
 
-       if test -x "/usr/bin/softhsm"; then
+       if command -v softhsm >/dev/null; then
                export SOFTHSM_CONF="softhsm-testpkcs11.$$.config.tmp"
-               SOFTHSM_TOOL="/usr/bin/softhsm"
+               SOFTHSM_TOOL=softhsm
        fi
 
        if test -z "${SOFTHSM_TOOL}"; then