[tor-commits] [tor/master] try a little harder with getrandom types to avoid warnings

nickm at torproject.org nickm at torproject.org
Wed Dec 9 13:31:34 UTC 2015


commit 3a69fcb01f131e8a241aa0d806d5ed7aef6b9314
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Dec 9 08:31:29 2015 -0500

    try a little harder with getrandom types to avoid warnings
---
 src/common/crypto.c |   15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/common/crypto.c b/src/common/crypto.c
index 34e94b5..4554933 100644
--- a/src/common/crypto.c
+++ b/src/common/crypto.c
@@ -2397,13 +2397,14 @@ crypto_strongest_rand_syscall(uint8_t *out, size_t out_len)
    * /dev/srandom followed by opening and reading from /dev/urandom.
    */
   if (PREDICT_LIKELY(getrandom_works)) {
-    int ret;
+    long ret;
+    /* A flag of '0' here means to read from '/dev/urandom', and to
+     * block if insufficient entropy is available to service the
+     * request.
+     */
+    const unsigned int flags = 0;
     do {
-      /* A flag of '0' here means to read from '/dev/urandom', and to
-       * block if insufficient entropy is available to service the
-       * request.
-       */
-      ret = syscall(SYS_getrandom, out, out_len, 0);
+      ret = syscall(SYS_getrandom, out, out_len, flags);
     } while (ret == -1 && ((errno == EINTR) ||(errno == EAGAIN)));
 
     if (PREDICT_UNLIKELY(ret == -1)) {
@@ -2416,7 +2417,7 @@ crypto_strongest_rand_syscall(uint8_t *out, size_t out_len)
       return -1;
     }
 
-    tor_assert(ret == (int)out_len);
+    tor_assert(ret == (long)out_len);
     return 0;
   }
 



More information about the tor-commits mailing list