diff options
Diffstat (limited to 'tools/soslim/symfilter.h')
-rw-r--r-- | tools/soslim/symfilter.h | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/tools/soslim/symfilter.h b/tools/soslim/symfilter.h deleted file mode 100644 index f73fd50..0000000 --- a/tools/soslim/symfilter.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef SYMFILTER_H -#define SYMFILTER_H - -/* This file describes the interface for parsing the list of symbols. Currently, - this is just a text file with each symbol on a separate line. We build an - in-memory linked list of symbols out of this image. -*/ - -#include <stdio.h> -#include <libelf.h> -#include <gelf.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <libebl.h> /* defines bool */ - -typedef struct symfilter_list_t symfilter_list_t; -struct symfilter_list_t { - symfilter_list_t *next; - const char *name; - unsigned int len; /* strlen(name) */ - Elf32_Word index; - GElf_Sym symbol; -}; - -typedef struct symfilter_t { - - int fd; /* symbol-filter-file descriptor */ - off_t fsize; /* size of file */ - void *mmap; /* symbol-fiter-file memory mapping */ - - section_info_t symtab; - section_info_t hash; - symfilter_list_t *symbols; - - /* The total number of symbols in the symfilter. */ - unsigned int num_symbols; - /* The total number of bytes occupied by the names of the symbols, including - the terminating null characters. - */ - unsigned int total_name_length; - - bool *symbols_to_keep; - /* must be the same as the number of symbols in the dynamic table! */ - int num_symbols_to_keep; -} symfilter_t; - -void build_symfilter(const char *name, Elf *elf, symfilter_t *filter, off_t); -void destroy_symfilter(symfilter_t *); - -#endif/*SYMFILTER_H*/ |