[
https://issues.apache.org/jira/browse/QPIDIT-68?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kim van der Riet updated QPIDIT-68:
-----------------------------------
Affects Version/s: 0.1.0
> Amqp Types test for binary sends only printable strings
> -------------------------------------------------------
>
> Key: QPIDIT-68
> URL: https://issues.apache.org/jira/browse/QPIDIT-68
> Project: Apache QPID Interoperability Test Suite
> Issue Type: Bug
> Components: AMQP Types Test
> Affects Versions: 0.1.0
> Reporter: Chuck Rolke
>
> In the Amqp Types test the binary data is defined in Json. One of the defs is
> huge but the first four are defined as:
> {noformat}
> 'binary': [bytes(),
> bytes(12345),
> b'Hello, world',
> b'\\x01\\x02\\x03\\x04\\x05abcde\\x80\\x81\\xfe\\xff',
> {noformat}
> Adding a little code to instrument the cli argument containing the Json and
> running a wireshark snoop reveals how these four strings are handled by
> ProtonCpp.
> Note that jira makes it hard to render a backslash character. In these tables
> the <backslash> token represents on ascii character.
> h3. Json command line arg
> The json generated by python arrives at ProtonCpp arg four as a string
> ||position||character||hex||
> |0|'['|0x5b|
> |1|'"'|0x22|
> |2|'"'|0x22|
> |3|','|0x2c|
> |4|' '|0x20|
> |5|'"'|0x22|
> |6|'1'|0x31|
> |7|'2'|0x32|
> |8|'3'|0x33|
> |9|'4'|0x34|
> |10|'5'|0x35|
> |11|'"'|0x22|
> |12|','|0x2c|
> |13|' '|0x20|
> |14|'"'|0x22|
> |15|'H'|0x48|
> |16|'e'|0x65|
> |17|'l'|0x6c|
> |18|'l'|0x6c|
> |19|'o'|0x6f|
> |20|','|0x2c|
> |21|' '|0x20|
> |22|'w'|0x77|
> |23|'o'|0x6f|
> |24|'r'|0x72|
> |25|'l'|0x6c|
> |26|'d'|0x64|
> |27|'"'|0x22|
> |28|','|0x2c|
> |29|' '|0x20|
> |30|'"'|0x22|
> |31|'backslash'|0x5c|
> |32|'backslash'|0x5c|
> |33|'x'|0x78|
> |34|'0'|0x30|
> |35|'1'|0x31|
> |36|'backslash'|0x5c|
> |37|'backslash'|0x5c|
> |38|'x'|0x78|
> |39|'0'|0x30|
> |40|'2'|0x32|
> |41|'backslash'|0x5c|
> |42|'backslash'|0x5c|
> |43|'x'|0x78|
> |44|'0'|0x30|
> |45|'3'|0x33|
> |46|'backslash'|0x5c|
> |47|'backslash'|0x5c|
> |48|'x'|0x78|
> |49|'0'|0x30|
> |50|'4'|0x34|
> |51|'backslash'|0x5c|
> |52|'backslash'|0x5c|
> |53|'x'|0x78|
> |54|'0'|0x30|
> |55|'5'|0x35|
> |56|'a'|0x61|
> |57|'b'|0x62|
> |58|'c'|0x63|
> |59|'d'|0x64|
> |60|'e'|0x65|
> |61|'backslash'|0x5c|
> |62|'backslash'|0x5c|
> |63|'x'|0x78|
> |64|'8'|0x38|
> |65|'0'|0x30|
> |66|'backslash'|0x5c|
> |67|'backslash'|0x5c|
> |68|'x'|0x78|
> |69|'8'|0x38|
> |70|'1'|0x31|
> |71|'backslash'|0x5c|
> |72|'backslash'|0x5c|
> |73|'x'|0x78|
> |74|'f'|0x66|
> |75|'e'|0x65|
> |76|'backslash'|0x5c|
> |77|'backslash'|0x5c|
> |78|'x'|0x78|
> |79|'f'|0x66|
> |80|'f'|0x66|
> |81|'"'|0x22|
> |82|','|0x2c|
> h3. Over the wire
> The ProtonCpp does its work and sends messages over the wire.
> * The messages are encoded with type A0 (binary:vbin8) and an appropriate
> length.
> ||Message||Content||
> | 0 | "" <empty message> |
> | 1 | "12345" <five bytes with ascii encodings of the numbers> |
> | 2 | "Hello, world" |
> | 3 | "<backslash>x01<backslash>x02<backslash>x03<backslash>x05<backslash>x05
> abcd <backslash>x80<backslash>x81<backslash>xfe<backslash>xff|
> The intent of the test appears to have binary, non-printable bytes (0x01,
> 0x02, 0xff) in the messages but that's not what happens.
> Maybe this is something simple like having the double backslashes in the test
> python code.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]