help-libidn
[Top][All Lists]
Advanced

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

Re: libidn2 tr#46 support


From: Tim Ruehsen
Subject: Re: libidn2 tr#46 support
Date: Fri, 04 Nov 2016 10:00:37 +0100
User-agent: KMail/5.2.3 (Linux/4.8.0-1-amd64; KDE/5.27.0; x86_64; ; )

On Thursday, November 3, 2016 9:44:45 PM CET Simon Josefsson wrote:
> Tim Rühsen <address@hidden> writes:
> > Hi Simon,
> > 
> > are you goind to support TR#46 for libidn2 ?
> 
> Hi Tim.  I would like to, but there is too little time.  I very much
> like help with it.

Simon, well known problem everywhere :-( Too less time and more and more 
projects needs attention... huge lack of developers as it seems.

> > Today I rewrote IDN code for wget (libidn) to use libidn2 + libunistring.
> > But that makes sense in the long term only if TR#46 is in sight.
> 
> What APIs in libunistring do you need?  NFC?  libidn2 uses libunistring
> (from gnulib) internally, so if there is some simple API that would be
> useful to export, to avoid having to link with libunistring as well, I'm
> happy to add export it from libidn2.

At least here the GNU linker is clever enough to link libunistring just one 
time (checked with ldd).

What I need and already do via libunistring API is lowercasing and NFC/NFCK 
(not 100% sure which one to use).
I think adding two flags to the idn2 API should do it.

Shouldn't TR#46 be mandatory ? If not, another flag would do it.

> The idea is that libidn2 should be a usable IDNA2008 library, and that
> probably involves exposing NFC and TR46 APIs as well.

Hiding libunistring details is IMO a good idea here.

Ah yes, another API wish... decoding complete ACE (xn--) domain strings into 
UTF-8. Currently not possible with idn2_register_u8(). It just works for 
single labels with memory allocation for each label. So now each application 
has to provide it's own loop with catching all corner cases... tedious and 
unneeded code duplication.

An additional flag would do it here as well (and also keep backward 
compatibility).

Regards, Tim

Attachment: signature.asc
Description: This is a digitally signed message part.


reply via email to

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