At the meeting in Vancouver, Dave Thaler made a point that I found convincing:

Where is the character set for IPv6 zone IDs specified? If we accept that future interface names might include non-roman characters, then we have to assume that to allow safe unambiguous use in URIs, interface names have to undergo escaping.

And if the interface name itself is going to be escaped using URI "% xx" notation, then why not escape the '%' the same way?

This argues in support of what Microsoft already did: Encode '%' as "% 25".

It's not my favourite outcome, but based on Dave Thaler's comment, it's the one that gets my vote.

In the spirit of "be liberal with what you accept" the doc should also advocate that URI parsers are forgiving about accepting bare '%' signs -- i.e. a '%' not followed by two valid hex characters is left untouched. This lets a human user copy-and-paste "fe80::a%en1" from a "ping" command and have it work, though the strictly correct form (which URI generators should output) remains "fe80::a%25en1".

Stuart Cheshire

--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to