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

Reply via email to