Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runctl server should reject older runctl clients #73

Open
rmg opened this issue Nov 13, 2014 · 3 comments
Open

runctl server should reject older runctl clients #73

rmg opened this issue Nov 13, 2014 · 3 comments
Assignees

Comments

@rmg
Copy link
Member

rmg commented Nov 13, 2014

When running sl-run from [email protected] connecting with sl-runctl from [email protected] results in the sl-runctl command hanging waiting for a response.

The cause is likely sequence numbers being added to the protocol in 1.1.1.

To mitigate this, the server side of the control channel should close connections that don't follow its expected protocol/format instead of silently dropping the message. This would result in an error on the sl-runctl side instead of hanging.

@rmg
Copy link
Member Author

rmg commented Dec 2, 2014

Tracked it down. Turns out it's not just sequence numbers that were added, but a whole other layer of encapsulation. The listening side of the channel in the problem scenario doesn't even get notification that a request was made because strong-control-channel just ignores the request.

I'll fix this in strong-control-channel by closing the connection when a message isn't one of the known message types and release as a new major version, then rev the dependency in strong-supervisor and anywhere else it is used.

@rmg rmg added #wip and removed #sprint59 labels Dec 2, 2014
rmg added a commit to strongloop/strong-control-channel that referenced this issue Dec 3, 2014
Messages from older clients may not have a valid cmd, so they should be
disconnected instead of left in limbo.

This fixes the problem behind strongloop/strong-supervisor#73
rmg added a commit to strongloop/strong-control-channel that referenced this issue Dec 3, 2014
Give older clients a better failure mode since we can't change them.

The problem case is [email protected] will just exit immediately
with no failure when connecting to a newer version. With this behaviour
the client is at least notified there is an error, which will greatly
improve the user experience for any future incarnations of
strongloop/strong-supervisor#73
@rmg
Copy link
Member Author

rmg commented Dec 3, 2014

Will be fixed when an updated strong-control-channel is released with strongloop/strong-control-channel#10 in it.

@cgole
Copy link
Member

cgole commented Jan 6, 2015

expecting this to be a failure case. Not a bug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants