Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


When will my application receive SIGPIPE?



When will my application receive SIGPIPE?..

Answer / chaitanya

Very simple: with TCP you get SIGPIPE if your end of the connection has received an RST from the other end. What this also means is that if you were using select instead of write, the select would have indicated the socket as being readable, since the RST is there for you to read (read will return an error with errno set to ECONNRESET).

Basically an RST is TCP's response to some packet that it doesn't expect and has no other way of dealing with. A common case is when the peer closes the connection (sending you a FIN) but you ignore it because you're writing and not reading. (You should be using select.) So you write to a connection that has been closed by the other end and the oether end's TCP responds with an RST.

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More Unix Socket Programming Interview Questions

Can multiple sockets use the same port?

0 Answers  


What is socket programming in java?

0 Answers  


How to find other end of unix socket connection?

0 Answers  


Are sockets files?

0 Answers  


What is the difference between close() and shutdown()?

1 Answers  


Whats the difference between select() and poll()?

0 Answers  


What's the difference between impact sockets and regular sockets?

0 Answers  


If bind() fails, what should I do with the socket descriptor?

1 Answers  


How can I find the full hostname (FQDN) of the system I am running on?

1 Answers  


How can I set the timeout for the connect() system call?

0 Answers  


How many socket connections can a server handle?

0 Answers  


What is the difference between SO_REUSEADDR and SO_REUSEPORT?

0 Answers  


Categories