diff options
author | Vadim Bendebury <vbendeb@chromium.org> | 2016-07-07 14:27:41 -0700 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2016-07-13 23:58:52 +0200 |
commit | d9137d56fd263ec28647025bad5d118a485b821d (patch) | |
tree | 9744f97a8588f17cdce19a89ab3fe8e0015781ce | |
parent | bc927107a062ca791ffb4a4f593049a7219b5a07 (diff) | |
download | coreboot-d9137d56fd263ec28647025bad5d118a485b821d.tar.xz |
tpm2: clean up tpm_marshal_command()
The function is reusing some variables which confuses the reader as
the variable names do not match their second function.
This patch edits the code for readability without changing
functionality.
BRANCH=None
BUG=chrome-os-partner:50465
TEST=with the rest of the patches applied Kevin still boots into
chrome OS.
Change-Id: I396206a64403229ba3921a47b5a08748d8a4b0a3
Signed-off-by: Martin Roth <martinroth@chromium.org>
Original-Commit-Id: 3cf02c365d098c9d2ca57def7cf349ef2291d140
Original-Change-Id: I95a07945d9d2b00a69d514014f848802b82dd90f
Original-Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/358915
Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/15611
Tested-by: build bot (Jenkins)
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@googlemail.com>
-rw-r--r-- | src/lib/tpm2_marshaling.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/lib/tpm2_marshaling.c b/src/lib/tpm2_marshaling.c index 0a90df0e96..63f0e4cd1d 100644 --- a/src/lib/tpm2_marshaling.c +++ b/src/lib/tpm2_marshaling.c @@ -357,18 +357,22 @@ int tpm_marshal_command(TPM_CC command, void *tpm_command_body, } if (body_size > 0) { + size_t marshaled_size; + size_t header_room = sizeof(struct tpm_header); /* See how much room was taken by marshaling. */ - body_size = max_body_size - body_size; + marshaled_size = max_body_size - body_size; - body_size += sizeof(struct tpm_header); + /* Total size includes the header size. */ + marshaled_size += sizeof(struct tpm_header); - marshal_u16(&buffer, tpm_tag, &max_body_size); - marshal_u32(&buffer, body_size, &max_body_size); - marshal_u32(&buffer, command, &max_body_size); + marshal_u16(&buffer, tpm_tag, &header_room); + marshal_u32(&buffer, marshaled_size, &header_room); + marshal_u32(&buffer, command, &header_room); + return marshaled_size; } - return body_size; + return -1; } static void unmarshal_get_capability(void **buffer, int *size, |