Skip to content

Handshake hardening #469

@anarthal

Description

@anarthal

Handshake is a state-machine-like algorithm, where the server can send one of many packet types, and we react accordingly. The current algorithm works but allows state transitions which aren't supposed to happen in the protocol (e.g. if the server sends two auth switch requests, we don't fail). Refactor the algorithm to perform stronger validation.

This task should also provide a more modular implementation to handshake, where plugin logic is separated from the main algorithm, so that #313 can be implemented.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions