idn2_lookup_u8(3) libidn2 idn2_lookup_u8(3)
NAME
idn2_lookup_u8 - API function
SYNOPSIS
#include <idn2.h>
idn2_lookup_u8(3) 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
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 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-labels 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.
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
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-2022 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.3 idn2_lookup_u8(3)
libidn2 2.3.3 - Generated Sun Aug 28 16:09:53 CDT 2022
