Provided by: manpages-es_1.55-8_all bug

NOMBRE

       catopen, catclose - abre/cierra un catálogo de mensajes

SINOPSIS

       #include <nl_types.h>

       nl_catd catopen(const char *name, int flag);
       int catclose(nl_catd catalog);

DESCRIPCIÓN

       La  función  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.

       El  argumento  name espeficica el nombre del catálogo de mensajes a ser
       abierto.  Si name especifica un  camino  absoluto  (i.e.  contiene  una
       ’/’),  entonces name especifica un nombre de camino para el catálogo de
       mensajes.  Si no, se usa la variable de ambiente NLSPATH  donde  %N  se
       sustituirá  por  name  (vea  locale(7)).  Es indefinido si NLSPATH será
       utilizado cuando un proceso  tenga  privilegios  de  superusuario.   Si
       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  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 localización LC_MESSAGES puede  invalidar
       los descriptores de catálogos abiertos.

       El  argumento  flag de catopen se emplea para indicar el origen para el
       idioma a utilizar.  Si vale NL_CAT_LOCALE  usará  la  configuración  de
       localización  actual  para LC_MESSAGES.  En otro caso usará la variable
       de entorno LANG.

       La función catclose() cierra el catálogo de mensajes  identificado  por
       catalog.   Esto  invalida cualquier referencia posterior al catálogo de
       mensajes definido por catalog.

VALOR DEVUELTO

       La función catopen() devuelve un descritor de catálogo de  mensajes  de
       tipo  nl_catd en caso de éxito.  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  función  catclose()  devuelve  0  en caso de éxito, o -1 en caso de
       fallo.

ENTORNO

       LC_MESSAGES
              Puede  ser  el  origen  de  la  configuración  de   localización
              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 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 /usr/share/locale.

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  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 catálogo se
       cargará cuando se necesite, mientras  que  el  último  provoca  que  la
       llamada  inicial  a 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 /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 reservado para un uso futuro y debera ser puesto a 0.  No
       está claro cuál es el origen de las constantes MCLoadBySet y MCLoadAll.

VÉASE TAMBIÉN

       catgets(3), setlocale(3)