From d55e243de2bc52d66682a4c5258b821da82906ba Mon Sep 17 00:00:00 2001 From: Mark Linimon Date: Fri, 13 Feb 2004 09:31:58 +0000 Subject: If you attempt to send an ICMP echo to a host on the same ethernet subnet, and that host is down/turned off, the Tnm::icmp echo command will fail rather than return an unreachable indication on some occasions. This is because the nmicmpd program will occasionally get an EHOSTDOWN error when doing a sendto() when the ARP entry resolution times out. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is a problem since this API can support a list of hosts to send traffic to, and a single error as described will abort the entire operation. (The reviewer claims that he could not duplicate the problem, but that the patch seems like a good idea anyway.) PR: ports/24940 Submitted by: Louis Mamakos Reviewed by: Stefan Eßer --- net/scotty3/files/patch-unix:nmicmpd.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 net/scotty3/files/patch-unix:nmicmpd.c (limited to 'net/scotty3/files/patch-unix:nmicmpd.c') diff --git a/net/scotty3/files/patch-unix:nmicmpd.c b/net/scotty3/files/patch-unix:nmicmpd.c new file mode 100644 index 000000000000..6432fa8643d7 --- /dev/null +++ b/net/scotty3/files/patch-unix:nmicmpd.c @@ -0,0 +1,17 @@ +--- nmicmpd.c.orig Tue Feb 6 15:34:03 2001 ++++ nmicmpd.c Tue Feb 6 15:44:53 2001 +@@ -924,6 +924,14 @@ + + if (rc != size) { + if (rc < 0) { ++ /* ++ * If we get an EHOSTDOWN error, this probably means that ++ * the the pending ARP entry has timed out for the host. ++ * Just ignore the error, and attempt a normal retry. ++ */ ++ if (errno == EHOSTDOWN) ++ return 0; ++ + PosixError("sendto failed"); + } + job->status = ICMP_STATUS_GENERROR; -- cgit v1.2.3