diff --git a/lib/dns/dispatch.c b/lib/dns/dispatch.c index 9a9d5d72df..81a0c0412b 100644 --- a/lib/dns/dispatch.c +++ b/lib/dns/dispatch.c @@ -694,7 +694,9 @@ tcp_recv_success(dns_dispatch_t *disp, isc_region_t *region, dns_dispentry_t *resp = cds_lfht_entry(cds_lfht_iter_get_node(&iter), dns_dispentry_t, ht_node); - if (resp != NULL) { + + /* Skip responses that are not ours */ + if (resp != NULL && resp->disp == disp) { if (!resp->reading) { /* * We already got a message for this QID and weren't