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

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)