On Tue, 29 Mar 2005, Peter Stephens wrote:
Peter,
Hi 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:
Yes, this is pretty similar to how I've solve this before. It's a good compromise for an (arguably) imperfect interface.
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.
I hope it does the job for you.
Peter A. Stephens [EMAIL PROTECTED]
-- Peter A. Castro <[EMAIL PROTECTED]> or <[EMAIL PROTECTED]> "Cats are just autistic Dogs" -- Dr. Tony Attwood
-- 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/