From 0193a49223c6314e2834c89fff9920ae7edc4f8a Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Wed, 22 Aug 2007 13:51:44 +0000 Subject: r24629: Make read_sock return the total number of bytes read instead of the number of bytes read in the last of possibly several read calls. This was noted by Metze. Michael --- source/nsswitch/wb_common.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/nsswitch/wb_common.c b/source/nsswitch/wb_common.c index 52913668e58..5072b81515f 100644 --- a/source/nsswitch/wb_common.c +++ b/source/nsswitch/wb_common.c @@ -420,7 +420,7 @@ int write_sock(void *buffer, int count, int recursing, int need_priv) static int read_sock(void *buffer, int count) { - int result = 0, nread = 0; + int nread = 0; int total_time = 0, selret; if (winbindd_fd == -1) { @@ -461,7 +461,7 @@ static int read_sock(void *buffer, int count) /* Do the Read */ - result = read(winbindd_fd, (char *)buffer + nread, + int result = read(winbindd_fd, (char *)buffer + nread, count - nread); if ((result == -1) || (result == 0)) { @@ -479,7 +479,7 @@ static int read_sock(void *buffer, int count) } } - return result; + return nread; } /* Read reply */ -- cgit