From 0f114d2d7eb1950faab02fe479864da5e5d50414 Mon Sep 17 00:00:00 2001 From: nagendra modadugu Date: Thu, 26 Oct 2017 10:15:37 -0700 Subject: [oss-fuzz] fix clang compiler error Fix size_t compare with < 0 in CpriMisc.c Issue reported here: https://github.com/google/oss-fuzz/issues/859 Change-Id: I908c674f11d16bf9a795fe0c9e5c0fd0b467b1dc Reviewed-on: https://chromium-review.googlesource.com/739946 Commit-Ready: Nagendra Modadugu Tested-by: Nagendra Modadugu Reviewed-by: Andrey Pronin --- CpriMisc.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CpriMisc.c b/CpriMisc.c index e809dce..edc5c4b 100644 --- a/CpriMisc.c +++ b/CpriMisc.c @@ -29,10 +29,12 @@ BnTo2B( ) { BYTE *pb = outVal->buffer; + UINT16 unpaddedSize = (((UINT16) BN_num_bits(inVal) + 7) / 8); outVal->size = size; - size = size - (((UINT16) BN_num_bits(inVal) + 7) / 8); - if(size < 0) + if(size < unpaddedSize) return FALSE; + + size -= unpaddedSize; for(;size > 0; size--) *pb++ = 0; BN_bn2bin(inVal, pb); -- cgit v1.2.3