]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Fix #4225: clients seem to erroneously receive no answer with
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Fri, 8 Feb 2019 15:05:24 +0000 (15:05 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Fri, 8 Feb 2019 15:05:24 +0000 (15:05 +0000)
  DNS-over-TLS and qname-minimisation.

git-svn-id: file:///svn/unbound/trunk@5108 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
services/listen_dnsport.c

index ca54d29067f866363d5ee180879fc5bbfee4fccc..4a14c606057f75ab414a3b427ff94703fba44b47 100644 (file)
@@ -2,6 +2,8 @@
        - Fix #4206: OpenSSL 1.0.2 hostname verification for FreeBSD 11.2.
        - Fix that qname minimisation does not skip a label when missing
          nameserver targets need to be fetched.
+       - Fix #4225: clients seem to erroneously receive no answer with
+         DNS-over-TLS and qname-minimisation.
 
 4 February 2019: Wouter
        - Fix that log-replies prints the correct name for local-alias
index f86a83d967364ab04377cd7d7331d76aaa857787..664072aa4833c33fb72f0c214f3d27a72153b4d3 100644 (file)
@@ -1779,6 +1779,12 @@ tcp_req_info_handle_readdone(struct tcp_req_info* req)
        /* If mesh failed(mallocfail) and called commpoint_send_reply with
         * something like servfail then we pick up that reply below. */
        if(req->is_reply) {
+               /* reply from mesh is in the spool_buffer */
+               sldns_buffer_clear(c->buffer);
+               sldns_buffer_write(c->buffer,
+                       sldns_buffer_begin(req->spool_buffer),
+                       sldns_buffer_limit(req->spool_buffer));
+               sldns_buffer_flip(c->buffer);
                goto send_it;
        }