diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/common/crypto.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/common/crypto.c b/src/common/crypto.c index 62b0bcec6..2aa3fc97a 100644 --- a/src/common/crypto.c +++ b/src/common/crypto.c @@ -1912,9 +1912,12 @@ crypto_get_stored_dynamic_dh_modulus(const char *fname) } /* 'fname' contains the DH parameters stored in base64-ed DER - format. We are only interested in the DH modulus. */ + * format. We are only interested in the DH modulus. + * NOTE: We allocate more storage here than we need. Since we're already + * doing that, we can also add 1 byte extra to appease Coverity's + * scanner. */ - cp = base64_decoded_dh = tor_malloc_zero(strlen(contents)); + cp = base64_decoded_dh = tor_malloc_zero(strlen(contents) + 1); length = base64_decode((char *)base64_decoded_dh, strlen(contents), contents, strlen(contents)); if (length < 0) { |