Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
idn2_lookup_u8(3)		     libidn2		       idn2_lookup_u8(3)

NAME
     idn2_lookup_u8 - API function

SYNOPSIS
     #include <idn2.h>

     int idn2_lookup_u8(const uint8_t * src, uint8_t ** lookupname, int flags);

ARGUMENTS
     const uint8_t * src
		 input	zero-terminated  UTF-8	string in Unicode NFC normalized
		 form.

     uint8_t ** lookupname
		 newly allocated output variable with name to lookup in DNS.

     int flags	 optional idn2_flags to modify behaviour.

DESCRIPTION
     Perform IDNA2008 lookup string conversion on domain  name	 src  ,  as  de-
     scribed  in  section 5 of RFC 5891.  Note that the input string must be en-
     coded in UTF-8 and be in Unicode NFC form.

     Pass IDN2_NFC_INPUT in  flags to convert input to NFC form  before  further
     processing.   IDN2_TRANSITIONAL  and  IDN2_NONTRANSITIONAL do already imply
     IDN2_NFC_INPUT.

     Pass IDN2_ALABEL_ROUNDTRIP in  flags to convert any input A-labels to U-la-
     bels and perform additional testing. This is default since version 2.2.  To
     switch this behavior off, pass IDN2_NO_ALABEL_ROUNDTRIP

     Pass IDN2_TRANSITIONAL to enable Unicode TR46 transitional processing,  and
     IDN2_NONTRANSITIONAL to enable Unicode TR46 non-transitional processing.

     Multiple flags may be specified by binary or:ing them together.

     After version 2.0.3: IDN2_USE_STD3_ASCII_RULES disabled by default.  Previ-
     ously  we	were eliminating non-STD3 characters from domain strings such as
     _443._tcp.example.com, or IPs 1.2.3.4/24  provided  to  libidn2  functions.
     That  was	an  unexpected regression for applications switching from libidn
     and thus it is no longer applied by default.  Use IDN2_USE_STD3_ASCII_RULES
     to enable that behavior again.

     After version 0.11:  lookupname may be NULL to test lookup of  src  without
     allocating memory.

RETURNS
     On  successful  conversion IDN2_OK is returned, if the output domain or any
     label would have been too long IDN2_TOO_BIG_DOMAIN or IDN2_TOO_BIG_LABEL is
     returned, or another error code is returned.

SINCE
     0.1

REPORTING BUGS
     Report bugs to <help-libidn@gnu.org>.
     General guidelines for reporting bugs: https://www.gnu.org/gethelp/
     Libidn2 home page: https://www.gnu.org/software/libidn2/

COPYRIGHT
     Copyright (C) 2002-2025 Simon Josefsson.
     Copying and distribution of this file, with or  without  modification,  are
     permitted	in  any medium without royalty provided the copyright notice and
     this notice are preserved.

SEE ALSO
     The full documentation for libidn2 is maintained as a Texinfo  manual.   If
     the info and libidn2 programs are properly installed at your site, the com-
     mand

	    info libidn2

     should  give  you access to the complete manual.  As an alternative you may
     obtain the manual from:

	    https://www.gnu.org/software/libidn/libidn2/manual/

libidn2 			      2.3.8		       idn2_lookup_u8(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=idn2_lookup_u8&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help