From 6b32ed3de2fbda90f5ab81f39f147dcc41a1211c Mon Sep 17 00:00:00 2001 From: Jon Shallow Date: Mon, 13 Jun 2022 13:26:04 +0100 Subject: [PATCH] coap_io.c: Track ICMP Host Administravely Prohibited error Add in tracking for EHOSTUNREACH in coap_network_read(). --- src/coap_io.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/coap_io.c b/src/coap_io.c index 0dfd3f89..53ffa252 100644 --- a/src/coap_io.c +++ b/src/coap_io.c @@ -830,14 +830,16 @@ coap_network_read(coap_socket_t *sock, coap_packet_t *packet) { #endif if (len < 0) { #ifdef _WIN32 - if (WSAGetLastError() == WSAECONNRESET) { + if (WSAGetLastError() == WSAECONNRESET || + WSAGetLastError() == WSAECONNREFUSED) { #else - if (errno == ECONNREFUSED) { + if (errno == ECONNREFUSED || errno == EHOSTUNREACH) { #endif /* client-side ICMP destination unreachable, ignore it */ - coap_log(LOG_WARNING, "** %s: coap_network_read: unreachable\n", - sock->session ? - coap_session_str(sock->session) : ""); + coap_log(LOG_WARNING, "** %s: coap_network_read: ICMP: %s\n", + sock->session ? + coap_session_str(sock->session) : "", + coap_socket_strerror()); return -2; } coap_log(LOG_WARNING, "** %s: coap_network_read: %s\n",