Age | Commit message (Collapse) | Author |
|
The current implementation of MemoryEqual
will not necessarily compile to a constant-time
instruction sequence. This change ensures that
every byte of the input must be inspected.
BRANCH=none
BUG=none
TEST=TCG tests pass
Change-Id: Ide83bce6cafea2d48c03e5116e97a6dd23419134
Signed-off-by: nagendra modadugu <ngm@google.com>
Reviewed-on: https://chromium-review.googlesource.com/503478
Commit-Ready: Nagendra Modadugu <ngm@google.com>
Tested-by: Nagendra Modadugu <ngm@google.com>
Reviewed-by: Andrey Pronin <apronin@chromium.org>
|
|
When running on embedded targets software cryptography is often not
available due to inadequate toolchain capabilities and limited
hardware resources.
Invoking make with EMBEDDED_MODE=1 ROOTDIR=1 will stub out
cryptographic functions and will provide another -I preprocessor
option to allow to pull in alternative .h files not available from the
toolchain.
NV Ram buffer size provisionally is being reduced to 8K. In final
embedded implementation NVRam might be held in flash, in which case
the required memory buffer could limited to one flash block size.
Some big data objects not used in the code are also being compiled out
when building for embedded mode of operation.
BUG=chrome-os-partner:43025
TEST=with the rest of the changes in place the code compiles with the
EC, and TPM startup sequence gets invoked.
Change-Id: I71487570d2032c66b30c0bdf0b152dec6d0ece8a
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/292945
Reviewed-by: Utkarsh Sanghi <usanghi@chromium.org>
Commit-Queue: Vadim Bendebury <vbendeb@gmail.com>
|
|
Generated C source and header files which add functions to unmarshal command
requests, execute commands, and marshal command responses. This
(tenatively) adds all final missing parts of libtpm2. These files are
generated from command_generator.py in CL:290556.
TEST=$ sudo emerge tpm2
builds libtpm2.a
Locally I was able to call ExecCommand to execute TPM2_Startup with
success after software TPM initialization.
BUG=chromium:501639
CQ-DEPEND=CL:290556
Change-Id: Ieb3f208795a21a172dea25b35027c5aceba7ee08
Reviewed-on: https://chromium-review.googlesource.com/289813
Tested-by: Jocelyn Bohr <bohr@chromium.org>
Reviewed-by: Darren Krahn <dkrahn@chromium.org>
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Commit-Queue: Jocelyn Bohr <bohr@chromium.org>
|
|
MemoryCopy() is defined as a macro in MemoryLib_fp.h.
BUG=none
TEST=compilation succeeds:
cc -Wall -Werror -c -o /dev/null MemoryLib.c
Change-Id: Ieb771a15e615fe639f2e9f28868197a13ed255d3
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/274241
Reviewed-by: Utkarsh Sanghi <usanghi@chromium.org>
|
|
LICENSE file text copied from TCG library specification. README
describes the procedure used to extract source code from parts 3 and 4
of the specification.
The python scripts and part{34}.txt files will be removed in the
following commits.
Change-Id: Ie281e6e988481831f33483053455e8aff8f3f75f
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
|