From 06f12f919f4b7acde88392fd9dce461701ef994e Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Mon, 6 Mar 2017 16:33:57 -0600 Subject: 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 Reviewed-on: https://review.coreboot.org/18678 Reviewed-by: Duncan Laurie Reviewed-by: Furquan Shaikh Tested-by: build bot (Jenkins) --- src/lib/tpm2_marshaling.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/lib/tpm2_marshaling.c b/src/lib/tpm2_marshaling.c index 38c8d2f05c..dd046d27a1 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; } -- cgit v1.2.3