[srvx-commits] CVS: services/src ioset.c,1.9,1.10
Brought to you by:
entrope
|
From: Entrope <en...@us...> - 2002-10-11 03:11:38
|
Update of /cvsroot/srvx/services/src
In directory usw-pr-cvs1:/tmp/cvs-serv28644/src
Modified Files:
ioset.c
Log Message:
mark an io_fd as eof'ed when we get an unexpected read error
Index: ioset.c
===================================================================
RCS file: /cvsroot/srvx/services/src/ioset.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** ioset.c 5 Sep 2002 14:55:48 -0000 1.9
--- ioset.c 11 Oct 2002 03:11:35 -0000 1.10
***************
*** 240,244 ****
nbr = read(fd->fd, fd->recv.buf + fd->recv.put, put_avail);
if (nbr < 0) {
! log(MAIN_LOG, LOG_ERROR, "Unexpected read() error %d on fd %d: %s\n", errno, fd->fd, strerror(errno));
} else if (nbr == 0) {
fd->eof = 1;
--- 240,250 ----
nbr = read(fd->fd, fd->recv.buf + fd->recv.put, put_avail);
if (nbr < 0) {
! switch (errno) {
! case EAGAIN: break;
! default:
! log(MAIN_LOG, LOG_ERROR, "Unexpected read() error %d on fd %d: %s\n", errno, fd->fd, strerror(errno));
! fd->eof = 1; /* just flag it as EOF; the next ioset_line_read() will find it */
! fd->wants_reads = 0;
! }
} else if (nbr == 0) {
fd->eof = 1;
|