Repository navigation
v1.1.1
A secret reload could leave a revoked user connected
Upgrade if you revoke secrets. A reload that removed or re-keyed a secret raced the handshake of a stream that was still setting itself up: the revocation swept the connection list before that stream had published its socket, so the socket was never closed and the user it belonged to stayed connected until they disconnected on their own.
The stream context now serialises publication and teardown under one lock, and a socket handed to a context that has already been closed is closed immediately rather than orphaned. Revocation is now the immediate disconnect it always claimed to be.
Also in this release: the SIGHUP reload path is now driven by tests the way the signal itself drives it — including one that asserts a newly added client is actually served, not merely counted — and a test fixture that could produce two colliding secrets was fixed.
No config changes. No action needed beyond installing it.
Full Changelog: v1.1.0...v1.1.1