---
name: "idn2_to_unicode_8zlz"
section: "3"
platform: "linux"
package: "libidn2"
version: "2.3.8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/idn2_to_unicode_8zlz"
---

# idn2\_to\_unicode\_8zlz(3)

API function

## NAME

idn2\_to\_unicode\_8zlz - API function

## SYNOPSIS

**#include \<idn2.h\>**

**int idn2\_to\_unicode\_8zlz(const char \*** *input***, char \*\*** *output***, int** *flags***);**

## ARGUMENTS

- const char \* input

  Input zero-terminated UTF-8 string.

- char \*\* output

  Newly allocated output string in current locale's character set.

- int flags

  Currently unused.

## DESCRIPTION

Converts a possibly ACE encoded domain name in UTF-8 format into a string encoded in the current locale's character set (punycode decoding). The output buffer will be zero-terminated and must be deallocated by the caller.

 *output* may be NULL to test lookup of  *input* without allocating memory.

## SINCE

2\.0.0

## 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/**
