Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Thursday, June 13, 2019
 
 

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);

Description

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  normal-
                   ized 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
       described in section 5 of RFC 5891.  Note that the input string must be
       encoded in UTF-8 and be in Unicode NFC form.

       Pass  IDN2_NFC_INPUT in  flags to convert input to NFC form before fur-
       ther 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-labels  and  perform  additional  testing  (not
       implemented  yet).  Pass IDN2_TRANSITIONAL to enable Unicode TR46 tran-
       sitional 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.
       Previously  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


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | library/libidn2  |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+
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:

              http://www.gnu.org/software/libidn2/manual/

NOTES
       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source         was         downloaded         from         https://git-
       lab.com/libidn/libidn2/uploads/15020b7769a7c69cebd38654ddf0648a/libidn2-2.0.4.tar.gz

       Further information about this software can be found on the open source
       community website at https://www.gnu.org/software/libidn/.



libidn2                              2.0.4                   idn2_lookup_u8(3)