Skip to content

Updating TLSconfig for WebSocketServer #511

@tegefaulkes

Description

@tegefaulkes

Specification

When the root key pair changes we need to update anything that depends on this. This change event is propagated through the events system. One of the changes is updating the TLS config the RPC servers are using. Previously this could be done dynamically but now with the WebSocketServer this can only be set when starting it.

This means that the WebSocketServer needs to be restarted when this event happens. This means any active connections are potentially interrupted.

To support this we need to make the following changes.

  1. When the root keypair is updated we need to restart the WebSocketServer.
  2. When restarting the WebSocketServer we need to gracefully end any active connections.
  3. We need to propagate an abort signal to the stream handler to signal ending.
  4. expand the force stop options to allow for forcing connections to end, Signalling connections to end gracefully or just wait for all active connections to end.
  5. Add a feature to block all new connections so when waiting for connections to end new ones can't start.

Additional context

Tasks

  1. When the root keypair is updated we need to restart the WebSocketServer.
  2. When restarting the WebSocketServer we need to gracefully end any active connections.
  3. We need to propagate an abort signal to the stream handler to signal ending.
  4. expand the force stop options to allow for forcing connections to end, Signalling connections to end gracefully or just wait for all active connections to end.
  5. Add a feature to block all new connections so when waiting for connections to end new ones can't star

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions