Hello Joe,

On Di, 23 Mai 2006, Joe Orton wrote:
> I spent some time looking at this a while back and came to the 
> conclusion that it's not actually correct to have IDN support in neon at 
> all.  IDNA needs to be done at application level - hence the "A".  At 
> HTTP protocol level, only the ACE (converted-to-ASCII form) can ever be 
> used; that means in Host headers, in Location headers, in PROPFIND 
> response bodies, and so on.

> So, when using neon, the app should only ever be passing an ASCII domain 
> name to ne_session_create; to add IDNA support, the app needs to be 
> using libidn (or equivalent) directly, and doing the conversion itself.

Why do you want to use an external libidn while there's a suitable glibc
builtin libidn? Passing the new AI_IDN flag flag to getaddrinfo() extends
it being IDN-aware. BTW, NI_IDN does the same for getnameinfo(). And yes, I
can see your argument as neon is only a library not an application. Bu

Maybe you've got a short look to Olaf Kirch's traceroute replacement at
  ftp://ftp.lst.de/pub/people/okir/traceroute/traceroute-1.0.4.tar.bz2
which is full IDN-capable.

Another hint would be the link to the glibc IDN example below, because
using flag AI_IDN for gettaddrinfo(räksmörgås.josefsson.org) causes looking
up of iesg--rksmrgsa-0zap8p.josefsson.org in DNS. So the ACE is looked up
and will be used internally:

  
http://josefsson.org/cgi-bin/viewcvs.cgi/*checkout*/libidn/libc/example.c?content-type=text/plain

> $ CHARSET=iso-8859-1 ./example
> locale charset `iso-8859-1'
> gettaddrinfo(räksmörgås.josefsson.org):
> address `217.13.230.178'
> canonical name `178.230.13.217.in-addr.dgcsystems.net'
> $

Everything should be correct and also perfect - or am I absolutely wrong?
Maybe my patch/hack skipped a getnameinfo(), if there's one in.

Sorry, I can't really see the problem, because the converting-to-ASCII and
the other way round will be well done by getaddrinfo()/getnameinfo() when
passing AI_IDN/NI_IDN flags.


Greetings,
  Robert
_______________________________________________
neon mailing list
[email protected]
http://mailman.webdav.org/mailman/listinfo/neon

Reply via email to