@subheading stringprep_strerror
@anchor{stringprep_strerror}
@deftypefun {const char *} {stringprep_strerror} (Stringprep_rc @var{rc})
@var{rc}: a @code{Stringprep_rc} return code.

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

@strong{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.

@strong{STRINGPREP_CONTAINS_UNASSIGNED:} String contain unassigned Unicode
code points, which is forbidden by the profile.

@strong{STRINGPREP_CONTAINS_PROHIBITED:} String contain code points
prohibited by the profile.

@strong{STRINGPREP_BIDI_BOTH_L_AND_RAL:} String contain code points with
conflicting bidirection category.

@strong{STRINGPREP_BIDI_LEADTRAIL_NOT_RAL:} Leading and trailing character
in string not of proper bidirectional category.

@strong{STRINGPREP_BIDI_CONTAINS_PROHIBITED:} Contains prohibited code
points detected by bidirectional code.

@strong{STRINGPREP_TOO_SMALL_BUFFER:} Buffer handed to function was too
small.  This usually indicate a problem in the calling
application.

@strong{STRINGPREP_PROFILE_ERROR:} The stringprep profile was inconsistent.
This usually indicate an internal error in the library.

@strong{STRINGPREP_FLAG_ERROR:} The supplied flag conflicted with profile.
This usually indicate a problem in the calling application.

@strong{STRINGPREP_UNKNOWN_PROFILE:} The supplied profile name was not
known to the library.

@strong{STRINGPREP_NFKC_FAILED:} The Unicode NFKC operation failed.  This
usually indicate an internal error in the library.

@strong{STRINGPREP_MALLOC_ERROR:} The @code{malloc()} was out of memory.  This is
usually a fatal error.

@strong{Return value:} Returns a pointer to a statically allocated string
containing a description of the error with the return code @code{rc}.
@end deftypefun

