00001 /* header file for src/module/coresyms.cpp */ 00002 00003 #ifndef _CORE_MODULE_CORESYMS_HPP 00004 #define _CORE_MODULE_CORESYMS_HPP 00005 00006 struct Elf32_sym; 00007 00008 namespace Syms { 00009 00010 00011 //caution: this will work only if one symtab exists. 00012 extern struct ::Elf32_sym *core_syms; //all of the coresyms, sorted by address 00013 extern uint32 syms_count; //how many syms 00014 extern uint32 syms_size; //a single element's size 00015 extern char *core_syms_str; //their names 00016 00017 void init(); //init the list of kernel syms 00018 int symscompar(const void *a, const void *b); //compare by addr 00019 00020 char *sym_name(uint32 addr, int sym_type); //return the most possible guess of the symbol's name at addr 00021 char *sym_name(::Elf32_sym *sym); //get the name 00022 00023 00024 }; /* namespace Syms */ 00025 00026 #endif