.\" Copyright 1993 Mitchum DSouza .\" .\" 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. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" .\" Modified Thu Dec 13 22:51:19 2001 by Martin Schulze .\" Modified 2001-12-14 aeb .\" .\" Traducido al castellano (con permiso) por: .\" Sebastian Desimone (chipy@argenet.com.ar) (desimone@fasta.edu.ar) .\" Translation fixed on Wed Apr 22 12:52:20 CEST 1998 by Gerardo .\" Aburruzaga García .\" Traducción revisada por Miguel Pérez Ibars el 15-enero-2005 .\" .TH CATOPEN 3 "14 diciembre 2001" "Linux" "Manual del Programador de Linux" .SH NOMBRE catopen, catclose \- abre/cierra un catálogo de mensajes .SH SINOPSIS .B #include .sp .BI "nl_catd catopen(const char *" name ", int " flag ); .br .BI "int catclose(nl_catd " catalog ); .SH DESCRIPCIÓN La función .B catopen() abre un catálogo de mensajes y devuelve un descriptor de catálogo. El descriptor permanece válido hasta una llamada a catclose() o exec(). Si un descriptor de fichero es utilizado para implementar descriptores de catálogo la bandera FD_CLOEXEC es activada. .LP El argumento .I name espeficica el nombre del catálogo de mensajes a ser abierto. Si .I name especifica un camino absoluto (i.e. contiene una '/'), entonces .I name especifica un nombre de camino para el catálogo de mensajes. Si no, se usa la variable de ambiente .B NLSPATH donde .B %N se sustituirá por .I name (vea .BR locale (7)). Es indefinido si .B NLSPATH será utilizado cuando un proceso tenga privilegios de superusuario. Si .B NLSPATH no existe en el entorno, o si un catálogo de mensajes no se puede abrir en ninguno de los caminos especificados por esa variable, se utiliza un camino definido por la implementación. Este camino por defecto puede depender de .B LC_MESSAGES cuando el argumento .I flag es .B NL_CAT_LOCALE y de la variable de entorno .B LANG cuando el argumento .I flag es 0. Cambiar la variable de localización LC_MESSAGES puede invalidar los descriptores de catálogos abiertos. .LP El argumento .I flag de \fBcatopen\fP se emplea para indicar el origen para el idioma a utilizar. Si vale .B NL_CAT_LOCALE usará la configuración de localización actual para .BR LC_MESSAGES . En otro caso usará la variable de entorno .B LANG. .LP La función .B catclose() cierra el catálogo de mensajes identificado por .IR catalog . Esto invalida cualquier referencia posterior al catálogo de mensajes definido por .IR catalog . .LP .SH VALOR DEVUELTO La función .B catopen() devuelve un descritor de catálogo de mensajes de tipo .I nl_catd en caso de éxito. En caso de fallo devuelve (nl_catd) \-1 y modifica .B errno para indicar el error. Los posibles valores de error incluyen todos los posibles valores para la llamada .I open(). .LP La función .B catclose() devuelve 0 en caso de éxito, o \-1 en caso de fallo. .SH ENTORNO .TP .B LC_MESSAGES Puede ser el origen de la configuración de localización LC_MESSAGES, y por tanto determina el idioma a usar si .I flag vale .BR NL_CAT_LOCALE . .TP .B LANG El idioma a utilizar si .I flag vale 0. .SH OBSERVACIONES Esta es la descripción de POSIX 1003.1-2001. El valor de glibc para NL_CAT_LOCALE es 1. (Compare MCLoadAll más abajo.) El camino por defecto varía, pero normalmente se suele buscar en un número de sitios por debajo de .IR /usr/share/locale . .SH "OBSERVACIONES PARA LIBC4 Y LIBC5" Estas funciones están disponibles para Linux desde libc 4.4.4c. En el caso de libc4 y libc5 en linux, el descriptor de catálogo .I nl_catd es una zona de memoria ubicada con mmap() y no un descriptor de fichero. El argumento .I flag de .B catopen() debe ser o bien .B MCLoadBySet (=0) o .B MCLoadAll (=1). El primer valor indica que un conjunto del catálogo se cargará cuando se necesite, mientras que el último provoca que la llamada inicial a .BR catopen () cargue el catálogo entero en memoria. El camino por defecto varía, pero normalmente se suele buscar en un número de sitios por debajo de .I /etc/locale y .IR /usr/lib/locale . .SH "CONFORME A" POSIX 1003.1-2001. En XPG 1987, Vol. 3 se dice: .I "El argumento flag de catopen está reservado para un uso futuro" .IR "y debería ser puesto a 0" . No está claro cuál es el origen de las constantes MCLoadBySet y MCLoadAll. .SH "VÉASE TAMBIÉN" .BR catgets (3), .BR setlocale (3)