From 0b2c21767ad67a37b2cbd1797c93f2eca02a6b29 Mon Sep 17 00:00:00 2001 From: Jeff Hill Date: Thu, 7 Feb 2002 19:00:10 +0000 Subject: [PATCH] fix for CONNRESET with disconnected udp socket issue --- src/ca/repeater.cpp | 18 +++++++++--------- src/ca/udpiiu.cpp | 18 +++++++++--------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/ca/repeater.cpp b/src/ca/repeater.cpp index d2a21a756..506b63f4f 100644 --- a/src/ca/repeater.cpp +++ b/src/ca/repeater.cpp @@ -535,15 +535,15 @@ void ca_repeater () &from.sa, &from_size ); if ( size < 0 ) { int errnoCpy = SOCKERRNO; -# ifdef linux - /* - * Avoid spurious ECONNREFUSED bug - * in linux - */ - if ( errnoCpy == SOCK_ECONNREFUSED ) { - continue; - } -# endif + // Avoid spurious ECONNREFUSED bug in linux + if ( errnoCpy == SOCK_ECONNREFUSED ) { + continue; + } + // Avoid ECONNRESET from connected socket + // in windows + if ( errnoCpy == SOCK_ECONNRESET ) { + continue; + } fprintf ( stderr, "CA Repeater: unexpected UDP recv err: %s\n", SOCKERRSTR (errnoCpy) ); continue; diff --git a/src/ca/udpiiu.cpp b/src/ca/udpiiu.cpp index 3202fa0b4..84a1c5cb9 100644 --- a/src/ca/udpiiu.cpp +++ b/src/ca/udpiiu.cpp @@ -250,15 +250,15 @@ void udpiiu::recvMsg () if ( errnoCpy == SOCK_EINTR ) { return; } - # ifdef linux - /* - * Avoid spurious ECONNREFUSED bug - * in linux - */ - if ( errnoCpy == SOCK_ECONNREFUSED ) { - return; - } - # endif + // Avoid spurious ECONNREFUSED bug in linux + if ( errnoCpy == SOCK_ECONNREFUSED ) { + return; + } + // Avoid ECONNRESET from disconnected socket bug + // in windows + if ( errnoCpy == SOCK_ECONNRESET ) { + return; + } this->printf ( "Unexpected UDP recv error was \"%s\"\n", SOCKERRSTR (errnoCpy) ); }