1*4ec3ca55SDag-Erling Smørgrav# 2*4ec3ca55SDag-Erling Smørgrav# Copyright (c) 2026 Dag-Erling Smørgrav 3*4ec3ca55SDag-Erling Smørgrav# 4*4ec3ca55SDag-Erling Smørgrav# SPDX-License-Identifier: BSD-2-Clause 5*4ec3ca55SDag-Erling Smørgrav# 6*4ec3ca55SDag-Erling Smørgrav 7*4ec3ca55SDag-Erling Smørgravatf_test_case ctl cleanup 8*4ec3ca55SDag-Erling Smørgravctl_head() 9*4ec3ca55SDag-Erling Smørgrav{ 10*4ec3ca55SDag-Erling Smørgrav atf_set descr "Test that hastd can start, stop, and "\ 11*4ec3ca55SDag-Erling Smørgrav "communicate with hastctl" 12*4ec3ca55SDag-Erling Smørgrav atf_set require.user "root" 13*4ec3ca55SDag-Erling Smørgrav} 14*4ec3ca55SDag-Erling Smørgravctl_body() 15*4ec3ca55SDag-Erling Smørgrav{ 16*4ec3ca55SDag-Erling Smørgrav cat >hast.conf <<EOF 17*4ec3ca55SDag-Erling Smørgravcontrol $PWD/hastctl 18*4ec3ca55SDag-Erling Smørgravpidfile $PWD/hastd.pid 19*4ec3ca55SDag-Erling Smørgravlisten $PWD/hastd.sock 20*4ec3ca55SDag-Erling SmørgravEOF 21*4ec3ca55SDag-Erling Smørgrav atf_check hastd -c $PWD/hast.conf 22*4ec3ca55SDag-Erling Smørgrav atf_check -o ignore hastctl status -c $PWD/hast.conf 23*4ec3ca55SDag-Erling Smørgrav atf_check -o ignore hastctl stop -c $PWD/hast.conf 24*4ec3ca55SDag-Erling Smørgrav rm -f hastd.pid 25*4ec3ca55SDag-Erling Smørgrav} 26*4ec3ca55SDag-Erling Smørgravctl_cleanup() 27*4ec3ca55SDag-Erling Smørgrav{ 28*4ec3ca55SDag-Erling Smørgrav if [ -s hastd.pid ]; then 29*4ec3ca55SDag-Erling Smørgrav kill -9 "$(cat hastd.pid)" || true 30*4ec3ca55SDag-Erling Smørgrav fi 31*4ec3ca55SDag-Erling Smørgrav} 32*4ec3ca55SDag-Erling Smørgrav 33*4ec3ca55SDag-Erling Smørgravatf_init_test_cases() 34*4ec3ca55SDag-Erling Smørgrav{ 35*4ec3ca55SDag-Erling Smørgrav atf_add_test_case ctl 36*4ec3ca55SDag-Erling Smørgrav} 37