summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2017-03-06 16:33:57 -0600
committerAaron Durbin <adurbin@chromium.org>2017-03-09 19:14:25 +0100
commit06f12f919f4b7acde88392fd9dce461701ef994e (patch)
treea76ce626470a7a361be4b295fa05a432c9279756
parent3487e118d1ac0d6c0e7a0a251f3d5cfa401a38de (diff)
downloadcoreboot-06f12f919f4b7acde88392fd9dce461701ef994e.tar.gz
coreboot-06f12f919f4b7acde88392fd9dce461701ef994e.tar.bz2
coreboot-06f12f919f4b7acde88392fd9dce461701ef994e.zip
lib/tpm2_marshaling: fix in correct buffer space semantics
marshal_blob() was setting an unsigned size (size_t) to a value of -1 when an error is determined. This is wrong for the current implementation of the code because the code assumes the buffer space gets set to 0. Setting an unsigned value to -1 effectively tells the library the buffer has unlimited amount of space. BUG=b:35775104 Change-Id: I677a1fd7528bef3ea7420d0a8d0a290e9b15cea3 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/18678 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com> Tested-by: build bot (Jenkins)
-rw-r--r--src/lib/tpm2_marshaling.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/tpm2_marshaling.c b/src/lib/tpm2_marshaling.c
index 38c8d2f05cde..dd046d27a12a 100644
--- a/src/lib/tpm2_marshaling.c
+++ b/src/lib/tpm2_marshaling.c
@@ -100,7 +100,7 @@ static void marshal_blob(void **buffer, void *blob,
size_t blob_size, size_t *buffer_space)
{
if (*buffer_space < blob_size) {
- *buffer_space = -1;
+ *buffer_space = 0;
return;
}