瀏覽代碼

Work around a false positive in Coverity.

Fixes cid 501 and 502.
Sebastian Hahn 14 年之前
父節點
當前提交
95af91565b
共有 1 個文件被更改,包括 5 次插入2 次删除
  1. 5 2
      src/common/crypto.c

+ 5 - 2
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) {