[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Collected changes to 3028bis-12, section 2.4.2.4



On Mon, 2007-04-16 at 20:15 +0100, Alexey Melnikov wrote:
> Alexey Melnikov wrote:
> 
> > And add the following paragraph to the end of the section:
> >
> >  The following examples demonstrate valid and invalid encodings
> >  and how they are handled:

the list is quite long, I feel we can demonstrate more than one issue in
each example.

> >    "$${hex:40}" -> "$@"
> >    "${hex: 40 }" -> "@"
> >    "${HEX: 40}" -> "@"

the second is superfluous.

> >    "${hex:40" -> "${hex:40"
> >    "${hex:400}" -> "${hex:400}"

these are good.

> >    "${hex:40${hex:40}}" -> "${hex:40@}"

"${hex:40${hex:30}}" -> "${hex:400}"

would demonstrate that only one pass is done, too.

> >    "${unicode:40}" -> "@"
> >    "${ unicode:40}" -> "${ unicode:40}"
> >    "${UNICODE:40}" -> "@"

if we include the last example, the first in this set is superfluous
IMHO.  I'd like one of the examples to include backslash quoting, we
could extend that example, e.g., "\${UNICODE:40}" -> "@"

> >    "${UnICoDE:0000040}" -> "@"

fine.

> >    "${Unicode:40}" -> "@"

unnecessary, IMHO.

> >    "${Unicode:Cool}" -> "${Unicode:Cool}"
> >    "${unicode:1000000}" -> error
> >    "${unicode:200000}"  -> error
> >    "${Unicode:DF01}     -> error

ok.

> And I've missed Michael's favorite:
> 
>    "${hex:" -> "${hex:"

I think the fourth example from the top covers this already, that is
"${hex:40".
-- 
Kjetil T.