This is the mail archive of the
cygwin
mailing list for the Cygwin project.
RE: recv and errno during a connection reset/closed by peer
- From: "Peter Stephens" <ptfoof at sbcglobal dot net>
- To: "'Peter A. Castro'" <doctor at fruitbat dot org>
- Cc: <cygwin at cygwin dot com>
- Date: Tue, 29 Mar 2005 00:15:06 -0500
- Subject: RE: recv and errno during a connection reset/closed by peer
Peter,
I have thought about your suggestion and it makes a lot of sense. If I
understand correctly this is what you are thinking about:
int I = 0;
<< another new line
do{
ret_val = recv(afd, buf, MAX_BUF, MSG_PEEK);
if(0 > ret_val)
err(" >>> ERRNO");
else if(0 == ret_val){ <<
new lines start here
if(100 < i++)
done = -1;
}
<< new lines end here
else if(ret_val > 0){
i = 0;
<< another new line
show_status(afd);
ret_val = recv(afd, buf, MAX_BUF, 0);
buf[ret_val]='\0';
printf("(%i) \t> %s", ret_val, buf);
}
usleep(250);
if(!done)
<< another new line
done = handle_it(buf);
}while(!done);
It seems like your suggestion would be very portable. A good suggestion and
the most likely route for me at this point.
Peter A. Stephens
ptfoof@sbcglobal.net
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/