Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
Trac
Trac
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar

GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

  • Legacy
  • TracTrac
  • Issues
  • #19987

Closed (moved)
Open
Opened Aug 26, 2016 by teor@teor

Unit Test Guard, Middle, Exit, Intro, and Rend node choices

We could unit test the #19973 (moved) fix to the 0.2.8.6 path selection issue by copying the code from test_choose_random_entry_no_guards, but running it on:

  • choose_good_middle_server
  • choose_good_exit_server_general
  • router_choose_random_node (used by rend_consider_services_intro_points)
  • pick_rendezvous_node

The tests should make sure these functions return any node at random. In 0.2.8.6, these functions chose nodes using the direct connection reachability rules, which was wrong.

We could make these tests simpler and more reliable by setting up a node list with a single node that 0.2.8.6 wouldn't choose, but 0.2.8.7 would. For example:

  • an IPv4-only node with ClientUseIPv4 0
  • a node on 9001/9030 with FascistFirewall 1
  • a node on 1.1.1.1 with ReachableAddresses 2.0.0.0/8
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Tor: unspecified
Milestone
Tor: unspecified
Assign milestone
Time tracking
None
Due date
None
Reference: legacy/trac#19987