stringprep_4i.3   [plain text]


.\" DO NOT MODIFY THIS FILE!  It was generated by gdoc.
.TH "stringprep_4i" 3 "0.6.14" "libidn" "libidn"
.SH NAME
stringprep_4i \- prepare internationalized string
.SH SYNOPSIS
.B #include <stringprep.h>
.sp
.BI "int stringprep_4i(uint32_t * " ucs4 ", size_t * " len ", size_t " maxucs4len ", Stringprep_profile_flags " flags ", const Stringprep_profile * " profile ");"
.SH ARGUMENTS
.IP "uint32_t * ucs4" 12
input/output array with string to prepare.
.IP "size_t * len" 12
on input, length of input array with Unicode code points,
on exit, length of output array with Unicode code points.
.IP "size_t maxucs4len" 12
maximum length of input/output array.
.IP "Stringprep_profile_flags flags" 12
a \fBStringprep_profile_flags\fP value, or 0.
.IP "const Stringprep_profile * profile" 12
pointer to \fBStringprep_profile\fP to use.
.SH "DESCRIPTION"
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 (\fIucs4\fP[\fIlen\fP] = 0).
The output will not be zero terminated unless \fIucs4\fP[\fIlen\fP] = 0.
Instead, see \fBstringprep_4zi()\fP if your input is zero terminated or
if you want the output to be.

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

The \fIflags\fP are one of \fBStringprep_profile_flags\fP values, or 0.

The \fIprofile\fP contain the \fBStringprep_profile\fP 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.
.SH "RETURN VALUE"
Returns \fBSTRINGPREP_OK\fP iff successful, or an
\fBStringprep_rc\fP error code.
.SH "REPORTING BUGS"
Report bugs to <bug-libidn@gnu.org>.
.SH COPYRIGHT
Copyright \(co 2002, 2003, 2004, 2005, 2006, 2007 Simon Josefsson.
.br
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.
.SH "SEE ALSO"
The full documentation for
.B libidn
is maintained as a Texinfo manual.  If the
.B info
and
.B libidn
programs are properly installed at your site, the command
.IP
.B info libidn
.PP
should give you access to the complete manual.