Guy Allard created APLO-349:
-------------------------------
Summary: Empty STOMP Header Name is Allowed
Key: APLO-349
URL: https://issues.apache.org/jira/browse/APLO-349
Project: ActiveMQ Apollo
Issue Type: Bug
Components: apollo-stomp
Affects Versions: 1.7
Environment:
apache-apollo-99-trunk-20140130.205836-254-unix-distro.tar.gz
Ubuntu 12.04 LTS
Open JDK 6
Reporter: Guy Allard
Priority: Minor
A minor grouch.
Apollo allows and supports empty STOMP Header Names. If I read the BNF
correctly, header names need at least one character.
Recreating this should be trivial, but I can supply code if needed.
Stomp log excerpt showing this behavior:
2014-02-02 13:31:56,957 received frame: StompFrame(CONNECT,List((login,guest),
(passcode,guest), (accept-version,1.2), (host,localhost),
(content-length,0)),NilContent,true,List())
2014-02-02 13:31:56,961 sending frame: StompFrame(CONNECTED,List((version,1.2),
(server,apache-apollo/99-trunk-SNAPSHOT), (host-id,broker), (session,broker-7),
(heart-beat,100,10000)),NilContent,false,List())
2014-02-02 13:31:56,963 received frame:
StompFrame(SEND,List((destination,/queue/snge.common.queue),
(userkey1,uservalue1), (userkey2,uservalue3), (,EMPTY_HEADER_KEY_HERE),
(userkey3,uservalue3), (content-length,20)),BufferContent(ascii: publish:
message: 1),true,List())
2014-02-02 13:31:56,968 received frame:
StompFrame(DISCONNECT,List((receipt,5f41d5a1-c247-400b-bc11-b8c1f6e0fb3a),
(content-length,0)),NilContent,true,List())
2014-02-02 13:31:56,968 stomp protocol resources released
2014-02-02 13:31:56,970 sending frame:
StompFrame(RECEIPT,List((receipt-id,5f41d5a1-c247-400b-bc11-b8c1f6e0fb3a)),NilContent,false,List())
2014-02-02 13:32:07,733 received frame: StompFrame(CONNECT,List((login,guest),
(passcode,guest), (accept-version,1.2), (host,localhost),
(content-length,0)),NilContent,true,List())
2014-02-02 13:32:07,736 sending frame: StompFrame(CONNECTED,List((version,1.2),
(server,apache-apollo/99-trunk-SNAPSHOT), (host-id,broker), (session,broker-8),
(heart-beat,100,10000)),NilContent,false,List())
2014-02-02 13:32:07,739 received frame:
StompFrame(SUBSCRIBE,List((destination,/queue/snge.common.queue), (ack,auto),
(id,88b6e788-dab0-4358-a5c1-35f4e8e46c66),
(content-length,0)),NilContent,true,List())
2014-02-02 13:32:07,744 sending frame:
StompFrame(MESSAGE,List((message-id,broker-71),
(destination,/queue/snge.common.queue), (userkey1,uservalue1),
(userkey2,uservalue3), (,EMPTY_HEADER_KEY_HERE), (userkey3,uservalue3),
(content-length,20)),BufferContent(ascii: publish: message:
1),true,List((subscription,88b6e788-dab0-4358-a5c1-35f4e8e46c66), (ack,2)))
2014-02-02 13:32:07,747 received frame:
StompFrame(UNSUBSCRIBE,List((id,88b6e788-dab0-4358-a5c1-35f4e8e46c66),
(content-length,0)),NilContent,true,List())
2014-02-02 13:32:07,748 received frame:
StompFrame(DISCONNECT,List((receipt,e666faee-e233-4903-ac5d-a9d798b6e061),
(content-length,0)),NilContent,true,List())
2014-02-02 13:32:07,748 stomp protocol resources released
2014-02-02 13:32:07,748 sending frame:
StompFrame(RECEIPT,List((receipt-id,e666faee-e233-4903-ac5d-a9d798b6e061)),NilContent,false,List())
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)