Skip to content

Sends multiple CONNECT frames then crashes if 1.2 CONNECTED doesn't include optional session and server headers #179

@EvelynSubarrow

Description

@EvelynSubarrow

If selenetherium doesn't supply session and server headers in its CONNECTED frame:

CONNECT
accept-version:1.0,1.1,1.2
host:192.168.0.59
heart-beat:0,0

^ CONNECTED
version:1.2

^ CONNECT
accept-version:1.0,1.1,1.2
host:192.168.0.59
heart-beat:0,0

^ CONNECTED
version:1.2

^ SUBSCRIBE
destination:test_queue
ack:client
id:6250520166077902233
selector:test_queue_placeholder
activemq.prefetchSize:1
receipt:71806d91e413075ecdc5c1b7debb029b
[...]

It emits a few more CONNECT frames interspersed with normal operation before eventually crashing with the error message Unexpected response received. Expected a "CONNECTED" Frame to determine Version. Got a "Message" Frame

If session and server headers are supplied, this behaviour isn't exhibited, and it works fine.

CONNECT
accept-version:1.0,1.1,1.2
host:192.168.0.59
heart-beat:0,0

^ CONNECTED
version:1.2
session:placeholder
server:Selenetherium/0.0.0

^ SUBSCRIBE
destination:test_queue
ack:client
id:4903425750406440245
selector:test_queue_placeholder
receipt:f8525dfa0c1d83b28066280b483a4449
[...]

session is ambiguously defined in 1.0, it could be interpreted as being required, but in all future versions, all headers except version are optional in CONNECTED.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions