help-libidn
[Top][All Lists]
Advanced

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

Re: Decoding ACE created by libidn2...


From: Simon Josefsson
Subject: Re: Decoding ACE created by libidn2...
Date: Wed, 05 Jun 2013 22:57:52 +0200
User-agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.3 (gnu/linux)

Thomas Jacob <address@hidden> writes:

> Hi everyone,
>
> Not sure if this is the right place to ask questions
> about Libidn2, but anyway...

Hi.  It is the right place.

> What's supposed to be the standard way to convert
> ACE encoded domain names that were created with
> according to IDNA2008 (e.g. "xn--bue-6ka.de" -> "buße.de" )?

There is none.  The IDNA2008 standard does not contain a description of
how to do that conversion.

It is not trivial, and there may be multiple reasonable implementations.
I have been meaning to write up one way to do it, and to implement that,
in the hope that it could be established as a standard, but haven't
found time.  I recall sending a short summary of the steps required to
the IDNA list (I think) a long time ago when I noticed this issue with
IDNA2008.

> Libidn2 doesn't seem to supply such a function yet, the
> older Libidn (at least the cmd line tool) doesn't either
> really, but I can manually split the punycode part from
> the xn-- in each label and then use Libidn's punycode decoder
> to reach my goal. Seems a bit of a hassle though.

Yup, something like this is what a library could implement.  There are
aspects which is unclear (for example, how to split the domain?  On
ASCII dot '.' only, or the IDNA2003 domain separators?  Should you split
on escaped dots?).

> But I seem to remember to have read somewhere
> that the reason IDNA2008 wasn't just added to Libidn
> was to make it possible to install just this
> new library in the future (embedded systems and
> the like), so there probably should be some
> way to do this without Libidn?

Yes, libidn2 should be complete by its own, so it is todo item to
implement this in libidn2.

/Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]