diff --git a/tests/client/torture_auth_pkcs11.c b/tests/client/torture_auth_pkcs11.c index cacb661a..0a77f107 100644 --- a/tests/client/torture_auth_pkcs11.c +++ b/tests/client/torture_auth_pkcs11.c @@ -103,7 +103,8 @@ static int session_teardown(void **state) return 0; } -static int setup_session(void **state) + +static int setup_pkcs11(void **state) { struct torture_state *s = *state; struct pki_st *test_state = NULL; @@ -144,7 +145,7 @@ static int sshd_setup(void **state) { torture_setup_sshd_server(state, true); - setup_session(state); + setup_pkcs11(state); return 0; } @@ -155,18 +156,20 @@ static int sshd_teardown(void **state) { struct pki_st *test_state = s->private_data; int rc; - torture_cleanup_tokens(test_state->temp_dir); + if (test_state != NULL) { + torture_cleanup_tokens(test_state->temp_dir); - rc = torture_change_dir(test_state->orig_dir); - assert_int_equal(rc, 0); + rc = torture_change_dir(test_state->orig_dir); + assert_int_equal(rc, 0); - rc = torture_rmdirs(test_state->temp_dir); - assert_int_equal(rc, 0); + rc = torture_rmdirs(test_state->temp_dir); + assert_int_equal(rc, 0); - SAFE_FREE(test_state->temp_dir); - SAFE_FREE(test_state->orig_dir); - SAFE_FREE(test_state->keys_dir); - SAFE_FREE(test_state); + SAFE_FREE(test_state->temp_dir); + SAFE_FREE(test_state->orig_dir); + SAFE_FREE(test_state->keys_dir); + SAFE_FREE(test_state); + } torture_teardown_sshd_server(state); diff --git a/tests/torture.c b/tests/torture.c index ad0a7836..22574f31 100644 --- a/tests/torture.c +++ b/tests/torture.c @@ -236,6 +236,10 @@ int torture_terminate_process(const char *pidfile) /* read the pidfile */ pid = torture_read_pidfile(pidfile); + if (pid == -1) { + fprintf(stderr, "Failed to read PID file %s\n", pidfile); + return -1; + } assert_int_not_equal(pid, -1); for (count = 0; count < 10; count++) { @@ -1367,10 +1371,8 @@ torture_update_sshd_config(void **state, const char *config) void torture_teardown_sshd_server(void **state) { struct torture_state *s = *state; - int rc; - rc = torture_terminate_process(s->srv_pidfile); - assert_return_code(rc, errno); + torture_terminate_process(s->srv_pidfile); torture_teardown_socket_dir(state); } #endif /* SSHD_EXECUTABLE */