Problems with icmp unreachable packets

Vladimir Litovka (
Thu, 31 Oct 1996 10:28:34 +0100 (MET)

Hi Alan,

I have found a problem with the handling of ICMP udp port unreachable
messages by the kernel when sending an udp broadcast request. This
happens e.g. when doing an rpc broadcast and then handling all the responses
using select and recvfrom.
According to the documentation on RFC 1122 on *sending* icmp packets it
seems that we have some broken hosts on our network. It states that no
ICMP errors should be sent on broadcast/multicast messages. This is exactly
what happens. Some of our routers seem to do this.
The obvious fix is to ignore ICMP error packets received on a UDP socket
which sent a broadcast. I have no idea how to do this, but I have verified
with RPC code taken from the linux C-library that this is fixed at the
kernel level in IRIX 5.3. The linux kernel passes ECONNREFUSED to the
user side as the irix kernel doesn't.


Robert H. de Vries
Simulation and Robotics
Fokker Space B.V.
   tel: (+31)71-5245464
   fax: (+31)71-5245498