stringprep\_strerror(3) libidn stringprep\_strerror(3)

# [NAME](#NAME)

stringprep\_strerror - API function

# [SYNOPSIS](#SYNOPSIS)

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

**const char * stringprep\_strerror(Stringprep\_rc rc);**

# [ARGUMENTS](#ARGUMENTS)

[Stringprep\_rc rc](#Stringprep_rc)

a **Stringprep\_rc** return code.

# [DESCRIPTION](#DESCRIPTION)

Convert a return code integer to a text string. This string can be used to output a diagnostic message to the user.

# [STRINGPREP\_OK](#STRINGPREP_OK)

Successful operation. This value is guaranteed to always be zero, the remaining ones are only guaranteed to hold non-zero values, for logical comparison purposes.

# [STRINGPREP\_CONTAINS\_UNASSIGNED](#STRINGPREP_CONTAINS_UNASSIGNED)

String contain unassigned Unicode code points, which is forbidden by the profile.

# [STRINGPREP\_CONTAINS\_PROHIBITED](#STRINGPREP_CONTAINS_PROHIBITED)

String contain code points prohibited by the profile.

# [STRINGPREP\_BIDI\_BOTH\_L\_AND\_RAL](#STRINGPREP_BIDI_BOTH_L_AND_RAL)

String contain code points with conflicting bidirection category.

# [STRINGPREP\_BIDI\_LEADTRAIL\_NOT\_RAL](#STRINGPREP_BIDI_LEADTRAIL_NOT_RAL)

Leading and trailing character in string not of proper bidirectional category.

# [STRINGPREP\_BIDI\_CONTAINS\_PROHIBITED](#STRINGPREP_BIDI_CONTAINS_PROHIBITED)

Contains prohibited code points detected by bidirectional code.

# [STRINGPREP\_TOO\_SMALL\_BUFFER](#STRINGPREP_TOO_SMALL_BUFFER)

Buffer handed to function was too small. This usually indicate a problem in the calling application.

# [STRINGPREP\_PROFILE\_ERROR](#STRINGPREP_PROFILE_ERROR)

The stringprep profile was inconsistent. This usually indicate an internal error in the library.

# [STRINGPREP\_FLAG\_ERROR](#STRINGPREP_FLAG_ERROR)

The supplied flag conflicted with profile. This usually indicate a problem in the calling application.

# [STRINGPREP\_UNKNOWN\_PROFILE](#STRINGPREP_UNKNOWN_PROFILE)

The supplied profile name was not known to the library.

# [STRINGPREP\_ICONV\_ERROR](#STRINGPREP_ICONV_ERROR)

Character encoding conversion error.

# [STRINGPREP\_NFKC\_FAILED](#STRINGPREP_NFKC_FAILED)

The Unicode NFKC operation failed. This usually indicate an internal error in the library.

# [STRINGPREP\_MALLOC\_ERROR](#STRINGPREP_MALLOC_ERROR)

The **malloc()** was out of memory. This is usually a fatal error.

Return value: Returns a pointer to a statically allocated string containing a description of the error with the return code *rc* .

# [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: stringprep_strerror(3) from libidn 1.44-r4 (Chainguard OS)
Source: https://gitlab.com/libidn/libidn
