[ https://issues.apache.org/jira/browse/PROTON-915?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14591587#comment-14591587 ]
Robbie Gemmell commented on PROTON-915: --------------------------------------- I think it could be argued either way as it isnt necessarily strictily stated and the first bit you quoted further makes it muddy, but I think it is strongly implied that you dont send more bytes. E.g a couple of the other points in the section/list you quoted at http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#section-version-negotiation (and the related ascii art) read to me as saying 'send more if the header is supported, dont send more if it isnt': {quote} If the requested protocol version is supported, the server MUST send its own protocol header with the requested version to the socket, and then proceed according to the protocol definition. 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. {quote} Of course, this is all further complicated by SASL vs non-SASL, which is the same protocol 'version' but with a different 'id'. That only seems to be covered by Figure 2.13, but reads similarly to me as saying 'send the header and nothing else'. > 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: Rafael H. Schloming > Priority: Blocker > Fix For: 0.10 > > Attachments: > 0001-PROTON-915-Send-correct-AMQP-header-upon-protocol-mi.patch > > > 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)