.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\" SUCH DAMAGE.
.\"
.\" @(#)strxfrm.3 8.1 (Berkeley) 6/4/93
-.\" $FreeBSD: src/lib/libc/string/strxfrm.3,v 1.17 2002/10/15 10:11:53 tjr Exp $
+.\" $FreeBSD: src/lib/libc/string/strxfrm.3,v 1.18 2007/01/09 00:28:12 imp Exp $
.\"
.Dd June 4, 1993
.Dt STRXFRM 3
.Os
.Sh NAME
-.Nm strxfrm
+.Nm strxfrm ,
+.Nm strxfrm_l
.Nd transform a string under locale
.Sh LIBRARY
.Lb libc
.Sh SYNOPSIS
.In string.h
.Ft size_t
-.Fn strxfrm "char * restrict dst" "const char * restrict src" "size_t n"
+.Fo strxfrm
+.Fa "char *restrict s1"
+.Fa "const char *restrict s2"
+.Fa "size_t n"
+.Fc
+.In string.h
+.In xlocale.h
+.Ft size_t
+.Fo strxfrm_l
+.Fa "char *restrict s1"
+.Fa "const char *restrict s2"
+.Fa "size_t n"
+.Fa "locale_t loc"
+.Fc
.Sh DESCRIPTION
The
.Fn strxfrm
function transforms a null-terminated string pointed to by
-.Fa src
+.Fa s2
according to the current locale collation if any,
then copies the transformed string
into
-.Fa dst .
+.Fa s1 .
Not more than
.Fa n
characters are copied into
-.Fa dst ,
+.Fa s1 ,
including the terminating null character added.
If
.Fa n
is set to 0
(it helps to determine an actual size needed
for transformation),
-.Fa dst
+.Fa s1
is permitted to be a NULL pointer.
.Pp
Comparing two strings using
is equal to comparing
two original strings with
.Fn strcoll .
+.Pp
+Although the
+.Fn strxfrm
+function uses the current locale, the
+.Fn strxfrm_l
+function may be passed a locale directly. See
+.Xr xlocale 3
+for more information.
.Sh RETURN VALUES
Upon successful completion,
.Fn strxfrm
If this value is
.Fa n
or more, the contents of
-.Fa dst
+.Fa s1
are indeterminate.
.Sh SEE ALSO
.Xr setlocale 3 ,
.Xr strcmp 3 ,
.Xr strcoll 3 ,
-.Xr wcsxfrm 3
+.Xr wcsxfrm 3 ,
+.Xr xlocale 3
.Sh STANDARDS
The
.Fn strxfrm