Closed Bug 1691359 Opened 5 years ago Closed 5 years ago

Don't call TRRIsOkay for cancelled TRR channels

Categories

(Core :: Networking, defect, P2)

defect

Tracking

()

RESOLVED FIXED
87 Branch
Tracking Status
firefox87 --- fixed

People

(Reporter: valentin, Assigned: valentin)

References

(Blocks 1 open bug)

Details

(Whiteboard: [necko-triaged])

Attachments

(1 file)

When nsHostRecord::Cancel is called and the record has a pending TRR request, we end up calling Cancel for that request.
But right now we don't distinguish between a regular TRR timeout, and a request being cancelled, so we end up calling TRRIsOkay(OKAY_BAD) for such channels, potentially putting us into the NOT_CONFIRMED state.

  • Pass status code to cancelled TRR channels
  • When TRR timer expires, use NS_ERROR_NET_TIMEOUT_EXTERNAL
  • When TRR is cancelled by nsHostResolver use NS_ERROR_ABORT
  • Only call TRRIsOkay in OnStopRequest (doing so in TRR::Cancel causes us to
    call it twice for the same TRR)
  • Use NS_NewRunnableFunction instead of ProxyCancel runnable object
  • Introduce TRR_REQ_CANCELLED skip reason
Pushed by valentin.gosu@gmail.com: https://hg.mozilla.org/integration/autoland/rev/87635dcb59f8 Don't call TRRIsOkay for cancelled TRR channels r=nhnt11
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 87 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: