summaryrefslogtreecommitdiff
path: root/src/resolve/resolved-dns-transaction.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-07-23 18:48:25 +0200
committerLennart Poettering <lennart@poettering.net>2015-07-23 18:48:25 +0200
commitf252ccdb9e81b6209654fa5191d4cb34b3817aa7 (patch)
tree8a2c4fed8f054f420964c2ba573a2bacf5b102a3 /src/resolve/resolved-dns-transaction.c
parent20330324e3dd95e1a5951d154cbf2b9f8627d818 (diff)
parent6709eb94f9eae15f0b4ce87ad98de05b4182a30a (diff)
Merge pull request #690 from teg/resolved-fixes-2
resolved: assorted fixes v2
Diffstat (limited to 'src/resolve/resolved-dns-transaction.c')
-rw-r--r--src/resolve/resolved-dns-transaction.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c
index e468f245f7..3d46c99df8 100644
--- a/src/resolve/resolved-dns-transaction.c
+++ b/src/resolve/resolved-dns-transaction.c
@@ -417,8 +417,10 @@ void dns_transaction_process_reply(DnsTransaction *t, DnsPacket *p) {
/* Only consider responses with equivalent query section to the request */
if (!dns_question_is_superset(p->question, t->question) ||
- !dns_question_is_superset(t->question, p->question))
+ !dns_question_is_superset(t->question, p->question)) {
dns_transaction_complete(t, DNS_TRANSACTION_INVALID_REPLY);
+ return;
+ }
/* According to RFC 4795, section 2.9. only the RRs from the answer section shall be cached */
dns_cache_put(&t->scope->cache, p->question, DNS_PACKET_RCODE(p), p->answer, DNS_PACKET_ANCOUNT(p), 0, p->family, &p->sender);