diff options
author | Mark Linimon <linimon@FreeBSD.org> | 2004-02-13 09:31:58 +0000 |
---|---|---|
committer | Mark Linimon <linimon@FreeBSD.org> | 2004-02-13 09:31:58 +0000 |
commit | d55e243de2bc52d66682a4c5258b821da82906ba (patch) | |
tree | 0b0fa2e451a6c59987717436b0b04b7aa0dabafb /net-mgmt | |
parent | 7764f6342354c1831772c2c240dc699afbeebd0e (diff) |
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.
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 <louie@transsys.com>
Reviewed by: Stefan Eßer <se@FreeBSD.org>
Notes
Notes:
svn path=/head/; revision=100831
Diffstat (limited to 'net-mgmt')
-rw-r--r-- | net-mgmt/scotty3/files/patch-unix:nmicmpd.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/net-mgmt/scotty3/files/patch-unix:nmicmpd.c b/net-mgmt/scotty3/files/patch-unix:nmicmpd.c new file mode 100644 index 000000000000..6432fa8643d7 --- /dev/null +++ b/net-mgmt/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; |