diff options
Diffstat (limited to 'tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py')
-rw-r--r-- | tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py b/tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py index 77a216cf16..c70691d8e7 100644 --- a/tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py +++ b/tools/xm-test/tests/vtpm/06_vtpm-susp_res_pcrs.py @@ -13,6 +13,7 @@ from vtpm_utils import * import commands import os import os.path +import atexit config = {"vtpm":"instance=1,backend=0"} domain = XmTestDomain(extraConfig=config) @@ -24,45 +25,40 @@ try: except DomainError, e: if verbose: print e.extra - vtpm_cleanup(domName) FAIL("Unable to create domain (%s)" % domName) +atexit.register(vtpm_cleanup, vtpm_get_uuid(domid(domName))) + try: console.sendInput("input") except ConsoleError, e: saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL(str(e)) try: run = console.runCmd("mknod /dev/tpm0 c 10 224") except ConsoleError, e: saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("Error while creating /dev/tpm0") try: run = console.runCmd("echo -ne \"\\x00\\xc1\\x00\\x00\\x00\\x22\\x00\\x00\\x00\\x14\\x00\\x00\\x00\\x00\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\x09\\x0a\\x0b\\x0c\\x0d\\x0e\\0xf\\x10\\x11\\x12\\x13\\x14\" > seq; cat seq > /dev/tpm0") except ConsoleError, e: saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("Error while extending PCR 0") try: run = console.runCmd("cat /sys/devices/xen/vtpm-0/pcrs") except ConsoleError, e: saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("No result from dumping the PCRs") if re.search("No such file",run["output"]): - vtpm_cleanup(domName) FAIL("TPM frontend support not compiled into (domU?) kernel") if not re.search("PCR-00:",run["output"]): saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("Virtual TPM is not working correctly on /dev/vtpm on backend side: \n%s" % run["output"]) if not re.search("PCR-00: 1E A7 BD",run["output"]): @@ -81,12 +77,10 @@ while loop < 3: except TimeoutError, e: saveLog(consoleHistory) - vtpm_cleanup(domName) FAIL(str(e)) if status != 0: saveLog(consoleHistory) - vtpm_cleanup(domName) FAIL("xm save did not succeed") try: @@ -96,37 +90,31 @@ while loop < 3: except TimeoutError, e: os.remove("%s.save" % domName) saveLog(consoleHistory) - vtpm_cleanup(domName) FAIL(str(e)) os.remove("%s.save" % domName) if status != 0: saveLog(consoleHistory) - vtpm_cleanup(domName) FAIL("xm restore did not succeed") try: console = domain.getConsole() except ConsoleError, e: - vtpm_cleanup(domName) FAIL(str(e)) try: run = console.runCmd("cat /sys/devices/xen/vtpm-0/pcrs") except ConsoleError, e: saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL(str(e)) if not re.search("PCR-00:",run["output"]): saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("Virtual TPM is not working correctly on /dev/vtpm on backend side") if not re.search("PCR-00: 1E A7 BD",run["output"]): saveLog(console.getHistory()) - vtpm_cleanup(domName) FAIL("Virtual TPM lost PCR 0 value: \n%s" % run["output"]) loop += 1 @@ -135,5 +123,3 @@ domain.closeConsole() domain.stop() -vtpm_cleanup(domName) - |