diff options
author | Tom Gundersen <teg@jklm.no> | 2015-11-27 00:42:56 +0100 |
---|---|---|
committer | Tom Gundersen <teg@jklm.no> | 2015-11-27 00:42:56 +0100 |
commit | 8a7a7e971e97830fd722fb73ef87f7180180cc27 (patch) | |
tree | 9ac1760894c256185bb5a1899bac69f38b39237c /src/resolve/resolved-dns-scope.h | |
parent | c283267467db7a7fde9d15042b907884118e8fea (diff) | |
parent | 039a8725fdff1d71e9efd28f27741601c5b4235c (diff) |
Merge pull request #2041 from poettering/resolved-various-2
various smaller fixes, plus one that makes the build succeed again
Diffstat (limited to 'src/resolve/resolved-dns-scope.h')
-rw-r--r-- | src/resolve/resolved-dns-scope.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/resolve/resolved-dns-scope.h b/src/resolve/resolved-dns-scope.h index 32e6961757..7876410b7d 100644 --- a/src/resolve/resolved-dns-scope.h +++ b/src/resolve/resolved-dns-scope.h @@ -58,9 +58,19 @@ struct DnsScope { usec_t resend_timeout; usec_t max_rtt; - Hashmap *transactions; LIST_HEAD(DnsQueryCandidate, query_candidates); + /* Note that we keep track of ongoing transactions in two + * ways: once in a hashmap, indexed by the rr key, and once in + * a linked list. We use the hashmap to quickly find + * transactions we can reuse for a key. But note that there + * might be multiple transactions for the same key (because + * the zone probing can't reuse a transaction answered from + * the zone or the cache), and the hashmap only tracks the + * most recent entry. */ + Hashmap *transactions_by_key; + LIST_HEAD(DnsTransaction, transactions); + LIST_FIELDS(DnsScope, scopes); }; |