activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Justin <>
Subject [APOLLO] STOMP 1.2 broker sends frames with NUL bytes in the header
Date Sat, 08 Mar 2014 14:36:44 GMT

during tests I found that the Apollo 1.6 server in some situations sends 
a ERROR frame which contains an invalid character.

My (Delphi/Free Pascal) client library detected this character is a NUL 
(#0) byte. The error message in the ERROR frame message header is:

"Invalid STOMP frame command\c <NUL>SUBSCRIBE"

I am still investigating why my client library sends this NUL byte to 
the broker. However I wanted to report this also because the server 
should not send non-compliant STOMP frames back to the client.

Other message brokers seem to silently ignore the incoming NUL byte 
(ActiveMQ 5.9 and RabbitMQ 3.2.4), as they send no error frame back.

Here is the full trace log output which shows the communication between 
client and server

2014-03-08 15:13:05,480 | TRACE | received frame: 
StompFrame(CONNECT,List((login,admin), (passcode,password), 
(accept-version,1.2), (heart-beat,0,0), 
(host,localhost)),NilContent,true,List()) |
2014-03-08 15:13:05,559 | TRACE | sending frame: 
StompFrame(CONNECTED,List((version,1.2), (server,apache-apollo/1.6), 
(host-id,mybroker), (session,mybroker-21ed), (heart-beat,100,10000), 
(user-id,admin)),NilContent,false,List()) |
2014-03-08 15:13:05,574 | TRACE | received frame: 
(id,{0A809642-269F-4854-9831-B7FDE85CAEC8})),NilContent,true,List()) |
2014-03-08 15:13:05,574 | TRACE | sending frame: 
StompFrame(ERROR,List((message,Invalid STOMP frame command\c 
<NUL>SUBSCRIBE)),BufferContent(ascii: ),false,List()) |

Michael Justin

View raw message