Commit Graph

1333 Commits

Author SHA1 Message Date
Stefan Berger
8016592b34 tpm2: Increase MAX_CONTEXT_SIZE to 2680 for RSA 3072 bit keys
Increase the MAX_CONTEXT_SIZE to 2680 to support the increased context
size when using 3072 bit keys.

NVMarhsal.c: Accept MAX_CONTEXT_SIZE values of less-or-equal the 2680,
which also accepts context sizes of the old value 2474.

NOTE: BETTER TO NOT BACKPORT!

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-05-04 08:01:26 -04:00
Stefan Berger
391d878197 tests: Display sizes of components of OBJECT when OBJECT size changes
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-05-04 08:01:26 -04:00
Stefan Berger
92d1544b0d tpm2: Add a pAssert after a statement causing unfounded Coverity complaint
This is the Coverity complaint about the line

infoDataSize = TimeGetMarshaled(&infoData);

CID 1402057: Out-of-bounds access (OVERRUN)
1. overrun-buffer-val: Overrunning array infoData of 32 bytes by passing
  it to a function which accesses it at byte offset 255.

TimeGetMarshaled() correctly serializes into &infoData, which is casted to
a buffer and then the data are written into the buffer. Also only 25 bytes,
as indicated by infoDataSize, are used, which is less than sizeof(infoData),
which is 32.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-24 17:19:58 -04:00
Stefan Berger
db80bd9ea1 build-sys: Remove 'experimental' tag from --with-tpm2
TPM 2 support has been in libtpms for quite some time now
and the experimental tag can be removed.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-21 11:23:23 -04:00
Stefan Berger
91b947f41e tpm2: Comment dead code in Unmarshal.c/Marshal.c
This patch comments unreference/dead code in Unmarshal.c/Marshal.c.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-17 09:52:57 -04:00
Stefan Berger
157630bcc4 tpm2: Comment unused hash and RSA related functions
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
b19d7f6aca CHANGES: Add entry about changes for 0.8.0 so far
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
a171839cab gitignore: Ignore .dirstamp files
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
82342abebe tpm2: Upgrade advertised revision to rev 159
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
e6bbb8755e tpm2: Sync TpmToOsslMath.c with svn repo
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
0fc4f49119 tpm2: Initialize g_daUsed to False on startup (bugfix?)
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
5c91611028 tpm2: Deactivate unused BnIsProbablyPrime() and BnGcd()
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
dd84e23a2d tpm2: Fix conditional compile of TPM2_Vendor_TCG_Test
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
f4c1824ec0 tpm2: ACT: Update CommandDispatchData.h to latest version
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
569a9e03ea tpm2: ACT: Add rest of ACT code
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
46c267da85 tpm2: ACT: Extend case statements with FOR_EACH_ACT
Since none of the ACTs are enabled, the FOR_EACH_ACT statements
will all be no-ops.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
f4b7a835ee tpm2: ACT: Add (disabled) ACT fields to ORDERLY_DATA and STATE_CLEAR_DATA
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
1f4c70cd3c tpm2: ACT: Extend TPM2_Getcapability with TPM_CAP_ACT
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
213271eed8 tpm2: ACT: #define __ACT_DISABLED if no RH_ACT_* is YES
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
fd41faa54a tpm2: ACT: Add data structures, defines, and un/marshalling code
Disable ACT via the TpmProfile.h's RH_ACT_{0,1,A) settings of NO.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
69537eca7e tpm2: Add comment to MAX_CONTEXT_SIZE in TpmProfile.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
fce3cafa1a tpm2: Have default case return TPM_RC_VALUE rather than FAIL()
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
9cf21831ba tpm2: Move CONTEXT_COUNTER defintion to GpMacros.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
2a28b96aac tpm2: Use CONTEXT_SLOT definition from TpmProfile.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
1f686aa8e9 tpm2: Remove unused define of CONTEXT_SLOT in Global.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
fb94dadeca tpm2: Rename TPM_MAX_DERIVATION_BITS to MAX_DERIVATION_BITS
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
57bfde7bf7 tpm2: Include Platform_fp.h in AttestationCommands.c
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
6c2517355c tpm2: Remove unused RADIX_BITS and BSIZE defines from TpmProfile.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
99e025c3d9 tpm2: Return int rather than BOOL on _plat__* functions
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
69d0950e34 tpm2: Move #defines for hash and sym alignment out of TpmProfile.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
2296a4dd2a tpm2: Comments and whitespace changes only
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
25a9338eb4 tpm2: Assign TPM_ALG_ERROR to hashAlg rather than direct return
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
c9bc79eaa5 tpm2: Remove PRIVATE_VENDOR_SPECIFIC_BYTES from GpMacros.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
c4d84b994c tpm2: Remove unnecessary check of #defines
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
5f0e2aef9d tpm2: Add missing SM4; do not enable it
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
5233aa9e54 tpm2: Add support for SM3 hash; test cases missing
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
15687b63bc tpm2: Add missing Camellia code including test cases
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
e226ea4c2d tpm2: Reorganize TpmToOsslSym.h
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
893dafd7c0 tpm2: Re-introduce RSA_PRIVATE_SIZE and use it in TPM2B_PRIVATE_KEY_RSA
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
bbbaf89572 tpm2: Move NULL pointer check and remove size limit check in CryptRand.c
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
53d8e0de55 tpm2: Replace TPMI_RH_HIERARCHY_AUTH with .._POLICY in SetPrimaryPolicy_In
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
167c566c4f tpm2: Add TPMI_RH_HIERARCHY_AUTH and unmarshaling code
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
292a7660b4 tpm2: Add (unused) TABLE_DRIVEN_MARSHAL code to CommandDispatcher
signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
9c8bbf7777 tpm2: Indicate build switch choices and add for TABLE_DRIVEN_MARSHAL
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
8c3dd46150 tpm2: Change order of includes
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
6eab7590e8 tpm2: Remove unncessary includes from NVDynamic.c
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
c9b676df07 tpm2: Add casts to some variables
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
58aa852d8a tpm2: Refactor functions in TPMCmdp (logic change)
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
0aaae35073 tpm2: Improve handling of broken NVChip file
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00
Stefan Berger
695922df87 tpm2: Sync BnCurveInitialize and BnCurveFree
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2020-04-14 16:03:45 -04:00