[ 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)