dwww Home | Manual pages | Find package

idn2_register_u8(3)                 libidn2                 idn2_register_u8(3)

NAME
       idn2_register_u8 - API function

SYNOPSIS
       #include <idn2.h>

       int  idn2_register_u8(const  uint8_t  *  ulabel, const uint8_t * alabel,
       uint8_t ** insertname, int flags);

ARGUMENTS
       const uint8_t * ulabel
                   input zero-terminated UTF-8 and Unicode NFC string, or NULL.

       const uint8_t * alabel
                   input zero-terminated ACE encoded string (xn--), or NULL.

       uint8_t ** insertname
                   newly allocated output variable with  name  to  register  in
                   DNS.

       int flags   optional idn2_flags to modify behaviour.

DESCRIPTION
       Perform  IDNA2008 register string conversion on domain label  ulabel and
       alabel , as described in section 4 of RFC 5891.   Note  that  the  input
       ulabel must be encoded in UTF-8 and be in Unicode NFC form.

       Pass  IDN2_NFC_INPUT  in  flags to convert input  ulabel to NFC form be-
       fore further processing.

       It is recommended to supply both  ulabel and  alabel  for  better  error
       checking,  but  supplying  just  one of them will work.  Passing in only
       alabel is better than only  ulabel .  See RFC 5891 section  4  for  more
       information.

       After  version  0.11:  insertname may be NULL to test conversion of  src
       without allocating memory.

RETURNS
       On successful conversion IDN2_OK is returned, when the given  ulabel and
       alabel does not match each other IDN2_UALABEL_MISMATCH is returned, when
       either of the input labels are too long IDN2_TOO_BIG_LABEL is  returned,
       when   alabel  does  does  not  appear  to  be a proper A-label IDN2_IN-
       VALID_ALABEL is returned, or another error code is returned.

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 © 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 command

              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_register_u8(3)

Generated by dwww version 1.16 on Sat Oct 3 06:50:41 CEST 2026.