Commit Graph

17 Commits

Author SHA1 Message Date
Stefan Berger
83f8e40ecb tpm2: Make compileable on OS X/Darwin
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-08-30 14:55:09 -04:00
Stefan Berger
bdeabedd09 tpm2: Make compileable on NetBSD
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-08-29 11:52:07 +00:00
Stefan Berger
1c79bff666 tpm2: Make compileable on FreeBSD
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-08-29 01:07:13 +00:00
Stefan Berger
effd551cfb tpm2: enable sha512 (breaks compatiblity)
Enable SHA512. Since the TPM 2 expects to see PCR values for
the SHA512 bank in some of its structures, this breaks
compatibility with existing state files.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:49 -04:00
Stefan Berger
8799e156ba Extend NVRAM memory size to 128kb
Increase the NVRAM memory size to 128kb. That should be it for good.

We accept smaller NVRAM sizes from stored state.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:49 -04:00
Stefan Berger
aa51031256 Increase MIN_EVICT_OBJECTS to 7 for value of TPM_PT_HR_PERSISTENT_MIN
Adapt the MIN_EVICT_OBJETCS #define value to 7 so that it meeds to
TPM Profile (PTP) Specification and TPM_PT_HR_PERSISTENT_MIN returns
the proper value.

We allow to read the state from a TPM that had a lesser value before.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:49 -04:00
Stefan Berger
ffb56b4448 tpm2: Enable a few more algorithms
Enable a few more algorithm for the TPM2. We have to adapt NVMarshal.c
to allow the enablement of these algorithms without rejecting existing
state. We do this through the 'LE' comparison operator that allows us
to read state from an implementation that didn't have it enabled while
we now have it enabled.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:48 -04:00
Stefan Berger
055f7f313c tpm2: make I/O buffer sizes adjustable
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:48 -04:00
Stefan Berger
659db6b2b8 tpm2: Make compileable on OpenBSD
Make TPM 2 code compileable on OpenBSD where we have an older version
of gcc with missing builtin swap functions and where endianes #defines
area also different.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:48 -04:00
Stefan Berger
3357aa7b0a tpm2: Choose the TPM2 NVRAM memory to be 64kb
For this to work increase the maximum allocatable memory chunk
supported by TPM_Malloc() to 128k.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:48 -04:00
Stefan Berger
a6d8f3f3c1 Enable TPM 2 on big endian systems
Enable TPM 2 on big endian systems.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:47 -04:00
Stefan Berger
7675c9371c Revert "Fix TPM_PROOF to work with older versions"
This reverts commit 986eb59f13f12c0452895c7c0fbbffb338787132.
2018-06-15 18:07:47 -04:00
Stefan Berger
4ffc27dd4c Fix TPM_PROOF to work with older versions 2018-06-15 18:07:47 -04:00
Stefan Berger
487f6fa98d tpm2: Make RADIX_BITS dependent on openssl #defines
Make the #define RADIX_BITS dependent on #defines set by the
OpenSSL library: THIRTY_TWO_BIT and SIXTY_FOUR_BIT_LONG

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:47 -04:00
Stefan Berger
b19b6ed343 Fix compilation errors in the TPM 2 code
Fix compilation errors in the TPM 2 code.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:47 -04:00
Stefan Berger
992a5bfad8 Upgrade from rev 142 to rev 146
This is the diff patch between rev 142 and 146.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:47 -04:00
Stefan Berger
ccce8b5f49 Add TPM 2 code
Add TPM 2 code.

This is rev. 142 code.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-06-15 18:07:47 -04:00