Skip to content

Protocol version negotiation currently doesn't result in agreement #9584

@Ericson2314

Description

@Ericson2314

As far as I can tell, here is how the "serve protocol" and "worker protocol" both do it:

  1. Each side send the higher version they support to the other side.
  2. The other side tries to use that version if it supports it.

But that means if the two versions are not the same, the two ends of the connection will be using different versions! Madness!

I think we forgot one simple step:

  1. Take the minimum of the version you sent and version you received.

Then both sides will end up with the same version. Problem solved!

Metadata

Metadata

Assignees

Labels

idea approvedThe given proposal has been discussed and approved by the Nix team. An implementation is welcome.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions