Ken Giusti created PROTON-2085:
----------------------------------

             Summary: The minimal encoded proton message does not conform to 
the standard
                 Key: PROTON-2085
                 URL: https://issues.apache.org/jira/browse/PROTON-2085
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-c
    Affects Versions: proton-c-0.28.0
            Reporter: Ken Giusti
             Fix For: proton-c-future


To create the smallest "on the wire" AMQP message using proton-c:

char *buffer[10000]'
pn_message_t *pn_msg = pn_message();
size_t size = 10000;
int result = pn_message_encode(pn_msg, buffer, &size);

results in an encoded message of 8 bytes:

(gdb) p result
$1 = 0
(gdb) p size
$2 = 8
(gdb) x/8xb buffer
0x60f280 <buffer>:      0x00    0x53    0x70    0x45    0x00    0x53    0x73    
0x45

The encoded message consists of:

1) a Header section composed of a null list
2) a Properties section composed of a null list

Note there is no body section.

However, from the AMQP 1.0 spec [Message 
Format|http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-messaging-v1.0-os.html#section-message-format]
 section:

 The exact structure of a message, together with its encoding, is defined by 
the message format. This document defines the structure and semantics of 
message format 0 (MESSAGE-FORMAT). Altogether a message consists of the 
following sections:

{quote}    Zero or one header sections.

    Zero or one delivery-annotation sections.

    Zero or one message-annotation sections.

    Zero or one properties sections.

    Zero or one application-properties sections.

    The body consists of one of the following three choices: one or more data 
sections, one or more amqp-sequence sections, or a single amqp-value section.

    Zero or one footer sections.{quote}

So while the null header and property sections are legal (though unnecessary), 
the real issue is the lack of a body section.

I would've expected at least a body section 0x77 containing a NULL, or a 0x76 
with a NULL list.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to