libidn 1.43

Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
stringprep.h File Reference
`#include <stddef.h>`
`#include <sys/types.h>`
`#include <idn-int.h>`

Go to the source code of this file.

## Data Structures
struct | Stringprep_table_element
struct | Stringprep_table
struct | Stringprep_profiles

## Macros
#define | IDNAPI
#define | STRINGPREP_VERSION "1.43"
#define | STRINGPREP_MAX_MAP_CHARS 4
#define | stringprep_nameprep(in, maxlen)
#define | stringprep_nameprep_no_unassigned(in, maxlen)
#define | stringprep_plain(in, maxlen)
#define | stringprep_kerberos5(in, maxlen)
#define | stringprep_xmpp_nodeprep(in, maxlen)
#define | stringprep_xmpp_resourceprep(in, maxlen)
#define | stringprep_iscsi(in, maxlen)

## Typedefs
typedef struct Stringprep_table_element | Stringprep_table_element
typedef struct Stringprep_table | Stringprep_profile
typedef struct Stringprep_profiles | Stringprep_profiles

## Enumerations
enum | Stringprep_rc { STRINGPREP_OK = 0 , STRINGPREP_CONTAINS_UNASSIGNED = 1 , STRINGPREP_CONTAINS_PROHIBITED = 2 , STRINGPREP_BIDI_BOTH_L_AND_RAL = 3 , STRINGPREP_BIDI_LEADTRAIL_NOT_RAL = 4 , STRINGPREP_BIDI_CONTAINS_PROHIBITED = 5 , STRINGPREP_TOO_SMALL_BUFFER = 100 , STRINGPREP_PROFILE_ERROR = 101 , STRINGPREP_FLAG_ERROR = 102 , STRINGPREP_UNKNOWN_PROFILE = 103 , STRINGPREP_ICONV_ERROR = 104 , STRINGPREP_NFKC_FAILED = 200 , STRINGPREP_MALLOC_ERROR = 201 }
enum | Stringprep_profile_flags { STRINGPREP_NO_NFKC = 1 , STRINGPREP_NO_BIDI = 2 , STRINGPREP_NO_UNASSIGNED = 4 }
enum | Stringprep_profile_steps { STRINGPREP_NFKC = 1 , STRINGPREP_BIDI = 2 , STRINGPREP_MAP_TABLE = 3 , STRINGPREP_UNASSIGNED_TABLE = 4 , STRINGPREP_PROHIBIT_TABLE = 5 , STRINGPREP_BIDI_PROHIBIT_TABLE = 6 , STRINGPREP_BIDI_RAL_TABLE = 7 , STRINGPREP_BIDI_L_TABLE = 8 }

## Functions
IDNAPI int | stringprep_4i (uint32_t *ucs4, size_t *len, size_t maxucs4len, Stringprep_profile_flags flags, const Stringprep_profile *profile)
IDNAPI int | stringprep_4zi (uint32_t *ucs4, size_t maxucs4len, Stringprep_profile_flags flags, const Stringprep_profile *profile)
IDNAPI int | stringprep (char *in, size_t maxlen, Stringprep_profile_flags flags, const Stringprep_profile *profile)
IDNAPI int | stringprep_profile (const char *in, char **out, const char *profile, Stringprep_profile_flags flags)
IDNAPI const char * | stringprep_strerror (Stringprep_rc rc)
IDNAPI const char * | stringprep_check_version (const char *req_version)
IDNAPI int | stringprep_unichar_to_utf8 (uint32_t c, char *outbuf)
IDNAPI uint32_t | stringprep_utf8_to_unichar (const char *p)
IDNAPI uint32_t * | stringprep_utf8_to_ucs4 (const char *str, ssize_t len, size_t *items_written)
IDNAPI char * | stringprep_ucs4_to_utf8 (const uint32_t *str, ssize_t len, size_t *items_read, size_t *items_written)
IDNAPI char * | stringprep_utf8_nfkc_normalize (const char *str, ssize_t len)
IDNAPI uint32_t * | stringprep_ucs4_nfkc_normalize (const uint32_t *str, ssize_t len)
IDNAPI const char * | stringprep_locale_charset (void)
IDNAPI char * | stringprep_convert (const char *str, const char *to_codeset, const char *from_codeset)
IDNAPI char * | stringprep_locale_to_utf8 (const char *str)
IDNAPI char * | stringprep_utf8_to_locale (const char *str)

## Variables
IDNAPI const Stringprep_profiles | stringprep_profiles []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_A_1 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_B_1 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_B_2 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_B_3 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_1_1 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_1_2 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_2_1 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_2_2 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_3 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_4 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_5 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_6 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_7 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_8 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_C_9 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_D_1 []
IDNAPI const Stringprep_table_element | stringprep_rfc3454_D_2 []
IDNAPI const Stringprep_profile | stringprep_nameprep []
IDNAPI const Stringprep_profile | stringprep_saslprep []
IDNAPI const Stringprep_table_element | stringprep_saslprep_space_map []
IDNAPI const Stringprep_profile | stringprep_plain []
IDNAPI const Stringprep_profile | stringprep_trace []
IDNAPI const Stringprep_profile | stringprep_kerberos5 []
IDNAPI const Stringprep_profile | stringprep_xmpp_nodeprep []
IDNAPI const Stringprep_profile | stringprep_xmpp_resourceprep []
IDNAPI const Stringprep_table_element | stringprep_xmpp_nodeprep_prohibit []
IDNAPI const Stringprep_profile | stringprep_iscsi []
IDNAPI const Stringprep_table_element | stringprep_iscsi_prohibit []

## Macro Definition Documentation

## ◆ IDNAPI

#define IDNAPI

SECTION:stringprep

Parameters

  title | stringprep.h
  short_description | Stringprep-related functions

Stringprep-related functions.

Definition at line 49 of file stringprep.h.

## ◆ stringprep_iscsi

#define stringprep_iscsi | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_iscsi)
stringprep
IDNAPI int stringprep(char *in, size_t maxlen, Stringprep_profile_flags flags, const Stringprep_profile *profile)
Definition stringprep.c:414
stringprep_iscsi
#define stringprep_iscsi(in, maxlen)
Definition stringprep.h:243

Definition at line 243 of file stringprep.h.

## ◆ stringprep_kerberos5

#define stringprep_kerberos5 | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_kerberos5)
stringprep_kerberos5
#define stringprep_kerberos5(in, maxlen)
Definition stringprep.h:223

Definition at line 223 of file stringprep.h.

## ◆ STRINGPREP_MAX_MAP_CHARS

#define STRINGPREP_MAX_MAP_CHARS 4

Definition at line 106 of file stringprep.h.

## ◆ stringprep_nameprep

#define stringprep_nameprep | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_nameprep)
stringprep_nameprep
#define stringprep_nameprep(in, maxlen)
Definition stringprep.h:202

Definition at line 202 of file stringprep.h.

## ◆ stringprep_nameprep_no_unassigned

#define stringprep_nameprep_no_unassigned | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, STRINGPREP_NO_UNASSIGNED, stringprep_nameprep)
STRINGPREP_NO_UNASSIGNED
@ STRINGPREP_NO_UNASSIGNED
Definition stringprep.h:90

Definition at line 205 of file stringprep.h.

## ◆ stringprep_plain

#define stringprep_plain | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_plain)
stringprep_plain
#define stringprep_plain(in, maxlen)
Definition stringprep.h:216

Definition at line 216 of file stringprep.h.

## ◆ STRINGPREP_VERSION

#define STRINGPREP_VERSION "1.43"

Definition at line 62 of file stringprep.h.

## ◆ stringprep_xmpp_nodeprep

#define stringprep_xmpp_nodeprep | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_xmpp_nodeprep)
stringprep_xmpp_nodeprep
#define stringprep_xmpp_nodeprep(in, maxlen)
Definition stringprep.h:233

Definition at line 233 of file stringprep.h.

## ◆ stringprep_xmpp_resourceprep

#define stringprep_xmpp_resourceprep | ( |  | in,
|  |  | maxlen )

Value:
stringprep(in, maxlen, 0, stringprep_xmpp_resourceprep)
stringprep_xmpp_resourceprep
#define stringprep_xmpp_resourceprep(in, maxlen)
Definition stringprep.h:235

Definition at line 235 of file stringprep.h.

## Typedef Documentation

## ◆ Stringprep_profile

typedef struct Stringprep_table Stringprep_profile

Stringprep_profile:

Stringprep profile table.

Definition at line 160 of file stringprep.h.

## ◆ Stringprep_profiles

typedef struct Stringprep_profiles Stringprep_profiles

Definition at line 174 of file stringprep.h.

## ◆ Stringprep_table_element

typedef struct Stringprep_table_element Stringprep_table_element

Definition at line 137 of file stringprep.h.

## Enumeration Type Documentation

## ◆ Stringprep_profile_flags

enum Stringprep_profile_flags

Enumerator
STRINGPREP_NO_NFKC |
STRINGPREP_NO_BIDI |
STRINGPREP_NO_UNASSIGNED |

Definition at line 86 of file stringprep.h.

## ◆ Stringprep_profile_steps

enum Stringprep_profile_steps

Enumerator
STRINGPREP_NFKC |
STRINGPREP_BIDI |
STRINGPREP_MAP_TABLE |
STRINGPREP_UNASSIGNED_TABLE |
STRINGPREP_PROHIBIT_TABLE |
STRINGPREP_BIDI_PROHIBIT_TABLE |
STRINGPREP_BIDI_RAL_TABLE |
STRINGPREP_BIDI_L_TABLE |

Definition at line 94 of file stringprep.h.

## ◆ Stringprep_rc

enum Stringprep_rc

Enumerator
STRINGPREP_OK |
STRINGPREP_CONTAINS_UNASSIGNED |
STRINGPREP_CONTAINS_PROHIBITED |
STRINGPREP_BIDI_BOTH_L_AND_RAL |
STRINGPREP_BIDI_LEADTRAIL_NOT_RAL |
STRINGPREP_BIDI_CONTAINS_PROHIBITED |
STRINGPREP_TOO_SMALL_BUFFER |
STRINGPREP_PROFILE_ERROR |
STRINGPREP_FLAG_ERROR |
STRINGPREP_UNKNOWN_PROFILE |
STRINGPREP_ICONV_ERROR |
STRINGPREP_NFKC_FAILED |
STRINGPREP_MALLOC_ERROR |

Definition at line 65 of file stringprep.h.

## Function Documentation

## ◆ stringprep()

IDNAPI int stringprep | ( | char * | in,
|  | size_t | maxlen,
|  | Stringprep_profile_flags | flags,
|  | const Stringprep_profile * | profile )
| extern

stringprep:

Parameters

  in | input/output array with string to prepare.
  maxlen | maximum length of input/output array.
  flags | a Stringprep_profile_flags value, or 0.
  profile | pointer to Stringprep_profile to use.

Prepare the input zero terminated UTF-8 string according to the stringprep profile, and write back the result to the input string.

Note that you must convert strings entered in the systems locale into UTF-8 before using this function, see stringprep_locale_to_utf8().

Since the stringprep operation can expand the string, @maxlen indicate how large the buffer holding the string is. This function will not read or write to characters outside that size.

The @flags are one of Stringprep_profile_flags values, or 0.

The @profile contain the Stringprep_profile instructions to perform. Your application can define new profiles, possibly re-using the generic stringprep tables that always will be part of the library, or use one of the currently supported profiles.

Return value: Returns STRINGPREP_OK iff successful, or an error code.

Definition at line 414 of file stringprep.c.

## ◆ stringprep_4i()

IDNAPI int stringprep_4i | ( | uint32_t * | ucs4,
|  | size_t * | len,
|  | size_t | maxucs4len,
|  | Stringprep_profile_flags | flags,
|  | const Stringprep_profile * | profile )
| extern

stringprep_4i:

Parameters

  ucs4 | input/output array with string to prepare.
  len | on input, length of input array with Unicode code points, on exit, length of output array with Unicode code points.
  maxucs4len | maximum length of input/output array.
  flags | a Stringprep_profile_flags value, or 0.
  profile | pointer to Stringprep_profile to use.

Prepare the input UCS-4 string according to the stringprep profile, and write back the result to the input string.

The input is not required to be zero terminated (@ucs4[@len] = 0). The output will not be zero terminated unless @ucs4[@len] = 0. Instead, see stringprep_4zi() if your input is zero terminated or if you want the output to be.

Since the stringprep operation can expand the string, @maxucs4len indicate how large the buffer holding the string is. This function will not read or write to code points outside that size.

The @flags are one of Stringprep_profile_flags values, or 0.

The @profile contain the Stringprep_profile instructions to perform. Your application can define new profiles, possibly re-using the generic stringprep tables that always will be part of the library, or use one of the currently supported profiles.

Return value: Returns STRINGPREP_OK iff successful, or an Stringprep_rc error code.

Definition at line 181 of file stringprep.c.

## ◆ stringprep_4zi()

IDNAPI int stringprep_4zi | ( | uint32_t * | ucs4,
|  | size_t | maxucs4len,
|  | Stringprep_profile_flags | flags,
|  | const Stringprep_profile * | profile )
| extern

stringprep_4zi:

Parameters

  ucs4 | input/output array with zero terminated string to prepare.
  maxucs4len | maximum length of input/output array.
  flags | a Stringprep_profile_flags value, or 0.
  profile | pointer to Stringprep_profile to use.

Prepare the input zero terminated UCS-4 string according to the stringprep profile, and write back the result to the input string.

Since the stringprep operation can expand the string, @maxucs4len indicate how large the buffer holding the string is. This function will not read or write to code points outside that size.

The @flags are one of Stringprep_profile_flags values, or 0.

The @profile contain the Stringprep_profile instructions to perform. Your application can define new profiles, possibly re-using the generic stringprep tables that always will be part of the library, or use one of the currently supported profiles.

Return value: Returns STRINGPREP_OK iff successful, or an Stringprep_rc error code.

Definition at line 374 of file stringprep.c.

## ◆ stringprep_check_version()

IDNAPI const char * stringprep_check_version | ( | const char * | req_version | ) |
| extern

stringprep_check_version:

Parameters

  req_version | Required version number, or NULL.

Check that the version of the library is at minimum the requested one and return the version string; return NULL if the condition is not satisfied. If a NULL is passed to this function, no check is done, but the version string is simply returned.

See STRINGPREP_VERSION for a suitable @req_version string.

Return value: Version string of run-time library, or NULL if the run-time library does not meet the required version number.

Definition at line 53 of file version.c.

## ◆ stringprep_convert()

IDNAPI char * stringprep_convert | ( | const char * | str,
|  | const char * | to_codeset,
|  | const char * | from_codeset )
| extern

stringprep_convert:

Parameters

  str | input zero-terminated string.
  to_codeset | name of destination character set.
  from_codeset | name of origin character set, as used by @str.

Convert the string from one character set to another using the system's iconv() function.

Return value: Returns newly allocated zero-terminated string which is @str transcoded into to_codeset.

Definition at line 116 of file toutf8.c.

## ◆ stringprep_locale_charset()

IDNAPI const char * stringprep_locale_charset | ( | void |  | ) |
| extern

stringprep_locale_charset:

Find out current locale charset. The function respect the CHARSET environment variable, but typically uses nl_langinfo(CODESET) when it is supported. It fall back on "ASCII" if CHARSET isn't set and nl_langinfo isn't supported or return anything.

Note that this function return the application's locale's preferred charset (or thread's locale's preferred charset, if your system support thread-specific locales). It does not return what the system may be using. Thus, if you receive data from external sources you cannot in general use this function to guess what charset it is encoded in. Use stringprep_convert from the external representation into the charset returned by this function, to have data in the locale encoding.

Return value: Return the character set used by the current locale. It will never return NULL, but use "ASCII" as a fallback.

Definition at line 85 of file toutf8.c.

## ◆ stringprep_locale_to_utf8()

IDNAPI char * stringprep_locale_to_utf8 | ( | const char * | str | ) |
| extern

stringprep_locale_to_utf8:

Parameters

  str | input zero terminated string.

Convert string encoded in the locale's character set into UTF-8 by using stringprep_convert().

Return value: Returns newly allocated zero-terminated string which is @str transcoded into UTF-8.

Definition at line 145 of file toutf8.c.

## ◆ stringprep_profile()

IDNAPI int stringprep_profile | ( | const char * | in,
|  | char ** | out,
|  | const char * | profile,
|  | Stringprep_profile_flags | flags )
| extern

stringprep_profile:

Parameters

  in | input array with UTF-8 string to prepare.
  out | output variable with pointer to newly allocate string.
  profile | name of stringprep profile to use.
  flags | a Stringprep_profile_flags value, or 0.

Prepare the input zero terminated UTF-8 string according to the stringprep profile, and return the result in a newly allocated variable.

Note that you must convert strings entered in the systems locale into UTF-8 before using this function, see stringprep_locale_to_utf8().

The output @out variable must be deallocated by the caller.

The @flags are one of Stringprep_profile_flags values, or 0.

The @profile specifies the name of the stringprep profile to use. It must be one of the internally supported stringprep profiles.

Return value: Returns STRINGPREP_OK iff successful, or an error code.

Definition at line 493 of file stringprep.c.

## ◆ stringprep_strerror()

IDNAPI const char * stringprep_strerror | ( | Stringprep_rc | rc | ) |
| extern

stringprep_strerror:

Parameters

  rc | a 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.

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: String contain unassigned Unicode code points, which is forbidden by the profile. STRINGPREP_CONTAINS_PROHIBITED: String contain code points prohibited by the profile. STRINGPREP_BIDI_BOTH_L_AND_RAL: String contain code points with conflicting bidirection category. STRINGPREP_BIDI_LEADTRAIL_NOT_RAL: Leading and trailing character in string not of proper bidirectional category. STRINGPREP_BIDI_CONTAINS_PROHIBITED: Contains prohibited code points detected by bidirectional code. STRINGPREP_TOO_SMALL_BUFFER: Buffer handed to function was too small. This usually indicate a problem in the calling application. STRINGPREP_PROFILE_ERROR: The stringprep profile was inconsistent. This usually indicate an internal error in the library. STRINGPREP_FLAG_ERROR: The supplied flag conflicted with profile. This usually indicate a problem in the calling application. STRINGPREP_UNKNOWN_PROFILE: The supplied profile name was not known to the library. STRINGPREP_ICONV_ERROR: Character encoding conversion error. STRINGPREP_NFKC_FAILED: The Unicode NFKC operation failed. This usually indicate an internal error in the library. 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.

Definition at line 78 of file strerror-stringprep.c.

## ◆ stringprep_ucs4_nfkc_normalize()

IDNAPI uint32_t * stringprep_ucs4_nfkc_normalize | ( | const uint32_t * | str,
|  | ssize_t | len )
| extern

stringprep_ucs4_nfkc_normalize:

Parameters

  str | a Unicode string.
  len | length of @str array, or -1 if @str is nul-terminated.

Converts a UCS4 string into canonical form, see stringprep_utf8_nfkc_normalize() for more information.

Return value: a newly allocated Unicode string, that is the NFKC normalized form of @str.

Definition at line 1076 of file nfkc.c.

## ◆ stringprep_ucs4_to_utf8()

IDNAPI char * stringprep_ucs4_to_utf8 | ( | const uint32_t * | str,
|  | ssize_t | len,
|  | size_t * | items_read,
|  | size_t * | items_written )
| extern

stringprep_ucs4_to_utf8:

Parameters

  str | a UCS-4 encoded string
  len | the maximum length of @str to use. If @len < 0, then the string is terminated with a 0 character.
  items_read | location to store number of characters read read, or NULL.
  items_written | location to store number of bytes written or NULL. The value here stored does not include the trailing 0 byte.

Convert a string from a 32-bit fixed width representation as UCS-4. to UTF-8. The result will be terminated with a 0 byte.

Return value: a pointer to a newly allocated UTF-8 string. This value must be deallocated by the caller. If an error occurs, NULL will be returned.

Definition at line 1019 of file nfkc.c.

## ◆ stringprep_unichar_to_utf8()

IDNAPI int stringprep_unichar_to_utf8 | ( | uint32_t | c,
|  | char * | outbuf )
| extern

stringprep_unichar_to_utf8:

Parameters

  c | a ISO10646 character code
  outbuf | output buffer, must have at least 6 bytes of space. If NULL, the length will be computed and returned and nothing will be written to @outbuf.

Converts a single character to UTF-8.

Return value: number of bytes written.

Definition at line 962 of file nfkc.c.

## ◆ stringprep_utf8_nfkc_normalize()

IDNAPI char * stringprep_utf8_nfkc_normalize | ( | const char * | str,
|  | ssize_t | len )
| extern

stringprep_utf8_nfkc_normalize:

Parameters

  str | a UTF-8 encoded string.
  len | length of @str, in bytes, or -1 if @str is nul-terminated.

Converts a string into canonical form, standardizing such issues as whether a character with an accent is represented as a base character and combining accent or as a single precomposed character.

The normalization mode is NFKC (ALL COMPOSE). It standardizes differences that do not affect the text content, such as the above-mentioned accent representation. It standardizes the "compatibility" characters in Unicode, such as SUPERSCRIPT THREE to the standard forms (in this case DIGIT THREE). Formatting information may be lost but for most text operations such characters should be considered the same. It returns a result with composed forms rather than a maximally decomposed form.

Return value: a newly allocated string, that is the NFKC normalized form of @str.

Definition at line 1048 of file nfkc.c.

## ◆ stringprep_utf8_to_locale()

IDNAPI char * stringprep_utf8_to_locale | ( | const char * | str | ) |
| extern

stringprep_utf8_to_locale:

Parameters

  str | input zero terminated string.

Convert string encoded in UTF-8 into the locale's character set by using stringprep_convert().

Return value: Returns newly allocated zero-terminated string which is @str transcoded into the locale's character set.

Definition at line 161 of file toutf8.c.

## ◆ stringprep_utf8_to_ucs4()

IDNAPI uint32_t * stringprep_utf8_to_ucs4 | ( | const char * | str,
|  | ssize_t | len,
|  | size_t * | items_written )
| extern

stringprep_utf8_to_ucs4:

Parameters

  str | a UTF-8 encoded string
  len | the maximum length of @str to use. If @len < 0, then the string is nul-terminated.
  items_written | location to store the number of characters in the result, or NULL.

Convert a string from UTF-8 to a 32-bit fixed width representation as UCS-4. The function now performs error checking to verify that the input is valid UTF-8 (before it was documented to not do error checking).

Return value: a pointer to a newly allocated UCS-4 string. This value must be deallocated by the caller.

Definition at line 986 of file nfkc.c.

## ◆ stringprep_utf8_to_unichar()

IDNAPI uint32_t stringprep_utf8_to_unichar | ( | const char * | p | ) |
| extern

stringprep_utf8_to_unichar:

Parameters

  p | a pointer to Unicode character encoded as UTF-8

Converts a sequence of bytes encoded as UTF-8 to a Unicode character. If `does` not point to a valid UTF-8 encoded character, results are undefined.

Return value: the resulting character.

Definition at line 945 of file nfkc.c.

## Variable Documentation

## ◆ stringprep_iscsi

IDNAPI const Stringprep_profile stringprep_iscsi[]
| extern

Definition at line 197 of file profiles.c.

## ◆ stringprep_iscsi_prohibit

IDNAPI const Stringprep_table_element stringprep_iscsi_prohibit[]
| extern

Definition at line 187 of file profiles.c.

## ◆ stringprep_kerberos5

IDNAPI const Stringprep_profile stringprep_kerberos5[]
| extern

Definition at line 74 of file profiles.c.

## ◆ stringprep_nameprep

IDNAPI const Stringprep_profile stringprep_nameprep[]
| extern

Definition at line 53 of file profiles.c.

## ◆ stringprep_plain

IDNAPI const Stringprep_profile stringprep_plain[]
| extern

Definition at line 155 of file profiles.c.

## ◆ stringprep_profiles

IDNAPI const Stringprep_profiles stringprep_profiles[]
| extern

Definition at line 34 of file profiles.c.

## ◆ stringprep_rfc3454_A_1

IDNAPI const Stringprep_table_element stringprep_rfc3454_A_1[]
| extern

Definition at line 13 of file rfc3454.c.

## ◆ stringprep_rfc3454_B_1

IDNAPI const Stringprep_table_element stringprep_rfc3454_B_1[]
| extern

Definition at line 419 of file rfc3454.c.

## ◆ stringprep_rfc3454_B_2

IDNAPI const Stringprep_table_element stringprep_rfc3454_B_2[]
| extern

Definition at line 456 of file rfc3454.c.

## ◆ stringprep_rfc3454_B_3

IDNAPI const Stringprep_table_element stringprep_rfc3454_B_3[]
| extern

Definition at line 2484 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_1_1

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_1_1[]
| extern

Definition at line 3473 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_1_2

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_1_2[]
| extern

Definition at line 3524 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_2_1

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_2_1[]
| extern

Definition at line 3609 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_2_2

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_2_2[]
| extern

Definition at line 3682 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_3

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_3[]
| extern

Definition at line 3709 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_4

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_4[]
| extern

Definition at line 3723 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_5

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_5[]
| extern

Definition at line 3752 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_6

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_6[]
| extern

Definition at line 3763 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_7

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_7[]
| extern

Definition at line 3778 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_8

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_8[]
| extern

Definition at line 3791 of file rfc3454.c.

## ◆ stringprep_rfc3454_C_9

IDNAPI const Stringprep_table_element stringprep_rfc3454_C_9[]
| extern

Definition at line 3834 of file rfc3454.c.

## ◆ stringprep_rfc3454_D_1

IDNAPI const Stringprep_table_element stringprep_rfc3454_D_1[]
| extern

Definition at line 3846 of file rfc3454.c.

## ◆ stringprep_rfc3454_D_2

IDNAPI const Stringprep_table_element stringprep_rfc3454_D_2[]
| extern

Definition at line 3890 of file rfc3454.c.

## ◆ stringprep_saslprep

IDNAPI const Stringprep_profile stringprep_saslprep[]
| extern

Definition at line 243 of file profiles.c.

## ◆ stringprep_saslprep_space_map

IDNAPI const Stringprep_table_element stringprep_saslprep_space_map[]
| extern

Definition at line 222 of file profiles.c.

## ◆ stringprep_trace

IDNAPI const Stringprep_profile stringprep_trace[]
| extern

Definition at line 171 of file profiles.c.

## ◆ stringprep_xmpp_nodeprep

IDNAPI const Stringprep_profile stringprep_xmpp_nodeprep[]
| extern

Definition at line 109 of file profiles.c.

## ◆ stringprep_xmpp_nodeprep_prohibit

IDNAPI const Stringprep_table_element stringprep_xmpp_nodeprep_prohibit[]
| extern

Definition at line 97 of file profiles.c.

## ◆ stringprep_xmpp_resourceprep

IDNAPI const Stringprep_profile stringprep_xmpp_resourceprep[]
| extern

Definition at line 134 of file profiles.c.