There are currently two problems with the current support for
ICMP port unreachable handling with connected datagram sockets :-
1. It's not possible to distinguish an ICMP Port Unreachable from any
other SocketException. Application are forced to catch the general
exception and parse the exception text.
2. Currently only DatagramSocket.receive will throw an exception
related to ICMP port unreachable. This constrasts with normal
native behaviour where send & recv can get a "connection refused"
error as an indication of an ICMP port unreachable.