5.3. Return Codes

All functions return a code of the Stringprep_rc enumerated type:

Stringprep_rc STRINGPREP_OK = 0 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_rc STRINGPREP_CONTAINS_UNASSIGNED String contain unassigned Unicode code points, which is forbidden by the profile.

Stringprep_rc STRINGPREP_CONTAINS_PROHIBITED String contain code points prohibited by the profile.

Stringprep_rc STRINGPREP_BIDI_BOTH_L_AND_RAL String contain code points with conflicting bidirection category.

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

Stringprep_rc STRINGPREP_BIDI_CONTAINS_PROHIBITED Contains prohibited code points detected by bidirectional code.

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

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

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

Stringprep_rc STRINGPREP_UNKNOWN_PROFILE The supplied profile name was not known to the library.

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

Stringprep_rc STRINGPREP_MALLOC_ERROR The malloc was out of memory. This is usually a fatal error.