recv and errno during a connection reset/closed by peer
Peter Stephens
ptfoof@sbcglobal.net
Tue Mar 29 09:15:00 GMT 2005
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/
More information about the Cygwin
mailing list