You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Martin Kraemer <Ma...@Fujitsu-Siemens.com> on 2002/01/25 17:38:50 UTC

[Apache-1.3]: URL-Escaping

Hi again,

ap_os_escape_path() and its wrapper macro ap_escape_uri() fail to
escape a literal '%' in a path. I may be wrong, but IMHO a directory
called %dir should be url-encoded as:
  <a href="%25dir/">%dir</a>

Or am I wrong? If I am right, then either a new T_ class must be defined in
gen_test_char, or
    while ((c = *s)) {
        if (TEST_CHAR(c, T_OS_ESCAPE_PATH)) {
            d = c2x(c, d);
        }
        else {
            *d++ = c;
        }
should be using
        if (c == '%' || TEST_CHAR(c, T_OS_ESCAPE_PATH)) {
instead.

Protocol gurus? Anyone?

   Martin
-- 
<Ma...@Fujitsu-Siemens.com>         |     Fujitsu Siemens
Fon: +49-89-636-46021, FAX: +49-89-636-47655 | 81730  Munich,  Germany

Re: [Apache-1.3]: URL-Escaping

Posted by Martin Kraemer <Ma...@Fujitsu-Siemens.com>.
Sorry for all this so shortly after 1.3.23's announcement. But really,
this all has hit me only yesterday, so I could not complain earlier.
And when rewriting proxy_ftp, a certain stabilizing period would
be good (no need rushing out a fix for a release in 3 days).

   Martin
-- 
<Ma...@Fujitsu-Siemens.com>         |     Fujitsu Siemens
Fon: +49-89-636-46021, FAX: +49-89-636-47655 | 81730  Munich,  Germany

Re: [Apache-1.3]: URL-Escaping

Posted by Martin Kraemer <Ma...@Fujitsu-Siemens.com>.
On Fri, Jan 25, 2002 at 05:38:50PM +0100, Kraemer, Martin wrote:
> 
> Or am I wrong? If I am right, then either a new T_ class must be defined in
> gen_test_char, or

Uhmmmm. I *AM* wrong.  T_OS_ESCAPE_PATH should cause a '%' to be escaped.
I must have been blind when I tried it.

   Martin
-- 
<Ma...@Fujitsu-Siemens.com>         |     Fujitsu Siemens
Fon: +49-89-636-46021, FAX: +49-89-636-47655 | 81730  Munich,  Germany