diff options
| author | roy <roy@NetBSD.org> | 2020-07-21 14:04:07 +0000 |
|---|---|---|
| committer | roy <roy@NetBSD.org> | 2020-07-21 14:04:07 +0000 |
| commit | 73405826ccae6ce4777f3304989a36bfbbc2ca1a (patch) | |
| tree | 621acd72d8b73bae4441b451574a6409196dc9c9 /external/apache2 | |
| parent | 6588d85c2a95c2c99a1d94c0ebe3dc5448e90b33 (diff) | |
mdnsd: Treat EADDRNOTAVAIL as a transient error
Diffstat (limited to 'external/apache2')
| -rwxr-xr-x | external/apache2/mDNSResponder/dist/mDNSPosix/mDNSPosix.c | 3 | ||||
| -rw-r--r-- | external/apache2/mDNSResponder/dist/mDNSShared/PlatformCommon.c | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSPosix.c b/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSPosix.c index 78e90eead86..f4ac238e91d 100755 --- a/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSPosix.c +++ b/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSPosix.c @@ -195,8 +195,9 @@ mDNSexport mStatus mDNSPlatformSendUDP(const mDNS *const m, const void *const ms { static int MessageCount = 0; // Don't report EHOSTDOWN (i.e. ARP failure), ENETDOWN, or no route to host for unicast destinations - if (!mDNSAddressIsAllDNSLinkGroup(dst)) + if (!mDNSAddressIsAllDNSLinkGroup(dst)) { if (errno == EHOSTDOWN || errno == ENETDOWN || errno == EHOSTUNREACH || errno == ENETUNREACH) return(mStatus_TransientErr); + } else if (errno == EADDRNOTAVAIL) return(mStatus_TransientErr); if (MessageCount < 1000) { diff --git a/external/apache2/mDNSResponder/dist/mDNSShared/PlatformCommon.c b/external/apache2/mDNSResponder/dist/mDNSShared/PlatformCommon.c index ed74ea9cd00..97680477387 100644 --- a/external/apache2/mDNSResponder/dist/mDNSShared/PlatformCommon.c +++ b/external/apache2/mDNSResponder/dist/mDNSShared/PlatformCommon.c @@ -70,7 +70,11 @@ mDNSexport void mDNSPlatformSourceAddrForDest(mDNSAddr *const src, const mDNSAdd else return; if ((connect(sock, &addr.s, inner_len)) < 0) - { LogMsg("mDNSPlatformSourceAddrForDest: connect %#a failed errno %d (%s)", dst, errno, strerror(errno)); goto exit; } + { + if (errno != EADDRNOTAVAIL) + LogMsg("mDNSPlatformSourceAddrForDest: connect %#a failed errno %d (%s)", dst, errno, strerror(errno)); + goto exit; + } if ((getsockname(sock, &addr.s, &len)) < 0) { LogMsg("mDNSPlatformSourceAddrForDest: getsockname failed errno %d (%s)", errno, strerror(errno)); goto exit; } |
