Report information
The Basics
Id:
42832
Status:
resolved
Priority:
Medium/Medium
Queue:

BugTracker
Version Fixed:
9.9.12, 9.10.7, 9.11.3, 9.12.0
Version Found:
(no value)
Versions Affected:
(no value)
Versions Planned:
(no value)
Priority:
P2 Normal
Severity:
S2 Normal
CVSS Score:
(no value)
CVE ID:
(no value)
Component:
BIND Utilities
Area:
bug

Dates
Created:Tue, 12 Jul 2016 05:10:46 -0400
Updated:Thu, 05 Oct 2017 04:02:39 -0400
Closed:Thu, 05 Oct 2017 04:02:07 -0400



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.

Subject: Bing git - dig expects segmentation fault if DNS server haven't support for TCP pipelining
Date: Tue, 12 Jul 2016 09:10:43 +0000
To: bind-bugs@isc.org
From: "Pavel Odintsov" <pavel.odintsov@gmail.com>
Bug Report from www.isc.org: Name: Pavel Odintsov Email: pavel.odintsov@gmail.com Software Version: Bing git OS: Debian Jessie Subject:dig expects segmentation fault if DNS server haven't support for TCP pipelining Bug Detail =========== Hello! I've got following error: /opt/bind9_git/bin/dig @art.ns.cloudflare.com +keepopen +tcp -f lookup_domains.txt ; <<>> DiG 9.11.0b1 <<>> stableit.ru ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15369 ;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;stableit.ru. IN A ;; ANSWER SECTION: stableit.ru. 300 IN A 104.20.30.58 stableit.ru. 300 IN A 104.20.31.58 ;; Query time: 220 msec ;; SERVER: 162.159.8.252#53(162.159.8.252) ;; WHEN: Tue Jul 12 01:58:55 PDT 2016 ;; MSG SIZE rcvd: 72 ;; communications error to 162.159.8.252#53: end of file [[[ Here I pressed CTRL+C ]]] ^Cdighost.c:4351: INSIST(current_lookup == ((void *)0)) failed, back trace #0 0x57d234 in ?? #1 0x57d19a in ?? #2 0x41f7c0 in ?? #3 0x411a45 in ?? #4 0x7f575405bb45 in ?? #5 0x411ac5 in ?? Aborted Please put following lines into lookup_domains.txt: stableit.ru lupus.su I've reproduced this bug with Debian Jessie and with Git's version of Bind 9 (b3d352f01d8f8b6d11c1b7503091375b131397be). As you know CloudFlare haven't support for TCP pipelining and dig could handle this case properly. What do you think about it? Thanks! --- This email was received through isc.org Bug Submission Form All information within this email is considered confidential and for internal use only.
I don't know whether this fixes the bug reported, since there's no test, but it looks correct on inspection and the tests we have are passing. Okay to merge.
Subject: BIND git - dig expects segmentation fault if DNS server haven't support for TCP pipelining
4756. [bug] Interrupting dig could lead to an INSIST failure after certain errors were encountered while querying a host whose name resolved to more than one address. Change 4537 increased the odds of triggering this issue by causing dig to hang indefinitely when certain error paths were evaluated. dig now also retries TCP queries (once) if the server gracefully closes the connection before sending a response. [RT #42832, #45159] 9.9.12, 9.10.7, 9.11.3, 9.12.0