Stuart, On 09/08/2012 22:31, Stuart Cheshire wrote: > At the meeting in Vancouver, Dave Thaler made a point that I found > convincing: > > Where is the character set for IPv6 zone IDs specified?
RFC 4007 doesn't do so, but can be read to imply ASCII. draft-ietf-6man-uri-zoneid-02 is explicit that it refers to the URI character set, which is ASCII: A <zone_id> SHOULD contain only ASCII characters classified in RFC 3986 as "unreserved". But it allows percent encoding in a URI, which is necessary because of the SHOULD: ZoneID = 1*( unreserved / pct-encoded ) > 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. If we want to internationalise the ZoneID, that would be a whole other discussion. > And if the interface name itself is going to be escaped using URI "%xx" > notation, then why not escape the '%' the same way? My impression is that this WG has already objected to that, which is why we ended up with the current proposal. I leave the next step to the WG Chair. Brian > 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 [email protected] Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6 --------------------------------------------------------------------
