Open Bug 1681149 Opened 4 years ago Updated 3 years ago

Add a common API for all DNS resolvers.

Categories

(Core :: Networking: DNS, task, P3)

task

Tracking

()

People

(Reporter: valentin, Unassigned)

References

(Depends on 1 open bug, Blocks 1 open bug)

Details

(Whiteboard: [necko-triaged])

Attachments

(4 obsolete files)

Similar to how TRRQuery works, all the resolvers should share a common API

  • TRRQuery, UDPResolver and GetAddrInfo should implement a common interface.
  • TRRQuery, UDPResolver can additionally share some code via a base class.
  • We should get rid of network.trr.early-AAAA (and network.trr.wait-for-A-and-AAAA since it doesn't control anything) and enforce that we only get one CompleteLookup call per request

Calling c->remove() will remove the entry from rec->mCallbacks and could
potentially release the object (if this is the last reference).
While unlikely, it's best to avoid this corner case.

These prefs were mostly a perf improvement - return the first address family
first then merge the result with the other family.
However, this turned out to cause intermittent issues on some sites, so it
was turned off by default.
Removing these prefs allows us to have the same functionality across all
our resolvers - one request means one callback after both A and AAAA responses
have been received.

Depends on D99756

These types got changed in bug 1678299.
Going forward it's important to have them match up.

Depends on D99757

Depends on: 1691721

Comment on attachment 9193195 [details]
Bug 1681149 - Hold a strong ref to the nsResolveHostCallback r=#necko

Revision D99756 was moved to bug 1691721. Setting attachment 9193195 [details] to obsolete.

Attachment #9193195 - Attachment is obsolete: true

Comment on attachment 9193196 [details]
Bug 1681149 - Remove early partial DNS records prefs r=#necko

Revision D99757 was moved to bug 1691721. Setting attachment 9193196 [details] to obsolete.

Attachment #9193196 - Attachment is obsolete: true

Comment on attachment 9193199 [details]
Bug 1681149 - Add DNSPacket::GetRCode and remove TRRSkippedReason argument r=#necko

Revision D99760 was moved to bug 1691721. Setting attachment 9193199 [details] to obsolete.

Attachment #9193199 - Attachment is obsolete: true
Attachment #9193197 - Attachment is obsolete: true
Assignee: valentin.gosu → nobody
Priority: P2 → P3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: