<div dir="ltr">Marco;<div><br></div><div>From the wireshark info, it sounds like the rabbitmq-c client is sending completely the wrong data. It should send a Connection.Start-Ok method and not a content-header frame (e.g., the frame type should be 1 first few bytes of that frame should be: 0x01 {Method Frame}, 0x00, 0x00 {Channel 0}, 0x00, 0x00 0xXX, 0xXX {Big Endian length of frame in bytes} ). I'm also not sure what to to think about the sent header length: that should be 8 bytes or 64 bits, I suspect thats a wireshark oddity though.  </div>
<div><br></div><div>The octets reported by the RabbitMQ server error message don't really make sense to me: I'm having trouble correlating what is reported vs what I think should be, even if the system is doing an incorrect byteswap. I'm not 100% sure we're clear of any unaligned access issues, but I would guess we'd be hitting bus-errors in that case, though I'm not quite sure</div>
<div><br></div><div>Would you be willing to send me a filtered down wireshark log of the failed handshake?</div><div><br></div><div>-Alan</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 4, 2014 at 6:38 PM, Marco Scoffier <span dir="ltr"><<a href="mailto:marco@metm.org" target="_blank">marco@metm.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I apologize if this has been discussed before. I checked the archives but did not find any mention of the issue.<br>
<br>
I've compiled rabbitmq-c [1] for the arm architecture [2]  from and am trying to send messages to a broker running on another machine [3]. The rabbitmq-c examples run perfectly on the 64bit linux, same code compiled for arm device and running there sends a corrupt packet.<br>

<br>
[1] <a href="https://github.com/alanxz/rabbitmq-c" target="_blank">https://github.com/alanxz/<u></u>rabbitmq-c</a><br>
[2] armv6 linaro toolchain<br>
[3] linux 64bit rabbitmq-server ppa for ubuntu. running on 12.04<br>
<br>
I'm a little stuck about how to debug further and am looking for some pointers where to look in the code or what extra information I can provide.<br>
<br>
Wireshark shows three packets for the amqp_sendstring example<br>
<br>
ARM device/Source = 192.168.1.117<br>
64bit broker/Destination = 192.168.1.133<br>
<br>
Source          Destination    protocol length info<br>
--------------+---------------<u></u>+--------+------+------------<br>
192.168.1.117   192.168.1.133   AMQP    74      Protocol-Header 9-1<br>
192.168.1.133   192.168.1.117   AMQP    522     Connection.Start<br>
192.168.1.117   192.168.1.133   AMQP    190     Content-Header<br>
<br>
wireshark's amqp frame dissection shows an error on the 3rd Content-Header packet:<br>
<br>
Expert Info (Error/Protocol): Unknown header class 1290<br>
Message: Unknown header class 1290<br>
Severity level: Error<br>
Group: Protocol<br>
<br>
the rabbitmq-server on the linux machine provides this log message:<br>
<br>
=ERROR REPORT==== 3-Apr-2014::15:05:35 ===<br>
closing AMQP connection <0.380.0> (<a href="http://192.168.1.117:52890" target="_blank">192.168.1.117:52890</a> -> <a href="http://192.168.1.133:5672" target="_blank">192.168.1.133:5672</a>):<br>
{handshake_error,starting,0,<br>
                 {amqp_error,frame_error,<br>
                             "type 0, first 16 octets = <<5,10,0,11,0,0,0,80,98,112,<u></u>114,111,100,117,99,116>>...",<br>
                             none}}<br>
<br>
repeat that the same code compiled for 64bit linux same command works as expected.<br>
<br>
Thanks for any pointers,<br>
<br>
Marco<br>
______________________________<u></u>_________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.<u></u>rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/<u></u>cgi-bin/mailman/listinfo/<u></u>rabbitmq-discuss</a><br>
</blockquote></div><br></div>