activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christian Posta (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (APLO-255) Typo and weird exception text in StompCodec.scala
Date Mon, 10 Sep 2012 22:04:07 GMT

    [ https://issues.apache.org/jira/browse/APLO-255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13452499#comment-13452499
] 

Christian Posta commented on APLO-255:
--------------------------------------

I see Hiram committed the fix for escaping the exception and fixing the typo (r1378607)...


On my side, I cannot connect with telnet. The connection terminates when trying to send this
frame:

CONNECT
accept-version:1.1
login:admin
passcode:password

^@


A little digging led to this... The telnet client is sending end-of-lines as \r\n
When the StompCodec tries to parse this in the apply() function that's defined in the read_headers(...)
function, it tries to move to the tail of the line (line.moveTail(-1)

The Buffer object's moveTail method adds the parameter (-1) to the length of the line. So
for \n it works fine (the line.length is effectively zero: true length of "1" + the parameter
"-1"), but for \r\n, the effective length is '1' (2 + -1). So the apply method continues on
trying to parse the header.... which will be wrong. 

Hiram, any suggestion on how the Buffer class should determine the tail? 
                
> Typo and weird exception text in StompCodec.scala
> -------------------------------------------------
>
>                 Key: APLO-255
>                 URL: https://issues.apache.org/jira/browse/APLO-255
>             Project: ActiveMQ Apollo
>          Issue Type: Bug
>         Environment: apollo-99-trunk-20120829.114214-107
>            Reporter: Lionel Cons
>            Priority: Minor
>         Attachments: APLO-255_connect_as_telnet.patch
>
>
> While interacting with the broker via telnet, Apollo complained with:
> ]012-08-29 15:08:00,619 Shutting connection 'null'  down due to: java.io.IOException:
Unable to parser header line [ascii: 
> The ] at the beginning is weird, this comes from a control character (^M) being logged.
> The invalid data should be properly escaped before being turned into an exception. Here
is the current code:
>  throw new IOException("Unable to parser header line [" + line + "]")
> Then you may want to s/to parser/to parse/g.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message