Opened 3 years ago

Closed 3 years ago

#21650 closed enhancement (implemented)

prop140: Clients request diffs and handle diffs in replies

Reported by: nickm Owned by: nickm
Priority: Medium Milestone: Tor: 0.3.1.x-final
Component: Core Tor/Tor Version:
Severity: Normal Keywords: prop140
Cc: ahf Actual Points: 1
Parent ID: #13339 Points: 4
Reviewer: Sponsor: Sponsor4

Description

For the final piece of prop140, clients should ask for consensus diffs as appropriate, and handle them if they're received.

We may need proposal extensions here:

  • Should clients begin doing this immediately, or should there be a tristate where "default" means "look at the consensus"?
  • Should there be an option -- maybe for testing, maybe not -- that forces clients to look for directory guards that support consensus diffs?

Child Tickets

TicketTypeStatusOwnerSummary
#22128defectclosednickmRefactor body of connection_dir_client_reached_eof()

Change History (10)

comment:1 Changed 3 years ago by teor

Clients have a hard-coded list of authorities and fallback directories.
They use this list to bootstrap when their consensus is outdated (older than 24 hours or so).
Do clients ever want to download consensus diffs from these hard-coded addresses at bootstrap time?
(I think the answer is no, but we should make this clear in the proposal)

comment:2 Changed 3 years ago by dgoulet

Keywords: prop140 added

comment:3 Changed 3 years ago by nickm

Owner: set to nickm
Status: newassigned

comment:4 Changed 3 years ago by nickm

Status: assignedneeds_review

I now have this done in my prop140_complete branch, but it will need to be rebased or changed once #22143 is done.

I have some open questions marked with XXXXs about what to do when receiving a bad diff.

comment:5 Changed 3 years ago by nickm

Actual Points: 1

comment:7 Changed 3 years ago by ahf

Cc: ahf added

comment:8 Changed 3 years ago by ahf

Status: needs_reviewneeds_revision

I've added a couple of comments to this code. I think overall it looks good. I can also see a couple of places that conflicts with my own prop#278 work, but nothing too bad!

comment:9 Changed 3 years ago by nickm

Status: needs_revisionneeds_review

I made most of the requested changes, and I hope that the conflicts are easy to solve. How does it look now?

comment:10 Changed 3 years ago by nickm

Resolution: implemented
Status: needs_reviewclosed

ahf says it looks okay. Rebased onto master after a #22143 merge, fixed the XXXXs not already listed in #22148, and merged.

Note: See TracTickets for help on using tickets.