[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] Use less-than instead of not-equal-to for comparison in read loops.



commit 02ef06516e64c1559b24123d7c7d164b76110c9a
Author: Alexander Færøy <ahf@xxxxxxxxxxxxxx>
Date:   Wed Mar 8 23:02:34 2017 +0100

    Use less-than instead of not-equal-to for comparison in read loops.
    
    This patch changes a number of read loops in the util module to use
    less-than comparison instead of not-equal-to comparison. We do this in
    the case that we have a bug elsewhere that might cause `numread` to
    become larger than `count` and thus become an infinite loop.
---
 src/common/util.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/common/util.c b/src/common/util.c
index 1fd3b16..a8b44cb 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -2118,7 +2118,7 @@ read_all(tor_socket_t fd, char *buf, size_t count, int isSocket)
     return -1;
   }
 
-  while (numread != count) {
+  while (numread < count) {
     if (isSocket)
       result = tor_socket_recv(fd, buf+numread, count-numread, 0);
     else
@@ -4943,7 +4943,7 @@ tor_read_all_handle(HANDLE h, char *buf, size_t count,
   if (count > SIZE_T_CEILING || count > SSIZE_MAX)
     return -1;
 
-  while (numread != count) {
+  while (numread < count) {
     /* Check if there is anything to read */
     retval = PeekNamedPipe(h, NULL, 0, NULL, &byte_count, NULL);
     if (!retval) {
@@ -5009,7 +5009,7 @@ tor_read_all_handle(int fd, char *buf, size_t count,
   if (count > SIZE_T_CEILING || count > SSIZE_MAX)
     return -1;
 
-  while (numread != count) {
+  while (numread < count) {
     result = read(fd, buf+numread, count-numread);
 
     if (result == 0) {



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits