NOMBRE
get_kernel_syms − recupera símbolos exportados del núcleo y de módulos
SINOPSIS
#include <linux/module.h>
int get_kernel_syms(struct kernel_sym *tabla);
DESCRIPCIÓN
Si tabla es NULL, get_kernel_syms devuelve el número de símbolos disponibles para consultar. En otro caso rellena una tabla de estructuras:
struct
kernel_sym
{
unsigned long value;
char name[60];
};
Los símbolos están mezclados con símbolos mágicos de la forma #nombre-de-módulo donde el núcleo tiene un nombre vacío. El valor asociado a un símbolo de esta forma es la dirección en la cual el módulo se carga.
Los símbolos exportados de cada módulo siguen su etiqueta mágica de módulo y los módulos se devuelven en orden inverso de su carga.
VALOR DEVUELTO
Devuelve el número de símbolos obtenido. No puede haber error.
VÉASE TAMBIÉN
create_module(2), init_module(2), delete_module(2), query_module(2).
FALLOS
No hay forma de indicar el tamaño del búfer reservado para tabla. Si se han añadido símbolos al núcleo desde que el programa interrogó sobre el tamaño de la tabla de símbolos, la memoria se corromperá.
La longitud de los nombres de símbolos exportados está limitada a 59.
Debido a estas limitaciones, esta llamada al sistema está destinada a desaparecer en favor de query_module.