Report information
The Basics
Id:
46986
Status:
resolved
Priority:
Low/Low
Queue:

BugTracker
Version Fixed:
9.13.0
Version Found:
(no value)
Versions Affected:
(no value)
Versions Planned:
(no value)
Priority:
P3 Low
Severity:
S3 Low
CVSS Score:
(no value)
CVE ID:
(no value)
Component:
BIND Server
Area:
Other

Dates
Created:Thu, 11 Jan 2018 06:57:39 -0500
Updated:Tue, 16 Jan 2018 02:36:03 -0500
Closed:Tue, 16 Jan 2018 02:36:03 -0500



This bug tracker is no longer active.

Please go to our Gitlab to submit issues (both feature requests and bug reports) for active projects maintained by Internet Systems Consortium (ISC).

Due to security and confidentiality requirements, full access is limited to the primary maintainers.

To: bind9-public@isc.org
From: michal@isc.org
Date: Thu, 11 Jan 2018 12:57:39 +0100
Subject: Simplify handling isc_socket_sendto2() return values when flags == 0
Commits 54489ba1672 and 67adc03ef8 replaced some isc_socket_sendto() calls with isc_socket_sendto2() calls without taking into consideration that the latter cannot fail due to lack of memory, leaving some redundant code behind. On Unix systems, isc_socket_sendto2() called with no flags set always returns ISC_R_SUCCESS. On Windows systems, isc_socket_sendto2() called with no flags set can only return a value different than ISC_R_SUCCESS due to a programmatic error (ISC_R_CONNREFUSED, when the socket is closed). Thus, we should never really expect anything other than ISC_R_SUCCESS from isc_socket_sendto2() called with flags == 0. Attempts to handle such situations are misleading, plus evaluating one such error handling branch in resquery_send() (introduced for the right reasons in 146057d7e7) actually leads to a crash (since commit adbf81335b).
Pushed rt46986 which ensures isc_socket_sendto2() returns ISC_R_SUCCESS instead of attempting to handle its errors and removes the "connecting" variable from resquery_send() as it is no longer needed. Please review.
Looks fine on a read through of the two socket implementations.
4865. [cleanup] Simplify handling isc_socket_sendto2() return values. [RT #46986] 9.13.0