#!/bin/bash # vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k . /usr/share/beakerlib/beakerlib.sh || exit 1 rlJournalStart rlPhaseStartSetup rlAssertRpm lockdev tmpDir=$(pwd) rlIsRHEL && repos="--enablerepo=rhel-CRB --enablerepo=rhel-buildroot" rlIsCentOS && repos="--enablerepo=crb" rlIsRHELLike && rlRun "dnf install -y $(rlGetRecommended) $repos" rlCheckDependencies rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" rlRun "pushd $tmp" rlRun "gcc -o test_lockdev $tmpDir/test_lockdev.c -llockdev" rlRun "chmod +x test_lockdev" rlPhaseEnd rlPhaseStartTest rlRun "./test_lockdev &> lockdev.log" rlAssertNotGrep "No tty device found tty" lockdev.log rlAssertGrep "Device in use" lockdev.log rlAssertGrep "Device is locked" lockdev.log rlAssertGrep "Device is unlocked" lockdev.log rlPhaseEnd # memory leaks not fixed on rhel8/c8s and fc42 and older if rlIsRHEL '>=9.6' || rlIsCentOS '>=9' || rlIsFedora '>=43'; then rlPhaseStartTest "memory leaks check" rlRun "valgrind --leak-check=full --error-exitcode=1 ./test_lockdev" rlPhaseEnd fi rlPhaseStartCleanup rlRun "popd" rlRun "rm -r $tmp" 0 "Remove tmp directory" rlPhaseEnd rlJournalEnd