[
https://issues.apache.org/jira/browse/PROTON-915?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14590430#comment-14590430
]
Andrew Stitcher commented on PROTON-915:
----------------------------------------
I have a fix for this now - try the attached patch.
However this fails the current tests, because proton-j (and proton-c in client
mode) ignore the spec and send the AMQP header followed by and open and
immediate close frame. Which I don't think is allowed as the spec says "*MUST*
... and then close the socket".
You could argue that the spec doesn't forbid bytes between the coirrect header
and closing the socket, but I think that's a stretch.
I can make the test less restrictive if that is the consensus here, but I think
there may be a larger spec compliance issue.
> Incompatible protocol header handled incorrectly
> ------------------------------------------------
>
> Key: PROTON-915
> URL: https://issues.apache.org/jira/browse/PROTON-915
> Project: Qpid Proton
> Issue Type: Bug
> Components: proton-c
> Affects Versions: 0.9, 0.9.1
> Reporter: Gordon Sim
> Assignee: Andrew Stitcher
> Priority: Blocker
> Fix For: 0.10
>
>
> The correct response is to send back a supported header[1] before closing the
> socket. This worked for 0.8 but is broker from 0.9 onwards, I believe by this
> commit:
> https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;a=commit;h=1b2be03c748ef5a57cf181f8373b9b6e8f8cfd22
> It means anything relying on proton-c for protocol header handling is not
> compliant with the spec.
> [1] section 2.2 of spec: "If the requested protocol version is not
> supported, the server MUST send a protocol header with a supported protocol
> version and then close the socket."
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)