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  re-
       turned, 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_INVALID_ALABEL is returned, or another error code is returned.

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.1.48-1925             idn2_register_u8(3)

Generated by dwww version 1.14 on Sat Jun 13 12:02:53 CEST 2026.