tld\_check\_8z(3) libidn tld\_check\_8z(3)

# [NAME](#NAME)

tld\_check\_8z - API function

# [SYNOPSIS](#SYNOPSIS)

**#include &lt;tld.h&gt;**

**int tld\_check\_8z(const char * in, size\_t * errpos, const Tld\_table \** overrides);**

# [ARGUMENTS](#ARGUMENTS)

[const char * in](#const)

Zero-terminated UTF8 string to process.

[size\_t * errpos](#size_t)

Position of offending character is returned here.

[const Tld\_table \** overrides](#const~2)

A **Tld\_table** array of additional domain restriction structures that complement and supersede the built-in information.

# [DESCRIPTION](#DESCRIPTION)

Test each of the characters in *in* for whether or not they are allowed by the information in *overrides* or by the built-in TLD restriction data. When data for the same TLD is available both internally and in *overrides* , the information in *overrides* takes precedence. If several entries for a specific TLD are found, the first one is used. If *overrides* is **NULL**, only the built-in information is used. The position of the first offending character is returned in *errpos* . Note that the error position refers to the decoded character offset rather than the byte position in the string.

Return value: Returns the **Tld\_rc** value **TLD\_SUCCESS** if all characters are valid or when *tld* is null, **TLD\_INVALID** if a character is not allowed, or additional error codes on general failure conditions.

# [REPORTING BUGS](#REPORTING_BUGS)

Report bugs to &lt;help-libidn@gnu.org&gt;.  
General guidelines for reporting bugs: https://www.gnu.org/gethelp/  
GNU Libidn home page: https://www.gnu.org/software/libidn/

# [COPYRIGHT](#COPYRIGHT)

Copyright © 2002-2026 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](#SEE_ALSO)

The full documentation for **libidn** is maintained as a Texinfo manual. If the **info** and **libidn** programs are properly installed at your site, the command

**info libidn**

should give you access to the complete manual. As an alternative you may obtain the manual from:

**https://www.gnu.org/software/libidn/manual/**

1.44 libidn

---

Document: tld_check_8z(3) from libidn 1.44-r4 (Chainguard OS)
Source: https://gitlab.com/libidn/libidn
