test-luksmeta 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/bash -x
  2. trap 'exit' ERR
  3. export tmp=`mktemp /tmp/luksmeta.XXXXXXXXXX`
  4. function onexit() {
  5. rm -f $tmp
  6. }
  7. trap 'onexit' EXIT
  8. truncate -s 4M $tmp
  9. echo -n foo | cryptsetup luksFormat $tmp -
  10. ! ./luksmeta test -d $tmp
  11. ./luksmeta init -f -d $tmp
  12. ./luksmeta test -d $tmp
  13. ./luksmeta init -f -d $tmp
  14. for slot in `seq 0 7`; do
  15. test "`./luksmeta show -s $slot -d $tmp`" == ""
  16. echo hi | ./luksmeta save -s $slot -u 23149359-1b61-4803-b818-774ab730fbec -d $tmp
  17. test "`./luksmeta show -s $slot -d $tmp`" == "23149359-1b61-4803-b818-774ab730fbec"
  18. test "`./luksmeta load -s $slot -d $tmp`" == "hi"
  19. test "`./luksmeta load -s $slot -u 23149359-1b61-4803-b818-774ab730fbec -d $tmp`" == "hi"
  20. ! ./luksmeta load -s $slot -u 23149359-1b61-4803-b818-774ab730fbed -d $tmp
  21. ! ./luksmeta wipe -f -s $slot -u 23149359-1b61-4803-b818-774ab730fbed -d $tmp
  22. ./luksmeta wipe -f -s $slot -u 23149359-1b61-4803-b818-774ab730fbec -d $tmp
  23. ! ./luksmeta load -s $slot -d $tmp
  24. echo hi | ./luksmeta save -s $slot -u 23149359-1b61-4803-b818-774ab730fbec -d $tmp
  25. ./luksmeta wipe -f -s $slot -d $tmp
  26. ! ./luksmeta load -s $slot -d $tmp
  27. done
  28. # Test nuking
  29. ./luksmeta test -d $tmp
  30. ./luksmeta init -f -d $tmp
  31. ./luksmeta nuke -f -d $tmp
  32. ! ./luksmeta test -d $tmp
  33. # Test implicit nuking
  34. ./luksmeta init -f -d $tmp
  35. echo hi | ./luksmeta save -s 0 -u 23149359-1b61-4803-b818-774ab730fbec -d $tmp
  36. test "`./luksmeta load -s 0 -d $tmp`" == "hi"
  37. ./luksmeta init -n -f -d $tmp
  38. ! ./luksmeta load -s 0 -d $tmp