commit | c27ac555778b75283206bfdc267a0845c74cb026 | [log] [tgz] |
---|---|---|
author | Philip Tricca <philip.b.tricca@intel.com> | Mon Apr 18 11:00:52 2016 -0700 |
committer | Philip Tricca <philip.b.tricca@intel.com> | Mon Apr 18 20:20:47 2016 -0700 |
tree | 3f70e8529006ff071a33eaa0d34f0da09fe47e8f | |
parent | b6617089e52d561f174678689d29ace94ba5308e [diff] |
tss2_tcti.h: Add macros to simplify access to data in the common TCTI structure. Accessing data in the common TCTI structure requires some acrobatics. This takes the shape of a cast, some dereferencing and a pile of parentheses. This makes simple things like a function invocation very difficult to read. What's not as obvious is the safety of such operations because it's easy to forget to check for error conditions. The spec offers an example macro for invoking functions from the common TCTI structure. This code uses that macro, adding support for the other functions. Signed-off-by: Philip Tricca <philip.b.tricca@intel.com>
This stack consists of the following layers from top to bottom:
Since the FAPI and ESAPI haven't been implemented yet, this repository only contains the SAPI and layers below it, plus a test application for exercising the SAPI.
The test application, tpmclient, tests many of the commands against the TPM 2.0 simulator. The tpmclient application can be altered and used as a sandbox to test and develop any TPM 2.0 command sequences, and provides an excellent development and learning vehicle.
TPM 2.0 specifications can be found at Trusted Computing Group.