You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Henryk Konsek (JIRA)" <ji...@apache.org> on 2012/08/03 18:14:02 UTC

[jira] [Created] (CAMEL-5484) URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0

Henryk Konsek created CAMEL-5484:
------------------------------------

             Summary: URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0
                 Key: CAMEL-5484
                 URL: https://issues.apache.org/jira/browse/CAMEL-5484
             Project: Camel
          Issue Type: Bug
    Affects Versions: 2.10.0
            Reporter: Henryk Konsek
            Assignee: Henryk Konsek
             Fix For: 2.11.0


>From Marco's message [1]:


I am migrating my application from Camel 2.8.2 to Camel 2.10.0 and found
following issue:

when normalizing a uri with URISupport.normalizeUri which contains %26 in
one of its parameters the entity is transformed to '&' and essentially lost
from the parameter value; this was not happening with camel 2.8.2.

for instance normalizing following URL:
"ftp://user@host/doveci?password=pass%26"

with camel 2.10.0 the result is following:
"ftp://user@host/doveci?&password=pass"

with camel 2.8.2 the result is following:
"ftp://user@host/doveci?password=pass%26"

it looks like in camel 2.10.0 '%26' is decoded to '&' and moved at the very
beginning of the string (possibly because camel thinks it is a parameter
named null string) resulting in an invalid Uri.

is there any way to workaround/fix this? I can't force all my customers to
avoid using & on their passwords.

[1] http://mail-archives.apache.org/mod_mbox/camel-users/201207.mbox/%3C1343748069925-5716633.post@n5.nabble.com%3E


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CAMEL-5484) URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CAMEL-5484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13464615#comment-13464615 ] 

Claus Ibsen commented on CAMEL-5484:
------------------------------------

What could be considered is a a special syntax to denote to use the raw part as is (eg no encoding). For example doing:
{code}
password=#raw##pass%26"##
{code}

The trick is to find unique start and end markers that wont clash with what people would type.
                
> URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0
> -------------------------------------------------------------------
>
>                 Key: CAMEL-5484
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5484
>             Project: Camel
>          Issue Type: Bug
>    Affects Versions: 2.10.0
>            Reporter: Henryk Konsek
>            Assignee: Claus Ibsen
>             Fix For: 2.11.0
>
>
> From Marco's message [1]:
> I am migrating my application from Camel 2.8.2 to Camel 2.10.0 and found
> following issue:
> when normalizing a uri with URISupport.normalizeUri which contains %26 in
> one of its parameters the entity is transformed to '&' and essentially lost
> from the parameter value; this was not happening with camel 2.8.2.
> for instance normalizing following URL:
> "ftp://user@host/doveci?password=pass%26"
> with camel 2.10.0 the result is following:
> "ftp://user@host/doveci?&password=pass"
> with camel 2.8.2 the result is following:
> "ftp://user@host/doveci?password=pass%26"
> it looks like in camel 2.10.0 '%26' is decoded to '&' and moved at the very
> beginning of the string (possibly because camel thinks it is a parameter
> named null string) resulting in an invalid Uri.
> is there any way to workaround/fix this? I can't force all my customers to
> avoid using & on their passwords.
> [1] http://mail-archives.apache.org/mod_mbox/camel-users/201207.mbox/%3C1343748069925-5716633.post@n5.nabble.com%3E

--
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

[jira] [Commented] (CAMEL-5484) URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CAMEL-5484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13464617#comment-13464617 ] 

Claus Ibsen commented on CAMEL-5484:
------------------------------------

Or simply with no end token so its simple as, eg with both password and disconnect options. Yet again the trick is the & sign is used as parameter separator. So we may need an end token, in case people have % in passwords. eg if a password is
{code}
pass%26&a=b"
{code}
Then it may appear as 2 options, as we got a=b

{code}
password=#raw#pass%26"&disconnect=true
{code}
                
> URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0
> -------------------------------------------------------------------
>
>                 Key: CAMEL-5484
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5484
>             Project: Camel
>          Issue Type: Bug
>    Affects Versions: 2.10.0
>            Reporter: Henryk Konsek
>            Assignee: Claus Ibsen
>             Fix For: 2.11.0
>
>
> From Marco's message [1]:
> I am migrating my application from Camel 2.8.2 to Camel 2.10.0 and found
> following issue:
> when normalizing a uri with URISupport.normalizeUri which contains %26 in
> one of its parameters the entity is transformed to '&' and essentially lost
> from the parameter value; this was not happening with camel 2.8.2.
> for instance normalizing following URL:
> "ftp://user@host/doveci?password=pass%26"
> with camel 2.10.0 the result is following:
> "ftp://user@host/doveci?&password=pass"
> with camel 2.8.2 the result is following:
> "ftp://user@host/doveci?password=pass%26"
> it looks like in camel 2.10.0 '%26' is decoded to '&' and moved at the very
> beginning of the string (possibly because camel thinks it is a parameter
> named null string) resulting in an invalid Uri.
> is there any way to workaround/fix this? I can't force all my customers to
> avoid using & on their passwords.
> [1] http://mail-archives.apache.org/mod_mbox/camel-users/201207.mbox/%3C1343748069925-5716633.post@n5.nabble.com%3E

--
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

[jira] [Resolved] (CAMEL-5484) URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CAMEL-5484?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen resolved CAMEL-5484.
--------------------------------

    Resolution: Not A Problem
      Assignee: Claus Ibsen  (was: Henryk Konsek)

This is working as designed. When using %nn you have decimal encoding. So if you have a password with %26 in the password, you would need to encode the % sign, into %25

So it becomes password=pass%2526"


                
> URISupport.normalizeUri different result from camel 2.8.2 to 2.10.0
> -------------------------------------------------------------------
>
>                 Key: CAMEL-5484
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5484
>             Project: Camel
>          Issue Type: Bug
>    Affects Versions: 2.10.0
>            Reporter: Henryk Konsek
>            Assignee: Claus Ibsen
>             Fix For: 2.11.0
>
>
> From Marco's message [1]:
> I am migrating my application from Camel 2.8.2 to Camel 2.10.0 and found
> following issue:
> when normalizing a uri with URISupport.normalizeUri which contains %26 in
> one of its parameters the entity is transformed to '&' and essentially lost
> from the parameter value; this was not happening with camel 2.8.2.
> for instance normalizing following URL:
> "ftp://user@host/doveci?password=pass%26"
> with camel 2.10.0 the result is following:
> "ftp://user@host/doveci?&password=pass"
> with camel 2.8.2 the result is following:
> "ftp://user@host/doveci?password=pass%26"
> it looks like in camel 2.10.0 '%26' is decoded to '&' and moved at the very
> beginning of the string (possibly because camel thinks it is a parameter
> named null string) resulting in an invalid Uri.
> is there any way to workaround/fix this? I can't force all my customers to
> avoid using & on their passwords.
> [1] http://mail-archives.apache.org/mod_mbox/camel-users/201207.mbox/%3C1343748069925-5716633.post@n5.nabble.com%3E

--
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