Expected Behavior
Executing sudo systemctl restart forwarder should stop the deamon and disconnect any clients immediately and restart even if websocket connections are active.
Actual Behavior
Executing it will hang as long as all websocket clients are active. We get the same behavior with or sudo systemctl stop forwarder.
After all websocket clients are closed, forwarder restarts/stops.
Note: the vast majority of sites using websockets have auto-reconnect handlers in place because websocket streams are so unreliable.
Steps to Reproduce the Problem
- Run forwarder on a proxy server
- Setup proxy in web browser to use the proxy server
- Connect to a website using websockets
- Try to execute
sudo systemctl restart forwarder (or sudo systemctl stop forwarder) on the proxy server
- Watch nothing happen :-)
Specifications
- Version: v1.3.2
- Platform: Ubuntu 24.04
- Subsystem: