[ 
https://issues.apache.org/jira/browse/DISPATCH-926?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16363674#comment-16363674
 ] 

ASF GitHub Bot commented on DISPATCH-926:
-----------------------------------------

Github user rgodfrey commented on the issue:

    https://github.com/apache/qpid-dispatch/pull/256
  
    The encoding of a single offered capability as a symbol (rather than as an 
array of symbols) is valid.  As per 
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-types-v1.0-os.html#section-composite-type-representation
    
    > The multiple attribute of a field description controls whether multiple 
element values are permitted in the representation. A single element of the 
type specified in the field description is always permitted. Multiple values 
are represented by the use of an array where the type of the elements in the 
array is the type defined in the field definition. Note that a null value and a 
zero-length array (with a correct type for its elements) both describe an 
absence of a value and MUST be treated as semantically identical.
    
    So I don't think this change is necessary


> offered-capabilities is not compliant with OASIS AMQP 1.0 in case of 
> QD_CAPABILITY_ANONYMOUS_RELAY
> --------------------------------------------------------------------------------------------------
>
>                 Key: DISPATCH-926
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-926
>             Project: Qpid Dispatch
>          Issue Type: Bug
>            Reporter: Tomofumi Hayashi
>            Priority: Major
>
> In OASIS AMQP 1.0 document, offered-capabilities should be type symbol[], 
> symbol array as following: 
> [http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#type-open]
> But in case of "saslMechanisms: ANONYMOUS" (listener section of 
> qdrouterd.conf), qdrouterd sends it as 'symbol' (!= symbol[]).
> I am just a beginner of AMQP, so it might be my misunderstood.... Could you 
> please double check?
> Candidate fix code:
> {noformat}
> diff --git a/src/server.c b/src/server.c
> index 4dff133e..5cc7cf01 100644
> --- a/src/server.c
> +++ b/src/server.c
> @@ -429,6 +429,8 @@ static void decorate_connection(qd_server_t *qd_server, 
> pn_connection_t *conn, c
>      //
>      // Offer ANONYMOUS_RELAY capability
>      //
> +    pn_data_put_array(pn_connection_offered_capabilities(conn), false, 
> PN_SYMBOL);
> +    pn_data_enter(pn_connection_offered_capabilities(conn));
>      pn_data_put_symbol(pn_connection_offered_capabilities(conn), 
> pn_bytes(clen, (char*) QD_CAPABILITY_ANONYMOUS_RELAY));
>  
>      //
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to