attach_test.sh revision 327662
1327662Sasomers# $FreeBSD: head/tests/sys/geom/class/eli/attach_test.sh 327662 2018-01-07 00:44:22Z asomers $ 2327662Sasomers 3327662Sasomersatf_test_case attach_d cleanup 4327662Sasomersattach_d_head() 5327662Sasomers{ 6327662Sasomers atf_set "descr" "geli attach -d will cause the provider to detach on last close" 7327662Sasomers atf_set "require.user" "root" 8327662Sasomers} 9327662Sasomersattach_d_body() 10327662Sasomers{ 11327662Sasomers . $(atf_get_srcdir)/conf.sh 12327662Sasomers 13327662Sasomers sectors=100 14327662Sasomers md=$(attach_md -t malloc -s `expr $sectors + 1`) 15327662Sasomers 16327662Sasomers atf_check dd if=/dev/random of=keyfile bs=512 count=16 status=none 17327662Sasomers 18327662Sasomers atf_check geli init -B none -P -K keyfile ${md} 19327662Sasomers atf_check geli attach -d -p -k keyfile ${md} 20327662Sasomers 21327662Sasomers # Be sure it doesn't detach on read. 22327662Sasomers atf_check dd if=/dev/${md}.eli of=/dev/null status=none 23327662Sasomers sleep 1 24327662Sasomers if [ ! -c /dev/${md}.eli ]; then 25327662Sasomers atf_fail "Detached on last close of a reader" 26327662Sasomers fi 27327662Sasomers 28327662Sasomers # It should detach on last close of a writer 29327662Sasomers true > /dev/${md}.eli 30327662Sasomers sleep 1 31327662Sasomers if [ -c /dev/${md}.eli ]; then 32327662Sasomers atf_fail "Did not detach on last close of a writer" 33327662Sasomers fi 34327662Sasomers 35327662Sasomers} 36327662Sasomersattach_d_cleanup() 37327662Sasomers{ 38327662Sasomers . $(atf_get_srcdir)/conf.sh 39327662Sasomers geli_test_cleanup 40327662Sasomers} 41327662Sasomers 42327662Sasomersatf_init_test_cases() 43327662Sasomers{ 44327662Sasomers atf_add_test_case attach_d 45327662Sasomers} 46