[clientloop.c]
     If read() fails with EINTR deal with it the same way we treat EAGAIN
This commit is contained in:
Ben Lindstrom 2001-03-06 03:34:40 +00:00
parent 884a4aca88
commit ebc882757b
2 changed files with 6 additions and 3 deletions

View File

@ -37,6 +37,9 @@
[ssh-keyscan.c]
Don't assume we wil get the version string all in one read().
deraadt@ OK'd
- millert@cvs.openbsd.org 2001/03/06 01:08:27
[clientloop.c]
If read() fails with EINTR deal with it the same way we treat EAGAIN
20010305
- (bal) CVS ID touch up on sshpty.[ch] and sshlogin.[ch]
@ -4408,4 +4411,4 @@
- Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1
$Id: ChangeLog,v 1.917 2001/03/06 03:33:04 mouring Exp $
$Id: ChangeLog,v 1.918 2001/03/06 03:34:40 mouring Exp $

View File

@ -59,7 +59,7 @@
*/
#include "includes.h"
RCSID("$OpenBSD: clientloop.c,v 1.52 2001/02/28 08:45:39 markus Exp $");
RCSID("$OpenBSD: clientloop.c,v 1.53 2001/03/06 01:08:27 millert Exp $");
#include "ssh.h"
#include "ssh1.h"
@ -491,7 +491,7 @@ client_process_net_input(fd_set * readset)
* There is a kernel bug on Solaris that causes select to
* sometimes wake up even though there is no data available.
*/
if (len < 0 && errno == EAGAIN)
if (len < 0 && (errno == EAGAIN || errno == EINTR))
len = 0;
if (len < 0) {