From befd9c257d6538c126077f942bd27e7c9a89ff7d Mon Sep 17 00:00:00 2001 From: Frank Denis Date: Mon, 9 Jun 2014 19:03:47 -0700 Subject: [PATCH] Add annotations for Coverity FPs --- .../ref/sc25519_edwards25519sha512batch.c | 12 ++++++++---- .../randombytes/salsa20/randombytes_salsa20_random.c | 1 + .../randombytes/sysrandom/randombytes_sysrandom.c | 1 + 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/libsodium/crypto_sign/edwards25519sha512batch/ref/sc25519_edwards25519sha512batch.c b/src/libsodium/crypto_sign/edwards25519sha512batch/ref/sc25519_edwards25519sha512batch.c index ad232d78..085e3f92 100644 --- a/src/libsodium/crypto_sign/edwards25519sha512batch/ref/sc25519_edwards25519sha512batch.c +++ b/src/libsodium/crypto_sign/edwards25519sha512batch/ref/sc25519_edwards25519sha512batch.c @@ -46,10 +46,14 @@ static void barrett_reduce(sc25519 *r, const crypto_uint32 x[64]) q2[33] += carry; for(i=0;i<33;i++)r1[i] = x[i]; - for(i=0;i<32;i++) - for(j=0;j<33;j++) - if(i+j < 33) r2[i+j] += m[i]*q3[j]; - + for(i=0;i<32;i++) { + for(j=0;j<33;j++) { + if(i+j < 33) { + /* coverity[overrun-local] */ + r2[i+j] += m[i]*q3[j]; + } + } + } for(i=0;i<32;i++) { carry = r2[i] >> 8; diff --git a/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c b/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c index 6538c0d4..61f9e855 100644 --- a/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c +++ b/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c @@ -279,6 +279,7 @@ randombytes_salsa20_random_buf(void * const buf, const size_t size) randombytes_salsa20_random_stir_if_needed(); COMPILER_ASSERT(sizeof stream.nonce == crypto_stream_salsa20_NONCEBYTES); #ifdef ULONG_LONG_MAX + /* coverity[result_independent_of_operands] */ assert(size <= ULONG_LONG_MAX); #endif ret = crypto_stream_salsa20((unsigned char *) buf, (unsigned long long) size, diff --git a/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c b/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c index 3a5ec65e..f38c681f 100644 --- a/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c +++ b/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c @@ -202,6 +202,7 @@ randombytes_sysrandom_buf(void * const buf, const size_t size) { randombytes_sysrandom_stir_if_needed(); #ifdef ULONG_LONG_MAX + /* coverity[result_independent_of_operands] */ assert(size <= ULONG_LONG_MAX); #endif #ifndef _WIN32