Provided by: manpages-es-extra_0.8a-17_all bug

NOMBRE

       query_module  - interroga al nucleo sobre varias cosas relacionadas con
       los modulos

SINOPSIS

       #include <linux/module.h>

       int query_module(const char *nombre, int que,
       void *buf, size_t tambuf, size_t *ret);

DESCRIPCI'ON

       query_module pide informacion al nucleo relativa a  modulos  cargables.
       La  naturaleza  precisa  de  la  informacion y su formato depende de la
       subfuncion que. Algunas funciones requieren que nombre se refiera a  un
       modulo  cargado  actualmente,  otras  permiten  que  nombre  sea  NULL,
       indicando el propio nucleo.

   VALORES DE `QUE'
       0      Siempre devuelve `exito'. Se emplea para probar  la  llamada  al
              sistema.

       QM_MODULES
              Devuelve  los  nombres de todos los modulos cargados. El formato
              del bufer de salida consiste en cadenas de caracteres adyacentes
              terminadas en cero; ret contendra el numero de modulos.

       QM_DEPS
              Devuelve  los  nombres  de  todos  los modulos utilizados por el
              modulo indicado. El formato del  bufer  de  salida  consiste  en
              cadenas   de  caracteres  adyacentes  terminadas  en  cero;  ret
              contendra el numero de modulos.

       QM_REFS
              Devuelve los nombres  de  todos  los  modulos  que  utilizan  al
              indicado.  Esto  es lo inverso de QM_DEPS.  El formato del bufer
              de  salida  consiste  en  cadenas   de   caracteres   adyacentes
              terminadas en cero; ret contendra el numero de modulos.

       QM_SYMBOLS
              Devuelve  los  simbolos  y valores exportados por el nucleo o el
              modulo indicado. El formato del bufer consiste en un vector de:

              struct module_symbol
              {
                unsigned long value;
                unsigned long name;
              };

              seguido por cadenas de caracteres terminadas en cero.  El  valor
              de nombre es el desplazamiento de la cadena relativo al comienzo
              de buf; ret contendra el numero de simbolos.

       QM_INFO
              Devuelve  informacion  variada  sobre  el  modulo  indicado.  El
              formato del bufer de salida es:

              struct module_info
              {
                unsigned long address;
                unsigned long size;
                unsigned long flags;
              };

              donde  address  es  la  direccion del nucleo en la que reside el
              modulo, size es el tamano del modulo en bytes, y  flags  es  una
              mascara  de  MOD_RUNNING, MOD_AUTOCLEAN, etcetera, que indica el
              estado actual del modulo. ret contendra el tamano de  la  struct
              module_info.

VALOR DEVUELTO

       En  caso de exito, se devuelve cero. En caso de error, se devuelve -1 y
       se pone un valor apropiado en errno.

ERRORES

       ENOENT No existe ningun modulo con ese nombre.

       EINVAL Invalido que, o  nombre  le  indica  al  nucleo  una  subfuncion
              inapropiada.

       ENOSPC El  tamano  del  bufer  proporcionado era demasiado pequeno. ret
              contendra el minimo tamano que se necesita.

       EFAULT Al menos uno de nombre, buf o ret estaban afuera del espacio  de
              direcciones accesible al programa.

V'EASE TAMBI'EN

       create_module(2), init_module(2), delete_module(2).