Provided by:
manpages-es_1.55-10_all 
NOMBRE
catopen, catclose - abre/cierra un catalogo de mensajes
SINOPSIS
#include <nl_types.h>
nl_catd catopen(const char *name, int flag);
int catclose(nl_catd catalog);
DESCRIPCI'ON
La funcion catopen() abre un catalogo de mensajes y devuelve un
descriptor de catalogo. El descriptor permanece valido hasta una
llamada a catclose() o exec(). Si un descriptor de fichero es
utilizado para implementar descriptores de catalogo la bandera
FD_CLOEXEC es activada.
El argumento name espeficica el nombre del catalogo de mensajes a ser
abierto. Si name especifica un camino absoluto (i.e. contiene una
'/'), entonces name especifica un nombre de camino para el catalogo de
mensajes. Si no, se usa la variable de ambiente NLSPATH donde %N se
sustituira por name (vea locale(7)). Es indefinido si NLSPATH sera
utilizado cuando un proceso tenga privilegios de superusuario. Si
NLSPATH no existe en el entorno, o si un catalogo de mensajes no se
puede abrir en ninguno de los caminos especificados por esa variable,
se utiliza un camino definido por la implementacion. Este camino por
defecto puede depender de LC_MESSAGES cuando el argumento flag es
NL_CAT_LOCALE y de la variable de entorno LANG cuando el argumento flag
es 0. Cambiar la variable de localizacion LC_MESSAGES puede invalidar
los descriptores de catalogos abiertos.
El argumento flag de catopen se emplea para indicar el origen para el
idioma a utilizar. Si vale NL_CAT_LOCALE usara la configuracion de
localizacion actual para LC_MESSAGES. En otro caso usara la variable
de entorno LANG.
La funcion catclose() cierra el catalogo de mensajes identificado por
catalog. Esto invalida cualquier referencia posterior al catalogo de
mensajes definido por catalog.
VALOR DEVUELTO
La funcion catopen() devuelve un descritor de catalogo de mensajes de
tipo nl_catd en caso de exito. En caso de fallo devuelve (nl_catd) -1
y modifica errno para indicar el error. Los posibles valores de error
incluyen todos los posibles valores para la llamada open().
La funcion catclose() devuelve 0 en caso de exito, o -1 en caso de
fallo.
ENTORNO
LC_MESSAGES
Puede ser el origen de la configuracion de localizacion
LC_MESSAGES, y por tanto determina el idioma a usar si flag vale
NL_CAT_LOCALE.
LANG El idioma a utilizar si flag vale 0.
OBSERVACIONES
Esta es la descripcion de POSIX 1003.1-2001. El valor de glibc para
NL_CAT_LOCALE es 1. (Compare MCLoadAll mas abajo.) El camino por
defecto varia, pero normalmente se suele buscar en un numero de sitios
por debajo de /usr/share/locale.
OBSERVACIONES PARA LIBC4 Y LIBC5
Estas funciones estan disponibles para Linux desde libc 4.4.4c. En el
caso de libc4 y libc5 en linux, el descriptor de catalogo nl_catd es
una zona de memoria ubicada con mmap() y no un descriptor de fichero.
El argumento flag de catopen() debe ser o bien MCLoadBySet (=0) o
MCLoadAll (=1). El primer valor indica que un conjunto del catalogo se
cargara cuando se necesite, mientras que el ultimo provoca que la
llamada inicial a catopen() cargue el catalogo entero en memoria. El
camino por defecto varia, pero normalmente se suele buscar en un numero
de sitios por debajo de /etc/locale y /usr/lib/locale.
CONFORME A
POSIX 1003.1-2001. En XPG 1987, Vol. 3 se dice: El argumento flag de
catopen est'a reservado para un uso futuro y deber'ia ser puesto a 0. No
esta claro cual es el origen de las constantes MCLoadBySet y MCLoadAll.
V'EASE TAMBI'EN
catgets(3), setlocale(3)