Lines Matching defs:ent
67 auto ent = ResolverEntry{};
68 ent.resolv = std::move(resolv);
69 ent.host = std::move(host);
70 ent.status = status;
74 ent.expiry = std::chrono::steady_clock::now() +
81 ent.result = *result;
83 return ent;
86 void DNSTracker::update_entry(ResolverEntry &ent,
91 ent.resolv = std::move(resolv);
92 ent.status = status;
96 ent.expiry = std::chrono::steady_clock::now() +
103 ent.result = *result;
167 auto &ent = (*p.first).second;
169 add_to_qlist(ent, dnsq);
178 auto &ent = (*it).second;
180 if (ent.status != DNSResolverStatus::RUNNING &&
181 ent.expiry < std::chrono::steady_clock::now()) {
188 auto host = StringRef{ent.host};
196 update_entry(ent, nullptr, DNSResolverStatus::ERROR, nullptr);
207 update_entry(ent, nullptr, DNSResolverStatus::ERROR, nullptr);
216 update_entry(ent, nullptr, DNSResolverStatus::OK, result);
220 update_entry(ent, std::move(resolv), DNSResolverStatus::RUNNING, nullptr);
221 add_to_qlist(ent, dnsq);
229 switch (ent.status) {
234 ent.qlist.append(dnsq);
245 << util::numeric_name(&ent.result.su.sa, ent.result.len);
248 memcpy(result, &ent.result, sizeof(*result));
257 void DNSTracker::add_to_qlist(ResolverEntry &ent, DNSQuery *dnsq) {
258 ent.resolv->set_complete_cb(
259 [&ent](DNSResolverStatus status, const Address *result) {
260 auto &qlist = ent.qlist;
272 ent.resolv.reset();
273 ent.status = status;
274 ent.expiry = std::chrono::steady_clock::now() +
276 if (ent.status == DNSResolverStatus::OK) {
277 ent.result = *result;
280 ent.qlist.append(dnsq);
294 auto &ent = (*it).second;
295 ent.qlist.remove(dnsq);
314 auto &ent = (*it).second;
315 if (ent.expiry >= now) {