Manual Page Search Parameters

STRXFRM(3) Library Functions Manual STRXFRM(3)

strxfrm, strxfrm_l
transform a string under locale

#include <string.h>
strxfrm(char *dst, const char *src, size_t n);
strxfrm_l(char *dst, const char *src, size_t n, locale_t locale);

The idea of strxfrm() and strxfrm_l() is to “un-localize” a string: the functions transform src, storing the result in dst, such that strcmp(3) on transformed strings returns what strcoll(3) on the original untransformed strings would return.
On OpenBSD, both have the same effect as strlcpy(3), and the global locale, the thread-specific locale, and the locale argument are ignored.

On other operating systems, the behaviour of strxfrm() may depend on the LC_CTYPE locale(1).

newlocale(3), setlocale(3), strcmp(3), strcoll(3), strlcpy(3), wcsxfrm(3)

The strxfrm() function conforms to ANSI X3.159-1989 (“ANSI C89”), and strxfrm_l() to IEEE Std 1003.1-2008 (“POSIX.1”).

The strxfrm() function has been available since 4.3BSD-Reno, and strxfrm_l() since OpenBSD 6.2.
September 5, 2017 OpenBSD-current