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

FreeBSD Manual Pages

  
 
  

home | help
idn2_to_ascii_4i2(3)		     libidn2		    idn2_to_ascii_4i2(3)

NAME
     idn2_to_ascii_4i2 - API function

SYNOPSIS
     #include <idn2.h>

     int idn2_to_ascii_4i2(const uint32_t * input, size_t inlen, char ** output,
     int flags);

ARGUMENTS
     const uint32_t * input
		 zero terminated input Unicode (UCS-4) string.

     size_t inlennumber of elements in	input .

     char ** output
		 pointer to newly allocated zero-terminated output string.

     int flags	 optional idn2_flags to modify behaviour.

DESCRIPTION
     The  ToASCII operation takes a sequence of Unicode code points that make up
     one domain label and transforms it into a sequence of code  points  in  the
     ASCII range (0..7F). If ToASCII succeeds, the original sequence and the re-
     sulting sequence are equivalent labels.

     It is important to note that the ToASCII operation can fail.  ToASCII fails
     if  any step of it fails. If any step of the ToASCII operation fails on any
     label in a domain name, that domain name MUST NOT be used	as  an	interna-
     tionalized domain name.  The method for dealing with this failure is appli-
     cation-specific.

     The inputs to ToASCII are a sequence of code points.

     ToASCII  never  alters  a sequence of code points that are all in the ASCII
     range to begin with (although it could fail). Applying the  ToASCII  opera-
     tion multiple effect as applying it just once.

     The default behavior of this function (when flags are zero) is to apply the
     IDNA2008  rules  without  the TR46 amendments. As the TR46 non-transitional
     processing is nowadays ubiquitous, when unsure, it is recommended	to  call
     this  function  with  the IDN2_NONTRANSITIONAL and the IDN2_NFC_INPUT flags
     for compatibility with other software.

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

SINCE
     2.1.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_to_ascii_4i2(3)

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

home | help