1*640235e2SEnji Cooper# $NetBSD: t_swsensor.sh,v 1.9 2015/04/23 23:23:28 pgoyette Exp $ 257718be8SEnji Cooper 357718be8SEnji Cooperget_sensor_info() { 457718be8SEnji Cooper rump.envstat -x | \ 557718be8SEnji Cooper sed -e "\;swsensor;,\;/array;p" -e "d" 657718be8SEnji Cooper} 757718be8SEnji Cooper 857718be8SEnji Cooperget_sensor_key() { 9*640235e2SEnji Cooper local v 10*640235e2SEnji Cooper v=$(get_sensor_info | grep -A1 $1 | grep integer | \ 11*640235e2SEnji Cooper sed -e 's;<[/a-z]*>;;g') 12*640235e2SEnji Cooper if [ -z "$v" ] ; then 13*640235e2SEnji Cooper v="key_$1_not_found" 14*640235e2SEnji Cooper fi 15*640235e2SEnji Cooper echo $v 1657718be8SEnji Cooper} 1757718be8SEnji Cooper 1857718be8SEnji Cooperget_powerd_event_count() { 1957718be8SEnji Cooper grep "not running" powerd.log | wc -l 2057718be8SEnji Cooper} 2157718be8SEnji Cooper 2257718be8SEnji Cooperget_rnd_bits_count() { 2357718be8SEnji Cooper env RUMPHIJACK=blanket=/dev/random:/dev/urandom \ 2457718be8SEnji Cooper RUMP_SERVER=unix://t_swsensor_socket \ 2557718be8SEnji Cooper LD_PRELOAD=/usr/lib/librumphijack.so rndctl -l | \ 2657718be8SEnji Cooper grep "swsensor-sensor" | \ 2757718be8SEnji Cooper awk '{print $2}' 2857718be8SEnji Cooper} 2957718be8SEnji Cooper 3057718be8SEnji Coopercheck_powerd_event() { 3157718be8SEnji Cooper event=$(grep "not running" powerd.log | \ 3257718be8SEnji Cooper sed -e "$1p" -e "d" ) 3357718be8SEnji Cooper event=${event##*//} 3457718be8SEnji Cooper script=${event%% *} 3557718be8SEnji Cooper event=${event#* } 3657718be8SEnji Cooper device=${event%% *} 3757718be8SEnji Cooper event=${event#* } 3857718be8SEnji Cooper state=${event%% *} 3957718be8SEnji Cooper sensor=${event#* } 4057718be8SEnji Cooper sensor=${sensor% *} 4157718be8SEnji Cooper 4257718be8SEnji Cooper if [ "${script}" != "sensor_indicator" ] ; then 4357718be8SEnji Cooper echo "Event uses wrong script: ${script}" 4457718be8SEnji Cooper elif [ "${device}" != "swsensor" ] ; then 4557718be8SEnji Cooper echo "Event uses wrong device: ${device}" 4657718be8SEnji Cooper elif [ "${sensor}" != "sensor" ] ; then 4757718be8SEnji Cooper echo "Event uses wrong sensor: ${sensor}" 4857718be8SEnji Cooper elif [ "${state}" != "$2" ] ; then 4957718be8SEnji Cooper echo "Event uses wrong state: ${state}" 5057718be8SEnji Cooper fi 5157718be8SEnji Cooper} 5257718be8SEnji Cooper 5357718be8SEnji Cooper# Start the rump server, then load the swsensor module with the 5457718be8SEnji Cooper# requested properties 5557718be8SEnji Cooper 5657718be8SEnji Cooperstart_rump() { 5757718be8SEnji Cooper rump_allserver -l rumpvfs -l rumpdev -l rumpdev_sysmon ${RUMP_SERVER} 5857718be8SEnji Cooper if [ $( get_sensor_info | wc -l ) -ne 0 ] ; then 5957718be8SEnji Cooper rump.modunload swsensor 6057718be8SEnji Cooper rump.modload -f $1 swsensor 6157718be8SEnji Cooper else 6257718be8SEnji Cooper rump.modload $1 swsensor 6357718be8SEnji Cooper fi 6457718be8SEnji Cooper return $? 6557718be8SEnji Cooper} 6657718be8SEnji Cooper 6757718be8SEnji Coopercommon_head() { 6857718be8SEnji Cooper atf_set descr "$1" 69*640235e2SEnji Cooper atf_set timeout 120 7057718be8SEnji Cooper atf_set require.progs rump.powerd rump.envstat rump.modload \ 7157718be8SEnji Cooper rump.halt rump.sysctl rump_server \ 7257718be8SEnji Cooper sed grep awk \ 7357718be8SEnji Cooper rndctl expr 7457718be8SEnji Cooper} 7557718be8SEnji Cooper 7657718be8SEnji Coopercommon_cleanup() { 7757718be8SEnji Cooper rump.modunload swsensor 7857718be8SEnji Cooper rump.halt 7957718be8SEnji Cooper} 8057718be8SEnji Cooper 8157718be8SEnji Coopercreate_envsys_conf_files() { 8257718be8SEnji Cooper cat << ENV0 > env0.conf 8357718be8SEnji Cooper swsensor { 8457718be8SEnji Cooper refresh-timeout = 2s; 8557718be8SEnji Cooper } 8657718be8SEnji CooperENV0 8757718be8SEnji Cooper cat << ENV1 > env1.conf 8857718be8SEnji Cooper swsensor { 8957718be8SEnji Cooper sensor0 { critical-min = $(( $1 - $2 )); } 9057718be8SEnji Cooper } 9157718be8SEnji CooperENV1 9257718be8SEnji Cooper cat << ENV2 > env2.conf 9357718be8SEnji Cooper swsensor { 9457718be8SEnji Cooper sensor0 { critical-min = $1; } 9557718be8SEnji Cooper } 9657718be8SEnji CooperENV2 9757718be8SEnji Cooper} 9857718be8SEnji Cooper 9957718be8SEnji Cooper# Test body common to all sensors 10057718be8SEnji Cooper# $1 sensor mode 10157718be8SEnji Cooper# $2 initial sensor value 10257718be8SEnji Cooper# $3 initial limit 10357718be8SEnji Cooper# $4 amount to lower limit 10457718be8SEnji Cooper# $5 difference from limit to trigger event 10557718be8SEnji Cooper# $6 sensor flags, for FHAS_ENTROPY and FMONNOTSUPP 10657718be8SEnji Cooper 10757718be8SEnji Coopercommon_body() { 10857718be8SEnji Cooper # Start the rump-server process and load the module 10957718be8SEnji Cooper modload_args="-i mode=$1 -i value=$2 -i limit=$3 ${6:+-i flags=$6}" 11057718be8SEnji Cooper start_rump "$modload_args" 11157718be8SEnji Cooper 11257718be8SEnji Cooper # create configuration files for updates 11357718be8SEnji Cooper create_envsys_conf_files $3 $4 11457718be8SEnji Cooper 11557718be8SEnji Cooper if [ $? -ne 0 ] ; then 11657718be8SEnji Cooper atf_skip "Cannot set-up rump environment" 11757718be8SEnji Cooper fi 11857718be8SEnji Cooper 11957718be8SEnji Cooper # start powerd so we can detect sensor events 12057718be8SEnji Cooper rump.powerd -n -d > powerd.log 2>&1 & 12157718be8SEnji Cooper if [ -z "$(jobs)" ] ; then 12257718be8SEnji Cooper skip_events=1 12357718be8SEnji Cooper echo "Skipping event sub-tests - powerd did not start" 12457718be8SEnji Cooper else 12557718be8SEnji Cooper skip_events=0 12657718be8SEnji Cooper expected_event=1 12757718be8SEnji Cooper fi 12857718be8SEnji Cooper 12957718be8SEnji Cooper # Step 0 - verify that sensor is registered 13057718be8SEnji Cooper get_sensor_info | grep -q swsensor || 13157718be8SEnji Cooper atf_fail "0: Device swsensor not registered" 13257718be8SEnji Cooper 13357718be8SEnji Cooper # Step 1 - update the refresh-timeout and verify 13457718be8SEnji Cooper # (use $(( ... )) since the timeout is displayed in hex!) 13557718be8SEnji Cooper rump.envstat -c env0.conf 13657718be8SEnji Cooper if [ $(( $( get_sensor_key refresh-timeout ) )) -ne 2 ] ; then 13757718be8SEnji Cooper atf_fail "1: Could not set refresh-timout to 2s" 13857718be8SEnji Cooper fi 13957718be8SEnji Cooper 14057718be8SEnji Cooper # Step 2 - verify that we can read sensor's value 14157718be8SEnji Cooper if [ $1 -ne 0 -a $( get_sensor_key cur-value ) -ne $2 ] ; then 14257718be8SEnji Cooper atf_fail "2: Value not available" 14357718be8SEnji Cooper fi 14457718be8SEnji Cooper 14557718be8SEnji Cooper # Step 3 - verify that changes in sensor value are seen 14657718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $2 + 1 )) 14757718be8SEnji Cooper if [ $( get_sensor_key cur-value ) -ne $(( $2 + 1 )) ] ; then 14857718be8SEnji Cooper atf_fail "3: Value not updated" 14957718be8SEnji Cooper fi 15057718be8SEnji Cooper 15157718be8SEnji Cooper # Step 4 - if sensor provides hw limit, make sure we can read it 15257718be8SEnji Cooper if [ $1 -ne 0 ] ; then 15357718be8SEnji Cooper if [ $( get_sensor_key critical-min ) -ne $3 ] ; then 15457718be8SEnji Cooper atf_fail "4: Limit not set by device" 15557718be8SEnji Cooper fi 15657718be8SEnji Cooper fi 15757718be8SEnji Cooper 15857718be8SEnji Cooper # Step 5 - if sensor provides hw limit, make sure it works 15957718be8SEnji Cooper if [ $1 -ne 0 -a ${skip_events} -eq 0 ] ; then 16057718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 - $5 )) 16157718be8SEnji Cooper sleep 5 16257718be8SEnji Cooper cnt=$(get_powerd_event_count) 16357718be8SEnji Cooper if [ ${cnt} -lt ${expected_event} ] ; then 16457718be8SEnji Cooper atf_fail "5: No event triggered" 16557718be8SEnji Cooper elif [ ${cnt} -gt ${expected_event} ] ; then 16657718be8SEnji Cooper atf_fail "5: Multiple events triggered" 16757718be8SEnji Cooper fi 16857718be8SEnji Cooper evt=$( check_powerd_event ${cnt} "critical-under") 16957718be8SEnji Cooper if [ -n "${evt}" ] ; then 17057718be8SEnji Cooper atf_fail "5: ${evt}" 17157718be8SEnji Cooper fi 17257718be8SEnji Cooper expected_event=$(( 1 + ${expected_event} )) 17357718be8SEnji Cooper fi 17457718be8SEnji Cooper 17557718be8SEnji Cooper # Step 6 - verify that we return to normal state 17657718be8SEnji Cooper if [ $1 -ne 0 -a ${skip_events} -eq 0 ] ; then 17757718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 + $5 )) 17857718be8SEnji Cooper sleep 5 17957718be8SEnji Cooper cnt=$(get_powerd_event_count) 18057718be8SEnji Cooper if [ ${cnt} -lt ${expected_event} ] ; then 18157718be8SEnji Cooper atf_fail "6: No event triggered" 18257718be8SEnji Cooper elif [ ${cnt} -gt ${expected_event} ] ; then 18357718be8SEnji Cooper atf_fail "6: Multiple events triggered" 18457718be8SEnji Cooper fi 18557718be8SEnji Cooper evt=$( check_powerd_event ${cnt} "normal") 18657718be8SEnji Cooper if [ -n "${evt}" ] ; then 18757718be8SEnji Cooper atf_fail "6: ${evt}" 18857718be8SEnji Cooper fi 18957718be8SEnji Cooper expected_event=$(( 1 + ${expected_event} )) 19057718be8SEnji Cooper fi 19157718be8SEnji Cooper 19257718be8SEnji Cooper # Step 7 - verify that we can set our own limit 19357718be8SEnji Cooper 19457718be8SEnji Cooper # Steps 7 thru 12 are skipped if the sensor cannot be monitored 19557718be8SEnji Cooper if [ $( expr \( 0$6 / 2048 \) % 2 ) -ne 1 ] ; then 19657718be8SEnji Cooper rump.envstat -c env1.conf 19757718be8SEnji Cooper if [ $( get_sensor_key critical-min ) -ne $(( $3 - $4 )) ] ; then 19857718be8SEnji Cooper atf_fail "7: Limit not set by envstat -c" 19957718be8SEnji Cooper fi 20057718be8SEnji Cooper 20157718be8SEnji Cooper # Step 8 - make sure user-set limit works 20257718be8SEnji Cooper if [ ${skip_events} -eq 0 ] ; then 20357718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 - $4 - $5 )) 20457718be8SEnji Cooper sleep 5 20557718be8SEnji Cooper cnt=$(get_powerd_event_count) 20657718be8SEnji Cooper if [ ${cnt} -lt ${expected_event} ] ; then 20757718be8SEnji Cooper atf_fail "8: No event triggered" 20857718be8SEnji Cooper elif [ ${cnt} -gt ${expected_event} ] ; then 20957718be8SEnji Cooper atf_fail "8: Multiple events triggered" 21057718be8SEnji Cooper fi 21157718be8SEnji Cooper evt=$( check_powerd_event ${cnt} "critical-under") 21257718be8SEnji Cooper if [ -n "${evt}" ] ; then 21357718be8SEnji Cooper atf_fail "8: ${evt}" 21457718be8SEnji Cooper fi 21557718be8SEnji Cooper expected_event=$(( 1 + ${expected_event} )) 21657718be8SEnji Cooper fi 21757718be8SEnji Cooper 21857718be8SEnji Cooper # Step 9 - verify that we return to normal state 21957718be8SEnji Cooper if [ ${skip_events} -eq 0 ] ; then 22057718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 - $4 + $5 )) 22157718be8SEnji Cooper sleep 5 22257718be8SEnji Cooper cnt=$(get_powerd_event_count) 22357718be8SEnji Cooper if [ ${cnt} -lt ${expected_event} ] ; then 22457718be8SEnji Cooper atf_fail "9: No event triggered" 22557718be8SEnji Cooper elif [ ${cnt} -gt ${expected_event} ] ; then 22657718be8SEnji Cooper atf_fail "9: Multiple events triggered" 22757718be8SEnji Cooper fi 22857718be8SEnji Cooper evt=$( check_powerd_event ${cnt} "normal") 22957718be8SEnji Cooper if [ -n "${evt}" ] ; then 23057718be8SEnji Cooper atf_fail "9: ${evt}" 23157718be8SEnji Cooper fi 23257718be8SEnji Cooper expected_event=$(( 1 + ${expected_event} )) 23357718be8SEnji Cooper fi 23457718be8SEnji Cooper 23557718be8SEnji Cooper # Step 10 - reset to defaults 23657718be8SEnji Cooper rump.envstat -S 23757718be8SEnji Cooper if [ $1 -eq 0 ] ; then 23857718be8SEnji Cooper get_sensor_info | grep -q critical-min && 23957718be8SEnji Cooper atf_fail "10: Failed to clear a limit with envstat -S" 24057718be8SEnji Cooper else 24157718be8SEnji Cooper if [ $( get_sensor_key critical-min ) -ne $3 ] ; then 24257718be8SEnji Cooper atf_fail "10: Limit not reset to initial value" 24357718be8SEnji Cooper fi 24457718be8SEnji Cooper fi 24557718be8SEnji Cooper 24657718be8SEnji Cooper # Step 11 - see if more events occur 24757718be8SEnji Cooper if [ ${skip_events} -eq 0 ] ; then 24857718be8SEnji Cooper rump.envstat -c env0.conf 24957718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 - $4 - $5 )) 25057718be8SEnji Cooper sleep 5 25157718be8SEnji Cooper cnt=$(get_powerd_event_count) 25257718be8SEnji Cooper if [ ${cnt} -ge ${expected_event} ] ; then 25357718be8SEnji Cooper if [ $1 -ne 2 ] ; then 25457718be8SEnji Cooper atf_fail "11b Event triggered after reset" 25557718be8SEnji Cooper fi 25657718be8SEnji Cooper evt=$( check_powerd_event ${cnt} "critical-under") 25757718be8SEnji Cooper if [ -n "${evt}" ] ; then 25857718be8SEnji Cooper atf_fail "11a: ${evt}" 25957718be8SEnji Cooper fi 26057718be8SEnji Cooper fi 26157718be8SEnji Cooper fi 26257718be8SEnji Cooper 26357718be8SEnji Cooper # Step 12 - make sure we can set new limits once more 26457718be8SEnji Cooper rump.envstat -c env2.conf 26557718be8SEnji Cooper if [ $( get_sensor_key critical-min ) -ne $3 ] ; then 26657718be8SEnji Cooper atf_fail "12a: Limit not reset to same value" 26757718be8SEnji Cooper fi 26857718be8SEnji Cooper rump.envstat -c env1.conf 26957718be8SEnji Cooper if [ $( get_sensor_key critical-min ) -ne $(( $3 - $4 )) ] ; then 27057718be8SEnji Cooper atf_fail "12b: Limit not reset to new value" 27157718be8SEnji Cooper fi 27257718be8SEnji Cooper fi 27357718be8SEnji Cooper 27457718be8SEnji Cooper # Step 13 - confirm registration (or lack thereof) with rndctl 27557718be8SEnji Cooper rnd_bits=$( get_rnd_bits_count ) 27657718be8SEnji Cooper if [ $( expr \( 0$6 / 8192 \) % 2 ) -eq 1 ] ; then 27757718be8SEnji Cooper if [ -z "$rnd_bits" ] ; then 27857718be8SEnji Cooper atf_fail "13a: Not registered with rndctl" 27957718be8SEnji Cooper fi 28057718be8SEnji Cooper else 28157718be8SEnji Cooper if [ -n "$rnd_bits" ] ; then 28257718be8SEnji Cooper atf_fail "13b: Wrongly registered with rndctl" 28357718be8SEnji Cooper fi 28457718be8SEnji Cooper fi 28557718be8SEnji Cooper 28657718be8SEnji Cooper # Steps 14 and 15 are only if sensor is providing entropy 28757718be8SEnji Cooper if [ $( expr \( 0$6 / 8192 \) % 2 ) -ne 1 ] ; then 28857718be8SEnji Cooper return 28957718be8SEnji Cooper fi 29057718be8SEnji Cooper 29157718be8SEnji Cooper # Step 14 - make sure entropy collected when device is being polled 29257718be8SEnji Cooper rump.envstat -c env0.conf 29357718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$3 29457718be8SEnji Cooper sleep 5 29557718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 + $4 )) 29657718be8SEnji Cooper sleep 5 29757718be8SEnji Cooper new_rnd_bits=$( get_rnd_bits_count ) 29857718be8SEnji Cooper if [ $new_rnd_bits -le $rnd_bits ] ; then 29957718be8SEnji Cooper atf_expect_fail "PR kern/47661" 30057718be8SEnji Cooper atf_fail "14a: entropy bits did not increase after polling" 30157718be8SEnji Cooper fi 30257718be8SEnji Cooper rnd_bits=$new_rnd_bits 30357718be8SEnji Cooper sleep 5 30457718be8SEnji Cooper new_rnd_bits=$( get_rnd_bits_count ) 30557718be8SEnji Cooper if [ $new_rnd_bits -gt $rnd_bits ] ; then 30657718be8SEnji Cooper atf_expect_fail "PR kern/47661" 30757718be8SEnji Cooper atf_fail "14b: entropy bits increased after poll with no value change" 30857718be8SEnji Cooper fi 30957718be8SEnji Cooper 31057718be8SEnji Cooper # Step 15 - make sure entropy collected when device is interrogated 31157718be8SEnji Cooper # 31257718be8SEnji Cooper rump.envstat -c env0.conf 31357718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$3 31457718be8SEnji Cooper get_sensor_key cur-value 31557718be8SEnji Cooper rnd_bits=$( get_rnd_bits_count ) 31657718be8SEnji Cooper rump.sysctl -w hw.swsensor.cur_value=$(( $3 + $4 )) 31757718be8SEnji Cooper get_sensor_key cur-value 31857718be8SEnji Cooper new_rnd_bits=$( get_rnd_bits_count ) 31957718be8SEnji Cooper if [ $new_rnd_bits -le $rnd_bits ] ; then 32057718be8SEnji Cooper atf_expect_fail "PR kern/47661" 32157718be8SEnji Cooper atf_fail "15a: entropy bits did not increase after interrogation" 32257718be8SEnji Cooper fi 32357718be8SEnji Cooper rnd_bits=$new_rnd_bits 32457718be8SEnji Cooper get_sensor_key cur-value 32557718be8SEnji Cooper new_rnd_bits=$( get_rnd_bits_count ) 32657718be8SEnji Cooper if [ $new_rnd_bits -gt $rnd_bits ] ; then 32757718be8SEnji Cooper atf_expect_fail "PR kern/47661" 32857718be8SEnji Cooper atf_fail "15b: entropy bits increased after interrogation with no value change" 32957718be8SEnji Cooper fi 33057718be8SEnji Cooper} 33157718be8SEnji Cooper 33257718be8SEnji Cooperatf_test_case simple_sensor cleanup 33357718be8SEnji Coopersimple_sensor_head() { 33457718be8SEnji Cooper common_head "Test a simple sensor" 33557718be8SEnji Cooper} 33657718be8SEnji Cooper 33757718be8SEnji Coopersimple_sensor_body() { 33857718be8SEnji Cooper common_body 0 50 30 10 1 33957718be8SEnji Cooper} 34057718be8SEnji Cooper 34157718be8SEnji Coopersimple_sensor_cleanup() { 34257718be8SEnji Cooper common_cleanup 34357718be8SEnji Cooper} 34457718be8SEnji Cooper 34557718be8SEnji Cooperatf_test_case limit_sensor cleanup 34657718be8SEnji Cooperlimit_sensor_head() { 34757718be8SEnji Cooper common_head "Test a sensor with internal limit" 34857718be8SEnji Cooper} 34957718be8SEnji Cooper 35057718be8SEnji Cooperlimit_sensor_body() { 35157718be8SEnji Cooper common_body 1 45 25 8 2 35257718be8SEnji Cooper} 35357718be8SEnji Cooper 35457718be8SEnji Cooperlimit_sensor_cleanup() { 35557718be8SEnji Cooper common_cleanup 35657718be8SEnji Cooper} 35757718be8SEnji Cooper 35857718be8SEnji Cooperatf_test_case alarm_sensor cleanup 35957718be8SEnji Cooperalarm_sensor_head() { 36057718be8SEnji Cooper common_head "Test a sensor with internal checking" 36157718be8SEnji Cooper} 36257718be8SEnji Cooper 36357718be8SEnji Cooperalarm_sensor_body() { 36457718be8SEnji Cooper common_body 2 40 20 6 3 36557718be8SEnji Cooper} 36657718be8SEnji Cooper 36757718be8SEnji Cooperalarm_sensor_cleanup() { 36857718be8SEnji Cooper common_cleanup 36957718be8SEnji Cooper} 37057718be8SEnji Cooper 37157718be8SEnji Cooperatf_test_case entropy_polled_sensor cleanup 37257718be8SEnji Cooperentropy_polled_sensor_head() { 37357718be8SEnji Cooper common_head "Test a simple sensor that provides entropy" 37457718be8SEnji Cooper} 37557718be8SEnji Cooper 37657718be8SEnji Cooperentropy_polled_sensor_body() { 37757718be8SEnji Cooper common_body 0 50 30 10 1 8192 37857718be8SEnji Cooper} 37957718be8SEnji Cooper 38057718be8SEnji Cooperentropy_polled_sensor_cleanup() { 38157718be8SEnji Cooper common_cleanup 38257718be8SEnji Cooper} 38357718be8SEnji Cooper 38457718be8SEnji Cooperatf_test_case entropy_interrupt_sensor cleanup 38557718be8SEnji Cooperentropy_interrupt_sensor_head() { 38657718be8SEnji Cooper common_head "Test a sensor that provides entropy without polling" 38757718be8SEnji Cooper} 38857718be8SEnji Cooper 38957718be8SEnji Cooperentropy_interrupt_sensor_body() { 39057718be8SEnji Cooper common_body 0 50 30 10 1 10240 39157718be8SEnji Cooper} 39257718be8SEnji Cooper 39357718be8SEnji Cooperentropy_interrupt_sensor_cleanup() { 39457718be8SEnji Cooper common_cleanup 39557718be8SEnji Cooper} 39657718be8SEnji Cooper 39757718be8SEnji Cooperatf_init_test_cases() { 39857718be8SEnji Cooper RUMP_SERVER="unix://t_swsensor_socket" ; export RUMP_SERVER 39957718be8SEnji Cooper atf_add_test_case simple_sensor 40057718be8SEnji Cooper atf_add_test_case limit_sensor 40157718be8SEnji Cooper atf_add_test_case alarm_sensor 40257718be8SEnji Cooper atf_add_test_case entropy_polled_sensor 40357718be8SEnji Cooper atf_add_test_case entropy_interrupt_sensor 40457718be8SEnji Cooper} 405