Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Tor Tor
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 325
    • Issues 325
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 30
    • Merge requests 30
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • Core
  • TorTor
  • Issues
  • #22882
Closed
Open
Issue created Jul 11, 2017 by teor@teor

The v4 link protocol requires the initiator to set the most significant bit

tor-spec.txt says:

   To prevent CircID collisions, when one node sends a CREATE cell to
   another, it chooses from only one half of the possible values based
   on the ORs' public identity keys.  In link protocol version 3 or
   lower, if the sending node has a lower key, it chooses a CircID with
   an MSB of 0; otherwise, it chooses a CircID with an MSB of 1. (Public
   keys are compared numerically by modulus.)

   In link protocol version 4 or higher, whichever node initiated the
   connection sets its MSB to 1, and whichever node didn't initiate the
   connection sets its MSB to 0.

   (An OP with no public key MAY choose any CircID it wishes, since an OP
   never needs to process a CREATE cell.)

But this last sentence is only true for v3. For v4, if the most significant bit is not set by a client, relays close the connection with a message like:

Jul 11 20:20:18.000 [info] command_process_create_cell: Received create cell with unexpected circ_id 2147483647. Closing.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking