[tor-commits] [tor/master] Fix a 32-bit off_t/size_t warning in crypto_rsa.c

nickm at torproject.org nickm at torproject.org
Thu Sep 13 21:49:49 UTC 2018


commit 92357a07bd7e695def1b2416d3a85b5f10e4e196
Author: Nick Mathewson <nickm at torproject.org>
Date:   Thu Sep 13 17:49:36 2018 -0400

    Fix a 32-bit off_t/size_t warning in crypto_rsa.c
    
    Bug not in any released Tor.
---
 src/lib/crypt_ops/crypto_rsa.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/crypt_ops/crypto_rsa.c b/src/lib/crypt_ops/crypto_rsa.c
index 6a9e2948f..567b4531a 100644
--- a/src/lib/crypt_ops/crypto_rsa.c
+++ b/src/lib/crypt_ops/crypto_rsa.c
@@ -551,9 +551,12 @@ crypto_pk_read_private_key_from_filename(crypto_pk_t *env,
   char *buf = read_file_to_str(keyfile, 0, &st);
   if (!buf)
     return -1;
+  if (st.st_size > SSIZE_MAX)
+    return -1;
 
-  int rv = crypto_pk_read_private_key_from_string(env, buf, st.st_size);
-  memwipe(buf, 0, st.st_size);
+  int rv = crypto_pk_read_private_key_from_string(env, buf,
+                                                  (ssize_t)st.st_size);
+  memwipe(buf, 0, (size_t)st.st_size);
   tor_free(buf);
   return rv;
 }



More information about the tor-commits mailing list