How do you propose this is done? Making the actual send() wait for a possible ICMP package is not practical, as you do not know whether there will come one, and you will not get a success message if the package was accepted.
It is not practical. I am not going to use it. My pursuit is not to know whether the code snippet I wrote is practical, it is - why isn't the application behaving as I think it should? My point is: I should be getting 'Destination Unreachable' errors like I got for 'Connection Refused'.