Skip to content

don't let a web console page hang on a stopped service - #2518

Merged
orignal merged 1 commit into
PurpleI2P:opensslfrom
pobregat0:console-bounded-wait
Aug 24, 2026
Merged

don't let a web console page hang on a stopped service#2518
orignal merged 1 commit into
PurpleI2P:opensslfrom
pobregat0:console-bounded-wait

Conversation

@pobregat0

Copy link
Copy Markdown
Contributor

The console asks other threads for a snapshot of their sessions and waits for the answer without any bound: GetECIESx25519SessionsList().get() for a destination and GetSSU2Sessions(sessions).get() for the transport. A task posted to a service that is already stopped never runs, so the waiting console thread would block forever and the page would never come back.

Both waits are now bounded by three seconds. If the answer does not arrive in time, the page says so in that place and renders the rest as usual instead of hanging.

This is what was asked for in the channel: call wait_for instead of get.

Checked locally: the router starts and the front page, local destinations, transports and tunnels pages all render in about a millisecond. Builds without warnings, unit tests pass, C++17 syntax check is fine.

@orignal
orignal merged commit 58cd483 into PurpleI2P:openssl Aug 24, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants